@nexus-cortex/core 4.124.5 → 4.124.7
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/.env.defaults +13 -0
- package/dist/config/RuntimeConfigRegistry.d.ts.map +1 -1
- package/dist/config/RuntimeConfigRegistry.js +1 -0
- package/dist/config/RuntimeConfigRegistry.js.map +1 -1
- package/dist/config/SettingsLoader.d.ts.map +1 -1
- package/dist/config/SettingsLoader.js +1 -0
- package/dist/config/SettingsLoader.js.map +1 -1
- package/dist/config/SettingsSchema.d.ts +1 -0
- package/dist/config/SettingsSchema.d.ts.map +1 -1
- package/dist/config/SettingsSchema.js +1 -0
- package/dist/config/SettingsSchema.js.map +1 -1
- package/dist/config/effectiveConfig.d.ts.map +1 -1
- package/dist/config/effectiveConfig.js +1 -0
- package/dist/config/effectiveConfig.js.map +1 -1
- package/dist/frames/frameConfig.d.ts +2 -1
- package/dist/frames/frameConfig.d.ts.map +1 -1
- package/dist/frames/frameConfig.js +4 -3
- package/dist/frames/frameConfig.js.map +1 -1
- package/dist/frames/frameRunner.d.ts +4 -0
- package/dist/frames/frameRunner.d.ts.map +1 -1
- package/dist/frames/frameRunner.js +71 -10
- package/dist/frames/frameRunner.js.map +1 -1
- package/dist/frames/terminusFrame.d.ts +33 -1
- package/dist/frames/terminusFrame.d.ts.map +1 -1
- package/dist/frames/terminusFrame.js +106 -3
- package/dist/frames/terminusFrame.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frameConfig.d.ts","sourceRoot":"","sources":["../../src/frames/frameConfig.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAC7H,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAC7C,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAC7C,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,CAAC;AACxC,MAAM,WAAW,WAAW;IAAG,KAAK,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE;
|
|
1
|
+
{"version":3,"file":"frameConfig.d.ts","sourceRoot":"","sources":["../../src/frames/frameConfig.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAC7H,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAC7C,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAC7C,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,CAAC;AACxC,MAAM,WAAW,WAAW;IAAG,KAAK,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE;AACrJ,eAAO,MAAM,qBAAqB,EAAE,WAA8G,CAAC;AAEnJ,gQAAgQ;AAChQ,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,WAAW,CAWpF;AAKD,iHAAiH;AACjH,eAAO,MAAM,cAAc,QAAiJ,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** R179 HB-TERMINUS-FRAME — config resolver + the frame contract (design: docs/R179_TERMINUS_FRAME_PORT_DESIGN.md). Pure. */
|
|
2
2
|
export const FRAME_TOOL_NAME = 'FrameAction';
|
|
3
|
-
export const FRAME_CONFIG_DEFAULTS = { frame: 'tools', chooser: 'off', candidates: 1, waitCapS: 60, screenLines: 45 };
|
|
4
|
-
/** `CORTEX_FRAME=tools|terminus`, `CORTEX_FRAME_CHOOSER=off|jev`, `CORTEX_FRAME_CANDIDATES` 1..3, `CORTEX_FRAME_WAIT_CAP_S` 5..600 (the cap on ONE action's requested wait; default 60). */
|
|
3
|
+
export const FRAME_CONFIG_DEFAULTS = { frame: 'tools', chooser: 'off', candidates: 1, waitCapS: 60, screenLines: 45, keyGuard: true };
|
|
4
|
+
/** `CORTEX_FRAME=tools|terminus`, `CORTEX_FRAME_CHOOSER=off|jev`, `CORTEX_FRAME_CANDIDATES` 1..3, `CORTEX_FRAME_WAIT_CAP_S` 5..600 (the cap on ONE action's requested wait; default 60), `CORTEX_FRAME_KEY_GUARD=on|off` (R182 keystroke guard; default on). */
|
|
5
5
|
export function resolveFrameConfig(env = process.env) {
|
|
6
6
|
const frame = (env.CORTEX_FRAME || '').trim().toLowerCase() === 'terminus' ? 'terminus' : 'tools';
|
|
7
7
|
const chooser = (env.CORTEX_FRAME_CHOOSER || '').trim().toLowerCase() === 'jev' ? 'jev' : 'off';
|
|
@@ -13,10 +13,11 @@ export function resolveFrameConfig(env = process.env) {
|
|
|
13
13
|
candidates: Number.isInteger(c) && c >= 1 ? Math.min(3, c) : FRAME_CONFIG_DEFAULTS.candidates,
|
|
14
14
|
waitCapS: Number.isFinite(w) && w >= 5 ? Math.min(600, w) : FRAME_CONFIG_DEFAULTS.waitCapS,
|
|
15
15
|
screenLines: Number.isInteger(l) && l >= 10 ? Math.min(400, l) : FRAME_CONFIG_DEFAULTS.screenLines,
|
|
16
|
+
keyGuard: !/^(off|false|0|no)$/i.test((env.CORTEX_FRAME_KEY_GUARD || '').trim()),
|
|
16
17
|
};
|
|
17
18
|
}
|
|
18
19
|
/** Appended to the system prompt on turn 0 (the static prefix is pinned per conversation — never changes after). */
|
|
19
|
-
const FRAME_CONTRACT_BASE = `TERMINAL FRAME. You work in ONE interactive terminal (a tmux pane). Your only action is the FrameAction tool: give your analysis of the current screen, your plan, and one to three candidate actions, each with the exact keystrokes to type (end a command with \\n to run it; tmux key names such as C-c are allowed) and how many seconds to wait before looking again (default 3; use larger waits only for commands you know run long; a command still running is handed back to you marked STILL RUNNING, and the WAIT / INTERRUPT / SHOW MORE OUTPUT / RUN THE TASK'S TEST / RE-READ THE TASK / FINISH templates are always available by naming one in a candidate label). The harness executes ONE candidate (your first unless a harness gate chooses otherwise), waits, and returns the screen, a STATE line (turn, commands run, last exit code, budget) and the templates it can run for you. THE PANE IS SMALL: you see only the LAST 45 lines after each action, and SHOW MORE OUTPUT reveals at most 180. Anything longer is lost and costs you turns. So make every command narrow and specific on purpose: grep -n with a tight pattern and -m/--max-count, head -n 20 / tail -n 20 / sed -n 'a,bp' on the exact range you need, wc -l before printing, ls of one directory, one file at a time. Prefer several small, precise commands over one broad one. When output must be long (a build, a test run, an install), redirect it (cmd > /tmp/out.txt 2>&1), then query the file with grep/tail — never re-run it to see what scrolled off. Read the screen before every action; do not repeat a command that already ran with nothing changed; when a command is still running you can wait or interrupt it. When the task is complete, call EndTurn with your attestation as usual.`;
|
|
20
|
+
const FRAME_CONTRACT_BASE = `TERMINAL FRAME. You work in ONE interactive terminal (a tmux pane). Your only action is the FrameAction tool: give your analysis of the current screen, your plan, and one to three candidate actions, each with the exact keystrokes to type (end a command with \\n to run it; tmux key names such as C-c are allowed) and how many seconds to wait before looking again (default 3; use larger waits only for commands you know run long; a command still running is handed back to you marked STILL RUNNING, and the WAIT / INTERRUPT / SHOW MORE OUTPUT / RUN THE TASK'S TEST / RE-READ THE TASK / FINISH templates are always available by naming one in a candidate label). The harness executes ONE candidate (your first unless a harness gate chooses otherwise), waits, and returns the screen, a STATE line (turn, commands run, last exit code, budget) and the templates it can run for you. THE PANE IS SMALL: you see only the LAST 45 lines after each action, and SHOW MORE OUTPUT reveals at most 180. Anything longer is lost and costs you turns. So make every command narrow and specific on purpose: grep -n with a tight pattern and -m/--max-count, head -n 20 / tail -n 20 / sed -n 'a,bp' on the exact range you need, wc -l before printing, ls of one directory, one file at a time. Prefer several small, precise commands over one broad one. When output must be long (a build, a test run, an install), redirect it (cmd > /tmp/out.txt 2>&1), then query the file with grep/tail — never re-run it to see what scrolled off. Read the screen before every action; do not repeat a command that already ran with nothing changed; when a command is still running you can wait or interrupt it. NEVER send C-d or exit to the shell: that kills the pane (a keystroke guard refuses pane-killing and destructive commands and tells you why). If the pane stops answering, the harness offers RESET THE PANE (a fresh shell in the task directory) — name it. When the task is complete, call EndTurn with your attestation as usual.`;
|
|
20
21
|
/** The turn-0 contract; `CORTEX_FRAME_CONTRACT_EXTRA` (env) appends cell-specific guidance without a release. */
|
|
21
22
|
export const FRAME_CONTRACT = FRAME_CONTRACT_BASE + ((process.env.CORTEX_FRAME_CONTRACT_EXTRA || '').trim() ? `\n\n${process.env.CORTEX_FRAME_CONTRACT_EXTRA.trim()}` : '');
|
|
22
23
|
//# sourceMappingURL=frameConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frameConfig.js","sourceRoot":"","sources":["../../src/frames/frameConfig.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAC7H,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;AAI7C,MAAM,CAAC,MAAM,qBAAqB,GAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"frameConfig.js","sourceRoot":"","sources":["../../src/frames/frameConfig.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAC7H,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;AAI7C,MAAM,CAAC,MAAM,qBAAqB,GAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAEnJ,gQAAgQ;AAChQ,MAAM,UAAU,kBAAkB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACrE,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;IAClG,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAChG,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAC9I,OAAO;QACL,KAAK,EAAE,OAAO;QACd,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,UAAU;QAC7F,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,QAAQ;QAC1F,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,WAAW;QAClG,QAAQ,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;KACjF,CAAC;AACJ,CAAC;AAED,oHAAoH;AACpH,MAAM,mBAAmB,GAAG,y8DAAy8D,CAAC;AAEt+D,iHAAiH;AACjH,MAAM,CAAC,MAAM,cAAc,GAAG,mBAAmB,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,GAAG,CAAC,2BAA4B,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -34,11 +34,15 @@ export declare class FrameRunner {
|
|
|
34
34
|
private lastScreen;
|
|
35
35
|
private lastClipped;
|
|
36
36
|
private lastTemplateKey;
|
|
37
|
+
private paneDead;
|
|
38
|
+
private paneResets;
|
|
37
39
|
private readonly sleep;
|
|
38
40
|
private readonly now;
|
|
39
41
|
constructor(cfg: FrameConfig, deps: FrameDeps);
|
|
40
42
|
private ensureSession;
|
|
41
43
|
private capture;
|
|
44
|
+
/** R180: kill whatever is left of the pane and start a fresh shell in the task directory. Returns the note the writer sees. */
|
|
45
|
+
private resetPane;
|
|
42
46
|
private sendKeys;
|
|
43
47
|
/** Wait exactly the candidate's duration (capped), then one short grace while the screen still changes; never longer. Returns the screen. */
|
|
44
48
|
private waitAndObserve;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frameRunner.d.ts","sourceRoot":"","sources":["../../src/frames/frameRunner.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAClG,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACrE,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IACpJ,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AACD,MAAM,WAAW,cAAc;IAAG,MAAM,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE;AACtL,MAAM,WAAW,eAAe;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE;AAgBrG,qBAAa,WAAW;
|
|
1
|
+
{"version":3,"file":"frameRunner.d.ts","sourceRoot":"","sources":["../../src/frames/frameRunner.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAClG,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACrE,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IACpJ,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AACD,MAAM,WAAW,cAAc;IAAG,MAAM,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE;AACtL,MAAM,WAAW,eAAe;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE;AAgBrG,qBAAa,WAAW;IAYV,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAe,OAAO,CAAC,QAAQ,CAAC,IAAI;IAXpE,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgC;IACtD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBACN,GAAG,EAAE,WAAW,EAAmB,IAAI,EAAE,SAAS;YAKjE,aAAa;YAUb,OAAO;IAUrB,+HAA+H;YACjH,SAAS;YAST,QAAQ;IAQtB,6IAA6I;YAC/H,cAAc;IAuBtB,IAAI,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;CA+D5D"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* (screen + state card + templates) as the FrameAction tool_result. Holds the frame's durable state for the session (history, running
|
|
5
5
|
* command, tmux session id). Everything decision-shaped is in the pure modules; this file is plumbing + waiting.
|
|
6
6
|
*/
|
|
7
|
-
import { buildStateCard, buildMenu, buildFrameSuffix, clipScreen, parsePromptRc, promptIsBack, waitPolicy, extractTaskTestCommand, parseFrameAction, stripAnsi, normalizeKeys, FRAME_DEFAULTS } from './terminusFrame.js';
|
|
7
|
+
import { buildStateCard, buildMenu, buildFrameSuffix, clipScreen, parsePromptRc, promptIsBack, waitPolicy, extractTaskTestCommand, parseFrameAction, stripAnsi, normalizeKeys, paneIsDead, paneWedged, applyNamedTemplates, applyKeyGuard, FRAME_DEFAULTS } from './terminusFrame.js';
|
|
8
8
|
import { buildChooserState, buildChooserQuestions, decideChooser, buildChooserRow } from './chooser.js';
|
|
9
9
|
const RAW_KEY_RE = /^(C-[a-z\[\]\\^_]|M-[a-z]|Enter|Escape|Tab|Up|Down|Left|Right|Space|BSpace|DC|Home|End|PPage|NPage|F\d{1,2})$/;
|
|
10
10
|
function resultText(r) {
|
|
@@ -29,6 +29,8 @@ export class FrameRunner {
|
|
|
29
29
|
lastScreen = '';
|
|
30
30
|
lastClipped = false;
|
|
31
31
|
lastTemplateKey = '';
|
|
32
|
+
paneDead = false;
|
|
33
|
+
paneResets = 0;
|
|
32
34
|
sleep;
|
|
33
35
|
now;
|
|
34
36
|
constructor(cfg, deps) {
|
|
@@ -48,8 +50,39 @@ export class FrameRunner {
|
|
|
48
50
|
await this.sleep(800);
|
|
49
51
|
}
|
|
50
52
|
async capture(lines, signal) {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
+
let text;
|
|
54
|
+
try {
|
|
55
|
+
text = resultText(await this.deps.execute('TmuxSession', { action: 'capture', sessionId: this.tmuxSession, lines }, signal));
|
|
56
|
+
}
|
|
57
|
+
catch (e) {
|
|
58
|
+
text = String(e?.message ?? e);
|
|
59
|
+
}
|
|
60
|
+
// R180: the session is gone (the writer sent C-d / `exit`, or the shell crashed) — remember it so the next step respawns instead of
|
|
61
|
+
// handing a dead pane back turn after turn.
|
|
62
|
+
if (paneIsDead(text)) {
|
|
63
|
+
this.paneDead = true;
|
|
64
|
+
return text;
|
|
65
|
+
}
|
|
66
|
+
return stripAnsi(unwrapCapture(text));
|
|
67
|
+
}
|
|
68
|
+
/** R180: kill whatever is left of the pane and start a fresh shell in the task directory. Returns the note the writer sees. */
|
|
69
|
+
async resetPane(cwd, sessionId, why, signal) {
|
|
70
|
+
if (this.tmuxSession) {
|
|
71
|
+
try {
|
|
72
|
+
await this.deps.execute('TmuxSession', { action: 'kill', sessionId: this.tmuxSession }, signal);
|
|
73
|
+
}
|
|
74
|
+
catch { /* already gone */ }
|
|
75
|
+
}
|
|
76
|
+
this.tmuxSession = null;
|
|
77
|
+
this.paneDead = false;
|
|
78
|
+
this.running = false;
|
|
79
|
+
this.lastScreen = '';
|
|
80
|
+
this.lastClipped = false;
|
|
81
|
+
this.paneResets += 1;
|
|
82
|
+
await this.ensureSession(cwd, sessionId, signal);
|
|
83
|
+
return why === 'dead'
|
|
84
|
+
? `PANE RESET (${this.paneResets}): the shell exited (Ctrl-D, exit, or a crash killed it) and a fresh shell was started in ${cwd}. Exported variables, cd and background jobs of the old shell are gone. Never send C-d or exit to the shell.`
|
|
85
|
+
: `PANE RESET (${this.paneResets}): the pane stopped answering, so the harness killed it and started a fresh shell in ${cwd}. Whatever was running is gone; re-run long commands with output redirected to a file.`;
|
|
53
86
|
}
|
|
54
87
|
async sendKeys(keystrokes, signal) {
|
|
55
88
|
const k = keystrokes;
|
|
@@ -80,6 +113,8 @@ export class FrameRunner {
|
|
|
80
113
|
if (waited >= Math.min(dur, 2)) {
|
|
81
114
|
prev = screen;
|
|
82
115
|
screen = await this.capture(this.cfg.screenLines, signal);
|
|
116
|
+
if (this.paneDead)
|
|
117
|
+
return { screen, running: false, waitedS: waited };
|
|
83
118
|
if (promptIsBack(screen))
|
|
84
119
|
return { screen, running: false, waitedS: waited };
|
|
85
120
|
}
|
|
@@ -87,6 +122,8 @@ export class FrameRunner {
|
|
|
87
122
|
if (!screen)
|
|
88
123
|
screen = await this.capture(this.cfg.screenLines, signal);
|
|
89
124
|
prev = prev || screen;
|
|
125
|
+
if (this.paneDead)
|
|
126
|
+
return { screen, running: false, waitedS: waited };
|
|
90
127
|
for (let i = 0; i < 4; i++) {
|
|
91
128
|
const d = waitPolicy({ promptBack: promptIsBack(screen), screenChanged: i === 0 ? true : screen !== prev, waitedS: waited, durationS: dur, graceS: FRAME_DEFAULTS.graceS });
|
|
92
129
|
if (d === 'done')
|
|
@@ -108,9 +145,20 @@ export class FrameRunner {
|
|
|
108
145
|
}
|
|
109
146
|
await this.ensureSession(input.cwd, input.sessionId, input.signal);
|
|
110
147
|
this.turn += 1;
|
|
148
|
+
const preConsequences = [];
|
|
149
|
+
// R180: a pane found dead on the previous step is respawned BEFORE this step's action runs, so the action lands in a live shell.
|
|
150
|
+
if (this.paneDead)
|
|
151
|
+
preConsequences.push(await this.resetPane(input.cwd, input.sessionId, 'dead', input.signal));
|
|
111
152
|
const screenBefore = this.lastScreen || await this.capture(this.cfg.screenLines, input.signal);
|
|
112
153
|
const stateBefore = buildStateCard({ cwd: input.cwd, turn: this.turn, budgetUsedFrac: input.deadlineMs > 0 ? Math.min(1, input.elapsedMs / input.deadlineMs) : null, budgetLeftS: input.deadlineMs > 0 ? Math.max(0, (input.deadlineMs - input.elapsedMs) / 1000) : null, history: this.history, commandStillRunning: this.running });
|
|
113
|
-
const
|
|
154
|
+
const wedged = paneWedged(this.history);
|
|
155
|
+
const menu0 = applyNamedTemplates(buildMenu({ candidates: action.candidates, taskTestCommand: extractTaskTestCommand(input.task), commandStillRunning: this.running, screenClipped: this.lastClipped, history: this.history, paneWedged: wedged }));
|
|
156
|
+
// R182: the keystroke guard runs BEFORE the menu step — a pane-killing or destructive candidate never reaches the chooser or the pane.
|
|
157
|
+
const guarded = this.cfg.keyGuard ? applyKeyGuard(menu0, { running: this.running }) : { menu: menu0, blocked: [] };
|
|
158
|
+
const menu = guarded.menu;
|
|
159
|
+
for (const b of guarded.blocked)
|
|
160
|
+
preConsequences.push(`Candidate "${b.label}" (${b.keystrokes}) was BLOCKED by the keystroke guard: ${b.reason}. It was not sent.`);
|
|
161
|
+
const allBlocked = guarded.blocked.length > 0 && !menu.some((m) => m.source === 'generator');
|
|
114
162
|
// the menu step
|
|
115
163
|
let decision;
|
|
116
164
|
let answers = null;
|
|
@@ -125,9 +173,11 @@ export class FrameRunner {
|
|
|
125
173
|
}
|
|
126
174
|
chooserLatencyMs = this.now() - c0;
|
|
127
175
|
}
|
|
128
|
-
decision =
|
|
176
|
+
decision = allBlocked
|
|
177
|
+
? { action: 'refuse', pick: null, pickProbability: null, consequences: ['Every candidate was blocked; nothing was sent. Propose safe candidates that stay inside the task directory.'], sendFullScreen: false, reasons: ['all generator candidates blocked by the keystroke guard'] }
|
|
178
|
+
: decideChooser({ answers, menu });
|
|
129
179
|
const pick = decision.pick;
|
|
130
|
-
const consequences = [...decision.consequences];
|
|
180
|
+
const consequences = [...preConsequences, ...decision.consequences];
|
|
131
181
|
let executedKeys = null;
|
|
132
182
|
let screen = screenBefore;
|
|
133
183
|
let running = this.running;
|
|
@@ -135,7 +185,12 @@ export class FrameRunner {
|
|
|
135
185
|
let extra = '';
|
|
136
186
|
if (pick) {
|
|
137
187
|
const op = pick.source === 'template' ? pick.op : undefined;
|
|
138
|
-
if (op === '
|
|
188
|
+
if (op === 'reset_pane') {
|
|
189
|
+
consequences.push(await this.resetPane(input.cwd, input.sessionId, 'wedged', input.signal));
|
|
190
|
+
running = false;
|
|
191
|
+
executedKeys = '';
|
|
192
|
+
}
|
|
193
|
+
else if (op === 'reread_task') {
|
|
139
194
|
extra = `TASK TEXT (re-read):\n${input.task.slice(0, 3000)}`;
|
|
140
195
|
executedKeys = '';
|
|
141
196
|
}
|
|
@@ -157,7 +212,13 @@ export class FrameRunner {
|
|
|
157
212
|
waitedS = w.waitedS;
|
|
158
213
|
}
|
|
159
214
|
}
|
|
160
|
-
if (executedKeys === '' && pick && (pick.op === 'reread_task' || pick.op === 'finish' || pick.op === 'show_more')) {
|
|
215
|
+
if (executedKeys === '' && pick && (pick.op === 'reread_task' || pick.op === 'finish' || pick.op === 'show_more' || pick.op === 'reset_pane')) {
|
|
216
|
+
screen = await this.capture(this.cfg.screenLines, input.signal);
|
|
217
|
+
}
|
|
218
|
+
// R180: a pane that died DURING this step's wait — respawn now so the writer sees a live prompt, not the executor's error text.
|
|
219
|
+
if (this.paneDead) {
|
|
220
|
+
consequences.push(await this.resetPane(input.cwd, input.sessionId, 'dead', input.signal));
|
|
221
|
+
running = false;
|
|
161
222
|
screen = await this.capture(this.cfg.screenLines, input.signal);
|
|
162
223
|
}
|
|
163
224
|
const rc = running ? null : parsePromptRc(screen);
|
|
@@ -169,13 +230,13 @@ export class FrameRunner {
|
|
|
169
230
|
this.lastScreen = screen;
|
|
170
231
|
this.lastClipped = clipped.clipped;
|
|
171
232
|
const stateCard = buildStateCard({ cwd: input.cwd, turn: this.turn, budgetUsedFrac: input.deadlineMs > 0 ? Math.min(1, (input.elapsedMs + (this.now() - t0)) / input.deadlineMs) : null, budgetLeftS: input.deadlineMs > 0 ? Math.max(0, (input.deadlineMs - input.elapsedMs - (this.now() - t0)) / 1000) : null, history: this.history, lastElapsedS: waitedS, commandStillRunning: running });
|
|
172
|
-
const nextMenu = buildMenu({ candidates: [], taskTestCommand: extractTaskTestCommand(input.task), commandStillRunning: running, screenClipped: clipped.clipped });
|
|
233
|
+
const nextMenu = buildMenu({ candidates: [], taskTestCommand: extractTaskTestCommand(input.task), commandStillRunning: running, screenClipped: clipped.clipped, paneWedged: paneWedged(this.history) });
|
|
173
234
|
const tplKey = nextMenu.filter((m) => m.source === 'template').map((m) => m.id).join(',');
|
|
174
235
|
const templatesChanged = tplKey !== this.lastTemplateKey;
|
|
175
236
|
this.lastTemplateKey = tplKey;
|
|
176
237
|
const content = buildFrameSuffix({ screen: clipped.text, stateCard, menu: nextMenu, consequences, templatesChanged: templatesChanged || this.turn === 1 }) + (extra ? `\n\n${extra}` : '');
|
|
177
238
|
const row = buildChooserRow({ sessionId: input.sessionId, turn: this.turn, predictorModel: input.predictorModel + (this.cfg.chooser === 'jev' ? '+jev-chooser' : ''), menu, decision, executedKeys, nowMs: this.now() });
|
|
178
|
-
this.deps.recordEvent('frame_turn', { ...row, analysis: action.analysis.slice(0, 600), plan: action.plan.slice(0, 600), rc, waitedS: Math.round(waitedS), running, screenChars: screen.length, chooser: this.cfg.chooser, chooserLatencyMs, answers: answers ? Object.fromEntries(Object.entries(answers).map(([k, v]) => [k, Number(v.toFixed(3))])) : null, stepMs: this.now() - t0 });
|
|
239
|
+
this.deps.recordEvent('frame_turn', { ...row, analysis: action.analysis.slice(0, 600), plan: action.plan.slice(0, 600), rc, waitedS: Math.round(waitedS), running, screenChars: screen.length, chooser: this.cfg.chooser, chooserLatencyMs, paneResets: this.paneResets, guard: guarded.blocked.length ? guarded.blocked : null, answers: answers ? Object.fromEntries(Object.entries(answers).map(([k, v]) => [k, Number(v.toFixed(3))])) : null, stepMs: this.now() - t0 });
|
|
179
240
|
return { content, isError: false, meta: { frame: 'terminus', turn: this.turn, pick: pick?.id ?? null, action: decision.action, rc, running, executedKeys: executedKeys ? normalizeKeys(executedKeys).slice(0, 120) : executedKeys } };
|
|
180
241
|
}
|
|
181
242
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frameRunner.js","sourceRoot":"","sources":["../../src/frames/frameRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"frameRunner.js","sourceRoot":"","sources":["../../src/frames/frameRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ export interface FrameAction {
|
|
|
28
28
|
error?: string;
|
|
29
29
|
}
|
|
30
30
|
export type MenuSource = 'generator' | 'template';
|
|
31
|
-
export type TemplateOp = 'wait' | 'interrupt' | 'show_more' | 'run_test' | 'reread_task' | 'finish';
|
|
31
|
+
export type TemplateOp = 'wait' | 'interrupt' | 'show_more' | 'run_test' | 'reread_task' | 'finish' | 'reset_pane';
|
|
32
32
|
export interface MenuItem extends FrameCandidate {
|
|
33
33
|
id: string;
|
|
34
34
|
source: MenuSource;
|
|
@@ -44,6 +44,7 @@ export declare const FRAME_DEFAULTS: {
|
|
|
44
44
|
readonly stateCardMaxChars: 1500;
|
|
45
45
|
readonly screenMaxChars: 6000;
|
|
46
46
|
readonly digestLen: 12;
|
|
47
|
+
readonly wedgeTurns: 4;
|
|
47
48
|
};
|
|
48
49
|
/** Strip ANSI escape sequences and bracketed-paste markers; normalize CRLF. Pure. */
|
|
49
50
|
export declare function stripAnsi(s: string): string;
|
|
@@ -92,9 +93,40 @@ export interface MenuInput {
|
|
|
92
93
|
commandStillRunning?: boolean;
|
|
93
94
|
screenClipped?: boolean;
|
|
94
95
|
history?: HistoryEntry[];
|
|
96
|
+
/** R180: the pane is wedged (no prompt for several turns despite interrupts) — offer RESET THE PANE. */
|
|
97
|
+
paneWedged?: boolean;
|
|
95
98
|
}
|
|
99
|
+
/** Does a capture say the tmux session is gone (the executor's error text, or tmux's own)? Pure. */
|
|
100
|
+
export declare function paneIsDead(screen: string): boolean;
|
|
101
|
+
/** How many trailing history entries ended without a prompt (rc null)? Pure. */
|
|
102
|
+
export declare function trailingNoPrompt(history: HistoryEntry[]): number;
|
|
103
|
+
/** A wedged pane: ≥ `minTurns` trailing turns with no prompt back AND at least one interrupt among them (the writer already tried C-c). Pure. */
|
|
104
|
+
export declare function paneWedged(history: HistoryEntry[], minTurns?: number): boolean;
|
|
96
105
|
/** The Oregon Trail menu: the generator's candidates first (candidate[0] is the escape), then the code templates that apply. Pure. */
|
|
97
106
|
export declare function buildMenu(input: MenuInput): MenuItem[];
|
|
107
|
+
export declare function applyNamedTemplates(menu: MenuItem[]): MenuItem[];
|
|
108
|
+
export interface KeyGuardVerdict {
|
|
109
|
+
verdict: 'allow' | 'block';
|
|
110
|
+
reason?: string;
|
|
111
|
+
class?: 'pane_killer' | 'destructive';
|
|
112
|
+
}
|
|
113
|
+
/** Classify one candidate's keystrokes. `running`: a command is still in the foreground (C-d is then a legitimate EOF, not a shell exit). Pure. */
|
|
114
|
+
export declare function guardKeystrokes(keystrokes: string, ctx: {
|
|
115
|
+
running: boolean;
|
|
116
|
+
}): KeyGuardVerdict;
|
|
117
|
+
/** Apply the guard to a menu: blocked generator candidates are removed; templates are never blocked. Pure. */
|
|
118
|
+
export declare function applyKeyGuard(menu: MenuItem[], ctx: {
|
|
119
|
+
running: boolean;
|
|
120
|
+
}): {
|
|
121
|
+
menu: MenuItem[];
|
|
122
|
+
blocked: Array<{
|
|
123
|
+
id: string;
|
|
124
|
+
label: string;
|
|
125
|
+
keystrokes: string;
|
|
126
|
+
reason: string;
|
|
127
|
+
class: string;
|
|
128
|
+
}>;
|
|
129
|
+
};
|
|
98
130
|
/** The per-turn suffix text the writer sees (the prefix is fixed; only this changes). Pure. */
|
|
99
131
|
export declare function buildFrameSuffix(input: {
|
|
100
132
|
screen: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminusFrame.d.ts","sourceRoot":"","sources":["../../src/frames/terminusFrame.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,cAAc;IAC7B,iFAAiF;IACjF,KAAK,EAAE,MAAM,CAAC;IACd,4GAA4G;IAC5G,UAAU,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,aAAa,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"terminusFrame.d.ts","sourceRoot":"","sources":["../../src/frames/terminusFrame.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* formula — the shapes below are the seams where later authors (helper model, apprentice, speculative drafts) and choosers (Jev, own readout,
|
|
11
11
|
* j-space acceptor) plug in without changing the frame.
|
|
12
12
|
*/
|
|
13
|
-
export const FRAME_DEFAULTS = { maxCandidates: 3, defaultDurationS: 3, maxDurationS: 60, graceS: 5, waitExtendS: 30, stateCardMaxChars: 1500, screenMaxChars: 6000, digestLen: 12 };
|
|
13
|
+
export const FRAME_DEFAULTS = { maxCandidates: 3, defaultDurationS: 3, maxDurationS: 60, graceS: 5, waitExtendS: 30, stateCardMaxChars: 1500, screenMaxChars: 6000, digestLen: 12, wedgeTurns: 4 };
|
|
14
14
|
/* ---------- screen ---------- */
|
|
15
15
|
/** Strip ANSI escape sequences and bracketed-paste markers; normalize CRLF. Pure. */
|
|
16
16
|
export function stripAnsi(s) {
|
|
@@ -119,6 +119,29 @@ export function parseFrameAction(text, opts = {}) {
|
|
|
119
119
|
return { analysis, plan, candidates, taskComplete, parsed: false, error: 'no candidates and no task_complete' };
|
|
120
120
|
return { analysis, plan, candidates, taskComplete, parsed: true };
|
|
121
121
|
}
|
|
122
|
+
/* ---------- R180 pane liveness (E2 field read 2026-09-22: a writer sent C-d, the tmux session died, 70 turns went to a dead pane) ---------- */
|
|
123
|
+
/** Does a capture say the tmux session is gone (the executor's error text, or tmux's own)? Pure. */
|
|
124
|
+
export function paneIsDead(screen) {
|
|
125
|
+
return /session '[^']*' does not exist|no server running|can't find session|no such session|no sessions?\b/i.test(String(screen ?? ''));
|
|
126
|
+
}
|
|
127
|
+
/** How many trailing history entries ended without a prompt (rc null)? Pure. */
|
|
128
|
+
export function trailingNoPrompt(history) {
|
|
129
|
+
let n = 0;
|
|
130
|
+
for (let i = history.length - 1; i >= 0; i--) {
|
|
131
|
+
if (history[i].rc === null)
|
|
132
|
+
n++;
|
|
133
|
+
else
|
|
134
|
+
break;
|
|
135
|
+
}
|
|
136
|
+
return n;
|
|
137
|
+
}
|
|
138
|
+
/** A wedged pane: ≥ `minTurns` trailing turns with no prompt back AND at least one interrupt among them (the writer already tried C-c). Pure. */
|
|
139
|
+
export function paneWedged(history, minTurns = FRAME_DEFAULTS.wedgeTurns) {
|
|
140
|
+
const n = trailingNoPrompt(history);
|
|
141
|
+
if (n < minTurns)
|
|
142
|
+
return false;
|
|
143
|
+
return history.slice(-n).some((h) => /^(C-c|C-d|C-z|C-\\)$/.test(h.keystrokes.trim()));
|
|
144
|
+
}
|
|
122
145
|
/** The Oregon Trail menu: the generator's candidates first (candidate[0] is the escape), then the code templates that apply. Pure. */
|
|
123
146
|
export function buildMenu(input) {
|
|
124
147
|
const items = input.candidates.map((c, i) => ({ ...c, id: `c${i + 1}`, source: 'generator' }));
|
|
@@ -127,6 +150,8 @@ export function buildMenu(input) {
|
|
|
127
150
|
items.push(t('t_wait', `WAIT ${FRAME_DEFAULTS.waitExtendS}s more for the running command`, '', FRAME_DEFAULTS.waitExtendS, 'wait'));
|
|
128
151
|
items.push(t('t_interrupt', 'INTERRUPT the running command (C-c)', 'C-c', 2, 'interrupt'));
|
|
129
152
|
}
|
|
153
|
+
if (input.paneWedged)
|
|
154
|
+
items.push(t('t_reset', 'RESET THE PANE (kill the wedged shell, start a fresh one in the task directory)', '', 0, 'reset_pane'));
|
|
130
155
|
if (input.screenClipped)
|
|
131
156
|
items.push(t('t_more', 'SHOW MORE OUTPUT (earlier screen lines)', '', 0, 'show_more'));
|
|
132
157
|
if (input.taskTestCommand)
|
|
@@ -142,6 +167,84 @@ export function buildMenu(input) {
|
|
|
142
167
|
}
|
|
143
168
|
return items;
|
|
144
169
|
}
|
|
170
|
+
/** R181: the contract says "name a template in a candidate's label to use it" — make that true. A generator candidate whose label names a
|
|
171
|
+
* template (WAIT / INTERRUPT / SHOW MORE / RUN THE TASK'S OWN TEST / RE-READ / FINISH / RESET THE PANE) and carries no keystrokes of its own
|
|
172
|
+
* becomes that template (same id/position, so the chooser-off arm executes it as c1). Field read 2026-09-22: E1 writers named SHOW MORE and
|
|
173
|
+
* RE-READ in labels and got an empty wait instead. Pure. */
|
|
174
|
+
const TEMPLATE_NAMES = [
|
|
175
|
+
[/RESET THE PANE|RESET PANE/i, 'reset_pane'], [/SHOW MORE/i, 'show_more'], [/RE-?READ/i, 'reread_task'], [/RUN THE TASK'?S? (OWN )?TEST/i, 'run_test'],
|
|
176
|
+
[/\bINTERRUPT\b/i, 'interrupt'], [/^\s*WAIT\b|\bWAIT (\d+ ?S|MORE|LONGER)/i, 'wait'], [/^\s*FINISH\b|\(declare the task complete\)/i, 'finish'],
|
|
177
|
+
];
|
|
178
|
+
export function applyNamedTemplates(menu) {
|
|
179
|
+
const templates = menu.filter((m) => m.source === 'template');
|
|
180
|
+
return menu.map((m) => {
|
|
181
|
+
if (m.source !== 'generator')
|
|
182
|
+
return m;
|
|
183
|
+
const named = TEMPLATE_NAMES.find(([re]) => re.test(m.label))?.[1];
|
|
184
|
+
if (!named)
|
|
185
|
+
return m;
|
|
186
|
+
const t = templates.find((x) => x.op === named);
|
|
187
|
+
if (!t)
|
|
188
|
+
return m;
|
|
189
|
+
const ownKeys = m.keystrokes.trim();
|
|
190
|
+
if (ownKeys && ownKeys !== t.keystrokes.trim())
|
|
191
|
+
return m; // the writer typed real keystrokes — those win over the name
|
|
192
|
+
return { ...t, id: m.id, label: m.label, why: m.why, durationS: named === 'wait' && m.durationS > 0 ? m.durationS : t.durationS };
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
const PANE_KILLERS = [
|
|
196
|
+
[/^(exit|logout)(\s.*)?$/i, 'exits the pane shell'],
|
|
197
|
+
[/^exec\s+/i, 'replaces the pane shell'],
|
|
198
|
+
[/\btmux\s+(kill-server|kill-session|kill-window|kill-pane|detach)\b/i, 'kills the harness tmux session'],
|
|
199
|
+
[/\bkill\s+(-9\s+|-KILL\s+|-s\s+KILL\s+)?-1\b/i, 'kills every process including the shell'],
|
|
200
|
+
[/\bpkill\s+(-9\s+)?(-f\s+)?(tmux|bash|sh)\b/i, 'kills the shell or tmux'],
|
|
201
|
+
[/\bkillall\s+(-9\s+)?(tmux|bash|sh)\b/i, 'kills the shell or tmux'],
|
|
202
|
+
];
|
|
203
|
+
const DESTRUCTIVE = [
|
|
204
|
+
[/\brm\s+(-[a-zA-Z]*r[a-zA-Z]*f[a-zA-Z]*|-[a-zA-Z]*f[a-zA-Z]*r[a-zA-Z]*|--recursive)\s+(--no-preserve-root\s+)?(\/|~|\$HOME|\/app|\/root|\/etc|\/usr|\/var|\/bin|\/lib|\*|\.)(\s|\/?$|\/\*)/i, 'recursively deletes a root, home or the task directory'],
|
|
205
|
+
[/\brm\s+-[a-zA-Z]*r[a-zA-Z]*\s+(\/|~)\s*$/i, 'recursively deletes a root'],
|
|
206
|
+
[/\bmkfs(\.\w+)?\b/i, 'formats a filesystem'],
|
|
207
|
+
[/\bdd\s+.*\bof=\/dev\/(sd|nvme|vd|hd|xvd|mmcblk|disk)/i, 'writes a block device'],
|
|
208
|
+
[/>\s*\/dev\/(sd|nvme|vd|hd|xvd|mmcblk)/i, 'writes a block device'],
|
|
209
|
+
[/:\(\)\s*\{\s*:\s*\|\s*:\s*&\s*\}\s*;\s*:/, 'fork bomb'],
|
|
210
|
+
[/\b(shutdown|reboot|halt|poweroff|init\s+[06])\b/i, 'shuts the container down'],
|
|
211
|
+
[/\b(chmod|chown)\s+(-[a-zA-Z]*R[a-zA-Z]*\s+|--recursive\s+)\S+\s+\/\s*$/i, 'recursively changes ownership or mode of /'],
|
|
212
|
+
[/\bmv\s+(\/|\/app|~)\s+/i, 'moves a root or the task directory'],
|
|
213
|
+
];
|
|
214
|
+
/** Classify one candidate's keystrokes. `running`: a command is still in the foreground (C-d is then a legitimate EOF, not a shell exit). Pure. */
|
|
215
|
+
export function guardKeystrokes(keystrokes, ctx) {
|
|
216
|
+
const k = String(keystrokes ?? '');
|
|
217
|
+
const raw = k.trim();
|
|
218
|
+
if (/^C-d$/i.test(raw) || raw === '\u0004')
|
|
219
|
+
return ctx.running ? { verdict: 'allow' } : { verdict: 'block', class: 'pane_killer', reason: 'C-d at an idle prompt exits the pane shell (send it only to a running program)' };
|
|
220
|
+
if (/:\(\)\s*\{\s*:\s*\|\s*:\s*&\s*\}\s*;\s*:/.test(k))
|
|
221
|
+
return { verdict: 'block', class: 'destructive', reason: 'fork bomb' }; // whole-string: the splitter below would cut it apart
|
|
222
|
+
// command lines: split on newlines / ; / && / || / | and judge each simple command
|
|
223
|
+
const cmds = k.split(/\n|;|&&|\|\||\|/).map((c) => c.trim()).filter(Boolean);
|
|
224
|
+
for (const c of cmds) {
|
|
225
|
+
for (const [re, why] of PANE_KILLERS)
|
|
226
|
+
if (re.test(c))
|
|
227
|
+
return { verdict: 'block', class: 'pane_killer', reason: `"${c.slice(0, 60)}" ${why}` };
|
|
228
|
+
for (const [re, why] of DESTRUCTIVE)
|
|
229
|
+
if (re.test(c))
|
|
230
|
+
return { verdict: 'block', class: 'destructive', reason: `"${c.slice(0, 60)}" ${why}` };
|
|
231
|
+
}
|
|
232
|
+
return { verdict: 'allow' };
|
|
233
|
+
}
|
|
234
|
+
/** Apply the guard to a menu: blocked generator candidates are removed; templates are never blocked. Pure. */
|
|
235
|
+
export function applyKeyGuard(menu, ctx) {
|
|
236
|
+
const blocked = [];
|
|
237
|
+
const kept = menu.filter((m) => {
|
|
238
|
+
if (m.source !== 'generator')
|
|
239
|
+
return true;
|
|
240
|
+
const v = guardKeystrokes(m.keystrokes, ctx);
|
|
241
|
+
if (v.verdict === 'allow')
|
|
242
|
+
return true;
|
|
243
|
+
blocked.push({ id: m.id, label: m.label, keystrokes: normalizeKeys(m.keystrokes).slice(0, 80), reason: v.reason ?? '', class: v.class ?? '' });
|
|
244
|
+
return false;
|
|
245
|
+
});
|
|
246
|
+
return { menu: kept, blocked };
|
|
247
|
+
}
|
|
145
248
|
/** The per-turn suffix text the writer sees (the prefix is fixed; only this changes). Pure. */
|
|
146
249
|
export function buildFrameSuffix(input) {
|
|
147
250
|
const parts = [`STATE:\n${input.stateCard}`, `SCREEN (tmux pane, most recent at the bottom):\n${input.screen}`];
|
|
@@ -152,8 +255,8 @@ export function buildFrameSuffix(input) {
|
|
|
152
255
|
// (a running command adds WAIT/INTERRUPT; a clipped screen adds SHOW MORE) or when the caller asks for it.
|
|
153
256
|
if (input.showTemplates !== false && (input.templatesChanged ?? true))
|
|
154
257
|
parts.push(`MENU (name one in a candidate's label to use it):\n${templates.map((m) => `- ${m.label}`).join('\n')}`);
|
|
155
|
-
else if (templates.some((m) => m.op === 'wait' || m.op === 'interrupt' || m.op === 'show_more'))
|
|
156
|
-
parts.push(`MENU: ${templates.filter((m) => ['wait', 'interrupt', 'show_more'].includes(m.op ?? '')).map((m) => m.label.split(' (')[0]).join(' · ')}`);
|
|
258
|
+
else if (templates.some((m) => m.op === 'wait' || m.op === 'interrupt' || m.op === 'show_more' || m.op === 'reset_pane'))
|
|
259
|
+
parts.push(`MENU: ${templates.filter((m) => ['wait', 'interrupt', 'show_more', 'reset_pane'].includes(m.op ?? '')).map((m) => m.label.split(' (')[0]).join(' · ')}`);
|
|
157
260
|
return parts.join('\n\n');
|
|
158
261
|
}
|
|
159
262
|
/** TIME-EFFICIENT WAIT (rewritten 2026-09-21 after cell E1/E2: the first version extended while the screen kept changing, up to 300 s, and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminusFrame.js","sourceRoot":"","sources":["../../src/frames/terminusFrame.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"terminusFrame.js","sourceRoot":"","sources":["../../src/frames/terminusFrame.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nexus-cortex/core",
|
|
3
|
-
"version": "4.124.
|
|
3
|
+
"version": "4.124.7",
|
|
4
4
|
"description": "Core orchestration library implementing Claude CLI architecture patterns",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -47,8 +47,8 @@
|
|
|
47
47
|
"@google/generative-ai": "^0.2.1",
|
|
48
48
|
"@gradio/client": "^2.3.1",
|
|
49
49
|
"@modelcontextprotocol/sdk": "^1.20.2",
|
|
50
|
-
"@nexus-cortex/executors": "4.124.
|
|
51
|
-
"@nexus-cortex/types": "4.124.
|
|
50
|
+
"@nexus-cortex/executors": "4.124.7",
|
|
51
|
+
"@nexus-cortex/types": "4.124.7",
|
|
52
52
|
"@types/uuid": "^10.0.0",
|
|
53
53
|
"ajv": "^8.12.0",
|
|
54
54
|
"chokidar": "^3.6.0",
|