/** * Kagemusha Query Tools — progressive exploration of business data. * * Like a coding agent explores code (grep → read file → follow import), * these tools let agents explore business data: * entities (rooms) → tasks → messages (raw data) * * The raw data stays in Kagemusha's DB, queried on demand. */ export interface EntityProfile { id: string; name: string; channel: string; type: string; totalMessages: number; recentMessages: number; activeTasks: number; totalTasks: number; lastActive: string; } export interface TaskInfo { id: number; title: string; status: string; priority: string; deadline: string | null; sourceRoom: string | null; createdAt: string; } export interface MessageInfo { id: number; channel: string; channelId: string; author: string; role: string; content: string; timestamp: string; } /** * List all entities (people, project channels) with activity stats. * This is the "file tree" — the starting point for exploration. */ export declare function listEntities(options?: { channel?: string; activeOnly?: boolean; limit?: number; }): EntityProfile[]; /** * Get tasks for a specific entity or all tasks matching a filter. * This is "reading type definitions" — structured state. */ export declare function queryTasks(options?: { sourceRoom?: string; status?: string; priority?: string; search?: string; limit?: number; }): TaskInfo[]; /** * Get messages from a specific channel within a time range. * This is "reading the source file" — the raw data. */ export declare function queryMessages(options: { channelId: string; since?: string; limit?: number; search?: string; }): MessageInfo[]; /** * Get a summary overview — entity counts, task stats, message volume. * Like `ls -la` at the root of a codebase. */ export declare function getOverview(): { rooms: { total: number; byChannel: Record; }; tasks: { total: number; byStatus: Record; }; messages: { total: number; recent30d: number; }; }; /** Clean up DB connection */ export declare function dispose(): void; //# sourceMappingURL=query-tools.d.ts.map