UNPKG

@juspay/neurolink

Version:

Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio

44 lines (43 loc) 1.7 kB
/** * RedisTaskStore — Redis-backed persistence for TaskManager. * Used automatically when backend is "bullmq". * * Key patterns: * neurolink:tasks (Hash) — all task definitions * neurolink:task:{id}:runs (List) — run log entries (newest first) * neurolink:task:{id}:history (List) — continuation mode conversation history */ import { type Task, type TaskStatus, type TaskRunResult, type TaskStore, type TaskManagerConfig, type ConversationEntry } from "../../types/index.js"; export declare class RedisTaskStore implements TaskStore { private config; readonly type: "redis"; private client; private maxRunLogs; private maxHistoryEntries; private retentionConfig; constructor(config: TaskManagerConfig); initialize(): Promise<void>; shutdown(): Promise<void>; save(task: Task): Promise<void>; get(taskId: string): Promise<Task | null>; list(filter?: { status?: TaskStatus; }): Promise<Task[]>; update(taskId: string, updates: Partial<Task>): Promise<Task>; delete(taskId: string): Promise<void>; appendRun(taskId: string, run: TaskRunResult): Promise<void>; getRuns(taskId: string, options?: { limit?: number; status?: string; }): Promise<TaskRunResult[]>; appendHistory(taskId: string, messages: ConversationEntry[]): Promise<void>; getHistory(taskId: string): Promise<ConversationEntry[]>; clearHistory(taskId: string): Promise<void>; private ensureConnected; private getClient; /** * Set Redis TTL on terminal-state tasks so they auto-expire. * Active and paused tasks never expire. */ private applyRetentionTTL; }