@sagmans/dsh-tui 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +282 -25
- package/cordis.patch.yml +14 -0
- package/lib/agent/model.d.ts +26 -0
- package/lib/agent/model.d.ts.map +1 -1
- package/lib/agent/model.js +41 -0
- package/lib/agent/model.js.map +1 -1
- package/lib/agent/projections.d.ts +22 -6
- package/lib/agent/projections.d.ts.map +1 -1
- package/lib/agent/projections.js +21 -10
- package/lib/agent/projections.js.map +1 -1
- package/lib/agent/prompt-history.d.ts +89 -0
- package/lib/agent/prompt-history.d.ts.map +1 -0
- package/lib/agent/prompt-history.js +380 -0
- package/lib/agent/prompt-history.js.map +1 -0
- package/lib/agent/status.d.ts +16 -0
- package/lib/agent/status.d.ts.map +1 -1
- package/lib/agent/status.js +3 -0
- package/lib/agent/status.js.map +1 -1
- package/lib/cards.d.ts +1 -1
- package/lib/cards.d.ts.map +1 -1
- package/lib/cards.js +4 -3
- package/lib/cards.js.map +1 -1
- package/lib/gates.d.ts +145 -2
- package/lib/gates.d.ts.map +1 -1
- package/lib/gates.js +335 -40
- package/lib/gates.js.map +1 -1
- package/lib/herdr/client.d.ts +57 -0
- package/lib/herdr/client.d.ts.map +1 -0
- package/lib/herdr/client.js +218 -0
- package/lib/herdr/client.js.map +1 -0
- package/lib/herdr/constants.d.ts +93 -0
- package/lib/herdr/constants.d.ts.map +1 -0
- package/lib/herdr/constants.js +79 -0
- package/lib/herdr/constants.js.map +1 -0
- package/lib/herdr/reporter.d.ts +60 -0
- package/lib/herdr/reporter.d.ts.map +1 -0
- package/lib/herdr/reporter.js +217 -0
- package/lib/herdr/reporter.js.map +1 -0
- package/lib/herdr/state.d.ts +57 -0
- package/lib/herdr/state.d.ts.map +1 -0
- package/lib/herdr/state.js +62 -0
- package/lib/herdr/state.js.map +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +631 -118
- package/lib/index.js.map +1 -1
- package/lib/input/actions.d.ts +136 -0
- package/lib/input/actions.d.ts.map +1 -0
- package/lib/input/actions.js +743 -0
- package/lib/input/actions.js.map +1 -0
- package/lib/input/ghost.d.ts +46 -0
- package/lib/input/ghost.d.ts.map +1 -0
- package/lib/input/ghost.js +58 -0
- package/lib/input/ghost.js.map +1 -0
- package/lib/input/keymap-settings.d.ts +21 -0
- package/lib/input/keymap-settings.d.ts.map +1 -0
- package/lib/input/keymap-settings.js +28 -0
- package/lib/input/keymap-settings.js.map +1 -0
- package/lib/input/keymap.d.ts +91 -0
- package/lib/input/keymap.d.ts.map +1 -0
- package/lib/input/keymap.js +172 -0
- package/lib/input/keymap.js.map +1 -0
- package/lib/input/match.d.ts +10 -0
- package/lib/input/match.d.ts.map +1 -0
- package/lib/input/match.js +83 -0
- package/lib/input/match.js.map +1 -0
- package/lib/input/submission.d.ts +29 -1
- package/lib/input/submission.d.ts.map +1 -1
- package/lib/input/submission.js +33 -2
- package/lib/input/submission.js.map +1 -1
- package/lib/input.d.ts +17 -0
- package/lib/input.d.ts.map +1 -0
- package/lib/input.js +27 -0
- package/lib/input.js.map +1 -0
- package/lib/keys-command.d.ts +16 -0
- package/lib/keys-command.d.ts.map +1 -0
- package/lib/keys-command.js +60 -0
- package/lib/keys-command.js.map +1 -0
- package/lib/queue.d.ts +6 -0
- package/lib/queue.d.ts.map +1 -0
- package/lib/queue.js +68 -0
- package/lib/queue.js.map +1 -0
- package/lib/settings-notice.d.ts +19 -0
- package/lib/settings-notice.d.ts.map +1 -0
- package/lib/settings-notice.js +30 -0
- package/lib/settings-notice.js.map +1 -0
- package/lib/stash/lock.d.ts +72 -0
- package/lib/stash/lock.d.ts.map +1 -0
- package/lib/stash/lock.js +374 -0
- package/lib/stash/lock.js.map +1 -0
- package/lib/stash/paths.d.ts +22 -0
- package/lib/stash/paths.d.ts.map +1 -0
- package/lib/stash/paths.js +83 -0
- package/lib/stash/paths.js.map +1 -0
- package/lib/stash/private-fs.d.ts +61 -0
- package/lib/stash/private-fs.d.ts.map +1 -0
- package/lib/stash/private-fs.js +379 -0
- package/lib/stash/private-fs.js.map +1 -0
- package/lib/stash/schema.d.ts +57 -0
- package/lib/stash/schema.d.ts.map +1 -0
- package/lib/stash/schema.js +127 -0
- package/lib/stash/schema.js.map +1 -0
- package/lib/stash/store.d.ts +92 -0
- package/lib/stash/store.d.ts.map +1 -0
- package/lib/stash/store.js +262 -0
- package/lib/stash/store.js.map +1 -0
- package/lib/stash.d.ts +91 -0
- package/lib/stash.d.ts.map +1 -0
- package/lib/stash.js +296 -0
- package/lib/stash.js.map +1 -0
- package/lib/theme-settings.d.ts +72 -8
- package/lib/theme-settings.d.ts.map +1 -1
- package/lib/theme-settings.js +125 -5
- package/lib/theme-settings.js.map +1 -1
- package/lib/theme-tokens.d.ts +4 -4
- package/lib/theme-tokens.d.ts.map +1 -1
- package/lib/theme-tokens.js +39 -5
- package/lib/theme-tokens.js.map +1 -1
- package/lib/todo-guard.d.ts +116 -0
- package/lib/todo-guard.d.ts.map +1 -0
- package/lib/todo-guard.js +259 -0
- package/lib/todo-guard.js.map +1 -0
- package/lib/ui/editor.d.ts +58 -1
- package/lib/ui/editor.d.ts.map +1 -1
- package/lib/ui/editor.js +174 -19
- package/lib/ui/editor.js.map +1 -1
- package/lib/ui/frame.d.ts +54 -0
- package/lib/ui/frame.d.ts.map +1 -0
- package/lib/ui/frame.js +79 -0
- package/lib/ui/frame.js.map +1 -0
- package/lib/ui/gate-input.d.ts +20 -0
- package/lib/ui/gate-input.d.ts.map +1 -0
- package/lib/ui/gate-input.js +96 -0
- package/lib/ui/gate-input.js.map +1 -0
- package/lib/ui/history-picker.d.ts +15 -0
- package/lib/ui/history-picker.d.ts.map +1 -0
- package/lib/ui/history-picker.js +26 -0
- package/lib/ui/history-picker.js.map +1 -0
- package/lib/ui/markdown.d.ts +11 -2
- package/lib/ui/markdown.d.ts.map +1 -1
- package/lib/ui/markdown.js +25 -6
- package/lib/ui/markdown.js.map +1 -1
- package/lib/ui/mermaid.d.ts +44 -0
- package/lib/ui/mermaid.d.ts.map +1 -0
- package/lib/ui/mermaid.js +178 -0
- package/lib/ui/mermaid.js.map +1 -0
- package/lib/ui/picker.d.ts +40 -8
- package/lib/ui/picker.d.ts.map +1 -1
- package/lib/ui/picker.js +79 -24
- package/lib/ui/picker.js.map +1 -1
- package/lib/ui/prompt.d.ts +32 -0
- package/lib/ui/prompt.d.ts.map +1 -0
- package/lib/ui/prompt.js +49 -0
- package/lib/ui/prompt.js.map +1 -0
- package/lib/ui/queue.d.ts +24 -0
- package/lib/ui/queue.d.ts.map +1 -0
- package/lib/ui/queue.js +57 -0
- package/lib/ui/queue.js.map +1 -0
- package/lib/ui/stash-picker.d.ts +43 -0
- package/lib/ui/stash-picker.d.ts.map +1 -0
- package/lib/ui/stash-picker.js +78 -0
- package/lib/ui/stash-picker.js.map +1 -0
- package/lib/ui/status.d.ts +6 -0
- package/lib/ui/status.d.ts.map +1 -1
- package/lib/ui/status.js +15 -0
- package/lib/ui/status.js.map +1 -1
- package/lib/ui/view.d.ts +22 -2
- package/lib/ui/view.d.ts.map +1 -1
- package/lib/ui/view.js +84 -24
- package/lib/ui/view.js.map +1 -1
- package/lib/work.d.ts +51 -1
- package/lib/work.d.ts.map +1 -1
- package/lib/work.js +53 -1
- package/lib/work.js.map +1 -1
- package/package.json +7 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-settings.js","sourceRoot":"","sources":["../src/theme-settings.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"theme-settings.js","sourceRoot":"","sources":["../src/theme-settings.ts"],"names":[],"mappings":"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"}
|
package/lib/theme-tokens.d.ts
CHANGED
|
@@ -27,10 +27,10 @@ export declare const ARGUMENT_BLUE = "#8db3d9";
|
|
|
27
27
|
* The shade a submitted prompt takes.
|
|
28
28
|
*
|
|
29
29
|
* A reader's own turns and the assistant's reply both shipped on the default
|
|
30
|
-
* foreground, so telling the two apart meant reading them; a
|
|
31
|
-
*
|
|
30
|
+
* foreground, so telling the two apart meant reading them; a mint keeps them
|
|
31
|
+
* apart at a glance without the pink cast a rose gave every prompt.
|
|
32
32
|
*/
|
|
33
|
-
export declare const
|
|
33
|
+
export declare const USER_PROMPT_MINT = "#27F5C8";
|
|
34
34
|
/** Palette entries a token may name instead of a literal colour. */
|
|
35
35
|
export declare const PALETTE_NAMES: readonly ["default", "muted", "accent", "arg", "warn", "added", "removed", "user", "assistant"];
|
|
36
36
|
/** A named palette entry. */
|
|
@@ -71,7 +71,7 @@ export type CardRowClass = (typeof CARD_ROW_CLASSES)[number];
|
|
|
71
71
|
* fails if a token loses its default, so "every element" cannot quietly drift
|
|
72
72
|
* as the surface grows.
|
|
73
73
|
*/
|
|
74
|
-
export declare const TUI_TOKENS: readonly ["transcript.user", "transcript.notice", "transcript.marker", "transcript.reasoning.summary", "transcript.reasoning.body", "transcript.reasoning.hint", "tool.title", "tool.glyph", "tool.args", "tool.stat.added", "tool.stat.changed", "tool.stat.removed", "tool.stat.size", "tool.stat.separator", "tool.detail", "tool.hint", "tool.failed.title", "tool.failed.glyph", "tool.subcall.title", "tool.subcall.args", "tool.diff.header", "tool.diff.hunk", "tool.diff.added", "tool.diff.removed", "tool.read.header", "tool.read.lineNumber", "tool.read.line", "tool.search.path", "tool.search.lineNumber", "tool.search.match", "tool.search.truncated", "tool.terminal.cwd", "tool.terminal.status", "tool.terminal.output", "tool.web.url", "tool.web.source", "tool.web.truncated", "tool.generic.detail", "markdown.heading", "markdown.link", "markdown.linkUrl", "markdown.code", "markdown.codeBlock", "markdown.codeBlockBorder", "markdown.quote", "markdown.quoteBorder", "markdown.hr", "markdown.listBullet", "markdown.bold", "markdown.italic", "markdown.strikethrough", "markdown.underline", "picker.title", "picker.glyph", "picker.note", "picker.filter", "picker.row", "picker.rowCurrent", "picker.scrollNewer", "picker.scrollOlder", "picker.hint", "picker.cursor", "gate.title", "gate.glyphApproval", "gate.glyphQuestion", "gate.detail", "gate.option", "gate.optionCurrent", "gate.cursor", "gate.hint", "dock.goal", "dock.planMode", "dock.todos.heading", "dock.todos.pending", "dock.todos.inProgress", "dock.todos.overflow", "dock.subagents.heading", "dock.subagents.running", "dock.subagents.overflow", "dock.jobs.heading", "dock.jobs.running", "dock.jobs.overflow", "status.activity.working", "status.activity.ready", "status.elapsed", "status.agentPreset", "status.model", "status.effort", "status.permission", "status.context", "status.cache", "status.cwd", "status.separator", "editor.border", "editor.selectList.selectedPrefix", "editor.selectList.selectedText", "editor.selectList.description", "editor.selectList.scrollInfo", "editor.selectList.noMatch"];
|
|
74
|
+
export declare const TUI_TOKENS: readonly ["transcript.user", "transcript.notice", "transcript.marker", "transcript.reasoning.summary", "transcript.reasoning.body", "transcript.reasoning.hint", "tool.title", "tool.glyph", "tool.args", "tool.stat.added", "tool.stat.changed", "tool.stat.removed", "tool.stat.size", "tool.stat.separator", "tool.detail", "tool.hint", "tool.failed.title", "tool.failed.glyph", "tool.subcall.title", "tool.subcall.args", "tool.diff.header", "tool.diff.hunk", "tool.diff.added", "tool.diff.removed", "tool.read.header", "tool.read.lineNumber", "tool.read.line", "tool.search.path", "tool.search.lineNumber", "tool.search.match", "tool.search.truncated", "tool.terminal.cwd", "tool.terminal.status", "tool.terminal.output", "tool.web.url", "tool.web.source", "tool.web.truncated", "tool.generic.detail", "markdown.heading", "markdown.link", "markdown.linkUrl", "markdown.code", "markdown.codeBlock", "markdown.codeBlockBorder", "markdown.quote", "markdown.quoteBorder", "markdown.hr", "markdown.listBullet", "markdown.bold", "markdown.italic", "markdown.strikethrough", "markdown.underline", "markdown.diagram.border", "markdown.diagram.text", "markdown.diagram.edge", "markdown.diagram.edgeLabel", "markdown.diagram.title", "markdown.diagram.warning", "picker.title", "picker.glyph", "picker.note", "picker.filter", "picker.row", "picker.rowCurrent", "picker.scrollNewer", "picker.scrollOlder", "picker.hint", "picker.cursor", "gate.title", "gate.glyphApproval", "gate.glyphQuestion", "gate.detail", "gate.option", "gate.optionCurrent", "gate.cursor", "gate.hint", "dock.goal", "dock.planMode", "dock.todos.heading", "dock.todos.pending", "dock.todos.inProgress", "dock.todos.overflow", "dock.subagents.heading", "dock.subagents.running", "dock.subagents.overflow", "dock.jobs.heading", "dock.jobs.running", "dock.jobs.overflow", "status.prefix", "status.back", "status.activity.working", "status.activity.ready", "status.elapsed", "status.agentPreset", "status.model", "status.effort", "status.permission", "status.context", "status.cache", "status.stash", "status.cwd", "status.separator", "editor.border", "editor.queued", "editor.queued.more", "editor.ghost", "editor.selectList.selectedPrefix", "editor.selectList.selectedText", "editor.selectList.description", "editor.selectList.scrollInfo", "editor.selectList.noMatch"];
|
|
75
75
|
/** A name for one styled element on the surface. */
|
|
76
76
|
export type TuiToken = (typeof TUI_TOKENS)[number];
|
|
77
77
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-tokens.d.ts","sourceRoot":"","sources":["../src/theme-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAkC,MAAM,uBAAuB,CAAA;AAIvF;;;;;;GAMG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,YAAY,CAAA;AAEnC;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,YAAY,CAAA;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,YAAY,CAAA;AAEzC,oEAAoE;AACpE,eAAO,MAAM,aAAa,iGAAkG,CAAA;AAE5H,6BAA6B;AAC7B,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AAExD,2DAA2D;AAC3D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAA;AAEtD,2FAA2F;AAC3F,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE,CAAC,EAAE,UAAU,CAAA;IACxB,QAAQ,CAAC,EAAE,CAAC,EAAE,UAAU,CAAA;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,oDAAoD;IACpD,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,8EAA8E;IAC9E,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAA;CAC5B;AAED,4DAA4D;AAC5D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CACzB;AAED,gFAAgF;AAChF,eAAO,MAAM,gBAAgB,2JAEnB,CAAA;AAEV,sEAAsE;AACtE,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE5D;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"theme-tokens.d.ts","sourceRoot":"","sources":["../src/theme-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAkC,MAAM,uBAAuB,CAAA;AAIvF;;;;;;GAMG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,YAAY,CAAA;AAEnC;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,YAAY,CAAA;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,YAAY,CAAA;AAEzC,oEAAoE;AACpE,eAAO,MAAM,aAAa,iGAAkG,CAAA;AAE5H,6BAA6B;AAC7B,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AAExD,2DAA2D;AAC3D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAA;AAEtD,2FAA2F;AAC3F,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE,CAAC,EAAE,UAAU,CAAA;IACxB,QAAQ,CAAC,EAAE,CAAC,EAAE,UAAU,CAAA;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,oDAAoD;IACpD,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,8EAA8E;IAC9E,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAA;CAC5B;AAED,4DAA4D;AAC5D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CACzB;AAED,gFAAgF;AAChF,eAAO,MAAM,gBAAgB,2JAEnB,CAAA;AAEV,sEAAsE;AACtE,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE5D;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,oxEA8Hb,CAAA;AAEV,oDAAoD;AACpD,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAElD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAYtG,CAAA;AAED,wEAAwE;AACxE,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAUjE,CAAA;AAaD;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAgIhE,CAAA;AA0BD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,SAAS,CAatG;AAOD;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,EAC3C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,EAC9C,IAAI,EAAE,UAAU,GACf,aAAa,CA0Bf"}
|
package/lib/theme-tokens.js
CHANGED
|
@@ -30,10 +30,10 @@ export const ARGUMENT_BLUE = '#8db3d9';
|
|
|
30
30
|
* The shade a submitted prompt takes.
|
|
31
31
|
*
|
|
32
32
|
* A reader's own turns and the assistant's reply both shipped on the default
|
|
33
|
-
* foreground, so telling the two apart meant reading them; a
|
|
34
|
-
*
|
|
33
|
+
* foreground, so telling the two apart meant reading them; a mint keeps them
|
|
34
|
+
* apart at a glance without the pink cast a rose gave every prompt.
|
|
35
35
|
*/
|
|
36
|
-
export const
|
|
36
|
+
export const USER_PROMPT_MINT = '#27F5C8';
|
|
37
37
|
/** Palette entries a token may name instead of a literal colour. */
|
|
38
38
|
export const PALETTE_NAMES = ['default', 'muted', 'accent', 'arg', 'warn', 'added', 'removed', 'user', 'assistant'];
|
|
39
39
|
/** A row class a tool card can carry, so styling follows what the row means. */
|
|
@@ -105,6 +105,14 @@ export const TUI_TOKENS = [
|
|
|
105
105
|
'markdown.italic',
|
|
106
106
|
'markdown.strikethrough',
|
|
107
107
|
'markdown.underline',
|
|
108
|
+
// A drawn mermaid diagram: the renderer reports what each run *is*, so every
|
|
109
|
+
// role a drawing can be made of is addressable on its own.
|
|
110
|
+
'markdown.diagram.border',
|
|
111
|
+
'markdown.diagram.text',
|
|
112
|
+
'markdown.diagram.edge',
|
|
113
|
+
'markdown.diagram.edgeLabel',
|
|
114
|
+
'markdown.diagram.title',
|
|
115
|
+
'markdown.diagram.warning',
|
|
108
116
|
// No markdown.tableHeader: pi-tui styles table headers through the bold hook
|
|
109
117
|
// it already owns, so a token here would be a setting with no call site.
|
|
110
118
|
// Picker
|
|
@@ -141,6 +149,8 @@ export const TUI_TOKENS = [
|
|
|
141
149
|
'dock.jobs.running',
|
|
142
150
|
'dock.jobs.overflow',
|
|
143
151
|
// Status bar
|
|
152
|
+
'status.prefix',
|
|
153
|
+
'status.back',
|
|
144
154
|
'status.activity.working',
|
|
145
155
|
'status.activity.ready',
|
|
146
156
|
'status.elapsed',
|
|
@@ -150,10 +160,14 @@ export const TUI_TOKENS = [
|
|
|
150
160
|
'status.permission',
|
|
151
161
|
'status.context',
|
|
152
162
|
'status.cache',
|
|
163
|
+
'status.stash',
|
|
153
164
|
'status.cwd',
|
|
154
165
|
'status.separator',
|
|
155
166
|
// Editor
|
|
156
167
|
'editor.border',
|
|
168
|
+
'editor.queued',
|
|
169
|
+
'editor.queued.more',
|
|
170
|
+
'editor.ghost',
|
|
157
171
|
'editor.selectList.selectedPrefix',
|
|
158
172
|
'editor.selectList.selectedText',
|
|
159
173
|
'editor.selectList.description',
|
|
@@ -188,7 +202,7 @@ export const DEFAULT_PALETTE = {
|
|
|
188
202
|
warn: '#d7af5f',
|
|
189
203
|
added: '#5faf5f',
|
|
190
204
|
removed: '#d75f5f',
|
|
191
|
-
user:
|
|
205
|
+
user: USER_PROMPT_MINT,
|
|
192
206
|
assistant: '#d0d0d0',
|
|
193
207
|
};
|
|
194
208
|
/**
|
|
@@ -209,7 +223,7 @@ const plain = {};
|
|
|
209
223
|
* A test asserts every token in {@link TUI_TOKENS} appears here.
|
|
210
224
|
*/
|
|
211
225
|
export const DEFAULT_TOKENS = {
|
|
212
|
-
'transcript.user': { fg: 'user'
|
|
226
|
+
'transcript.user': { fg: 'user' },
|
|
213
227
|
'transcript.notice': muted,
|
|
214
228
|
'transcript.marker': muted,
|
|
215
229
|
'transcript.reasoning.summary': muted,
|
|
@@ -261,6 +275,12 @@ export const DEFAULT_TOKENS = {
|
|
|
261
275
|
'markdown.italic': { italic: true },
|
|
262
276
|
'markdown.strikethrough': { strike: true },
|
|
263
277
|
'markdown.underline': { underline: true },
|
|
278
|
+
'markdown.diagram.border': muted,
|
|
279
|
+
'markdown.diagram.text': plain,
|
|
280
|
+
'markdown.diagram.edge': { fg: 'accent' },
|
|
281
|
+
'markdown.diagram.edgeLabel': muted,
|
|
282
|
+
'markdown.diagram.title': { fg: 'accent', bold: true },
|
|
283
|
+
'markdown.diagram.warning': { fg: 'warn' },
|
|
264
284
|
'picker.title': { bold: true },
|
|
265
285
|
'picker.glyph': { bold: true },
|
|
266
286
|
'picker.note': { bold: true },
|
|
@@ -291,6 +311,10 @@ export const DEFAULT_TOKENS = {
|
|
|
291
311
|
'dock.jobs.heading': { bold: true },
|
|
292
312
|
'dock.jobs.running': muted,
|
|
293
313
|
'dock.jobs.overflow': muted,
|
|
314
|
+
'status.prefix': { fg: 'accent' },
|
|
315
|
+
// The way back is a key the reader presses, so it carries the weight of an
|
|
316
|
+
// armed chord rather than toning down with the facts.
|
|
317
|
+
'status.back': { fg: 'accent' },
|
|
294
318
|
'status.activity.working': muted,
|
|
295
319
|
'status.activity.ready': muted,
|
|
296
320
|
'status.elapsed': muted,
|
|
@@ -300,9 +324,19 @@ export const DEFAULT_TOKENS = {
|
|
|
300
324
|
'status.permission': muted,
|
|
301
325
|
'status.context': muted,
|
|
302
326
|
'status.cache': muted,
|
|
327
|
+
// Accented, unlike the facts around it: a parked draft is something the
|
|
328
|
+
// reader left behind and may want back, not another measurement.
|
|
329
|
+
'status.stash': { fg: 'accent' },
|
|
303
330
|
'status.cwd': muted,
|
|
304
331
|
'status.separator': muted,
|
|
305
332
|
'editor.border': muted,
|
|
333
|
+
// No colour: a faint is dropped the moment a colour is named, and faint is
|
|
334
|
+
// what makes queued text read as not-yet-sent rather than as being typed.
|
|
335
|
+
'editor.queued': { dim: true, italic: true },
|
|
336
|
+
'editor.queued.more': muted,
|
|
337
|
+
// Faint only: the ghost is a suggestion, and a named colour would drop the
|
|
338
|
+
// faint that makes it read as not-yet-typed.
|
|
339
|
+
'editor.ghost': { dim: true },
|
|
306
340
|
'editor.selectList.selectedPrefix': { fg: 'accent' },
|
|
307
341
|
'editor.selectList.selectedText': { bold: true },
|
|
308
342
|
'editor.selectList.description': muted,
|
package/lib/theme-tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-tokens.js","sourceRoot":"","sources":["../src/theme-tokens.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"theme-tokens.js","sourceRoot":"","sources":["../src/theme-tokens.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import type { Context } from '@deepseek-ai/cordis';
|
|
2
|
+
import z from '@deepseek-ai/schemastery';
|
|
3
|
+
import type { UserMessage } from '@deepseek-ai/dsh-session';
|
|
4
|
+
import type { PostToolDecision } from '@deepseek-ai/dsh-tools';
|
|
5
|
+
import type { TodoEntry } from './work.ts';
|
|
6
|
+
/**
|
|
7
|
+
* Advisory todo discipline.
|
|
8
|
+
*
|
|
9
|
+
* The model already owns a whole-list todo tool; what it lacks is a reason to
|
|
10
|
+
* keep the list current over a long turn. This guard watches the harness's own
|
|
11
|
+
* projections and, when a plan ages past a threshold, rides the next tool
|
|
12
|
+
* result with a model-visible reminder — the same `additionalContexts` channel
|
|
13
|
+
* the repeat-tool reminder uses. It never vetoes a call and never steers a
|
|
14
|
+
* stopped turn, so it cannot loop; the per-turn cap bounds the one extra step
|
|
15
|
+
* each injected reminder costs the loop.
|
|
16
|
+
*/
|
|
17
|
+
export declare const name = "tui-todo-guard";
|
|
18
|
+
/** The tool registry is read through the injected property, so Cordis must provide it first. */
|
|
19
|
+
export declare const inject: string[];
|
|
20
|
+
/** The tool this guard exists to keep honest, as the registry publishes it. */
|
|
21
|
+
export declare const TODO_WRITE_TOOL = "todo_write";
|
|
22
|
+
/** Defaults every deployment inherits; the bundle patch states them again for readers. */
|
|
23
|
+
export declare const TODO_GUARD_DEFAULTS: {
|
|
24
|
+
readonly staleSteps: 6;
|
|
25
|
+
readonly missingListSteps: 12;
|
|
26
|
+
readonly maxRemindersPerTurn: 3;
|
|
27
|
+
readonly previewItems: 5;
|
|
28
|
+
};
|
|
29
|
+
/** The knobs a deployment may tune; the whole object is validated fail-loud. */
|
|
30
|
+
export interface TodoGuardConfig {
|
|
31
|
+
/** Model steps a non-empty open list may age before a reminder. */
|
|
32
|
+
readonly staleSteps: number;
|
|
33
|
+
/** Steps in a turn before the guard suggests a first list at all. */
|
|
34
|
+
readonly missingListSteps: number;
|
|
35
|
+
/** Hard cap on reminders, and so on the extra steps they cost, per turn. */
|
|
36
|
+
readonly maxRemindersPerTurn: number;
|
|
37
|
+
/** Open items quoted in a reminder; the rest become a count. */
|
|
38
|
+
readonly previewItems: number;
|
|
39
|
+
}
|
|
40
|
+
/** The loader validates the row against this schema before `apply` sees it. */
|
|
41
|
+
export declare const Config: z<TodoGuardConfig>;
|
|
42
|
+
/**
|
|
43
|
+
* Apply defaults and validate. The loader normally fills the defaults, but a
|
|
44
|
+
* direct `apply` call (a test, or a composition that bypasses schemastery)
|
|
45
|
+
* must fail loud rather than silently guard nothing.
|
|
46
|
+
*/
|
|
47
|
+
export declare function resolveTodoGuardConfig(config?: Partial<TodoGuardConfig>): TodoGuardConfig;
|
|
48
|
+
/** A todo still owed to the reader; the dock draws the same two states. */
|
|
49
|
+
type OpenTodoStatus = Exclude<TodoEntry['status'], 'completed'>;
|
|
50
|
+
export type OpenTodo = TodoEntry & {
|
|
51
|
+
readonly status: OpenTodoStatus;
|
|
52
|
+
};
|
|
53
|
+
/** The model-visible text and the source summary that labels it. */
|
|
54
|
+
export interface TodoReminder {
|
|
55
|
+
readonly text: string;
|
|
56
|
+
readonly summary: string;
|
|
57
|
+
}
|
|
58
|
+
/** The stale-list reminder: the plan aged, so it is now describing earlier work. */
|
|
59
|
+
export declare function staleReminder(open: readonly OpenTodo[], steps: number, previewItems: number): TodoReminder;
|
|
60
|
+
/** The reminder for a long turn that has produced no list at all. */
|
|
61
|
+
export declare function missingListReminder(steps: number): TodoReminder;
|
|
62
|
+
/**
|
|
63
|
+
* What one read of the `todos` projection found.
|
|
64
|
+
*
|
|
65
|
+
* `absent` is the tool's own "nothing written yet"; `unavailable` is a registry
|
|
66
|
+
* that cannot answer at all. The guard promises silence for the second, so the
|
|
67
|
+
* two must not collapse into one.
|
|
68
|
+
*/
|
|
69
|
+
export type TodoListRead = {
|
|
70
|
+
readonly kind: 'listed';
|
|
71
|
+
readonly todos: readonly TodoEntry[];
|
|
72
|
+
} | {
|
|
73
|
+
readonly kind: 'absent';
|
|
74
|
+
} | {
|
|
75
|
+
readonly kind: 'unavailable';
|
|
76
|
+
};
|
|
77
|
+
/** What the guard reads about one agent before deciding whether to speak. */
|
|
78
|
+
export interface TodoObservation {
|
|
79
|
+
readonly toolName: string;
|
|
80
|
+
readonly hasTodoTool: boolean;
|
|
81
|
+
/** Plan mode suppresses the guard; `undefined` is a plan read that cannot answer. */
|
|
82
|
+
readonly planActive: boolean | undefined;
|
|
83
|
+
readonly todos: TodoListRead;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* The decision core, free of Cordis so it can be tested directly.
|
|
87
|
+
*
|
|
88
|
+
* It counts model steps rather than tool calls: a plan ages by how much the
|
|
89
|
+
* agent has thought and acted since its last write, and a parallel batch of
|
|
90
|
+
* calls is one step, so one batch can never spend the whole reminder budget.
|
|
91
|
+
*/
|
|
92
|
+
export declare class TodoGuard {
|
|
93
|
+
private readonly config;
|
|
94
|
+
private readonly counters;
|
|
95
|
+
constructor(config: TodoGuardConfig);
|
|
96
|
+
/** Follow the durable events that open a turn or a step. */
|
|
97
|
+
onEvent(session: object, type: string): void;
|
|
98
|
+
/** The reminder this tool result should carry, or undefined to stay silent. */
|
|
99
|
+
observe(session: object, observation: TodoObservation): TodoReminder | undefined;
|
|
100
|
+
private countersFor;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Prepend the guard's context while preserving every downstream context's own
|
|
104
|
+
* source, and carry it on a block as well so a denied call still reads it.
|
|
105
|
+
*/
|
|
106
|
+
export declare function foldReminder(reminder: UserMessage, downstream: PostToolDecision): PostToolDecision;
|
|
107
|
+
/**
|
|
108
|
+
* Install the guard's listeners.
|
|
109
|
+
*
|
|
110
|
+
* The list and plan come from the host projections rather than a private fold,
|
|
111
|
+
* so this reads exactly the lifetime every other surface shows. Absent
|
|
112
|
+
* projections mean silence, never an error, because the guard is decoration.
|
|
113
|
+
*/
|
|
114
|
+
export declare function apply(ctx: Context, config?: Partial<TodoGuardConfig>): void;
|
|
115
|
+
export {};
|
|
116
|
+
//# sourceMappingURL=todo-guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"todo-guard.d.ts","sourceRoot":"","sources":["../src/todo-guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAIxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAsC,MAAM,wBAAwB,CAAA;AAElG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE1C;;;;;;;;;;GAUG;AAEH,eAAO,MAAM,IAAI,mBAAmB,CAAA;AAEpC,gGAAgG;AAChG,eAAO,MAAM,MAAM,UAAY,CAAA;AAE/B,+EAA+E;AAC/E,eAAO,MAAM,eAAe,eAAe,CAAA;AAe3C,0FAA0F;AAC1F,eAAO,MAAM,mBAAmB;;;;;CAKtB,CAAA;AAEV,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,mEAAmE;IACnE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,qEAAqE;IACrE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAA;IACpC,gEAAgE;IAChE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAC9B;AAED,+EAA+E;AAC/E,eAAO,MAAM,MAAM,EAAE,CAAC,CAAC,eAAe,CAKpC,CAAA;AAUF;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,eAAe,CAO7F;AAED,2EAA2E;AAC3E,KAAK,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAA;AAE/D,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAA;AAMtE,oEAAoE;AACpE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED,oFAAoF;AACpF,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,YAAY,CAY1G;AAED,qEAAqE;AACrE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAK/D;AASD;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAA;CAAE,GACjE;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;CAAE,CAAA;AAEpC,6EAA6E;AAC7E,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,qFAAqF;IACrF,QAAQ,CAAC,UAAU,EAAE,OAAO,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;CAC7B;AAED;;;;;;GAMG;AACH,qBAAa,SAAS;IAGR,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;gBAE9B,MAAM,EAAE,eAAe;IAEpD,4DAA4D;IAC5D,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAkB5C,+EAA+E;IAC/E,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,GAAG,YAAY,GAAG,SAAS;IA0BhF,OAAO,CAAC,WAAW;CAQpB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,GAAG,gBAAgB,CAMlG;AAuDD;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,IAAI,CAyB/E"}
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
import z from '@deepseek-ai/schemastery';
|
|
2
|
+
import { createUserMessage } from '@deepseek-ai/dsh-llm';
|
|
3
|
+
import { projectionRead } from "./agent/projections.js";
|
|
4
|
+
/**
|
|
5
|
+
* Advisory todo discipline.
|
|
6
|
+
*
|
|
7
|
+
* The model already owns a whole-list todo tool; what it lacks is a reason to
|
|
8
|
+
* keep the list current over a long turn. This guard watches the harness's own
|
|
9
|
+
* projections and, when a plan ages past a threshold, rides the next tool
|
|
10
|
+
* result with a model-visible reminder — the same `additionalContexts` channel
|
|
11
|
+
* the repeat-tool reminder uses. It never vetoes a call and never steers a
|
|
12
|
+
* stopped turn, so it cannot loop; the per-turn cap bounds the one extra step
|
|
13
|
+
* each injected reminder costs the loop.
|
|
14
|
+
*/
|
|
15
|
+
export const name = 'tui-todo-guard';
|
|
16
|
+
/** The tool registry is read through the injected property, so Cordis must provide it first. */
|
|
17
|
+
export const inject = ['tools'];
|
|
18
|
+
/** The tool this guard exists to keep honest, as the registry publishes it. */
|
|
19
|
+
export const TODO_WRITE_TOOL = 'todo_write';
|
|
20
|
+
/** The durable events the counter follows. */
|
|
21
|
+
const TURN_START = 'turn/start';
|
|
22
|
+
const STEP_START = 'step/start';
|
|
23
|
+
/** The tool's own snapshot event, appended only once a write is committed. */
|
|
24
|
+
const TODO_WRITE_EVENT = 'todo/write';
|
|
25
|
+
/** Projection keys the harness registers for the tool and for plan mode. */
|
|
26
|
+
const TODOS_KEY = 'todos';
|
|
27
|
+
const PLAN_KEY = 'plan';
|
|
28
|
+
/** The reminder source; unlabeled context would read as a user prompt in derived history. */
|
|
29
|
+
const PLUGIN_SOURCE = { kind: 'plugin', plugin: 'tui-todo-guard' };
|
|
30
|
+
/** Defaults every deployment inherits; the bundle patch states them again for readers. */
|
|
31
|
+
export const TODO_GUARD_DEFAULTS = {
|
|
32
|
+
staleSteps: 6,
|
|
33
|
+
missingListSteps: 12,
|
|
34
|
+
maxRemindersPerTurn: 3,
|
|
35
|
+
previewItems: 5,
|
|
36
|
+
};
|
|
37
|
+
/** The loader validates the row against this schema before `apply` sees it. */
|
|
38
|
+
export const Config = z.object({
|
|
39
|
+
staleSteps: z.number().default(TODO_GUARD_DEFAULTS.staleSteps),
|
|
40
|
+
missingListSteps: z.number().default(TODO_GUARD_DEFAULTS.missingListSteps),
|
|
41
|
+
maxRemindersPerTurn: z.number().default(TODO_GUARD_DEFAULTS.maxRemindersPerTurn),
|
|
42
|
+
previewItems: z.number().default(TODO_GUARD_DEFAULTS.previewItems),
|
|
43
|
+
});
|
|
44
|
+
/** One field that must be a positive whole number, or a load-time failure. */
|
|
45
|
+
function positiveInteger(field, value) {
|
|
46
|
+
if (!Number.isInteger(value) || value < 1) {
|
|
47
|
+
throw new Error(`todo-guard: \`${field}\` must be an integer >= 1 (got ${String(value)})`);
|
|
48
|
+
}
|
|
49
|
+
return value;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Apply defaults and validate. The loader normally fills the defaults, but a
|
|
53
|
+
* direct `apply` call (a test, or a composition that bypasses schemastery)
|
|
54
|
+
* must fail loud rather than silently guard nothing.
|
|
55
|
+
*/
|
|
56
|
+
export function resolveTodoGuardConfig(config = {}) {
|
|
57
|
+
return {
|
|
58
|
+
staleSteps: positiveInteger('staleSteps', config.staleSteps ?? TODO_GUARD_DEFAULTS.staleSteps),
|
|
59
|
+
missingListSteps: positiveInteger('missingListSteps', config.missingListSteps ?? TODO_GUARD_DEFAULTS.missingListSteps),
|
|
60
|
+
maxRemindersPerTurn: positiveInteger('maxRemindersPerTurn', config.maxRemindersPerTurn ?? TODO_GUARD_DEFAULTS.maxRemindersPerTurn),
|
|
61
|
+
previewItems: positiveInteger('previewItems', config.previewItems ?? TODO_GUARD_DEFAULTS.previewItems),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
const OPEN_GLYPHS = { pending: '☐', in_progress: '▸' };
|
|
65
|
+
const isOpenTodo = (todo) => todo.status !== 'completed';
|
|
66
|
+
/** The stale-list reminder: the plan aged, so it is now describing earlier work. */
|
|
67
|
+
export function staleReminder(open, steps, previewItems) {
|
|
68
|
+
const shown = open.slice(0, previewItems);
|
|
69
|
+
const omitted = open.length - shown.length;
|
|
70
|
+
return {
|
|
71
|
+
text: [
|
|
72
|
+
`Your todo list is stale: ${steps} step${steps === 1 ? '' : 's'} have passed without a todo_write, and ${open.length} item${open.length === 1 ? '' : 's'} ${open.length === 1 ? 'is' : 'are'} still open:`,
|
|
73
|
+
...shown.map(todo => ` ${OPEN_GLYPHS[todo.status]} ${todo.content}`),
|
|
74
|
+
...(omitted > 0 ? [` … ${omitted} more`] : []),
|
|
75
|
+
'Update it now: mark finished items completed, mark the item you are working on in_progress, and add work you discovered. Do not leave the list describing earlier work.',
|
|
76
|
+
].join('\n'),
|
|
77
|
+
summary: `todos stale · ${steps} steps`,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
/** The reminder for a long turn that has produced no list at all. */
|
|
81
|
+
export function missingListReminder(steps) {
|
|
82
|
+
return {
|
|
83
|
+
text: `${steps} steps have run in this turn without a todo list. If this work has more than one step, call todo_write now to record the concrete remaining steps and mark the one you are on in_progress.`,
|
|
84
|
+
summary: `todos missing · ${steps} steps`,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* The decision core, free of Cordis so it can be tested directly.
|
|
89
|
+
*
|
|
90
|
+
* It counts model steps rather than tool calls: a plan ages by how much the
|
|
91
|
+
* agent has thought and acted since its last write, and a parallel batch of
|
|
92
|
+
* calls is one step, so one batch can never spend the whole reminder budget.
|
|
93
|
+
*/
|
|
94
|
+
export class TodoGuard {
|
|
95
|
+
config;
|
|
96
|
+
counters = new WeakMap();
|
|
97
|
+
constructor(config) {
|
|
98
|
+
this.config = config;
|
|
99
|
+
}
|
|
100
|
+
/** Follow the durable events that open a turn or a step. */
|
|
101
|
+
onEvent(session, type) {
|
|
102
|
+
const counters = this.countersFor(session);
|
|
103
|
+
if (type === TURN_START) {
|
|
104
|
+
counters.steps = 0;
|
|
105
|
+
counters.reminders = 0;
|
|
106
|
+
counters.remindedThisStep = false;
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
if (type === STEP_START) {
|
|
110
|
+
counters.steps += 1;
|
|
111
|
+
counters.remindedThisStep = false;
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
// Only a committed write restarts the age. An attempt the tool rejected
|
|
115
|
+
// never reaches this event, so it cannot buy the stale list quiet steps.
|
|
116
|
+
if (type === TODO_WRITE_EVENT)
|
|
117
|
+
counters.steps = 0;
|
|
118
|
+
}
|
|
119
|
+
/** The reminder this tool result should carry, or undefined to stay silent. */
|
|
120
|
+
observe(session, observation) {
|
|
121
|
+
const counters = this.countersFor(session);
|
|
122
|
+
// Never speak on the write's own result; the committed event restarts the
|
|
123
|
+
// count, so a rejected attempt does not silence the guard either.
|
|
124
|
+
if (observation.toolName === TODO_WRITE_TOOL)
|
|
125
|
+
return undefined;
|
|
126
|
+
if (!observation.hasTodoTool)
|
|
127
|
+
return undefined;
|
|
128
|
+
// Plan mode suppresses the guard, and an unreadable plan projection is not
|
|
129
|
+
// a `false` answer, so only a definite "not in plan mode" lets it speak.
|
|
130
|
+
if (observation.planActive !== false)
|
|
131
|
+
return undefined;
|
|
132
|
+
if (observation.todos.kind === 'unavailable')
|
|
133
|
+
return undefined;
|
|
134
|
+
if (counters.remindedThisStep || counters.reminders >= this.config.maxRemindersPerTurn)
|
|
135
|
+
return undefined;
|
|
136
|
+
const open = observation.todos.kind === 'listed' ? observation.todos.todos.filter(isOpenTodo) : [];
|
|
137
|
+
const reminder = open.length > 0
|
|
138
|
+
? counters.steps >= this.config.staleSteps
|
|
139
|
+
? staleReminder(open, counters.steps, this.config.previewItems)
|
|
140
|
+
: undefined
|
|
141
|
+
: observation.todos.kind === 'absent' && counters.steps >= this.config.missingListSteps
|
|
142
|
+
? missingListReminder(counters.steps)
|
|
143
|
+
: undefined;
|
|
144
|
+
if (reminder === undefined)
|
|
145
|
+
return undefined;
|
|
146
|
+
counters.steps = 0;
|
|
147
|
+
counters.remindedThisStep = true;
|
|
148
|
+
counters.reminders += 1;
|
|
149
|
+
return reminder;
|
|
150
|
+
}
|
|
151
|
+
countersFor(session) {
|
|
152
|
+
let counters = this.counters.get(session);
|
|
153
|
+
if (counters === undefined) {
|
|
154
|
+
counters = { steps: 0, reminders: 0, remindedThisStep: false };
|
|
155
|
+
this.counters.set(session, counters);
|
|
156
|
+
}
|
|
157
|
+
return counters;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Prepend the guard's context while preserving every downstream context's own
|
|
162
|
+
* source, and carry it on a block as well so a denied call still reads it.
|
|
163
|
+
*/
|
|
164
|
+
export function foldReminder(reminder, downstream) {
|
|
165
|
+
const contexts = [reminder, ...downstream.additionalContexts ?? []];
|
|
166
|
+
if (downstream.kind === 'block') {
|
|
167
|
+
return { kind: 'block', feedback: downstream.feedback, additionalContexts: contexts };
|
|
168
|
+
}
|
|
169
|
+
return { ...downstream, additionalContexts: contexts };
|
|
170
|
+
}
|
|
171
|
+
function asRecord(value) {
|
|
172
|
+
return typeof value === 'object' && value !== null ? value : undefined;
|
|
173
|
+
}
|
|
174
|
+
const TODO_STATUSES = new Set(['pending', 'in_progress', 'completed']);
|
|
175
|
+
/** The current whole list from the harness projection. */
|
|
176
|
+
function readTodos(ctx, session) {
|
|
177
|
+
const read = projectionRead(ctx, session, TODOS_KEY);
|
|
178
|
+
// The projection is an array once the tool has written and `null` before
|
|
179
|
+
// that; an unregistered or unreadable unit silences us instead.
|
|
180
|
+
if (read.kind !== 'state')
|
|
181
|
+
return { kind: 'unavailable' };
|
|
182
|
+
const state = read.state;
|
|
183
|
+
if (state === null)
|
|
184
|
+
return { kind: 'absent' };
|
|
185
|
+
if (!Array.isArray(state))
|
|
186
|
+
return { kind: 'unavailable' };
|
|
187
|
+
const todos = [];
|
|
188
|
+
for (const item of state) {
|
|
189
|
+
const record = asRecord(item);
|
|
190
|
+
const content = record?.content;
|
|
191
|
+
const status = record?.status;
|
|
192
|
+
if (typeof content !== 'string')
|
|
193
|
+
continue;
|
|
194
|
+
if (typeof status !== 'string' || !TODO_STATUSES.has(status))
|
|
195
|
+
continue;
|
|
196
|
+
todos.push({ content, status: status });
|
|
197
|
+
}
|
|
198
|
+
return { kind: 'listed', todos };
|
|
199
|
+
}
|
|
200
|
+
/** Whether this session is in plan mode; `undefined` when that cannot be read. */
|
|
201
|
+
function readPlanActive(ctx, session) {
|
|
202
|
+
const read = projectionRead(ctx, session, PLAN_KEY);
|
|
203
|
+
// An unregistered key means plan mode is not composed for this agent, which is
|
|
204
|
+
// a definite "not in plan mode". A registered unit that cannot answer is not a
|
|
205
|
+
// definite anything, so it keeps the guard silent.
|
|
206
|
+
if (read.kind === 'unregistered')
|
|
207
|
+
return false;
|
|
208
|
+
if (read.kind !== 'state')
|
|
209
|
+
return undefined;
|
|
210
|
+
return asRecord(read.state)?.active === true;
|
|
211
|
+
}
|
|
212
|
+
/** Whether `todo_write` is reachable from this agent, so a tool-less preset stays silent. */
|
|
213
|
+
function todoToolAvailable(ctx, agent) {
|
|
214
|
+
try {
|
|
215
|
+
// `get` is presentation-agnostic: under PTC the model sees only `run_code`,
|
|
216
|
+
// but the sub-dispatch it programs still reaches `todo_write`, so a scan of
|
|
217
|
+
// the wire schemas would wrongly silence the guard in the default mode.
|
|
218
|
+
// Read live: a cached answer would outlive a registry that changed.
|
|
219
|
+
return ctx.tools.get(TODO_WRITE_TOOL, agent) !== undefined;
|
|
220
|
+
}
|
|
221
|
+
catch {
|
|
222
|
+
// A torn-down scope answers nothing; the next call asks again rather than
|
|
223
|
+
// remembering a transient failure as a permanent silence.
|
|
224
|
+
return false;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Install the guard's listeners.
|
|
229
|
+
*
|
|
230
|
+
* The list and plan come from the host projections rather than a private fold,
|
|
231
|
+
* so this reads exactly the lifetime every other surface shows. Absent
|
|
232
|
+
* projections mean silence, never an error, because the guard is decoration.
|
|
233
|
+
*/
|
|
234
|
+
export function apply(ctx, config = {}) {
|
|
235
|
+
const resolved = resolveTodoGuardConfig(config);
|
|
236
|
+
const guard = new TodoGuard(resolved);
|
|
237
|
+
ctx.on('session/event', (session, event) => { guard.onEvent(session, event.type); });
|
|
238
|
+
ctx.on('tools/post-execute', async (exec, result, next) => {
|
|
239
|
+
const agent = exec.agent;
|
|
240
|
+
// Observe before delegating so a downstream block cannot hide the fact that
|
|
241
|
+
// the step happened; the reminder then rides whatever decision comes back.
|
|
242
|
+
// A concluding result ends the turn at this step, so a context here would
|
|
243
|
+
// only buy one more step after the tools have already wound down.
|
|
244
|
+
const reminder = agent === undefined || result.concludesTurn === true ? undefined : guard.observe(agent.session, {
|
|
245
|
+
toolName: exec.name,
|
|
246
|
+
hasTodoTool: todoToolAvailable(ctx, agent),
|
|
247
|
+
planActive: readPlanActive(ctx, agent.session),
|
|
248
|
+
todos: readTodos(ctx, agent.session),
|
|
249
|
+
});
|
|
250
|
+
const downstream = await next();
|
|
251
|
+
if (reminder === undefined)
|
|
252
|
+
return downstream;
|
|
253
|
+
return foldReminder(createUserMessage({
|
|
254
|
+
content: [{ type: 'text', text: reminder.text }],
|
|
255
|
+
source: { ...PLUGIN_SOURCE, form: 'notice', summary: reminder.summary },
|
|
256
|
+
}), downstream);
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
//# sourceMappingURL=todo-guard.js.map
|