@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.
- package/dist/claude/hook-capture.d.ts +209 -0
- package/dist/claude/hook-capture.d.ts.map +1 -0
- package/dist/claude/hook-capture.js +792 -0
- package/dist/claude/hook-capture.js.map +1 -0
- package/dist/claude/index.d.ts +15 -0
- package/dist/claude/index.d.ts.map +1 -0
- package/dist/claude/types.d.ts +1054 -0
- package/dist/claude/types.d.ts.map +1 -0
- package/dist/claude/types.js +61 -0
- package/dist/claude/types.js.map +1 -0
- package/dist/cli/commands/docs.d.ts.map +1 -1
- package/dist/cli/commands/docs.js +106 -0
- package/dist/cli/commands/docs.js.map +1 -1
- package/dist/cli/commands/hooks.d.ts +11 -0
- package/dist/cli/commands/hooks.d.ts.map +1 -0
- package/dist/cli/commands/hooks.js +282 -0
- package/dist/cli/commands/hooks.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +8 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/generators/doc-cultivator.d.ts +117 -0
- package/dist/generators/doc-cultivator.d.ts.map +1 -0
- package/dist/generators/doc-cultivator.js +1020 -0
- package/dist/generators/doc-cultivator.js.map +1 -0
- package/package.json +1 -1
|
@@ -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":"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"}
|