@agi-fans/dsh-tui 0.13.0 → 0.15.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.
Files changed (101) hide show
  1. package/lib/CHANGELOG.md +56 -1
  2. package/lib/chrome/goal-bar.d.ts +13 -0
  3. package/lib/chrome/goal-bar.js +45 -0
  4. package/lib/chrome/goal-bar.js.map +1 -0
  5. package/lib/chrome/grapheme.d.ts +15 -0
  6. package/lib/chrome/grapheme.js +49 -0
  7. package/lib/chrome/grapheme.js.map +1 -0
  8. package/lib/chrome/markdown.js +96 -28
  9. package/lib/chrome/markdown.js.map +1 -1
  10. package/lib/chrome/renderer.d.ts +5 -61
  11. package/lib/chrome/renderer.js +17 -181
  12. package/lib/chrome/renderer.js.map +1 -1
  13. package/lib/chrome/status-config.d.ts +9 -4
  14. package/lib/chrome/status-config.js +13 -4
  15. package/lib/chrome/status-config.js.map +1 -1
  16. package/lib/chrome/status-line.d.ts +2 -0
  17. package/lib/chrome/status-line.js +4 -1
  18. package/lib/chrome/status-line.js.map +1 -1
  19. package/lib/chrome/tool-renderers.js +49 -3
  20. package/lib/chrome/tool-renderers.js.map +1 -1
  21. package/lib/commands/auth.d.ts +2 -2
  22. package/lib/commands/auth.js +6 -8
  23. package/lib/commands/auth.js.map +1 -1
  24. package/lib/commands/diff.d.ts +32 -0
  25. package/lib/commands/diff.js +116 -0
  26. package/lib/commands/diff.js.map +1 -0
  27. package/lib/commands/export.js +3 -3
  28. package/lib/commands/export.js.map +1 -1
  29. package/lib/commands/jobs.d.ts +14 -0
  30. package/lib/commands/jobs.js +82 -0
  31. package/lib/commands/jobs.js.map +1 -0
  32. package/lib/commands/model.d.ts +25 -0
  33. package/lib/commands/model.js +168 -4
  34. package/lib/commands/model.js.map +1 -1
  35. package/lib/commands/permission.d.ts +10 -1
  36. package/lib/commands/permission.js +24 -15
  37. package/lib/commands/permission.js.map +1 -1
  38. package/lib/commands/session.js +76 -4
  39. package/lib/commands/session.js.map +1 -1
  40. package/lib/commands/trajectory.js +1 -1
  41. package/lib/commands/trajectory.js.map +1 -1
  42. package/lib/definition.d.ts +25 -3
  43. package/lib/definition.js.map +1 -1
  44. package/lib/input/editor.d.ts +2 -0
  45. package/lib/input/editor.js +19 -9
  46. package/lib/input/editor.js.map +1 -1
  47. package/lib/input/keybindings-config.d.ts +1 -1
  48. package/lib/input/keybindings-config.js +9 -0
  49. package/lib/input/keybindings-config.js.map +1 -1
  50. package/lib/runtime/agent-profile.d.ts +11 -0
  51. package/lib/runtime/agent-profile.js +20 -1
  52. package/lib/runtime/agent-profile.js.map +1 -1
  53. package/lib/runtime/provider-local.d.ts +9 -1
  54. package/lib/runtime/provider-local.js +318 -91
  55. package/lib/runtime/provider-local.js.map +1 -1
  56. package/lib/runtime/runner.js +33 -8
  57. package/lib/runtime/runner.js.map +1 -1
  58. package/lib/runtime/startup-notices.js +1 -2
  59. package/lib/runtime/startup-notices.js.map +1 -1
  60. package/lib/runtime/tool-presentation.js +13 -2
  61. package/lib/runtime/tool-presentation.js.map +1 -1
  62. package/lib/session/interaction-adapter.js +4 -2
  63. package/lib/session/interaction-adapter.js.map +1 -1
  64. package/lib/session/job-notice.d.ts +28 -0
  65. package/lib/session/job-notice.js +34 -0
  66. package/lib/session/job-notice.js.map +1 -0
  67. package/lib/session/live-attempt-tracker.d.ts +43 -0
  68. package/lib/session/live-attempt-tracker.js +58 -0
  69. package/lib/session/live-attempt-tracker.js.map +1 -0
  70. package/lib/session/project-context.d.ts +2 -0
  71. package/lib/session/project-context.js +22 -11
  72. package/lib/session/project-context.js.map +1 -1
  73. package/lib/session/session-configuration.js +3 -3
  74. package/lib/session/session-configuration.js.map +1 -1
  75. package/lib/session/session-controller.d.ts +11 -5
  76. package/lib/session/session-controller.js +302 -66
  77. package/lib/session/session-controller.js.map +1 -1
  78. package/lib/session/subagent-roster.d.ts +37 -0
  79. package/lib/session/subagent-roster.js +80 -16
  80. package/lib/session/subagent-roster.js.map +1 -1
  81. package/lib/session/tui-settings.js +1 -0
  82. package/lib/session/tui-settings.js.map +1 -1
  83. package/lib/views/event-views.d.ts +44 -2
  84. package/lib/views/event-views.js +191 -64
  85. package/lib/views/event-views.js.map +1 -1
  86. package/lib/views/hotkeys.js +11 -4
  87. package/lib/views/hotkeys.js.map +1 -1
  88. package/lib/views/settings-list.js +1 -0
  89. package/lib/views/settings-list.js.map +1 -1
  90. package/lib/views/stream-time.d.ts +14 -0
  91. package/lib/views/stream-time.js +32 -0
  92. package/lib/views/stream-time.js.map +1 -0
  93. package/lib/views/streaming-reveal.js +14 -5
  94. package/lib/views/streaming-reveal.js.map +1 -1
  95. package/lib/views/trajectory.d.ts +47 -1
  96. package/lib/views/trajectory.js +393 -58
  97. package/lib/views/trajectory.js.map +1 -1
  98. package/lib/views/transcript-search.d.ts +42 -0
  99. package/lib/views/transcript-search.js +84 -0
  100. package/lib/views/transcript-search.js.map +1 -0
  101. package/package.json +45 -33
@@ -1,20 +1,9 @@
1
1
  /**
2
- * Pure ANSI differential line renderer.
3
-
4
- * A frame is an array of display lines; render() rewrites only the lines
5
- * that differ from the previous frame and repositions the cursor. The
6
- * renderer is escape-sequence-literate but style-agnostic: lines pass
7
- * through verbatim, so callers own all styling (see ./style.ts).
8
-
9
- * Cursor contract: after every render the cursor sits exactly at the
10
- * frame's requested cursor position (default: the start of the line after
11
- * the last frame line), and the renderer tracks that position so the next
12
- * render diffs correctly from it — a render whose cursor sits on the input
13
- * line must not shift the following frame. All emitted movement stays
14
- * inside the frame, so a frame that fills the terminal never scrolls it.
15
- * The renderer assumes exclusive write access to the output stream and a
16
- * terminal cursor that starts at row 0 column 0 when the first frame is
17
- * rendered.
2
+ * Shared frame definitions and display-line sanitization for the renderers.
3
+ *
4
+ * The main-screen renderer owns the live ANSI painting; this module keeps
5
+ * the frame shape, the write sink, and sanitization used by both it and the
6
+ * pure view pipeline.
18
7
  * @module @agi-fans/dsh-tui
19
8
  */
20
9
  /** Transcript viewport after the height clip (OMP ScrollView equivalent). */
@@ -58,50 +47,5 @@ export interface Frame {
58
47
  export interface RenderSink {
59
48
  write(chunk: string): void;
60
49
  }
61
- /**
62
- * Line diff between two frames: the write/clear operations that transform
63
- * `oldLines` into `nextLines`. Rows are 0-based absolute indices into the
64
- * frame; changed rows are rewritten, old-only rows are cleared in place.
65
- * Pure — unit-testable without a terminal.
66
- */
67
- export interface LineDiff {
68
- /** Rows to write: absolute row index (0-based) and exact line text. */
69
- writes: {
70
- row: number;
71
- text: string;
72
- }[];
73
- /** Stale rows (old-only) whose content must be cleared. */
74
- clears: number[];
75
- }
76
50
  /** Keep styling/link escapes but remove content-owned cursor and screen controls. */
77
51
  export declare function sanitizeDisplayLine(value: string): string;
78
- /**
79
- * Compute the line diff between two frames.
80
- * @param oldLines - previously rendered lines.
81
- * @param nextLines - lines to render now.
82
- * @returns operations transforming old into next.
83
- */
84
- export declare function computeLineDiff(oldLines: readonly string[], nextLines: readonly string[]): LineDiff;
85
- /**
86
- * Stateful ANSI renderer: executes line diffs into a sink, tracking the
87
- * cursor position so consecutive frames diff correctly.
88
- */
89
- export declare class LineRenderer {
90
- #private;
91
- /**
92
- * @param sink - output stream receiving escape sequences and text.
93
- * @param options.synchronized - wrap each paint in CSI 2026 (OMP flicker guard).
94
- */
95
- constructor(sink: RenderSink, options?: {
96
- synchronized?: boolean;
97
- });
98
- /** Render a frame, rewriting only the lines that changed. */
99
- render(frame: Frame): void;
100
- /**
101
- * Move to the start of the frame's final row so a following newline exits
102
- * below the UI instead of overwriting rows beneath the editor cursor.
103
- */
104
- finish(): void;
105
- /** Forget the rendered state; the next render treats the screen as empty. */
106
- reset(): void;
107
- }
@@ -1,34 +1,22 @@
1
1
  /**
2
- * Pure ANSI differential line renderer.
3
-
4
- * A frame is an array of display lines; render() rewrites only the lines
5
- * that differ from the previous frame and repositions the cursor. The
6
- * renderer is escape-sequence-literate but style-agnostic: lines pass
7
- * through verbatim, so callers own all styling (see ./style.ts).
8
-
9
- * Cursor contract: after every render the cursor sits exactly at the
10
- * frame's requested cursor position (default: the start of the line after
11
- * the last frame line), and the renderer tracks that position so the next
12
- * render diffs correctly from it — a render whose cursor sits on the input
13
- * line must not shift the following frame. All emitted movement stays
14
- * inside the frame, so a frame that fills the terminal never scrolls it.
15
- * The renderer assumes exclusive write access to the output stream and a
16
- * terminal cursor that starts at row 0 column 0 when the first frame is
17
- * rendered.
2
+ * Shared frame definitions and display-line sanitization for the renderers.
3
+ *
4
+ * The main-screen renderer owns the live ANSI painting; this module keeps
5
+ * the frame shape, the write sink, and sanitization used by both it and the
6
+ * pure view pipeline.
18
7
  * @module @agi-fans/dsh-tui
19
8
  */
20
- // Exact-width rows leave a pending-wrap latch in several terminals. A later
21
- // cursor move can materialize that wrap and leave phantom copies of fixed UI
22
- // rows. Paints use explicit CRLFs, so disable DECAWM only for the write and
23
- // restore it before returning control to the terminal.
24
- const DISABLE_AUTOWRAP = '\x1b[?7l';
25
- const ENABLE_AUTOWRAP = '\x1b[?7h';
26
- const SYNC_OUTPUT_BEGIN = '\x1b[?2026h';
27
- const SYNC_OUTPUT_END = '\x1b[?2026l';
28
9
  const DISPLAY_ESCAPE = /\x1b(?:\[[0-9;?]*[ -/]*[@-~]|\][^\x07\x1b]*(?:\x07|\x1b\\))/gu;
29
10
  const UNSAFE_CONTROL = /[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/gu;
11
+ // Bound memo: settled rows stay byte-identical across paints, so a long
12
+ // session repaints without re-sanitizing the whole history every frame.
13
+ const sanitizeCache = new Map();
14
+ const SANITIZE_CACHE_LIMIT = 20_000;
30
15
  /** Keep styling/link escapes but remove content-owned cursor and screen controls. */
31
16
  export function sanitizeDisplayLine(value) {
17
+ const cached = sanitizeCache.get(value);
18
+ if (cached !== undefined)
19
+ return cached;
32
20
  const plain = (text) => text
33
21
  .replaceAll('\r', ' ')
34
22
  .replaceAll('\n', ' ')
@@ -43,162 +31,10 @@ export function sanitizeDisplayLine(value) {
43
31
  }
44
32
  cursor = match.index + sequence.length;
45
33
  }
46
- return output + plain(value.slice(cursor));
47
- }
48
- function cursorPosition(row, column) {
49
- return `\x1b[${Math.max(0, row) + 1};${Math.max(0, column) + 1}H`;
50
- }
51
- /**
52
- * Compute the line diff between two frames.
53
- * @param oldLines - previously rendered lines.
54
- * @param nextLines - lines to render now.
55
- * @returns operations transforming old into next.
56
- */
57
- export function computeLineDiff(oldLines, nextLines) {
58
- let prefix = 0;
59
- while (prefix < oldLines.length && prefix < nextLines.length && oldLines[prefix] === nextLines[prefix])
60
- prefix += 1;
61
- let suffix = 0;
62
- // Suffix rows keep their screen row only when both frames have the same
63
- // length; a grow/shrink shifts every row after the change, so the tail
64
- // must be rewritten rather than skipped.
65
- if (oldLines.length === nextLines.length) {
66
- while (suffix < oldLines.length - prefix
67
- && oldLines[oldLines.length - 1 - suffix] === nextLines[nextLines.length - 1 - suffix])
68
- suffix += 1;
69
- }
70
- const changedOld = oldLines.length - prefix - suffix;
71
- const changedNew = nextLines.length - prefix - suffix;
72
- const writes = [];
73
- for (let i = 0; i < changedNew; i += 1) {
74
- writes.push({ row: prefix + i, text: nextLines[prefix + i] ?? '' });
75
- }
76
- const clears = [];
77
- for (let i = changedNew; i < changedOld; i += 1)
78
- clears.push(prefix + i);
79
- return { writes, clears };
80
- }
81
- /**
82
- * Stateful ANSI renderer: executes line diffs into a sink, tracking the
83
- * cursor position so consecutive frames diff correctly.
84
- */
85
- export class LineRenderer {
86
- #last = [];
87
- /** Terminal cursor row after the last render (0-based, screen-relative). */
88
- #row = 0;
89
- /** Terminal cursor column after the last render (0-based). */
90
- #col = 0;
91
- #cursorVisible = true;
92
- #sink;
93
- #synchronized;
94
- /**
95
- * @param sink - output stream receiving escape sequences and text.
96
- * @param options.synchronized - wrap each paint in CSI 2026 (OMP flicker guard).
97
- */
98
- constructor(sink, options) {
99
- this.#sink = sink;
100
- this.#synchronized = options?.synchronized === true;
101
- }
102
- /** Render a frame, rewriting only the lines that changed. */
103
- render(frame) {
104
- const next = frame.lines.map((line) => sanitizeDisplayLine(String(line)));
105
- const diff = computeLineDiff(this.#last, next);
106
- const changed = diff.writes.length > 0 || diff.clears.length > 0;
107
- let out = '';
108
- // Simulate the cursor through the emitted operations so the final
109
- // positioning never depends on assumptions about where the ops left it.
110
- let row = this.#row;
111
- let col = this.#col;
112
- if (changed) {
113
- // Anchor every paint to an absolute screen row. Terminal integrations,
114
- // raw tool output, or another stdout owner may have moved the physical
115
- // cursor without updating our cache; relative motion would preserve that
116
- // drift and leave old viewport indicators behind.
117
- const prefix = diff.writes[0]?.row ?? diff.clears[0] ?? 0;
118
- out += cursorPosition(prefix, 0);
119
- row = prefix;
120
- col = 0;
121
- for (const write of diff.writes) {
122
- out += '\r\x1b[K' + write.text;
123
- row = write.row;
124
- col = write.text.length;
125
- if (write.row < next.length - 1) {
126
- out += '\r\n';
127
- row += 1;
128
- col = 0;
129
- }
130
- }
131
- if (diff.clears.length > 0) {
132
- // Walk down through the stale rows, clearing each in place, then
133
- // return to the last written row (or the first rewritten row).
134
- for (let i = 0; i < diff.clears.length; i += 1) {
135
- if (i > 0 || diff.writes.length > 0) {
136
- out += '\r\n';
137
- row += 1;
138
- col = 0;
139
- }
140
- out += '\x1b[K';
141
- }
142
- const back = diff.clears.length - (diff.writes.length > 0 ? 0 : 1);
143
- if (back > 0) {
144
- out += `\x1b[${back}A`;
145
- row -= back;
146
- }
147
- }
148
- // Styled lines may contain escape bytes, so the column after a text
149
- // write is not meaningful; normalize to the line start before the
150
- // final positioning move.
151
- if (col > 0) {
152
- out += '\r';
153
- col = 0;
154
- }
155
- }
156
- this.#last = next;
157
- const target = frame.cursor ?? { row: next.length, column: 0 };
158
- const cursorVisible = frame.cursorVisible !== false;
159
- // Every changed paint ends at an absolute cursor coordinate. Identical
160
- // frames remain true no-ops unless the logical caret itself moved.
161
- const move = changed || target.row !== this.#row || target.column !== this.#col
162
- ? cursorPosition(target.row, target.column)
163
- : '';
164
- const hide = !cursorVisible && this.#cursorVisible ? '\x1b[?25l' : '';
165
- const show = cursorVisible && !this.#cursorVisible ? '\x1b[?25h' : '';
166
- const payload = hide + out + move + show;
167
- if (payload !== '') {
168
- this.#sink.write(this.#synchronized
169
- ? SYNC_OUTPUT_BEGIN + DISABLE_AUTOWRAP + payload + ENABLE_AUTOWRAP + SYNC_OUTPUT_END
170
- : DISABLE_AUTOWRAP + payload + ENABLE_AUTOWRAP);
171
- }
172
- this.#row = target.row;
173
- this.#col = target.column;
174
- this.#cursorVisible = cursorVisible;
175
- }
176
- /**
177
- * Move to the start of the frame's final row so a following newline exits
178
- * below the UI instead of overwriting rows beneath the editor cursor.
179
- */
180
- finish() {
181
- const targetRow = Math.max(0, this.#last.length - 1);
182
- let out = '';
183
- if (this.#row > targetRow)
184
- out += `\x1b[${this.#row - targetRow}A`;
185
- else if (this.#row < targetRow)
186
- out += `\x1b[${targetRow - this.#row}B`;
187
- if (this.#col > 0)
188
- out += '\r';
189
- if (!this.#cursorVisible)
190
- out += '\x1b[?25h';
191
- if (out !== '')
192
- this.#sink.write(out);
193
- this.#row = targetRow;
194
- this.#col = 0;
195
- this.#cursorVisible = true;
196
- }
197
- /** Forget the rendered state; the next render treats the screen as empty. */
198
- reset() {
199
- this.#last = [];
200
- this.#row = 0;
201
- this.#col = 0;
202
- }
34
+ const result = output + plain(value.slice(cursor));
35
+ if (sanitizeCache.size >= SANITIZE_CACHE_LIMIT)
36
+ sanitizeCache.clear();
37
+ sanitizeCache.set(value, result);
38
+ return result;
203
39
  }
204
40
  //# sourceMappingURL=renderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/chrome/renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/chrome/renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAuCH,MAAM,cAAc,GAAG,+DAA+D,CAAA;AACtF,MAAM,cAAc,GAAG,oCAAoC,CAAA;AAE3D,wEAAwE;AACxE,wEAAwE;AACxE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAA;AAC/C,MAAM,oBAAoB,GAAG,MAAM,CAAA;AAEnC,qFAAqF;AACrF,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACvC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IACvC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI;SACzC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;SACrB,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;IAC9B,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;QACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACzB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/F,MAAM,IAAI,QAAQ,CAAA;QACpB,CAAC;QACD,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAA;IACxC,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IAClD,IAAI,aAAa,CAAC,IAAI,IAAI,oBAAoB;QAAE,aAAa,CAAC,KAAK,EAAE,CAAA;IACrE,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAChC,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -5,11 +5,11 @@
5
5
  /** Stable telemetry groups users can show, hide, and reorder. */
6
6
  export declare const STATUS_GROUP_IDS: readonly ["context", "cache", "tokens", "speed", "durations", "counts"];
7
7
  export type StatusGroupId = (typeof STATUS_GROUP_IDS)[number];
8
- /** First-line pieces: model, reasoning effort, workspace path, and Git branch. */
9
- export declare const STATUS_META_IDS: readonly ["model", "effort", "path", "git"];
8
+ /** First-line pieces: model, reasoning effort, workspace path, Git branch, and session title. */
9
+ export declare const STATUS_META_IDS: readonly ["model", "effort", "path", "git", "session"];
10
10
  export type StatusMetaId = (typeof STATUS_META_IDS)[number];
11
11
  /** Every independently placed footer item. */
12
- export declare const STATUS_ITEM_IDS: readonly ["model", "effort", "path", "git", "context", "cache", "tokens", "speed", "durations", "counts"];
12
+ export declare const STATUS_ITEM_IDS: readonly ["model", "effort", "path", "git", "session", "context", "cache", "tokens", "speed", "durations", "counts"];
13
13
  export type StatusItemId = (typeof STATUS_ITEM_IDS)[number];
14
14
  export declare const STATUS_LABEL_STYLES: readonly ["compact", "full"];
15
15
  export type StatusLabelStyle = (typeof STATUS_LABEL_STYLES)[number];
@@ -17,7 +17,7 @@ export type StatusLabelStyle = (typeof STATUS_LABEL_STYLES)[number];
17
17
  * Color slots: one per preview item, plus legacy `metrics` as a fallback for
18
18
  * telemetry groups that do not have their own color yet.
19
19
  */
20
- export declare const STATUS_COLOR_SLOTS: readonly ["model", "effort", "path", "git", "context", "cache", "tokens", "speed", "durations", "counts", "metrics"];
20
+ export declare const STATUS_COLOR_SLOTS: readonly ["model", "effort", "path", "git", "session", "context", "cache", "tokens", "speed", "durations", "counts", "metrics"];
21
21
  export type StatusColorSlot = (typeof STATUS_COLOR_SLOTS)[number];
22
22
  /** Theme tokens offered for a status item. `default` keeps the built-in hierarchy. */
23
23
  export declare const STATUS_COLOR_TOKENS: readonly ["default", "text", "muted", "accent", "success", "warning", "border", "label"];
@@ -56,6 +56,11 @@ export interface ResolvedStatusBarConfig extends StatusBarConfig {
56
56
  export declare const STATUS_PRESETS: readonly ["minimal", "compact", "full"];
57
57
  export type StatusPreset = (typeof STATUS_PRESETS)[number];
58
58
  export declare const DEFAULT_STATUS_GROUPS: readonly StatusGroupId[];
59
+ /**
60
+ * Session title is offered but off by default: adding it to the first line
61
+ * would push narrow terminals into degradation sooner. The terminal window
62
+ * title carries it unconditionally.
63
+ */
59
64
  export declare const DEFAULT_STATUS_META: readonly StatusMetaId[];
60
65
  export declare const DEFAULT_STATUS_COLORS: Required<StatusBarColors>;
61
66
  /** Return a fresh default so callers can safely replace its group list. */
@@ -4,8 +4,8 @@
4
4
  */
5
5
  /** Stable telemetry groups users can show, hide, and reorder. */
6
6
  export const STATUS_GROUP_IDS = ['context', 'cache', 'tokens', 'speed', 'durations', 'counts'];
7
- /** First-line pieces: model, reasoning effort, workspace path, and Git branch. */
8
- export const STATUS_META_IDS = ['model', 'effort', 'path', 'git'];
7
+ /** First-line pieces: model, reasoning effort, workspace path, Git branch, and session title. */
8
+ export const STATUS_META_IDS = ['model', 'effort', 'path', 'git', 'session'];
9
9
  /** Every independently placed footer item. */
10
10
  export const STATUS_ITEM_IDS = [...STATUS_META_IDS, ...STATUS_GROUP_IDS];
11
11
  export const STATUS_LABEL_STYLES = ['compact', 'full'];
@@ -23,6 +23,7 @@ export const DEFAULT_STATUS_SIDES = {
23
23
  effort: 'left',
24
24
  path: 'right',
25
25
  git: 'right',
26
+ session: 'left',
26
27
  context: 'left',
27
28
  cache: 'left',
28
29
  tokens: 'left',
@@ -33,12 +34,18 @@ export const DEFAULT_STATUS_SIDES = {
33
34
  /** Legacy value accepted while existing settings documents migrate. */
34
35
  export const STATUS_PRESETS = ['minimal', 'compact', 'full'];
35
36
  export const DEFAULT_STATUS_GROUPS = STATUS_GROUP_IDS;
36
- export const DEFAULT_STATUS_META = STATUS_META_IDS;
37
+ /**
38
+ * Session title is offered but off by default: adding it to the first line
39
+ * would push narrow terminals into degradation sooner. The terminal window
40
+ * title carries it unconditionally.
41
+ */
42
+ export const DEFAULT_STATUS_META = ['model', 'effort', 'path', 'git'];
37
43
  export const DEFAULT_STATUS_COLORS = {
38
44
  model: 'default',
39
45
  effort: 'default',
40
46
  path: 'default',
41
47
  git: 'default',
48
+ session: 'default',
42
49
  metrics: 'default',
43
50
  context: 'default',
44
51
  cache: 'default',
@@ -55,7 +62,9 @@ export function defaultStatusBarConfig() {
55
62
  groups: [...DEFAULT_STATUS_GROUPS],
56
63
  order: [...DEFAULT_STATUS_GROUPS],
57
64
  meta: [...DEFAULT_STATUS_META],
58
- metaOrder: [...DEFAULT_STATUS_META],
65
+ // Every meta id keeps its slot so the settings list stays stable when an
66
+ // item is toggled; only `meta` decides what is actually painted.
67
+ metaOrder: [...STATUS_META_IDS],
59
68
  colors: { ...DEFAULT_STATUS_COLORS },
60
69
  sides: { ...DEFAULT_STATUS_SIDES },
61
70
  };
@@ -1 +1 @@
1
- {"version":3,"file":"status-config.js","sourceRoot":"","sources":["../../src/chrome/status-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status-config.js","sourceRoot":"","sources":["../../src/chrome/status-config.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,8 @@ import type { Theme } from './theme.ts';
14
14
  export interface StatusFooterOptions {
15
15
  model: string;
16
16
  reasoningEffort?: string;
17
+ /** Folded session title, shown only when the `session` meta item is enabled. */
18
+ sessionTitle?: string;
17
19
  controls?: TuiSessionControls;
18
20
  loop?: TuiLoopStatus;
19
21
  pwd?: string;
@@ -272,7 +272,7 @@ function gitTone(branch, config) {
272
272
  return /(?:^|\s)[*?]\d+/.test(branch) ? 'warning' : 'muted';
273
273
  }
274
274
  function visibleMetaIds(config) {
275
- const order = config.metaOrder ?? ['model', 'effort', 'path', 'git'];
275
+ const order = config.metaOrder ?? ['model', 'effort', 'path', 'git', 'session'];
276
276
  const visible = new Set(config.meta ?? ['model', 'effort', 'path', 'git']);
277
277
  return order.filter(id => visible.has(id));
278
278
  }
@@ -285,6 +285,9 @@ function buildMetaParts(options, config) {
285
285
  if (id === 'effort' && options.reasoningEffort !== undefined && options.reasoningEffort !== '') {
286
286
  parts.push({ id, text: options.reasoningEffort, color: itemColor(config, 'effort', 'customMessageLabel') });
287
287
  }
288
+ if (id === 'session' && options.sessionTitle !== undefined && options.sessionTitle !== '') {
289
+ parts.push({ id, text: options.sessionTitle, color: itemColor(config, 'session', 'customMessageLabel') });
290
+ }
288
291
  if (id === 'path' && options.pwd !== undefined && options.pwd !== '') {
289
292
  parts.push({ id, text: options.pwd, color: itemColor(config, 'path', 'muted') });
290
293
  }
@@ -1 +1 @@
1
- {"version":3,"file":"status-line.js","sourceRoot":"","sources":["../../src/chrome/status-line.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status-line.js","sourceRoot":"","sources":["../../src/chrome/status-line.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,44 @@ function stringField(value, key) {
41
41
  function isSubagentToolName(name) {
42
42
  return name === 'subagent' || name.startsWith('subagent_');
43
43
  }
44
+ /** Declared deliverables from a `present` call, ignoring malformed entries. */
45
+ function presentedFiles(raw) {
46
+ const files = parsedObject(raw)?.['files'];
47
+ if (!Array.isArray(files))
48
+ return [];
49
+ const declared = [];
50
+ for (const entry of files) {
51
+ if (entry === null || typeof entry !== 'object' || Array.isArray(entry))
52
+ continue;
53
+ const record = entry;
54
+ const path = record['path'];
55
+ if (typeof path !== 'string' || path.trim() === '')
56
+ continue;
57
+ const description = typeof record['description'] === 'string' ? record['description'].trim() : '';
58
+ declared.push(description === '' ? { path } : { path, description });
59
+ }
60
+ return declared;
61
+ }
62
+ /**
63
+ * Presentation for the Harness `present` tool, which ships no presentCall: the
64
+ * card lists the declared source paths instead of the raw JSON arguments. The
65
+ * durable result only echoes those paths back, so it is hidden when it does.
66
+ */
67
+ function presentFallback(name, raw, output) {
68
+ if (name !== 'present')
69
+ return undefined;
70
+ const files = presentedFiles(raw);
71
+ if (files.length === 0)
72
+ return undefined;
73
+ const rendered = output.trim();
74
+ const echoed = rendered === '' || rendered.split('\n').every(line => line.startsWith('Presented '));
75
+ return {
76
+ title: 'Deliverables',
77
+ summary: files.length === 1 ? '1 file' : `${files.length} files`,
78
+ lines: files.map(file => (file.description === undefined ? file.path : `${file.path} — ${file.description}`)),
79
+ ...(echoed ? { hideOutput: true } : {}),
80
+ };
81
+ }
44
82
  /** Presentation for Harness delegation tools that do not ship presentCall. */
45
83
  function subagentFallback(name, raw, output) {
46
84
  const args = parsedObject(raw) ?? {};
@@ -62,7 +100,7 @@ function subagentFallback(name, raw, output) {
62
100
  }
63
101
  if (name === 'send_message') {
64
102
  const message = stringField(args, 'message');
65
- const id = stringField(args, 'subagent_id');
103
+ const id = stringField(args, 'agent_id') || stringField(args, 'subagent_id');
66
104
  return {
67
105
  title: 'Message',
68
106
  ...(id === '' ? {} : { summary: id }),
@@ -89,6 +127,8 @@ function contentLines(content) {
89
127
  lines.push(...block.text.split('\n'));
90
128
  else if (block.type === 'image')
91
129
  lines.push(`[image ${block.attachment.width}×${block.attachment.height}]`);
130
+ else if (block.type === 'file')
131
+ lines.push(`[file ${block.attachment.name} · ${block.attachment.bytes} bytes]`);
92
132
  else if (block.type === 'tool-call')
93
133
  lines.push(`${block.name} ${block.arguments}`);
94
134
  else if (block.type === 'tool-result')
@@ -207,11 +247,17 @@ function resultPresentation(view) {
207
247
  /** Render a Harness presentation intent, falling back to durable raw arguments/result text. */
208
248
  export function renderTool(input) {
209
249
  const fallback = input.presentation === undefined
210
- ? subagentFallback(input.name, input.arguments, input.output)
250
+ ? presentFallback(input.name, input.arguments, input.output)
251
+ ?? subagentFallback(input.name, input.arguments, input.output)
211
252
  : undefined;
212
253
  const call = callPresentation(input.presentation?.call, input.name);
213
254
  const result = resultPresentation(input.presentation?.result);
214
- const callLines = call.lines ?? fallback?.lines ?? fallbackArgumentLines(input.arguments);
255
+ // A tool that supplied a call card with a semantic title has already decided
256
+ // how the invocation reads; raw argument JSON would only duplicate it. The
257
+ // raw fallback stays for tools that ship no call presentation at all.
258
+ const semanticCall = input.presentation?.call !== undefined && call.title !== undefined;
259
+ const callLines = call.lines
260
+ ?? (semanticCall ? [] : fallback?.lines ?? fallbackArgumentLines(input.arguments));
215
261
  const outputLines = result.lines ?? (fallback?.hideOutput === true || input.output === '' ? [] : input.output.split('\n'));
216
262
  const duplicateDiff = input.presentation?.call?.card === 'diff' && input.presentation.result?.card === 'diff';
217
263
  const summary = result.summary ?? call.summary ?? fallback?.summary;