UNPKG

packfs-core

Version:

Semantic filesystem operations for LLM agent frameworks with natural language understanding. See LLM_AGENT_GUIDE.md for copy-paste examples.

90 lines 3.13 kB
/** * KaibanJS integration for PackFS semantic filesystem * KaibanJS: The JavaScript Framework for Building Multi-Agent Systems - https://www.kaibanjs.com/ */ import type { BaseIntegrationConfig, ToolDescription, FrameworkToolAdapter } from './types.js'; /** * KaibanJS-specific configuration */ export interface KaibanIntegrationConfig extends BaseIntegrationConfig { /** KaibanJS-specific options */ kaiban?: { /** Agent ID for tracking operations */ agentId?: string; /** Task context for multi-agent coordination */ taskContext?: Record<string, any>; /** Enable state persistence */ enableStatePersistence?: boolean; /** Custom Redux-style state handlers */ stateHandlers?: { onBeforeOperation?: (operation: string, params: any) => void; onAfterOperation?: (operation: string, result: any) => void; onError?: (operation: string, error: Error) => void; }; }; } /** * KaibanJS Tool interface (based on KaibanJS patterns) */ interface KaibanTool { name: string; description: string; parameters?: any; handler: (params: any, context?: any) => Promise<any>; metadata?: { agentId?: string; category?: string; permissions?: string[]; }; } /** * KaibanJS Task Action for file operations */ interface KaibanTaskAction { type: string; payload: any; meta?: { agentId: string; timestamp: number; operationType: string; }; } /** * PackFS semantic filesystem tool for KaibanJS * Integrated with KaibanJS's Redux-inspired state management */ export declare class KaibanSemanticFilesystemTool implements FrameworkToolAdapter<KaibanTool> { createTool(config: KaibanIntegrationConfig): KaibanTool; getToolDescription(): ToolDescription; validateParameters(params: any): { valid: boolean; errors?: string[]; }; private getKaibanParameters; private executeOperation; private executeNaturalLanguageQuery; private executeKaibanAction; private handleCollaboration; private handleCollaborativeOperation; private formatKaibanResponse; } /** * Create a KaibanJS compatible semantic filesystem tool */ export declare function createKaibanSemanticFilesystemTool(config: KaibanIntegrationConfig): KaibanTool; /** * Create KaibanJS task actions for file operations * These can be dispatched through KaibanJS's Redux-style state management */ export declare function createKaibanFileSystemActions(config: KaibanIntegrationConfig): { readFile: (path: string, options?: any) => KaibanTaskAction; writeFile: (path: string, content: string, options?: any) => KaibanTaskAction; searchFiles: (query: string, options?: any) => KaibanTaskAction; collaborateOnFile: (path: string, operation: string, agents: string[]) => KaibanTaskAction; }; /** * Create a specialized multi-agent file coordination tool */ export declare function createKaibanMultiAgentFileCoordinator(config: KaibanIntegrationConfig): KaibanTool; export {}; //# sourceMappingURL=kaiban-js.d.ts.map