claude-cognitive 0.2.6 → 0.2.8
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/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +117 -38
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +123 -48
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/hooks/process-session.d.ts +4 -11
- package/dist/hooks/process-session.d.ts.map +1 -1
- package/dist/hooks/process-session.js +26 -1
- package/dist/hooks/process-session.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AA2W/B;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAgXrD"}
|
|
@@ -115,21 +115,16 @@ async function fileExists(path) {
|
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
/**
|
|
118
|
-
* Get the Claude Code MCP config path.
|
|
119
|
-
* - Global: ~/.claude/mcp.json
|
|
120
|
-
* - Project: .mcp.json in project root
|
|
118
|
+
* Get the Claude Code MCP config path (always project-local).
|
|
121
119
|
*/
|
|
122
|
-
function getMcpConfigPath(
|
|
123
|
-
if (global) {
|
|
124
|
-
return join(homedir(), ".claude", "mcp.json");
|
|
125
|
-
}
|
|
120
|
+
function getMcpConfigPath(projectPath) {
|
|
126
121
|
return join(projectPath, ".mcp.json");
|
|
127
122
|
}
|
|
128
123
|
/**
|
|
129
|
-
* Get the Claude Code settings path.
|
|
124
|
+
* Get the project-local Claude Code settings path.
|
|
130
125
|
*/
|
|
131
|
-
function
|
|
132
|
-
return join(
|
|
126
|
+
function getProjectSettingsPath(projectPath) {
|
|
127
|
+
return join(projectPath, ".claude", "settings.json");
|
|
133
128
|
}
|
|
134
129
|
/**
|
|
135
130
|
* Read existing settings or return empty object.
|
|
@@ -153,33 +148,125 @@ function hasHookCommand(hooksArray, commandSubstring) {
|
|
|
153
148
|
}));
|
|
154
149
|
}
|
|
155
150
|
/**
|
|
156
|
-
*
|
|
151
|
+
* Get the path to the stop hook wrapper script.
|
|
152
|
+
*/
|
|
153
|
+
function getStopHookScriptPath() {
|
|
154
|
+
return join(homedir(), ".local", "bin", "claude-cognitive-stop-hook.sh");
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Create the stop hook wrapper script.
|
|
158
|
+
* Claude Code passes transcript_path via stdin JSON, not as env var.
|
|
159
|
+
*
|
|
160
|
+
* This script filters out:
|
|
161
|
+
* - Agent sessions (filename starts with "agent-")
|
|
162
|
+
* - Projects without .claudemindrc
|
|
163
|
+
*/
|
|
164
|
+
async function createStopHookScript() {
|
|
165
|
+
const scriptPath = getStopHookScriptPath();
|
|
166
|
+
const scriptDir = join(homedir(), ".local", "bin");
|
|
167
|
+
// Ensure directory exists
|
|
168
|
+
await mkdir(scriptDir, { recursive: true });
|
|
169
|
+
const scriptContent = `#!/bin/bash
|
|
170
|
+
# Claude Code Stop hook wrapper for claude-cognitive
|
|
171
|
+
# Only processes MAIN sessions in projects with .claudemindrc
|
|
172
|
+
# Skips agent sessions and unconfigured projects
|
|
173
|
+
|
|
174
|
+
# Read stdin
|
|
175
|
+
INPUT=$(cat)
|
|
176
|
+
|
|
177
|
+
# Extract fields using jq (or fallback to grep/sed)
|
|
178
|
+
if command -v jq &> /dev/null; then
|
|
179
|
+
TRANSCRIPT_PATH=$(echo "$INPUT" | jq -r '.transcript_path // empty')
|
|
180
|
+
PROJECT_DIR=$(echo "$INPUT" | jq -r '.cwd // empty')
|
|
181
|
+
SESSION_ID=$(echo "$INPUT" | jq -r '.session_id // empty')
|
|
182
|
+
else
|
|
183
|
+
TRANSCRIPT_PATH=$(echo "$INPUT" | grep -o '"transcript_path":"[^"]*"' | cut -d'"' -f4)
|
|
184
|
+
PROJECT_DIR=$(echo "$INPUT" | grep -o '"cwd":"[^"]*"' | cut -d'"' -f4)
|
|
185
|
+
SESSION_ID=$(echo "$INPUT" | grep -o '"session_id":"[^"]*"' | cut -d'"' -f4)
|
|
186
|
+
fi
|
|
187
|
+
|
|
188
|
+
# Exit early if no transcript path
|
|
189
|
+
if [ -z "$TRANSCRIPT_PATH" ] || [ ! -f "$TRANSCRIPT_PATH" ]; then
|
|
190
|
+
exit 0
|
|
191
|
+
fi
|
|
192
|
+
|
|
193
|
+
# FILTER 1: Skip agent sessions (filename starts with "agent-")
|
|
194
|
+
FILENAME=$(basename "$TRANSCRIPT_PATH")
|
|
195
|
+
if [[ "$FILENAME" == agent-* ]]; then
|
|
196
|
+
exit 0
|
|
197
|
+
fi
|
|
198
|
+
|
|
199
|
+
# FILTER 2: Skip projects without .claudemindrc
|
|
200
|
+
if [ -z "$PROJECT_DIR" ] || [ ! -f "$PROJECT_DIR/.claudemindrc" ]; then
|
|
201
|
+
exit 0
|
|
202
|
+
fi
|
|
203
|
+
|
|
204
|
+
# Process main session
|
|
205
|
+
claude-cognitive process-session --transcript "$TRANSCRIPT_PATH"
|
|
206
|
+
|
|
207
|
+
# Clean up ONLY this session's entries from buffer (not other ongoing sessions)
|
|
208
|
+
if [ -n "$SESSION_ID" ]; then
|
|
209
|
+
BUFFER_FILE="$PROJECT_DIR/.claude/.session-buffer.jsonl"
|
|
210
|
+
if [ -f "$BUFFER_FILE" ]; then
|
|
211
|
+
if command -v jq &> /dev/null; then
|
|
212
|
+
# Filter out entries matching this session_id
|
|
213
|
+
TEMP_FILE=$(mktemp)
|
|
214
|
+
jq -c "select(.session_id != \\"$SESSION_ID\\")" "$BUFFER_FILE" > "$TEMP_FILE" 2>/dev/null || true
|
|
215
|
+
if [ -s "$TEMP_FILE" ]; then
|
|
216
|
+
mv "$TEMP_FILE" "$BUFFER_FILE"
|
|
217
|
+
else
|
|
218
|
+
rm -f "$BUFFER_FILE" "$TEMP_FILE"
|
|
219
|
+
fi
|
|
220
|
+
else
|
|
221
|
+
# Without jq, use grep to filter (less reliable but works)
|
|
222
|
+
TEMP_FILE=$(mktemp)
|
|
223
|
+
grep -v "\\"session_id\\":\\"$SESSION_ID\\"" "$BUFFER_FILE" > "$TEMP_FILE" 2>/dev/null || true
|
|
224
|
+
if [ -s "$TEMP_FILE" ]; then
|
|
225
|
+
mv "$TEMP_FILE" "$BUFFER_FILE"
|
|
226
|
+
else
|
|
227
|
+
rm -f "$BUFFER_FILE" "$TEMP_FILE"
|
|
228
|
+
fi
|
|
229
|
+
fi
|
|
230
|
+
fi
|
|
231
|
+
fi
|
|
232
|
+
`;
|
|
233
|
+
await writeFile(scriptPath, scriptContent, { mode: 0o755 });
|
|
234
|
+
return scriptPath;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Configure hooks in project-local Claude Code settings.
|
|
238
|
+
* Hooks are stored in PROJECT/.claude/settings.json to keep them project-specific.
|
|
157
239
|
*/
|
|
158
|
-
async function configureHooks() {
|
|
159
|
-
const settingsPath =
|
|
240
|
+
async function configureHooks(projectPath) {
|
|
241
|
+
const settingsPath = getProjectSettingsPath(projectPath);
|
|
160
242
|
const settings = await readSettings(settingsPath);
|
|
243
|
+
// Create the stop hook wrapper script
|
|
244
|
+
const scriptPath = await createStopHookScript();
|
|
161
245
|
// Get or create hooks object
|
|
162
246
|
const hooks = settings.hooks || {};
|
|
163
247
|
// Get or create Stop hooks array
|
|
164
248
|
const stopHooks = hooks.Stop || [];
|
|
165
|
-
//
|
|
166
|
-
|
|
167
|
-
|
|
249
|
+
// Remove old-style hooks that use $TRANSCRIPT_PATH env var (doesn't work)
|
|
250
|
+
const filteredStopHooks = stopHooks.filter((entry) => !entry.hooks?.some((h) => {
|
|
251
|
+
const hook = h;
|
|
252
|
+
return hook.command?.includes('$TRANSCRIPT_PATH"');
|
|
253
|
+
}));
|
|
254
|
+
// Add wrapper script hook on Stop (session end)
|
|
255
|
+
if (!hasHookCommand(filteredStopHooks, "claude-cognitive-stop-hook.sh")) {
|
|
256
|
+
filteredStopHooks.push({
|
|
168
257
|
matcher: "",
|
|
169
258
|
hooks: [
|
|
170
259
|
{
|
|
171
260
|
type: "command",
|
|
172
|
-
command:
|
|
261
|
+
command: scriptPath,
|
|
173
262
|
},
|
|
174
263
|
],
|
|
175
264
|
});
|
|
176
265
|
}
|
|
177
|
-
hooks.Stop =
|
|
178
|
-
// Note: PostToolUse buffer hook removed - was capturing agent activity
|
|
179
|
-
// Session sync relies on Stop hook with $TRANSCRIPT_PATH
|
|
266
|
+
hooks.Stop = filteredStopHooks;
|
|
180
267
|
settings.hooks = hooks;
|
|
181
|
-
// Ensure .claude directory exists
|
|
182
|
-
await mkdir(join(
|
|
268
|
+
// Ensure project .claude directory exists
|
|
269
|
+
await mkdir(join(projectPath, ".claude"), { recursive: true });
|
|
183
270
|
await writeFile(settingsPath, JSON.stringify(settings, null, 2) + "\n");
|
|
184
271
|
return settingsPath;
|
|
185
272
|
}
|
|
@@ -234,7 +321,6 @@ export function registerInstallCommand(cli) {
|
|
|
234
321
|
disposition: { skepticism: 3, literalism: 3, empathy: 3 },
|
|
235
322
|
background: "",
|
|
236
323
|
configureClaudeCode: true,
|
|
237
|
-
globalInstall: false,
|
|
238
324
|
runLearn: false,
|
|
239
325
|
learnDepth: "standard",
|
|
240
326
|
};
|
|
@@ -291,10 +377,8 @@ export function registerInstallCommand(cli) {
|
|
|
291
377
|
printInfo(`Disposition: skepticism=${answers.disposition.skepticism}, literalism=${answers.disposition.literalism}, empathy=${answers.disposition.empathy}`);
|
|
292
378
|
// Step 3: Claude Code integration
|
|
293
379
|
printStep(3, 5, "Claude Code Integration");
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
answers.globalInstall = await prompt.confirm("Install globally (for all projects)?", true);
|
|
297
|
-
}
|
|
380
|
+
print(color(" MCP server and hooks will be configured for this project only.", "dim"));
|
|
381
|
+
answers.configureClaudeCode = await prompt.confirm("Configure Claude Code integration?", true);
|
|
298
382
|
// Step 4: Learn
|
|
299
383
|
printStep(4, 5, "Bootstrap Memory");
|
|
300
384
|
answers.runLearn = await prompt.confirm("Run 'learn' to bootstrap from codebase?", true);
|
|
@@ -361,16 +445,11 @@ export function registerInstallCommand(cli) {
|
|
|
361
445
|
else {
|
|
362
446
|
printInfo(`${semanticPath} already exists, skipping`);
|
|
363
447
|
}
|
|
364
|
-
// Configure Claude Code MCP
|
|
448
|
+
// Configure Claude Code MCP (always project-local)
|
|
365
449
|
if (answers.configureClaudeCode) {
|
|
366
|
-
const mcpConfigPath = getMcpConfigPath(answers.
|
|
367
|
-
// Ensure ~/.claude directory exists for global install
|
|
368
|
-
if (answers.globalInstall) {
|
|
369
|
-
await mkdir(join(homedir(), ".claude"), { recursive: true });
|
|
370
|
-
}
|
|
450
|
+
const mcpConfigPath = getMcpConfigPath(answers.projectPath);
|
|
371
451
|
const existing = await readMcpConfig(mcpConfigPath);
|
|
372
452
|
const serveCmd = await getServeCommand();
|
|
373
|
-
// MCP config structure is the same for both global and project
|
|
374
453
|
const mcpServers = existing.mcpServers || {};
|
|
375
454
|
mcpServers["claude-cognitive"] = {
|
|
376
455
|
command: serveCmd.command,
|
|
@@ -381,11 +460,11 @@ export function registerInstallCommand(cli) {
|
|
|
381
460
|
mcpServers,
|
|
382
461
|
};
|
|
383
462
|
await writeFile(mcpConfigPath, JSON.stringify(newConfig, null, 2) + "\n");
|
|
384
|
-
printSuccess(
|
|
463
|
+
printSuccess("Configured MCP server: project (.mcp.json)");
|
|
385
464
|
printInfo(mcpConfigPath);
|
|
386
|
-
// Configure hooks for session-to-session memory
|
|
387
|
-
const hooksPath = await configureHooks();
|
|
388
|
-
printSuccess("Configured session hooks
|
|
465
|
+
// Configure hooks for session-to-session memory (project-local)
|
|
466
|
+
const hooksPath = await configureHooks(answers.projectPath);
|
|
467
|
+
printSuccess("Configured session hooks: project (.claude/settings.json)");
|
|
389
468
|
printInfo(hooksPath);
|
|
390
469
|
}
|
|
391
470
|
// Inject memory instructions into CLAUDE.md
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAuI/B;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAsKpD"}
|
|
@@ -2,9 +2,91 @@
|
|
|
2
2
|
* CLI update command - update claude-cognitive configuration without reinstall.
|
|
3
3
|
* @module cli/commands/update
|
|
4
4
|
*/
|
|
5
|
-
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
5
|
+
import { mkdir, readFile, writeFile, access } from "node:fs/promises";
|
|
6
6
|
import { join } from "node:path";
|
|
7
7
|
import { homedir } from "node:os";
|
|
8
|
+
/**
|
|
9
|
+
* Get the path to the stop hook wrapper script.
|
|
10
|
+
*/
|
|
11
|
+
function getStopHookScriptPath() {
|
|
12
|
+
return join(homedir(), ".local", "bin", "claude-cognitive-stop-hook.sh");
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Create the stop hook wrapper script.
|
|
16
|
+
* Claude Code passes transcript_path via stdin JSON, not as env var.
|
|
17
|
+
*/
|
|
18
|
+
async function createStopHookScript() {
|
|
19
|
+
const scriptPath = getStopHookScriptPath();
|
|
20
|
+
const scriptDir = join(homedir(), ".local", "bin");
|
|
21
|
+
// Ensure directory exists
|
|
22
|
+
await mkdir(scriptDir, { recursive: true });
|
|
23
|
+
const scriptContent = `#!/bin/bash
|
|
24
|
+
# Claude Code Stop hook wrapper for claude-cognitive
|
|
25
|
+
# Reads JSON from stdin, syncs to Hindsight, then cleans up only this session's data
|
|
26
|
+
|
|
27
|
+
# Read stdin
|
|
28
|
+
INPUT=$(cat)
|
|
29
|
+
|
|
30
|
+
# Extract fields using jq (or fallback to grep/sed)
|
|
31
|
+
if command -v jq &> /dev/null; then
|
|
32
|
+
TRANSCRIPT_PATH=$(echo "$INPUT" | jq -r '.transcript_path // empty')
|
|
33
|
+
PROJECT_DIR=$(echo "$INPUT" | jq -r '.cwd // empty')
|
|
34
|
+
SESSION_ID=$(echo "$INPUT" | jq -r '.session_id // empty')
|
|
35
|
+
else
|
|
36
|
+
TRANSCRIPT_PATH=$(echo "$INPUT" | grep -o '"transcript_path":"[^"]*"' | cut -d'"' -f4)
|
|
37
|
+
PROJECT_DIR=$(echo "$INPUT" | grep -o '"cwd":"[^"]*"' | cut -d'"' -f4)
|
|
38
|
+
SESSION_ID=$(echo "$INPUT" | grep -o '"session_id":"[^"]*"' | cut -d'"' -f4)
|
|
39
|
+
fi
|
|
40
|
+
|
|
41
|
+
# Only process if we have a transcript path
|
|
42
|
+
if [ -n "$TRANSCRIPT_PATH" ] && [ -f "$TRANSCRIPT_PATH" ]; then
|
|
43
|
+
# Sync to Hindsight
|
|
44
|
+
claude-cognitive process-session --transcript "$TRANSCRIPT_PATH"
|
|
45
|
+
|
|
46
|
+
# Clean up ONLY this session's entries from buffer (not other ongoing sessions)
|
|
47
|
+
if [ -n "$PROJECT_DIR" ] && [ -n "$SESSION_ID" ]; then
|
|
48
|
+
BUFFER_FILE="$PROJECT_DIR/.claude/.session-buffer.jsonl"
|
|
49
|
+
if [ -f "$BUFFER_FILE" ]; then
|
|
50
|
+
if command -v jq &> /dev/null; then
|
|
51
|
+
# Filter out entries matching this session_id
|
|
52
|
+
TEMP_FILE=$(mktemp)
|
|
53
|
+
jq -c "select(.session_id != \\"$SESSION_ID\\")" "$BUFFER_FILE" > "$TEMP_FILE" 2>/dev/null || true
|
|
54
|
+
if [ -s "$TEMP_FILE" ]; then
|
|
55
|
+
# Buffer has other sessions' data, keep only those
|
|
56
|
+
mv "$TEMP_FILE" "$BUFFER_FILE"
|
|
57
|
+
else
|
|
58
|
+
# Buffer is empty after filtering, delete it
|
|
59
|
+
rm -f "$BUFFER_FILE" "$TEMP_FILE"
|
|
60
|
+
fi
|
|
61
|
+
else
|
|
62
|
+
# Without jq, use grep to filter (less reliable but works)
|
|
63
|
+
TEMP_FILE=$(mktemp)
|
|
64
|
+
grep -v "\\"session_id\\":\\"$SESSION_ID\\"" "$BUFFER_FILE" > "$TEMP_FILE" 2>/dev/null || true
|
|
65
|
+
if [ -s "$TEMP_FILE" ]; then
|
|
66
|
+
mv "$TEMP_FILE" "$BUFFER_FILE"
|
|
67
|
+
else
|
|
68
|
+
rm -f "$BUFFER_FILE" "$TEMP_FILE"
|
|
69
|
+
fi
|
|
70
|
+
fi
|
|
71
|
+
fi
|
|
72
|
+
fi
|
|
73
|
+
fi
|
|
74
|
+
`;
|
|
75
|
+
await writeFile(scriptPath, scriptContent, { mode: 0o755 });
|
|
76
|
+
return scriptPath;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Check if the stop hook script exists.
|
|
80
|
+
*/
|
|
81
|
+
async function stopHookScriptExists() {
|
|
82
|
+
try {
|
|
83
|
+
await access(getStopHookScriptPath());
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
8
90
|
const COLORS = {
|
|
9
91
|
reset: "\x1b[0m",
|
|
10
92
|
green: "\x1b[32m",
|
|
@@ -99,6 +181,7 @@ export function registerUpdateCommand(cli) {
|
|
|
99
181
|
// 3. Check/update hooks configuration
|
|
100
182
|
const settings = await readJsonFile(settingsPath);
|
|
101
183
|
const hooks = settings.hooks || {};
|
|
184
|
+
const scriptPath = getStopHookScriptPath();
|
|
102
185
|
// Helper to check if a hook command exists
|
|
103
186
|
const hasHookCommand = (hooksArray, commandSubstring) => {
|
|
104
187
|
return hooksArray.some((entry) => entry.hooks?.some((h) => {
|
|
@@ -106,63 +189,55 @@ export function registerUpdateCommand(cli) {
|
|
|
106
189
|
return hook.command?.includes(commandSubstring);
|
|
107
190
|
}));
|
|
108
191
|
};
|
|
109
|
-
// Check/update Stop hook
|
|
192
|
+
// Check/update Stop hook wrapper script
|
|
193
|
+
const scriptExists = await stopHookScriptExists();
|
|
110
194
|
const stopHooks = hooks.Stop || [];
|
|
111
|
-
|
|
195
|
+
const hasWrapperHook = hasHookCommand(stopHooks, "claude-cognitive-stop-hook.sh");
|
|
196
|
+
const hasOldStyleHook = hasHookCommand(stopHooks, '$TRANSCRIPT_PATH"');
|
|
197
|
+
if (!scriptExists || !hasWrapperHook || hasOldStyleHook) {
|
|
112
198
|
updatesNeeded++;
|
|
113
199
|
if (dryRun) {
|
|
114
|
-
|
|
200
|
+
if (!scriptExists) {
|
|
201
|
+
printWarn("Stop hook wrapper script not found");
|
|
202
|
+
}
|
|
203
|
+
if (!hasWrapperHook) {
|
|
204
|
+
printWarn("Stop hook not using wrapper script");
|
|
205
|
+
}
|
|
206
|
+
if (hasOldStyleHook) {
|
|
207
|
+
printWarn("Old-style Stop hook needs migration (uses $TRANSCRIPT_PATH env var which doesn't work)");
|
|
208
|
+
}
|
|
115
209
|
}
|
|
116
210
|
else {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
211
|
+
// Create/update the wrapper script
|
|
212
|
+
await createStopHookScript();
|
|
213
|
+
printSuccess("Created/updated stop hook wrapper script");
|
|
214
|
+
// Remove old-style hooks that use $TRANSCRIPT_PATH env var
|
|
215
|
+
const filteredStopHooks = stopHooks.filter((entry) => !entry.hooks?.some((h) => {
|
|
216
|
+
const hook = h;
|
|
217
|
+
return hook.command?.includes('$TRANSCRIPT_PATH"');
|
|
218
|
+
}));
|
|
219
|
+
// Add wrapper script hook if not present
|
|
220
|
+
if (!hasHookCommand(filteredStopHooks, "claude-cognitive-stop-hook.sh")) {
|
|
221
|
+
filteredStopHooks.push({
|
|
222
|
+
matcher: "",
|
|
223
|
+
hooks: [
|
|
224
|
+
{
|
|
225
|
+
type: "command",
|
|
226
|
+
command: scriptPath,
|
|
227
|
+
},
|
|
228
|
+
],
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
hooks.Stop = filteredStopHooks;
|
|
232
|
+
printSuccess("Updated Stop hook to use wrapper script");
|
|
128
233
|
updatesApplied++;
|
|
129
234
|
}
|
|
130
235
|
}
|
|
131
236
|
else {
|
|
132
|
-
|
|
133
|
-
const needsUpdate = stopHooks.some((entry) => entry.hooks?.some((h) => {
|
|
134
|
-
const hook = h;
|
|
135
|
-
return (hook.command?.includes("claude-cognitive process-session") &&
|
|
136
|
-
!hook.command?.includes("TRANSCRIPT"));
|
|
137
|
-
}));
|
|
138
|
-
if (needsUpdate) {
|
|
139
|
-
updatesNeeded++;
|
|
140
|
-
if (dryRun) {
|
|
141
|
-
printWarn("Stop hook missing transcript path");
|
|
142
|
-
}
|
|
143
|
-
else {
|
|
144
|
-
// Update the hook command
|
|
145
|
-
for (const entry of stopHooks) {
|
|
146
|
-
for (const h of entry.hooks || []) {
|
|
147
|
-
const hook = h;
|
|
148
|
-
if (hook.command?.includes("claude-cognitive process-session") &&
|
|
149
|
-
!hook.command?.includes("TRANSCRIPT")) {
|
|
150
|
-
hook.command =
|
|
151
|
-
'claude-cognitive process-session --transcript "$TRANSCRIPT_PATH"';
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
hooks.Stop = stopHooks;
|
|
156
|
-
printSuccess("Updated Stop hook with transcript path");
|
|
157
|
-
updatesApplied++;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
printInfo("Stop hook already configured");
|
|
162
|
-
}
|
|
237
|
+
printInfo("Stop hook already configured correctly");
|
|
163
238
|
}
|
|
164
|
-
// Note:
|
|
165
|
-
//
|
|
239
|
+
// Note: Claude Code passes transcript_path via stdin JSON, not as env var
|
|
240
|
+
// The wrapper script reads stdin and extracts the path
|
|
166
241
|
// Write settings if any hooks were updated
|
|
167
242
|
if (!dryRun && updatesApplied > 0) {
|
|
168
243
|
settings.hooks = hooks;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC;;GAEG;AACH,SAAS,qBAAqB;IAC5B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,+BAA+B,CAAC,CAAC;AAC3E,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,oBAAoB;IACjC,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAEnD,0BAA0B;IAC1B,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5C,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDvB,CAAC;IAEA,MAAM,SAAS,CAAC,UAAU,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB;IACjC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,qBAAqB,EAAE,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,MAAM,GAAG;IACb,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,GAAG,EAAE,SAAS;CACf,CAAC;AAEF,SAAS,KAAK,CAAC,IAAY,EAAE,CAAsB;IACjD,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAAY;IACtC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB;IAChC,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACxD,QAAQ,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAQ;IAC5C,GAAG;SACA,OAAO,CAAC,QAAQ,EAAE,uCAAuC,CAAC;SAC1D,MAAM,CAAC,SAAS,EAAE,0CAA0C,CAAC;SAC7D,MAAM,CAAC,KAAK,EAAE,OAA4B,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;QAEtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CACT,KAAK,CACH,MAAM;YACJ,CAAC,CAAC,4CAA4C;YAC9C,CAAC,CAAC,4CAA4C,EAChD,MAAM,CACP,CACF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAEtD,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,oCAAoC;QACpC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,6DAA6D;QAC7D,iEAAiE;QACjE,0EAA0E;QAE1E,oCAAoC;QACpC,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,UAAU,GACb,SAAS,CAAC,UAAsC,IAAI,EAAE,CAAC;QAC1D,MAAM,YAAY,GAAG,kBAAkB,IAAI,UAAU,CAAC;QAEtD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,aAAa,EAAE,CAAC;YAChB,IAAI,MAAM,EAAE,CAAC;gBACX,SAAS,CAAC,iDAAiD,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,MAAM,mBAAmB,EAAE,CAAC;gBAC7C,UAAU,CAAC,kBAAkB,CAAC,GAAG;oBAC/B,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK;oBAC9C,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,OAAO,CAAC;iBAC3D,CAAC;gBACF,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;gBAClC,MAAM,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBACpE,YAAY,CAAC,wCAAwC,CAAC,CAAC;gBACvD,cAAc,EAAE,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,+BAA+B,CAAC,CAAC;QAC7C,CAAC;QAED,sCAAsC;QACtC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,KAAK,GAAI,QAAQ,CAAC,KAAmC,IAAI,EAAE,CAAC;QAClE,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;QAE3C,2CAA2C;QAC3C,MAAM,cAAc,GAAG,CACrB,UAAwD,EACxD,gBAAwB,EACf,EAAE;YACX,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAC/B,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAU,EAAE,EAAE;gBAC/B,MAAM,IAAI,GAAG,CAAyB,CAAC;gBACvC,OAAO,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YAClD,CAAC,CAAC,CACH,CAAC;QACJ,CAAC,CAAC;QAEF,wCAAwC;QACxC,MAAM,YAAY,GAAG,MAAM,oBAAoB,EAAE,CAAC;QAClD,MAAM,SAAS,GACZ,KAAK,CAAC,IAAqD,IAAI,EAAE,CAAC;QACrE,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,EAAE,+BAA+B,CAAC,CAAC;QAClF,MAAM,eAAe,GAAG,cAAc,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAEvE,IAAI,CAAC,YAAY,IAAI,CAAC,cAAc,IAAI,eAAe,EAAE,CAAC;YACxD,aAAa,EAAE,CAAC;YAChB,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,SAAS,CAAC,oCAAoC,CAAC,CAAC;gBAClD,CAAC;gBACD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,SAAS,CAAC,oCAAoC,CAAC,CAAC;gBAClD,CAAC;gBACD,IAAI,eAAe,EAAE,CAAC;oBACpB,SAAS,CAAC,wFAAwF,CAAC,CAAC;gBACtG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,mCAAmC;gBACnC,MAAM,oBAAoB,EAAE,CAAC;gBAC7B,YAAY,CAAC,0CAA0C,CAAC,CAAC;gBAEzD,2DAA2D;gBAC3D,MAAM,iBAAiB,GAAG,SAAS,CAAC,MAAM,CACxC,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAU,EAAE,EAAE;oBAChC,MAAM,IAAI,GAAG,CAAyB,CAAC;oBACvC,OAAO,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;gBACrD,CAAC,CAAC,CACL,CAAC;gBAEF,yCAAyC;gBACzC,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,+BAA+B,CAAC,EAAE,CAAC;oBACxE,iBAAiB,CAAC,IAAI,CAAC;wBACrB,OAAO,EAAE,EAAE;wBACX,KAAK,EAAE;4BACL;gCACE,IAAI,EAAE,SAAS;gCACf,OAAO,EAAE,UAAU;6BACpB;yBACF;qBACF,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,CAAC,IAAI,GAAG,iBAAiB,CAAC;gBAC/B,YAAY,CAAC,yCAAyC,CAAC,CAAC;gBACxD,cAAc,EAAE,CAAC;YACnB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,wCAAwC,CAAC,CAAC;QACtD,CAAC;QAED,0EAA0E;QAC1E,uDAAuD;QAEvD,2CAA2C;QAC3C,IAAI,CAAC,MAAM,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YAClC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;YACvB,MAAM,SAAS,CACb,YAAY,EACZ,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CACzC,CAAC;QACJ,CAAC;QAED,UAAU;QACV,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;gBACxB,YAAY,CAAC,8BAA8B,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,KAAK,CACH,GAAG,aAAa,kDAAkD,EAClE,QAAQ,CACT,CACF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;gBACvB,YAAY,CAAC,WAAW,cAAc,YAAY,CAAC,CAAC;gBACpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC,CAAC;YACtE,CAAC;iBAAM,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;gBAC/B,YAAY,CAAC,sCAAsC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -9,7 +9,7 @@ import { registerInjectContextCommand } from "../hooks/inject-context.js";
|
|
|
9
9
|
import { registerProcessSessionCommand } from "../hooks/process-session.js";
|
|
10
10
|
import { registerBufferMessageCommand } from "../hooks/buffer-message.js";
|
|
11
11
|
// Get version from package.json
|
|
12
|
-
const VERSION = "0.2.
|
|
12
|
+
const VERSION = "0.2.7";
|
|
13
13
|
/**
|
|
14
14
|
* Create and configure the CLI.
|
|
15
15
|
*/
|
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Session end hook - process transcript and extract memories.
|
|
3
3
|
* @module hooks/process-session
|
|
4
|
-
*/
|
|
5
|
-
import type { CAC } from "cac";
|
|
6
|
-
/**
|
|
7
|
-
* Register the process-session hook command.
|
|
8
4
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* IMPORTANT: This command must:
|
|
13
|
-
* - Accept transcript from file or stdin
|
|
14
|
-
* - Log to stderr only
|
|
15
|
-
* - NEVER fail (always exit 0)
|
|
5
|
+
* Safety filters:
|
|
6
|
+
* - Only processes projects with .claudemindrc
|
|
7
|
+
* - The stop hook script also filters agent sessions by filename
|
|
16
8
|
*/
|
|
9
|
+
import type { CAC } from "cac";
|
|
17
10
|
export declare function registerProcessSessionCommand(cli: CAC): void;
|
|
18
11
|
//# sourceMappingURL=process-session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-session.d.ts","sourceRoot":"","sources":["../../src/hooks/process-session.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"process-session.d.ts","sourceRoot":"","sources":["../../src/hooks/process-session.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AA0K/B,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAkE5D"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Session end hook - process transcript and extract memories.
|
|
3
3
|
* @module hooks/process-session
|
|
4
|
+
*
|
|
5
|
+
* Safety filters:
|
|
6
|
+
* - Only processes projects with .claudemindrc
|
|
7
|
+
* - The stop hook script also filters agent sessions by filename
|
|
4
8
|
*/
|
|
5
|
-
import { readFile } from "node:fs/promises";
|
|
9
|
+
import { readFile, access } from "node:fs/promises";
|
|
6
10
|
import { createInterface } from "node:readline";
|
|
11
|
+
import { join } from "node:path";
|
|
7
12
|
import { Mind } from "../mind.js";
|
|
8
13
|
/**
|
|
9
14
|
* Parse JSONL transcript and extract meaningful conversation content.
|
|
@@ -131,6 +136,18 @@ async function readTranscript(filePath) {
|
|
|
131
136
|
* - Log to stderr only
|
|
132
137
|
* - NEVER fail (always exit 0)
|
|
133
138
|
*/
|
|
139
|
+
/**
|
|
140
|
+
* Check if a file exists.
|
|
141
|
+
*/
|
|
142
|
+
async function fileExists(path) {
|
|
143
|
+
try {
|
|
144
|
+
await access(path);
|
|
145
|
+
return true;
|
|
146
|
+
}
|
|
147
|
+
catch {
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
134
151
|
export function registerProcessSessionCommand(cli) {
|
|
135
152
|
cli
|
|
136
153
|
.command("process-session", "Process session transcript (hook)")
|
|
@@ -145,6 +162,14 @@ export function registerProcessSessionCommand(cli) {
|
|
|
145
162
|
opinionsFormed: 0,
|
|
146
163
|
};
|
|
147
164
|
try {
|
|
165
|
+
// Safety check: Only process if .claudemindrc exists in project
|
|
166
|
+
const configPath = join(projectPath, ".claudemindrc");
|
|
167
|
+
if (!(await fileExists(configPath))) {
|
|
168
|
+
result.error = "No .claudemindrc found (skipping)";
|
|
169
|
+
outputResult(result, options.json);
|
|
170
|
+
process.exit(0);
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
148
173
|
// Read transcript
|
|
149
174
|
const transcript = await readTranscript(options.transcript);
|
|
150
175
|
if (!transcript || transcript.trim().length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-session.js","sourceRoot":"","sources":["../../src/hooks/process-session.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"process-session.js","sourceRoot":"","sources":["../../src/hooks/process-session.ts"],"names":[],"mappings":"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"}
|