jfl 0.9.12 → 0.9.13
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/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../extensions/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../extensions/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAgKH,wBAA8B,YAAY,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CA4ajE"}
|
|
@@ -90,6 +90,73 @@ function getCurrentBranch(root) {
|
|
|
90
90
|
// first one initializes — which is the local dev version (Pi loads project-
|
|
91
91
|
// local extensions before global packages).
|
|
92
92
|
const JFL_LOADED = Symbol.for("jfl-pi-extension-loaded");
|
|
93
|
+
// ─── Pi TUI compatibility layer ──────────────────────────────────────────────
|
|
94
|
+
// Pi 0.62.0+ requires renderCall/renderResult to return Component instances
|
|
95
|
+
// (new Text(...)). We dynamically import pi-tui at runtime and wrap our
|
|
96
|
+
// string-based renderers. If the import fails (older Pi, different install),
|
|
97
|
+
// renderers are disabled and Pi uses its default fallback rendering.
|
|
98
|
+
let PiText = null;
|
|
99
|
+
async function loadPiTui() {
|
|
100
|
+
try {
|
|
101
|
+
// pi-tui lives inside Pi's own node_modules, not ours.
|
|
102
|
+
// We run inside Pi's process but our file location is in jfl's package tree,
|
|
103
|
+
// so normal import() can't resolve it. Use createRequire from Pi's location.
|
|
104
|
+
const { createRequire } = await import("module");
|
|
105
|
+
const { execSync } = await import("child_process");
|
|
106
|
+
const piPath = execSync("which pi", { encoding: "utf-8" }).trim();
|
|
107
|
+
// Follow symlink to real path (e.g. npm global → dist/cli.js)
|
|
108
|
+
const { realpathSync } = await import("fs");
|
|
109
|
+
const realPi = realpathSync(piPath);
|
|
110
|
+
const piRequire = createRequire(realPi);
|
|
111
|
+
const tuiPath = piRequire.resolve("@mariozechner/pi-tui");
|
|
112
|
+
const tui = await import(tuiPath);
|
|
113
|
+
PiText = tui.Text;
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
// pi-tui not resolvable — disable custom renderers, Pi uses fallback
|
|
117
|
+
PiText = null;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Wrap a string-based renderer into a Pi Component.
|
|
122
|
+
* If pi-tui is available, returns new Text(). Otherwise returns undefined
|
|
123
|
+
* so Pi falls back to default rendering.
|
|
124
|
+
*/
|
|
125
|
+
function wrapRenderer(fn) {
|
|
126
|
+
if (!fn || !PiText)
|
|
127
|
+
return undefined;
|
|
128
|
+
return (args, theme, _context) => {
|
|
129
|
+
try {
|
|
130
|
+
const result = fn(args, theme);
|
|
131
|
+
// Old renderers return { render, invalidate }. Extract the lines.
|
|
132
|
+
if (result && typeof result.render === "function") {
|
|
133
|
+
const lines = result.render(140);
|
|
134
|
+
return new PiText(lines.join("\n"), 0, 0);
|
|
135
|
+
}
|
|
136
|
+
return result;
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
return undefined;
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
function wrapResultRenderer(fn) {
|
|
144
|
+
if (!fn || !PiText)
|
|
145
|
+
return undefined;
|
|
146
|
+
return (result, opts, theme, _context) => {
|
|
147
|
+
try {
|
|
148
|
+
const rendered = fn(result, opts, theme);
|
|
149
|
+
if (rendered && typeof rendered.render === "function") {
|
|
150
|
+
const lines = rendered.render(140);
|
|
151
|
+
return new PiText(lines.join("\n"), 0, 0);
|
|
152
|
+
}
|
|
153
|
+
return rendered;
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
return undefined;
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
}
|
|
93
160
|
// ─── Pi extension factory function ───────────────────────────────────────────
|
|
94
161
|
export default async function jflExtension(pi) {
|
|
95
162
|
// Skip if already loaded from another source (dedup)
|
|
@@ -97,6 +164,8 @@ export default async function jflExtension(pi) {
|
|
|
97
164
|
return;
|
|
98
165
|
}
|
|
99
166
|
globalThis[JFL_LOADED] = true;
|
|
167
|
+
// Load Pi TUI for renderer compatibility — non-blocking, non-fatal
|
|
168
|
+
await loadPiTui();
|
|
100
169
|
let projectCwd = process.cwd();
|
|
101
170
|
let latestPiCtx = null;
|
|
102
171
|
const internalHandlers = new Map();
|
|
@@ -157,12 +226,8 @@ export default async function jflExtension(pi) {
|
|
|
157
226
|
throw new Error(`${err}`);
|
|
158
227
|
}
|
|
159
228
|
},
|
|
160
|
-
renderCall: tool.renderCall
|
|
161
|
-
|
|
162
|
-
: undefined,
|
|
163
|
-
renderResult: tool.renderResult
|
|
164
|
-
? (result, options, theme) => tool.renderResult(result, options, theme)
|
|
165
|
-
: undefined,
|
|
229
|
+
renderCall: wrapRenderer(tool.renderCall),
|
|
230
|
+
renderResult: wrapResultRenderer(tool.renderResult),
|
|
166
231
|
});
|
|
167
232
|
},
|
|
168
233
|
registerCommand: (cmd) => {
|
|
@@ -372,44 +437,69 @@ export default async function jflExtension(pi) {
|
|
|
372
437
|
});
|
|
373
438
|
pi.on("session_shutdown", async (_event, piCtx) => {
|
|
374
439
|
latestPiCtx = piCtx;
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
440
|
+
try {
|
|
441
|
+
onMeshShutdown();
|
|
442
|
+
await onPortfolioShutdown(ctx);
|
|
443
|
+
await onShutdown(ctx);
|
|
444
|
+
await onMapBridgeShutdown(ctx);
|
|
445
|
+
}
|
|
446
|
+
catch (err) {
|
|
447
|
+
ctx.log(`session_shutdown error: ${err}`, "warn");
|
|
448
|
+
}
|
|
379
449
|
});
|
|
380
450
|
pi.on("session_before_compact", async (_event, piCtx) => {
|
|
381
451
|
latestPiCtx = piCtx;
|
|
382
|
-
|
|
452
|
+
try {
|
|
453
|
+
return checkJournalBeforeCompact(ctx);
|
|
454
|
+
}
|
|
455
|
+
catch (err) {
|
|
456
|
+
ctx.log(`session_before_compact error: ${err}`, "warn");
|
|
457
|
+
}
|
|
383
458
|
});
|
|
384
459
|
pi.on("before_agent_start", async (event, _piCtx) => {
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
460
|
+
try {
|
|
461
|
+
const result = await injectContext(ctx, event);
|
|
462
|
+
const meshState = injectMeshContext();
|
|
463
|
+
const additions = [
|
|
464
|
+
result?.systemPromptAddition,
|
|
465
|
+
meshState,
|
|
466
|
+
].filter(Boolean).join("\n\n");
|
|
467
|
+
if (additions) {
|
|
468
|
+
const current = event.systemPrompt ?? "";
|
|
469
|
+
return {
|
|
470
|
+
systemPrompt: current
|
|
471
|
+
? `${current}\n\n${additions}`
|
|
472
|
+
: additions,
|
|
473
|
+
};
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
catch (err) {
|
|
477
|
+
ctx.log(`before_agent_start error: ${err}`, "warn");
|
|
398
478
|
}
|
|
399
479
|
});
|
|
400
480
|
pi.on("agent_start", async (event, piCtx) => {
|
|
401
481
|
latestPiCtx = piCtx;
|
|
402
|
-
|
|
403
|
-
|
|
482
|
+
try {
|
|
483
|
+
await onStratusStart(ctx, event);
|
|
484
|
+
jflEmit("agent:start", event);
|
|
485
|
+
}
|
|
486
|
+
catch (err) {
|
|
487
|
+
ctx.log(`agent_start error: ${err}`, "warn");
|
|
488
|
+
}
|
|
404
489
|
});
|
|
405
490
|
pi.on("agent_end", async (event, piCtx) => {
|
|
406
491
|
latestPiCtx = piCtx;
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
492
|
+
try {
|
|
493
|
+
await onStratusEnd(ctx, event);
|
|
494
|
+
await onEvalEnd(ctx, event);
|
|
495
|
+
await onTrainingAgentEnd(ctx, event);
|
|
496
|
+
await updateHudWidget(ctx);
|
|
497
|
+
await onJournalAgentEnd(ctx, event);
|
|
498
|
+
jflEmit("agent:end", event);
|
|
499
|
+
}
|
|
500
|
+
catch (err) {
|
|
501
|
+
ctx.log(`agent_end error: ${err}`, "warn");
|
|
502
|
+
}
|
|
413
503
|
});
|
|
414
504
|
pi.on("turn_start", async (event, piCtx) => {
|
|
415
505
|
latestPiCtx = piCtx;
|
|
@@ -422,28 +512,37 @@ export default async function jflExtension(pi) {
|
|
|
422
512
|
});
|
|
423
513
|
// UserPromptSubmit equivalent — detect approval/done patterns in user input
|
|
424
514
|
pi.on("input", async (event, _piCtx) => {
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
515
|
+
try {
|
|
516
|
+
const text = (event.text ?? "").trim();
|
|
517
|
+
if (!text)
|
|
518
|
+
return { action: "continue" };
|
|
519
|
+
const approvalPatterns = /\b(done|approved|ship it|looks good|lgtm|merge it|go ahead|good to go)\b/i;
|
|
520
|
+
if (approvalPatterns.test(text)) {
|
|
521
|
+
const branch = getCurrentBranch(ctx.session.projectRoot);
|
|
522
|
+
const hasJournal = hasJournalEntryForSession(ctx.session.projectRoot, branch);
|
|
523
|
+
if (!hasJournal) {
|
|
524
|
+
return {
|
|
525
|
+
action: "transform",
|
|
526
|
+
text: `${event.text}\n\n[System: The user just approved/completed something. Write a journal entry NOW before proceeding — capture what was approved, decisions made, and next steps. Use the journal format from CLAUDE.md.]`,
|
|
527
|
+
};
|
|
528
|
+
}
|
|
438
529
|
}
|
|
439
530
|
}
|
|
531
|
+
catch (err) {
|
|
532
|
+
ctx.log(`input handler error: ${err}`, "warn");
|
|
533
|
+
}
|
|
440
534
|
return { action: "continue" };
|
|
441
535
|
});
|
|
442
536
|
pi.on("tool_execution_end", async (event, piCtx) => {
|
|
443
537
|
latestPiCtx = piCtx;
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
538
|
+
try {
|
|
539
|
+
await onToolExecutionEnd(ctx, event); // git commit → journal nudge
|
|
540
|
+
checkPurposeHeader(ctx, event); // Write/Edit → @purpose check
|
|
541
|
+
await onMapToolEnd(ctx, event); // hub event bus
|
|
542
|
+
}
|
|
543
|
+
catch (err) {
|
|
544
|
+
ctx.log(`tool_execution_end error: ${err}`, "warn");
|
|
545
|
+
}
|
|
447
546
|
});
|
|
448
547
|
pi.on("model_select", async (event, piCtx) => {
|
|
449
548
|
latestPiCtx = piCtx;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../extensions/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../extensions/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -94,6 +94,77 @@ function getCurrentBranch(root: string): string {
|
|
|
94
94
|
|
|
95
95
|
const JFL_LOADED = Symbol.for("jfl-pi-extension-loaded")
|
|
96
96
|
|
|
97
|
+
// ─── Pi TUI compatibility layer ──────────────────────────────────────────────
|
|
98
|
+
// Pi 0.62.0+ requires renderCall/renderResult to return Component instances
|
|
99
|
+
// (new Text(...)). We dynamically import pi-tui at runtime and wrap our
|
|
100
|
+
// string-based renderers. If the import fails (older Pi, different install),
|
|
101
|
+
// renderers are disabled and Pi uses its default fallback rendering.
|
|
102
|
+
|
|
103
|
+
let PiText: (new (text: string, px: number, py: number) => any) | null = null
|
|
104
|
+
|
|
105
|
+
async function loadPiTui(): Promise<void> {
|
|
106
|
+
try {
|
|
107
|
+
// pi-tui lives inside Pi's own node_modules, not ours.
|
|
108
|
+
// We run inside Pi's process but our file location is in jfl's package tree,
|
|
109
|
+
// so normal import() can't resolve it. Use createRequire from Pi's location.
|
|
110
|
+
const { createRequire } = await import("module")
|
|
111
|
+
const { execSync } = await import("child_process")
|
|
112
|
+
const piPath = execSync("which pi", { encoding: "utf-8" }).trim()
|
|
113
|
+
// Follow symlink to real path (e.g. npm global → dist/cli.js)
|
|
114
|
+
const { realpathSync } = await import("fs")
|
|
115
|
+
const realPi = realpathSync(piPath)
|
|
116
|
+
const piRequire = createRequire(realPi)
|
|
117
|
+
const tuiPath = piRequire.resolve("@mariozechner/pi-tui")
|
|
118
|
+
const tui = await import(tuiPath)
|
|
119
|
+
PiText = tui.Text
|
|
120
|
+
} catch {
|
|
121
|
+
// pi-tui not resolvable — disable custom renderers, Pi uses fallback
|
|
122
|
+
PiText = null
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Wrap a string-based renderer into a Pi Component.
|
|
128
|
+
* If pi-tui is available, returns new Text(). Otherwise returns undefined
|
|
129
|
+
* so Pi falls back to default rendering.
|
|
130
|
+
*/
|
|
131
|
+
function wrapRenderer(
|
|
132
|
+
fn: ((args: any, theme: any) => any) | undefined
|
|
133
|
+
): ((args: any, theme: any, context: any) => any) | undefined {
|
|
134
|
+
if (!fn || !PiText) return undefined
|
|
135
|
+
return (args: any, theme: any, _context: any) => {
|
|
136
|
+
try {
|
|
137
|
+
const result = fn(args, theme)
|
|
138
|
+
// Old renderers return { render, invalidate }. Extract the lines.
|
|
139
|
+
if (result && typeof result.render === "function") {
|
|
140
|
+
const lines: string[] = result.render(140)
|
|
141
|
+
return new PiText!(lines.join("\n"), 0, 0)
|
|
142
|
+
}
|
|
143
|
+
return result
|
|
144
|
+
} catch {
|
|
145
|
+
return undefined
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
function wrapResultRenderer(
|
|
151
|
+
fn: ((result: any, opts: any, theme: any) => any) | undefined
|
|
152
|
+
): ((result: any, opts: any, theme: any, context: any) => any) | undefined {
|
|
153
|
+
if (!fn || !PiText) return undefined
|
|
154
|
+
return (result: any, opts: any, theme: any, _context: any) => {
|
|
155
|
+
try {
|
|
156
|
+
const rendered = fn(result, opts, theme)
|
|
157
|
+
if (rendered && typeof rendered.render === "function") {
|
|
158
|
+
const lines: string[] = rendered.render(140)
|
|
159
|
+
return new PiText!(lines.join("\n"), 0, 0)
|
|
160
|
+
}
|
|
161
|
+
return rendered
|
|
162
|
+
} catch {
|
|
163
|
+
return undefined
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
97
168
|
// ─── Pi extension factory function ───────────────────────────────────────────
|
|
98
169
|
|
|
99
170
|
export default async function jflExtension(pi: any): Promise<void> {
|
|
@@ -103,6 +174,9 @@ export default async function jflExtension(pi: any): Promise<void> {
|
|
|
103
174
|
}
|
|
104
175
|
(globalThis as any)[JFL_LOADED] = true
|
|
105
176
|
|
|
177
|
+
// Load Pi TUI for renderer compatibility — non-blocking, non-fatal
|
|
178
|
+
await loadPiTui()
|
|
179
|
+
|
|
106
180
|
let projectCwd = process.cwd()
|
|
107
181
|
let latestPiCtx: any = null
|
|
108
182
|
|
|
@@ -170,12 +244,8 @@ export default async function jflExtension(pi: any): Promise<void> {
|
|
|
170
244
|
throw new Error(`${err}`)
|
|
171
245
|
}
|
|
172
246
|
},
|
|
173
|
-
renderCall: tool.renderCall
|
|
174
|
-
|
|
175
|
-
: undefined,
|
|
176
|
-
renderResult: tool.renderResult
|
|
177
|
-
? (result: any, options: any, theme: PiTheme) => tool.renderResult!(result, options, theme)
|
|
178
|
-
: undefined,
|
|
247
|
+
renderCall: wrapRenderer(tool.renderCall),
|
|
248
|
+
renderResult: wrapResultRenderer(tool.renderResult),
|
|
179
249
|
})
|
|
180
250
|
},
|
|
181
251
|
|
|
@@ -410,49 +480,69 @@ export default async function jflExtension(pi: any): Promise<void> {
|
|
|
410
480
|
|
|
411
481
|
pi.on("session_shutdown", async (_event: unknown, piCtx: any) => {
|
|
412
482
|
latestPiCtx = piCtx
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
483
|
+
try {
|
|
484
|
+
onMeshShutdown()
|
|
485
|
+
await onPortfolioShutdown(ctx)
|
|
486
|
+
await onShutdown(ctx)
|
|
487
|
+
await onMapBridgeShutdown(ctx)
|
|
488
|
+
} catch (err) {
|
|
489
|
+
ctx.log(`session_shutdown error: ${err}`, "warn")
|
|
490
|
+
}
|
|
417
491
|
})
|
|
418
492
|
|
|
419
493
|
pi.on("session_before_compact", async (_event: unknown, piCtx: any) => {
|
|
420
494
|
latestPiCtx = piCtx
|
|
421
|
-
|
|
495
|
+
try {
|
|
496
|
+
return checkJournalBeforeCompact(ctx)
|
|
497
|
+
} catch (err) {
|
|
498
|
+
ctx.log(`session_before_compact error: ${err}`, "warn")
|
|
499
|
+
}
|
|
422
500
|
})
|
|
423
501
|
|
|
424
502
|
pi.on("before_agent_start", async (event: any, _piCtx: any) => {
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
503
|
+
try {
|
|
504
|
+
const result = await injectContext(ctx, event)
|
|
505
|
+
const meshState = injectMeshContext()
|
|
506
|
+
const additions = [
|
|
507
|
+
result?.systemPromptAddition,
|
|
508
|
+
meshState,
|
|
509
|
+
].filter(Boolean).join("\n\n")
|
|
510
|
+
|
|
511
|
+
if (additions) {
|
|
512
|
+
const current = (event.systemPrompt as string) ?? ""
|
|
513
|
+
return {
|
|
514
|
+
systemPrompt: current
|
|
515
|
+
? `${current}\n\n${additions}`
|
|
516
|
+
: additions,
|
|
517
|
+
}
|
|
438
518
|
}
|
|
519
|
+
} catch (err) {
|
|
520
|
+
ctx.log(`before_agent_start error: ${err}`, "warn")
|
|
439
521
|
}
|
|
440
522
|
})
|
|
441
523
|
|
|
442
524
|
pi.on("agent_start", async (event: any, piCtx: any) => {
|
|
443
525
|
latestPiCtx = piCtx
|
|
444
|
-
|
|
445
|
-
|
|
526
|
+
try {
|
|
527
|
+
await onStratusStart(ctx, event)
|
|
528
|
+
jflEmit("agent:start", event)
|
|
529
|
+
} catch (err) {
|
|
530
|
+
ctx.log(`agent_start error: ${err}`, "warn")
|
|
531
|
+
}
|
|
446
532
|
})
|
|
447
533
|
|
|
448
534
|
pi.on("agent_end", async (event: any, piCtx: any) => {
|
|
449
535
|
latestPiCtx = piCtx
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
536
|
+
try {
|
|
537
|
+
await onStratusEnd(ctx, event)
|
|
538
|
+
await onEvalEnd(ctx, event)
|
|
539
|
+
await onTrainingAgentEnd(ctx, event)
|
|
540
|
+
await updateHudWidget(ctx)
|
|
541
|
+
await onJournalAgentEnd(ctx, event)
|
|
542
|
+
jflEmit("agent:end", event)
|
|
543
|
+
} catch (err) {
|
|
544
|
+
ctx.log(`agent_end error: ${err}`, "warn")
|
|
545
|
+
}
|
|
456
546
|
})
|
|
457
547
|
|
|
458
548
|
pi.on("turn_start", async (event: any, piCtx: any) => {
|
|
@@ -468,29 +558,36 @@ export default async function jflExtension(pi: any): Promise<void> {
|
|
|
468
558
|
|
|
469
559
|
// UserPromptSubmit equivalent — detect approval/done patterns in user input
|
|
470
560
|
pi.on("input", async (event: any, _piCtx: any) => {
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
561
|
+
try {
|
|
562
|
+
const text = (event.text ?? "").trim()
|
|
563
|
+
if (!text) return { action: "continue" }
|
|
564
|
+
|
|
565
|
+
const approvalPatterns = /\b(done|approved|ship it|looks good|lgtm|merge it|go ahead|good to go)\b/i
|
|
566
|
+
if (approvalPatterns.test(text)) {
|
|
567
|
+
const branch = getCurrentBranch(ctx.session.projectRoot)
|
|
568
|
+
const hasJournal = hasJournalEntryForSession(ctx.session.projectRoot, branch)
|
|
569
|
+
if (!hasJournal) {
|
|
570
|
+
return {
|
|
571
|
+
action: "transform",
|
|
572
|
+
text: `${event.text}\n\n[System: The user just approved/completed something. Write a journal entry NOW before proceeding — capture what was approved, decisions made, and next steps. Use the journal format from CLAUDE.md.]`,
|
|
573
|
+
}
|
|
483
574
|
}
|
|
484
575
|
}
|
|
576
|
+
} catch (err) {
|
|
577
|
+
ctx.log(`input handler error: ${err}`, "warn")
|
|
485
578
|
}
|
|
486
579
|
return { action: "continue" }
|
|
487
580
|
})
|
|
488
581
|
|
|
489
582
|
pi.on("tool_execution_end", async (event: any, piCtx: any) => {
|
|
490
583
|
latestPiCtx = piCtx
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
584
|
+
try {
|
|
585
|
+
await onToolExecutionEnd(ctx, event) // git commit → journal nudge
|
|
586
|
+
checkPurposeHeader(ctx, event) // Write/Edit → @purpose check
|
|
587
|
+
await onMapToolEnd(ctx, event) // hub event bus
|
|
588
|
+
} catch (err) {
|
|
589
|
+
ctx.log(`tool_execution_end error: ${err}`, "warn")
|
|
590
|
+
}
|
|
494
591
|
})
|
|
495
592
|
|
|
496
593
|
pi.on("model_select", async (event: any, piCtx: any) => {
|