@weavelogic/knowledge-graph-agent 0.8.8 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,209 @@
1
+ /**
2
+ * Hook Capture System
3
+ *
4
+ * Captures all Claude interactions (prompts, responses, tool calls)
5
+ * and stores them in the knowledge graph with hierarchical structure.
6
+ *
7
+ * @module claude/hook-capture
8
+ */
9
+ import { SessionId, ClaudeSession, ClaudeConversation } from './types.js';
10
+ /**
11
+ * Hook event types from Claude Code
12
+ */
13
+ export type HookEventType = 'PreToolUse' | 'PostToolUse' | 'UserPromptSubmit' | 'Stop' | 'PreCompact';
14
+ /**
15
+ * Raw hook event data received from Claude Code
16
+ */
17
+ export interface HookEventData {
18
+ event: HookEventType;
19
+ timestamp: string;
20
+ sessionId?: string;
21
+ toolName?: string;
22
+ toolInput?: Record<string, unknown>;
23
+ toolOutput?: string;
24
+ userPrompt?: string;
25
+ exitCode?: number;
26
+ duration?: number;
27
+ error?: string;
28
+ metadata?: Record<string, unknown>;
29
+ }
30
+ /**
31
+ * Capture configuration options
32
+ */
33
+ export interface CaptureConfig {
34
+ /** Base directory for storing captured data */
35
+ storageDir: string;
36
+ /** Whether to store in knowledge graph format */
37
+ useKnowledgeGraph: boolean;
38
+ /** Whether to create markdown documents */
39
+ createMarkdown: boolean;
40
+ /** Whether to track tool outputs separately */
41
+ separateToolOutputs: boolean;
42
+ /** Maximum content length to store (truncates if exceeded) */
43
+ maxContentLength: number;
44
+ /** Whether to capture sub-agent spawns */
45
+ captureSubAgents: boolean;
46
+ /** Whether to capture swarm operations */
47
+ captureSwarms: boolean;
48
+ /** Whether to capture workflow executions */
49
+ captureWorkflows: boolean;
50
+ /** Tags to add to all captured items */
51
+ defaultTags: string[];
52
+ }
53
+ /**
54
+ * Default configuration
55
+ */
56
+ export declare const DEFAULT_CAPTURE_CONFIG: CaptureConfig;
57
+ /**
58
+ * Hook Capture System
59
+ *
60
+ * Manages the capture and storage of all Claude interactions.
61
+ */
62
+ export declare class HookCaptureSystem {
63
+ private config;
64
+ private state;
65
+ private projectRoot;
66
+ constructor(projectRoot: string, config?: Partial<CaptureConfig>);
67
+ /**
68
+ * Ensure storage directory exists
69
+ */
70
+ private ensureStorageDir;
71
+ /**
72
+ * Create empty token usage
73
+ */
74
+ private createEmptyTokenUsage;
75
+ /**
76
+ * Create empty aggregated token usage
77
+ */
78
+ private createEmptyAggregatedTokenUsage;
79
+ /**
80
+ * Create base metadata
81
+ */
82
+ private createBaseMetadata;
83
+ /**
84
+ * Get current git branch
85
+ */
86
+ private getGitBranch;
87
+ /**
88
+ * Start a new session
89
+ */
90
+ startSession(name?: string, purpose?: string): ClaudeSession;
91
+ /**
92
+ * End the current session
93
+ */
94
+ endSession(): ClaudeSession | null;
95
+ /**
96
+ * Start a new conversation
97
+ */
98
+ startConversation(model?: string, systemPrompt?: string): ClaudeConversation;
99
+ /**
100
+ * Handle hook events
101
+ */
102
+ handleHookEvent(event: HookEventData): void;
103
+ /**
104
+ * Handle user prompt submission
105
+ */
106
+ private handleUserPrompt;
107
+ /**
108
+ * Handle pre-tool use event
109
+ */
110
+ private handlePreToolUse;
111
+ /**
112
+ * Handle post-tool use event
113
+ */
114
+ private handlePostToolUse;
115
+ /**
116
+ * Handle session stop event
117
+ */
118
+ private handleSessionStop;
119
+ /**
120
+ * Handle pre-compact event
121
+ */
122
+ private handlePreCompact;
123
+ /**
124
+ * Handle sub-agent spawn
125
+ */
126
+ private handleSubAgentSpawn;
127
+ /**
128
+ * Handle sub-agent completion
129
+ */
130
+ private handleSubAgentComplete;
131
+ /**
132
+ * Handle swarm operation
133
+ */
134
+ private handleSwarmOperation;
135
+ /**
136
+ * Categorize tool calls
137
+ */
138
+ private categorizeToolCall;
139
+ /**
140
+ * Aggregate session tokens
141
+ */
142
+ private aggregateSessionTokens;
143
+ /**
144
+ * Truncate content to max length
145
+ */
146
+ private truncateContent;
147
+ /**
148
+ * Get storage path for an entity
149
+ */
150
+ private getStoragePath;
151
+ /**
152
+ * Get markdown path for an entity
153
+ */
154
+ private getMarkdownPath;
155
+ /**
156
+ * Save session to storage
157
+ */
158
+ private saveSession;
159
+ /**
160
+ * Save session as markdown
161
+ */
162
+ private saveSessionMarkdown;
163
+ /**
164
+ * Save message to storage
165
+ */
166
+ private saveMessage;
167
+ /**
168
+ * Append message to conversation log
169
+ */
170
+ private appendToConversationLog;
171
+ /**
172
+ * Save tool call to storage
173
+ */
174
+ private saveToolCall;
175
+ /**
176
+ * Save sub-agent to storage
177
+ */
178
+ private saveSubAgent;
179
+ /**
180
+ * Save sub-agent as markdown
181
+ */
182
+ private saveSubAgentMarkdown;
183
+ /**
184
+ * Get current session
185
+ */
186
+ getCurrentSession(): ClaudeSession | null;
187
+ /**
188
+ * Get current conversation
189
+ */
190
+ getCurrentConversation(): ClaudeConversation | null;
191
+ /**
192
+ * Load session from storage
193
+ */
194
+ loadSession(sessionId: SessionId): ClaudeSession | null;
195
+ /**
196
+ * List all stored sessions
197
+ */
198
+ listSessions(): SessionId[];
199
+ }
200
+ /**
201
+ * Process hook event from stdin (for use as CLI hook)
202
+ */
203
+ export declare function processHookEvent(projectRoot: string, eventType: HookEventType, config?: Partial<CaptureConfig>): Promise<void>;
204
+ /**
205
+ * Generate Claude Code hook configuration
206
+ */
207
+ export declare function generateHookConfig(projectRoot: string): Record<string, unknown>;
208
+ export default HookCaptureSystem;
209
+ //# sourceMappingURL=hook-capture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-capture.d.ts","sourceRoot":"","sources":["../../src/claude/hook-capture.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EACL,SAAS,EAOT,aAAa,EACb,kBAAkB,EAqBnB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,aAAa,GACb,kBAAkB,GAClB,MAAM,GACN,YAAY,CAAC;AAEjB;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,+CAA+C;IAC/C,UAAU,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,2CAA2C;IAC3C,cAAc,EAAE,OAAO,CAAC;IACxB,+CAA+C;IAC/C,mBAAmB,EAAE,OAAO,CAAC;IAC7B,8DAA8D;IAC9D,gBAAgB,EAAE,MAAM,CAAC;IACzB,0CAA0C;IAC1C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,0CAA0C;IAC1C,aAAa,EAAE,OAAO,CAAC;IACvB,6CAA6C;IAC7C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,wCAAwC;IACxC,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAUpC,CAAC;AA0BF;;;;GAIG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,WAAW,CAAS;gBAEhB,WAAW,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,CAAC,aAAa,CAAM;IAepE;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAOxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAQ7B;;OAEG;IACH,OAAO,CAAC,+BAA+B;IASvC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;OAEG;IACH,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,aAAa;IAwC5D;;OAEG;IACH,UAAU,IAAI,aAAa,GAAG,IAAI;IAsBlC;;OAEG;IACH,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,kBAAkB;IA4B5E;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAoB3C;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAoCxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0FxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAwB9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA+B5B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAqB9B;;OAEG;IACH,OAAO,CAAC,eAAe;IAOvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAQtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,OAAO,CAAC,WAAW;IASnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA6C3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAqC/B;;OAEG;IACH,OAAO,CAAC,YAAY;IAwBpB;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAiD5B;;OAEG;IACH,iBAAiB,IAAI,aAAa,GAAG,IAAI;IAIzC;;OAEG;IACH,sBAAsB,IAAI,kBAAkB,GAAG,IAAI;IAKnD;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,aAAa,GAAG,IAAI;IAYvD;;OAEG;IACH,YAAY,IAAI,SAAS,EAAE;CAc5B;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,aAAa,EACxB,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAC9B,OAAO,CAAC,IAAI,CAAC,CAiCf;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA+B/E;AAED,eAAe,iBAAiB,CAAC"}