@sagmans/dsh-tui 0.6.0 → 0.7.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/.agents/skills/dsh-tui-dogfood/SKILL.md +83 -0
- package/.agents/skills/dsh-tui-dogfood/references/home-state.md +78 -0
- package/.agents/skills/dsh-tui-dogfood/scripts/clone-links.mjs +133 -0
- package/.agents/skills/dsh-tui-dogfood/scripts/run-plugin-from-worktree.sh +417 -0
- package/.agents/skills/dsh-tui-update-models/SKILL.md +121 -0
- package/.agents/skills/dsh-tui-update-models/references/model-wiring.md +162 -0
- package/.agents/skills/dsh-tui-update-models/scripts/dump-model-catalog.mjs +178 -0
- package/README.md +99 -5
- package/lib/agent/present.d.ts.map +1 -1
- package/lib/agent/present.js +2 -1
- package/lib/agent/present.js.map +1 -1
- package/lib/cards/composition.d.ts +68 -0
- package/lib/cards/composition.d.ts.map +1 -0
- package/lib/cards/composition.js +117 -0
- package/lib/cards/composition.js.map +1 -0
- package/lib/cards/presenter.d.ts +23 -0
- package/lib/cards/presenter.d.ts.map +1 -0
- package/lib/cards/presenter.js +394 -0
- package/lib/cards/presenter.js.map +1 -0
- package/lib/cards/preview.d.ts +42 -0
- package/lib/cards/preview.d.ts.map +1 -0
- package/lib/cards/preview.js +51 -0
- package/lib/cards/preview.js.map +1 -0
- package/lib/cards.d.ts +12 -120
- package/lib/cards.d.ts.map +1 -1
- package/lib/cards.js +4 -556
- package/lib/cards.js.map +1 -1
- package/lib/compat/section.d.ts +29 -0
- package/lib/compat/section.d.ts.map +1 -0
- package/lib/compat/section.js +82 -0
- package/lib/compat/section.js.map +1 -0
- package/lib/config.d.ts +27 -2
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +61 -1
- package/lib/config.js.map +1 -1
- package/lib/contracts.d.ts +28 -0
- package/lib/contracts.d.ts.map +1 -1
- package/lib/fold-cursor.d.ts +8 -0
- package/lib/fold-cursor.d.ts.map +1 -1
- package/lib/fold-cursor.js +18 -0
- package/lib/fold-cursor.js.map +1 -1
- package/lib/gates/question-card.d.ts +77 -0
- package/lib/gates/question-card.d.ts.map +1 -0
- package/lib/gates/question-card.js +113 -0
- package/lib/gates/question-card.js.map +1 -0
- package/lib/gates/questions.d.ts +127 -0
- package/lib/gates/questions.d.ts.map +1 -0
- package/lib/gates/questions.js +418 -0
- package/lib/gates/questions.js.map +1 -0
- package/lib/gates.d.ts +1 -113
- package/lib/gates.d.ts.map +1 -1
- package/lib/gates.js +1 -484
- package/lib/gates.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +343 -2602
- package/lib/index.js.map +1 -1
- package/lib/input/action-catalog.d.ts +74 -0
- package/lib/input/action-catalog.d.ts.map +1 -0
- package/lib/input/action-catalog.js +137 -0
- package/lib/input/action-catalog.js.map +1 -0
- package/lib/input/actions.d.ts +5 -81
- package/lib/input/actions.d.ts.map +1 -1
- package/lib/input/actions.js +4 -625
- package/lib/input/actions.js.map +1 -1
- package/lib/input/completion.d.ts +1 -1
- package/lib/input/completion.d.ts.map +1 -1
- package/lib/input/completion.js +2 -1
- package/lib/input/completion.js.map +1 -1
- package/lib/input/file-index.d.ts +40 -0
- package/lib/input/file-index.d.ts.map +1 -0
- package/lib/input/file-index.js +141 -0
- package/lib/input/file-index.js.map +1 -0
- package/lib/input/file-search.d.ts +1 -38
- package/lib/input/file-search.d.ts.map +1 -1
- package/lib/input/file-search.js +1 -487
- package/lib/input/file-search.js.map +1 -1
- package/lib/input/key-press.d.ts +57 -0
- package/lib/input/key-press.d.ts.map +1 -0
- package/lib/input/key-press.js +218 -0
- package/lib/input/key-press.js.map +1 -0
- package/lib/input/keymap-conflicts.d.ts +59 -0
- package/lib/input/keymap-conflicts.d.ts.map +1 -0
- package/lib/input/keymap-conflicts.js +292 -0
- package/lib/input/keymap-conflicts.js.map +1 -0
- package/lib/input/keymap-settings.js +1 -1
- package/lib/input/keymap-settings.js.map +1 -1
- package/lib/input/keymap.d.ts.map +1 -1
- package/lib/input/keymap.js +3 -1
- package/lib/input/keymap.js.map +1 -1
- package/lib/input/workspace-files.d.ts +10 -0
- package/lib/input/workspace-files.d.ts.map +1 -0
- package/lib/input/workspace-files.js +359 -0
- package/lib/input/workspace-files.js.map +1 -0
- package/lib/install-skills.d.ts +20 -0
- package/lib/install-skills.d.ts.map +1 -0
- package/lib/install-skills.js +198 -0
- package/lib/install-skills.js.map +1 -0
- package/lib/keys-command.d.ts +2 -1
- package/lib/keys-command.d.ts.map +1 -1
- package/lib/keys-command.js +2 -1
- package/lib/keys-command.js.map +1 -1
- package/lib/model-list.d.ts +37 -0
- package/lib/model-list.d.ts.map +1 -0
- package/lib/model-list.js +60 -0
- package/lib/model-list.js.map +1 -0
- package/lib/startup.d.ts +8 -0
- package/lib/startup.d.ts.map +1 -1
- package/lib/startup.js +120 -24
- package/lib/startup.js.map +1 -1
- package/lib/subagents.d.ts +7 -3
- package/lib/subagents.d.ts.map +1 -1
- package/lib/subagents.js +28 -4
- package/lib/subagents.js.map +1 -1
- package/lib/surface/appearance-preferences.d.ts +26 -0
- package/lib/surface/appearance-preferences.d.ts.map +1 -0
- package/lib/surface/appearance-preferences.js +139 -0
- package/lib/surface/appearance-preferences.js.map +1 -0
- package/lib/surface/appearance.d.ts +87 -0
- package/lib/surface/appearance.d.ts.map +1 -0
- package/lib/surface/appearance.js +353 -0
- package/lib/surface/appearance.js.map +1 -0
- package/lib/surface/background-work.d.ts +49 -0
- package/lib/surface/background-work.d.ts.map +1 -0
- package/lib/surface/background-work.js +146 -0
- package/lib/surface/background-work.js.map +1 -0
- package/lib/surface/commands.d.ts +80 -0
- package/lib/surface/commands.d.ts.map +1 -0
- package/lib/surface/commands.js +364 -0
- package/lib/surface/commands.js.map +1 -0
- package/lib/surface/modal-input.d.ts +58 -0
- package/lib/surface/modal-input.d.ts.map +1 -0
- package/lib/surface/modal-input.js +237 -0
- package/lib/surface/modal-input.js.map +1 -0
- package/lib/surface/model-choice.d.ts +54 -0
- package/lib/surface/model-choice.d.ts.map +1 -0
- package/lib/surface/model-choice.js +325 -0
- package/lib/surface/model-choice.js.map +1 -0
- package/lib/surface/preset-choice.d.ts +78 -0
- package/lib/surface/preset-choice.d.ts.map +1 -0
- package/lib/surface/preset-choice.js +163 -0
- package/lib/surface/preset-choice.js.map +1 -0
- package/lib/surface/prompt-input.d.ts +97 -0
- package/lib/surface/prompt-input.d.ts.map +1 -0
- package/lib/surface/prompt-input.js +215 -0
- package/lib/surface/prompt-input.js.map +1 -0
- package/lib/surface/prompt-memory.d.ts +76 -0
- package/lib/surface/prompt-memory.d.ts.map +1 -0
- package/lib/surface/prompt-memory.js +167 -0
- package/lib/surface/prompt-memory.js.map +1 -0
- package/lib/surface/session-lifecycle.d.ts +120 -0
- package/lib/surface/session-lifecycle.d.ts.map +1 -0
- package/lib/surface/session-lifecycle.js +321 -0
- package/lib/surface/session-lifecycle.js.map +1 -0
- package/lib/surface/session-picker.d.ts +39 -0
- package/lib/surface/session-picker.d.ts.map +1 -0
- package/lib/surface/session-picker.js +107 -0
- package/lib/surface/session-picker.js.map +1 -0
- package/lib/surface/session-view.d.ts +86 -0
- package/lib/surface/session-view.d.ts.map +1 -0
- package/lib/surface/session-view.js +215 -0
- package/lib/surface/session-view.js.map +1 -0
- package/lib/surface/staged-turns.d.ts +81 -0
- package/lib/surface/staged-turns.d.ts.map +1 -0
- package/lib/surface/staged-turns.js +206 -0
- package/lib/surface/staged-turns.js.map +1 -0
- package/lib/surface/terminal-lifecycle.d.ts +76 -0
- package/lib/surface/terminal-lifecycle.d.ts.map +1 -0
- package/lib/surface/terminal-lifecycle.js +222 -0
- package/lib/surface/terminal-lifecycle.js.map +1 -0
- package/lib/terminal-text/scan.d.ts +44 -0
- package/lib/terminal-text/scan.d.ts.map +1 -0
- package/lib/terminal-text/scan.js +195 -0
- package/lib/terminal-text/scan.js.map +1 -0
- package/lib/terminal-text/sgr.d.ts +32 -0
- package/lib/terminal-text/sgr.d.ts.map +1 -0
- package/lib/terminal-text/sgr.js +203 -0
- package/lib/terminal-text/sgr.js.map +1 -0
- package/lib/terminal-text.d.ts +1 -1
- package/lib/terminal-text.d.ts.map +1 -1
- package/lib/terminal-text.js +2 -379
- package/lib/terminal-text.js.map +1 -1
- package/lib/theme-command.js +2 -1
- package/lib/theme-command.js.map +1 -1
- package/lib/theme-defaults.d.ts +64 -0
- package/lib/theme-defaults.d.ts.map +1 -0
- package/lib/theme-defaults.js +248 -0
- package/lib/theme-defaults.js.map +1 -0
- package/lib/theme-resolver.d.ts +36 -0
- package/lib/theme-resolver.d.ts.map +1 -0
- package/lib/theme-resolver.js +112 -0
- package/lib/theme-resolver.js.map +1 -0
- package/lib/theme-schema.d.ts.map +1 -1
- package/lib/theme-schema.js +3 -2
- package/lib/theme-schema.js.map +1 -1
- package/lib/theme-settings.d.ts +5 -7
- package/lib/theme-settings.d.ts.map +1 -1
- package/lib/theme-settings.js +27 -19
- package/lib/theme-settings.js.map +1 -1
- package/lib/theme-tokens.d.ts +0 -89
- package/lib/theme-tokens.d.ts.map +1 -1
- package/lib/theme-tokens.js +0 -356
- package/lib/theme-tokens.js.map +1 -1
- package/lib/theme.d.ts +1 -1
- package/lib/theme.d.ts.map +1 -1
- package/lib/theme.js +2 -1
- package/lib/theme.js.map +1 -1
- package/lib/tool-display.d.ts.map +1 -1
- package/lib/tool-display.js +2 -1
- package/lib/tool-display.js.map +1 -1
- package/lib/transcript/message-content.d.ts +21 -0
- package/lib/transcript/message-content.d.ts.map +1 -0
- package/lib/transcript/message-content.js +61 -0
- package/lib/transcript/message-content.js.map +1 -0
- package/lib/transcript/tool-calls.d.ts +106 -0
- package/lib/transcript/tool-calls.d.ts.map +1 -0
- package/lib/transcript/tool-calls.js +254 -0
- package/lib/transcript/tool-calls.js.map +1 -0
- package/lib/transcript.d.ts +14 -55
- package/lib/transcript.d.ts.map +1 -1
- package/lib/transcript.js +31 -253
- package/lib/transcript.js.map +1 -1
- package/lib/ui/dock.d.ts +14 -2
- package/lib/ui/dock.d.ts.map +1 -1
- package/lib/ui/dock.js +52 -10
- package/lib/ui/dock.js.map +1 -1
- package/lib/ui/editor.d.ts.map +1 -1
- package/lib/ui/editor.js +2 -1
- package/lib/ui/editor.js.map +1 -1
- package/lib/ui/keymap-picker.d.ts +2 -1
- package/lib/ui/keymap-picker.d.ts.map +1 -1
- package/lib/ui/keymap-picker.js +1 -0
- package/lib/ui/keymap-picker.js.map +1 -1
- package/lib/ui/view/gate-card.d.ts +21 -0
- package/lib/ui/view/gate-card.d.ts.map +1 -0
- package/lib/ui/view/gate-card.js +104 -0
- package/lib/ui/view/gate-card.js.map +1 -0
- package/lib/ui/view/tool-card.d.ts +138 -0
- package/lib/ui/view/tool-card.d.ts.map +1 -0
- package/lib/ui/view/tool-card.js +413 -0
- package/lib/ui/view/tool-card.js.map +1 -0
- package/lib/ui/view/transcript-message.d.ts +62 -0
- package/lib/ui/view/transcript-message.d.ts.map +1 -0
- package/lib/ui/view/transcript-message.js +158 -0
- package/lib/ui/view/transcript-message.js.map +1 -0
- package/lib/ui/view.d.ts +80 -220
- package/lib/ui/view.d.ts.map +1 -1
- package/lib/ui/view.js +81 -675
- package/lib/ui/view.js.map +1 -1
- package/package.json +3 -1
package/lib/transcript.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { cardFromLines, carriedFields, contentLines, mergeCards, subCallRow, subCallRows, SUBCALL_MAX } from "./cards.js";
|
|
2
1
|
import { injectionSummary } from "./injection.js";
|
|
3
2
|
import { sliceGraphemes, tailGraphemes } from "./text.js";
|
|
4
3
|
import { countTokens } from "./tokens.js";
|
|
4
|
+
import { reasoningTextsOf, textOfContent } from "./transcript/message-content.js";
|
|
5
|
+
import { ToolCallFold } from "./transcript/tool-calls.js";
|
|
5
6
|
/** Reasoning kept per settled block, so one runaway thought cannot grow the transcript without bound. */
|
|
6
7
|
export const REASONING_CHAR_LIMIT = 20_000;
|
|
7
8
|
/**
|
|
@@ -11,8 +12,6 @@ export const REASONING_CHAR_LIMIT = 20_000;
|
|
|
11
12
|
* thought rather than on every delta that crosses the limit.
|
|
12
13
|
*/
|
|
13
14
|
const LIVE_THOUGHT_SLACK = 2;
|
|
14
|
-
/** One second in milliseconds, which is the unit a duration is reported in. */
|
|
15
|
-
export const SECOND_MS = 1000;
|
|
16
15
|
/** The token count with its noun, because "1 tokens" reads as a bug. */
|
|
17
16
|
function describeTokens(text) {
|
|
18
17
|
const tokens = countTokens(text);
|
|
@@ -21,62 +20,6 @@ function describeTokens(text) {
|
|
|
21
20
|
function asRecord(value) {
|
|
22
21
|
return typeof value === 'object' && value !== null ? value : undefined;
|
|
23
22
|
}
|
|
24
|
-
/** The arguments a nested call was made with, as the shape a presenter is asked with. */
|
|
25
|
-
function argumentsJsonOf(value) {
|
|
26
|
-
if (value === undefined)
|
|
27
|
-
return '';
|
|
28
|
-
try {
|
|
29
|
-
return JSON.stringify(value) ?? '';
|
|
30
|
-
}
|
|
31
|
-
catch {
|
|
32
|
-
return '';
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
function contentLinesOf(content) {
|
|
36
|
-
if (!Array.isArray(content))
|
|
37
|
-
return [];
|
|
38
|
-
const lines = [];
|
|
39
|
-
for (const block of content) {
|
|
40
|
-
const record = asRecord(block);
|
|
41
|
-
if (record === undefined)
|
|
42
|
-
continue;
|
|
43
|
-
// A thought is a row of its own; reading it here would hand the model's
|
|
44
|
-
// private reasoning to the reader as though it had been said out loud.
|
|
45
|
-
if (record.type === 'reasoning')
|
|
46
|
-
continue;
|
|
47
|
-
// Any block that carries text counts; a tool-result block also holds its
|
|
48
|
-
// model-facing content one level deeper.
|
|
49
|
-
if (typeof record.text === 'string')
|
|
50
|
-
lines.push(...record.text.split('\n'));
|
|
51
|
-
if (Array.isArray(record.content))
|
|
52
|
-
lines.push(...contentLinesOf(record.content));
|
|
53
|
-
}
|
|
54
|
-
return lines;
|
|
55
|
-
}
|
|
56
|
-
function textOfContent(content) {
|
|
57
|
-
return contentLinesOf(content).join('\n');
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* The thoughts a durable message carries, in the order they were recorded.
|
|
61
|
-
*
|
|
62
|
-
* A recorded thought is the only path a resumed session has to the model's
|
|
63
|
-
* reasoning, and the live stream does not outlive the turn that produced it.
|
|
64
|
-
*/
|
|
65
|
-
function reasoningTextsOf(content) {
|
|
66
|
-
if (!Array.isArray(content))
|
|
67
|
-
return [];
|
|
68
|
-
const thoughts = [];
|
|
69
|
-
for (const block of content) {
|
|
70
|
-
const record = asRecord(block);
|
|
71
|
-
if (record === undefined)
|
|
72
|
-
continue;
|
|
73
|
-
if (record.type === 'reasoning' && typeof record.text === 'string')
|
|
74
|
-
thoughts.push(record.text);
|
|
75
|
-
if (Array.isArray(record.content))
|
|
76
|
-
thoughts.push(...reasoningTextsOf(record.content));
|
|
77
|
-
}
|
|
78
|
-
return thoughts;
|
|
79
|
-
}
|
|
80
23
|
function sourceKind(data) {
|
|
81
24
|
return asRecord(data.source)?.kind === 'user' ? 'user' : 'plugin';
|
|
82
25
|
}
|
|
@@ -97,20 +40,12 @@ function messageOf(value) {
|
|
|
97
40
|
* Durable events own the transcript: the live stream is decoration that a
|
|
98
41
|
* repaint or a resume can drop without changing what the reader sees. Tool
|
|
99
42
|
* rows come from the tool's own render intent, so the fold never learns a tool
|
|
100
|
-
* name
|
|
43
|
+
* name; the bookkeeping that a tool row's request, dispatch, and result share
|
|
44
|
+
* lives in the call fold this model routes those events to.
|
|
101
45
|
*/
|
|
102
46
|
export class TranscriptModel {
|
|
103
|
-
presenter;
|
|
104
47
|
clock;
|
|
105
48
|
settled = [];
|
|
106
|
-
pending = new Map();
|
|
107
|
-
/**
|
|
108
|
-
* Where each nested call landed on its root card.
|
|
109
|
-
*
|
|
110
|
-
* A dispatch logs a start and then a settle, so the second event has to find
|
|
111
|
-
* the row the first one drew instead of adding a second line for one call.
|
|
112
|
-
*/
|
|
113
|
-
pendingSub = new Map();
|
|
114
49
|
live = '';
|
|
115
50
|
liveReasoning = '';
|
|
116
51
|
reasoningStartedAt;
|
|
@@ -129,6 +64,8 @@ export class TranscriptModel {
|
|
|
129
64
|
*/
|
|
130
65
|
thoughtSeq = 0;
|
|
131
66
|
liveReasoningId;
|
|
67
|
+
/** The call-to-row bookkeeping tool events share, told the clock and the rows this model holds. */
|
|
68
|
+
calls;
|
|
132
69
|
constructor(presenter,
|
|
133
70
|
/**
|
|
134
71
|
* Clock for "how long has this been thinking or running"; injected so a test
|
|
@@ -136,8 +73,8 @@ export class TranscriptModel {
|
|
|
136
73
|
* to the same one.
|
|
137
74
|
*/
|
|
138
75
|
clock = () => Date.now()) {
|
|
139
|
-
this.presenter = presenter;
|
|
140
76
|
this.clock = clock;
|
|
77
|
+
this.calls = new ToolCallFold(presenter, clock, index => this.cardAt(index));
|
|
141
78
|
}
|
|
142
79
|
/**
|
|
143
80
|
* The clock every duration on a row is measured with.
|
|
@@ -181,24 +118,12 @@ export class TranscriptModel {
|
|
|
181
118
|
/**
|
|
182
119
|
* How long one call has been in flight, or that it is not.
|
|
183
120
|
*
|
|
184
|
-
* The fold owns the request-to-result window, so a renderer asks here
|
|
185
|
-
* than timing the row itself: a row read twice in one frame would
|
|
186
|
-
* report two durations for one call.
|
|
121
|
+
* The call fold owns the request-to-result window, so a renderer asks here
|
|
122
|
+
* rather than timing the row itself: a row read twice in one frame would
|
|
123
|
+
* otherwise report two durations for one call.
|
|
187
124
|
*/
|
|
188
125
|
liveCall(callId) {
|
|
189
|
-
|
|
190
|
-
if (call === undefined)
|
|
191
|
-
return { running: false, elapsed: 0 };
|
|
192
|
-
return { running: true, elapsed: this.secondsSince(call.startedAt) };
|
|
193
|
-
}
|
|
194
|
-
/**
|
|
195
|
-
* Whole seconds since a moment the fold read the clock at.
|
|
196
|
-
*
|
|
197
|
-
* Floored, not rounded: a duration that claims a second it has not waited yet
|
|
198
|
-
* would tick up before the call has been waiting that long.
|
|
199
|
-
*/
|
|
200
|
-
secondsSince(startedAt) {
|
|
201
|
-
return Math.max(0, Math.floor((this.clock() - startedAt) / SECOND_MS));
|
|
126
|
+
return this.calls.liveCall(callId);
|
|
202
127
|
}
|
|
203
128
|
/** Whether any row exists, so a caller can decide to clear or redraw. */
|
|
204
129
|
isEmpty() {
|
|
@@ -206,11 +131,9 @@ export class TranscriptModel {
|
|
|
206
131
|
}
|
|
207
132
|
reset() {
|
|
208
133
|
this.settled.length = 0;
|
|
209
|
-
|
|
210
|
-
//
|
|
211
|
-
|
|
212
|
-
// row it is entitled to.
|
|
213
|
-
this.pendingSub.clear();
|
|
134
|
+
// The call fold's records name rows of the transcript being dropped, so the
|
|
135
|
+
// fold is reset with it rather than left holding stale row indices.
|
|
136
|
+
this.calls.reset();
|
|
214
137
|
this.live = '';
|
|
215
138
|
this.liveReasoning = '';
|
|
216
139
|
this.liveReasoningId = undefined;
|
|
@@ -392,176 +315,31 @@ export class TranscriptModel {
|
|
|
392
315
|
this.settled.push({ kind: 'assistant', text });
|
|
393
316
|
return;
|
|
394
317
|
}
|
|
395
|
-
case 'tool/call':
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
const callId = typeof data.callId === 'string' ? data.callId : '';
|
|
399
|
-
const card = this.presenter?.call(name, argumentsJson);
|
|
400
|
-
this.settled.push({
|
|
401
|
-
kind: 'tool',
|
|
402
|
-
// The id is what keeps a reader's click on this message after the
|
|
403
|
-
// result replaces the card: the entry object does not survive, the id does.
|
|
404
|
-
id: callId,
|
|
405
|
-
// Without a presenter the row still has to say what ran and with what.
|
|
406
|
-
card: card ?? cardFromLines('generic', name, name, argumentsJson === '' ? [] : argumentsJson.split('\n'), false),
|
|
407
|
-
});
|
|
408
|
-
if (callId !== '')
|
|
409
|
-
this.pending.set(callId, { name, argumentsJson, index: this.settled.length - 1, startedAt: this.clock(), subs: [] });
|
|
410
|
-
return;
|
|
411
|
-
}
|
|
412
|
-
case 'tool/ptc-dispatch-start': {
|
|
413
|
-
this.applySubCall(data, false);
|
|
414
|
-
return;
|
|
415
|
-
}
|
|
416
|
-
case 'tool/ptc-dispatch': {
|
|
417
|
-
this.applySubCall(data, true);
|
|
418
|
-
return;
|
|
419
|
-
}
|
|
318
|
+
case 'tool/call':
|
|
319
|
+
case 'tool/ptc-dispatch-start':
|
|
320
|
+
case 'tool/ptc-dispatch':
|
|
420
321
|
case 'tool/result': {
|
|
421
|
-
|
|
322
|
+
// Tool events are the only rows drawn before they are finished, so they
|
|
323
|
+
// are folded where that bookkeeping lives and the rows come back here,
|
|
324
|
+
// where reading order and row indices are owned.
|
|
325
|
+
this.commit(this.calls.apply(event.type, data, this.settled.length));
|
|
422
326
|
return;
|
|
423
327
|
}
|
|
424
328
|
default:
|
|
425
329
|
return;
|
|
426
330
|
}
|
|
427
331
|
}
|
|
428
|
-
/**
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
* never made.
|
|
435
|
-
*/
|
|
436
|
-
applySubCall(data, settled) {
|
|
437
|
-
const rootCallId = typeof data.rootCallId === 'string' ? data.rootCallId : '';
|
|
438
|
-
const subCallId = typeof data.subCallId === 'string' ? data.subCallId : '';
|
|
439
|
-
const root = rootCallId === '' ? undefined : this.pending.get(rootCallId);
|
|
440
|
-
if (root === undefined || subCallId === '')
|
|
441
|
-
return;
|
|
442
|
-
const entry = this.settled[root.index];
|
|
443
|
-
const card = entry !== undefined && entry.kind === 'tool' ? entry.card : undefined;
|
|
444
|
-
if (card === undefined)
|
|
445
|
-
return;
|
|
446
|
-
const name = typeof data.name === 'string' ? data.name : 'tool';
|
|
447
|
-
const argumentsJson = argumentsJsonOf(data.arguments);
|
|
448
|
-
// The call's own view is asked for once: it names the row and it is what the
|
|
449
|
-
// row shows of the call itself, so two asks could disagree about one call.
|
|
450
|
-
const view = this.presenter?.call(name, argumentsJson);
|
|
451
|
-
const isError = data.isError === true;
|
|
452
|
-
const result = settled ? this.subCallResult(name, argumentsJson, data, view) : undefined;
|
|
453
|
-
const output = result === undefined ? undefined : subCallRows(result);
|
|
454
|
-
// A call that answered has told the surface how it went, and that is what the
|
|
455
|
-
// row reports from then on — a program's calls are read by their outcomes.
|
|
456
|
-
const failed = settled && (isError || result?.failed === true);
|
|
457
|
-
const known = this.pendingSub.get(subCallId);
|
|
458
|
-
if (known !== undefined) {
|
|
459
|
-
// A settle restates the row its start drew: it ends the claim that the
|
|
460
|
-
// call is still in flight, adds the outcome a reader opens the row for, and
|
|
461
|
-
// a failure takes back what the call only declared. A call that produced
|
|
462
|
-
// nothing to open still has to be restated, or its row would keep saying it
|
|
463
|
-
// is running for as long as the card lives.
|
|
464
|
-
if (!settled || known.childIndex < 0)
|
|
465
|
-
return;
|
|
466
|
-
const drawn = (card.subCalls ?? [])[known.childIndex];
|
|
467
|
-
if (!isError && output === undefined && drawn?.running !== true)
|
|
468
|
-
return;
|
|
469
|
-
// A settle that reports nothing to open leaves the row's own outcome in
|
|
470
|
-
// place; only a failure takes it back, because the rows it drew as applied
|
|
471
|
-
// never happened.
|
|
472
|
-
const settledOutput = isError ? output : output ?? drawn?.output;
|
|
473
|
-
const subCalls = (card.subCalls ?? []).map((call, at) => at === known.childIndex
|
|
474
|
-
? subCallRow(subCallId, name, argumentsJson, { view, output: settledOutput, status: result?.status, running: false, failed }, call)
|
|
475
|
-
: call);
|
|
476
|
-
this.settled[root.index] = { kind: 'tool', id: rootCallId, card: { ...card, subCalls } };
|
|
477
|
-
return;
|
|
478
|
-
}
|
|
479
|
-
// A dispatch log arrives only once the call has settled, so a row that no
|
|
480
|
-
// settle has restated yet is the one still running.
|
|
481
|
-
const call = subCallRow(subCallId, name, argumentsJson, { view, output, status: result?.status, running: !settled, failed });
|
|
482
|
-
const kept = card.subCalls ?? [];
|
|
483
|
-
const total = (card.subCallsTotal ?? 0) + 1;
|
|
484
|
-
if (kept.length >= SUBCALL_MAX) {
|
|
485
|
-
// Retention keeps the head, where the calls that shaped the program are;
|
|
486
|
-
// the count still reports everything it dispatched. The id is remembered
|
|
487
|
-
// so a settle is not counted twice, and listed on the root so the root's
|
|
488
|
-
// own cleanup forgets it — an overflow row has no row to clean up after.
|
|
489
|
-
this.pendingSub.set(subCallId, { rootIndex: root.index, childIndex: -1 });
|
|
490
|
-
root.subs.push(subCallId);
|
|
491
|
-
this.settled[root.index] = { kind: 'tool', id: rootCallId, card: { ...card, subCallsTotal: total } };
|
|
492
|
-
return;
|
|
493
|
-
}
|
|
494
|
-
root.subs.push(subCallId);
|
|
495
|
-
this.pendingSub.set(subCallId, { rootIndex: root.index, childIndex: kept.length });
|
|
496
|
-
this.settled[root.index] = { kind: 'tool', id: rootCallId, card: { ...card, subCalls: [...kept, call], subCallsTotal: total } };
|
|
497
|
-
}
|
|
498
|
-
/**
|
|
499
|
-
* The card a dispatched call's log answers with.
|
|
500
|
-
*
|
|
501
|
-
* A presenter can only rebuild the view it declared when the logged content is
|
|
502
|
-
* enough for it: a shell's output is, while a read's numbered window and a
|
|
503
|
-
* search's hits live in the metadata a dispatch does not carry. The fallback is
|
|
504
|
-
* the content the program was actually shown, so a row whose tool cannot be
|
|
505
|
-
* re-presented still opens to its outcome rather than to nothing.
|
|
506
|
-
*/
|
|
507
|
-
subCallResult(name, argumentsJson, data, view) {
|
|
508
|
-
const failed = data.isError === true;
|
|
509
|
-
return this.presenter?.result(name, { argumentsJson, content: data.content, isError: failed, meta: data.meta })
|
|
510
|
-
?? cardFromLines(view?.kind ?? 'generic', name, view?.title ?? name, contentLines(data.content), failed);
|
|
332
|
+
/** Commit the rows the call fold drew: appends in order, replacements in place. */
|
|
333
|
+
commit(outcome) {
|
|
334
|
+
for (const entry of outcome.appends)
|
|
335
|
+
this.settled.push(entry);
|
|
336
|
+
for (const { index, entry } of outcome.replacements)
|
|
337
|
+
this.settled[index] = entry;
|
|
511
338
|
}
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
const
|
|
515
|
-
|
|
516
|
-
const pending = callId === '' ? undefined : this.pending.get(callId);
|
|
517
|
-
if (callId !== '')
|
|
518
|
-
this.pending.delete(callId);
|
|
519
|
-
// The length of the run is readable here and nowhere else: the surface saw
|
|
520
|
-
// the call logged and now sees it answered, and this is the only moment the
|
|
521
|
-
// fold holds both readings of the clock.
|
|
522
|
-
const ranFor = pending === undefined ? undefined : this.secondsSince(pending.startedAt);
|
|
523
|
-
/** The card that reports this result, carrying the seconds the call took. */
|
|
524
|
-
const finished = (card) => (ranFor === undefined ? card : { ...card, elapsed: ranFor });
|
|
525
|
-
// The root is done dispatching, so its bookkeeping goes with it; the rows it
|
|
526
|
-
// already drew stay on the card.
|
|
527
|
-
if (pending !== undefined)
|
|
528
|
-
for (const sub of pending.subs)
|
|
529
|
-
this.pendingSub.delete(sub);
|
|
530
|
-
const name = pending?.name ?? 'tool';
|
|
531
|
-
const isError = message?.isError === true;
|
|
532
|
-
const result = this.presenter?.result(name, {
|
|
533
|
-
argumentsJson: pending?.argumentsJson ?? '',
|
|
534
|
-
content: message?.content,
|
|
535
|
-
isError,
|
|
536
|
-
meta: data.meta,
|
|
537
|
-
});
|
|
538
|
-
if (pending === undefined) {
|
|
539
|
-
// No matching call in this fold: a resumed transcript may start mid-call.
|
|
540
|
-
this.settled.push({
|
|
541
|
-
kind: 'tool',
|
|
542
|
-
id: callId,
|
|
543
|
-
card: result ?? cardFromLines('generic', name, name, contentLinesOf(message?.content), isError),
|
|
544
|
-
});
|
|
545
|
-
return;
|
|
546
|
-
}
|
|
547
|
-
const previous = this.settled[pending.index];
|
|
548
|
-
const call = previous !== undefined && previous.kind === 'tool' ? previous.card : undefined;
|
|
549
|
-
if (result === undefined) {
|
|
550
|
-
// No presenter answered: the model-facing content is still what happened,
|
|
551
|
-
// and a reader without it would see a tool row that never reported back.
|
|
552
|
-
const reported = contentLinesOf(message?.content);
|
|
553
|
-
const base = call ?? cardFromLines('generic', name, name, [], false);
|
|
554
|
-
const rebuilt = reported.length === 0
|
|
555
|
-
? { ...base, failed: isError }
|
|
556
|
-
: { ...cardFromLines(base.kind, base.tool, base.title, reported, isError), ...carriedFields(base) };
|
|
557
|
-
this.settled[pending.index] = { kind: 'tool', id: callId, card: finished(rebuilt) };
|
|
558
|
-
return;
|
|
559
|
-
}
|
|
560
|
-
// Two readings decide this, and either is enough: the log says whether the tool
|
|
561
|
-
// raised, and the card the presenter built says how the call itself ended — a
|
|
562
|
-
// shell's non-zero exit is a failure the log's flag never carries.
|
|
563
|
-
const settledCard = mergeCards(call, { ...result, failed: result.failed || isError });
|
|
564
|
-
this.settled[pending.index] = { kind: 'tool', id: callId, card: finished(settledCard) };
|
|
339
|
+
/** The card a settled tool row holds, so the call fold can restate a row it drew earlier. */
|
|
340
|
+
cardAt(index) {
|
|
341
|
+
const entry = this.settled[index];
|
|
342
|
+
return entry !== undefined && entry.kind === 'tool' ? entry.card : undefined;
|
|
565
343
|
}
|
|
566
344
|
}
|
|
567
345
|
//# sourceMappingURL=transcript.js.map
|
package/lib/transcript.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript.js","sourceRoot":"","sources":["../src/transcript.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transcript.js","sourceRoot":"","sources":["../src/transcript.ts"],"names":[],"mappings":"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"}
|
package/lib/ui/dock.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Component } from '@earendil-works/pi-tui';
|
|
1
|
+
import { type Component, type TuiMouseEvent, type TuiMouseEventResult } from '@earendil-works/pi-tui';
|
|
2
2
|
import { type JobSummary } from '../jobs.ts';
|
|
3
3
|
import { type SubagentRun } from '../subagents.ts';
|
|
4
4
|
import type { TuiTheme } from '../theme.ts';
|
|
@@ -22,14 +22,26 @@ export declare class WorkDock implements Component {
|
|
|
22
22
|
private readonly subagents;
|
|
23
23
|
/** Clock for elapsed times, so a frame can be pinned in a test. */
|
|
24
24
|
private readonly now;
|
|
25
|
+
/** A child opens through the same read-only transcript path as /subagents open. */
|
|
26
|
+
private readonly openSubagent?;
|
|
27
|
+
/** A choice lasts while more than the preview's rows remain live. */
|
|
28
|
+
private subagentsExpanded;
|
|
29
|
+
/** Rendered rows delimit the section even when its heading is hidden. */
|
|
30
|
+
private subagentSection;
|
|
31
|
+
/** Text spans retain full child ids; the drawn ids may be shortened. */
|
|
32
|
+
private readonly subagentTexts;
|
|
25
33
|
constructor(state: () => WorkState, theme: TuiTheme,
|
|
26
34
|
/** Live background jobs: process state, not something a resume can replay. */
|
|
27
35
|
jobs?: () => readonly JobSummary[],
|
|
28
36
|
/** Delegations this session started; also live state. */
|
|
29
37
|
subagents?: () => readonly SubagentRun[],
|
|
30
38
|
/** Clock for elapsed times, so a frame can be pinned in a test. */
|
|
31
|
-
now?: () => number
|
|
39
|
+
now?: () => number,
|
|
40
|
+
/** A child opens through the same read-only transcript path as /subagents open. */
|
|
41
|
+
openSubagent?: ((id: string) => void) | undefined);
|
|
32
42
|
invalidate(): void;
|
|
43
|
+
/** Text opens its child; other cells in a foldable section control that fold. */
|
|
44
|
+
handleMouse(event: TuiMouseEvent): TuiMouseEventResult | undefined;
|
|
33
45
|
/**
|
|
34
46
|
* The dashed rule that opens a section, with the section's name on it.
|
|
35
47
|
*
|
package/lib/ui/dock.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dock.d.ts","sourceRoot":"","sources":["../../src/ui/dock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"dock.d.ts","sourceRoot":"","sources":["../../src/ui/dock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AACnH,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,YAAY,CAAA;AACjF,OAAO,EAAyC,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAEzF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAa,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtD,mEAAmE;AACnE,eAAO,MAAM,eAAe,IAAI,CAAA;AA+DhC;;;;;;;GAOG;AACH,qBAAa,QAAS,YAAW,SAAS;IAStC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,8EAA8E;IAC9E,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,yDAAyD;IACzD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,mFAAmF;IACnF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;IAjBhC,qEAAqE;IACrE,OAAO,CAAC,iBAAiB,CAAQ;IACjC,yEAAyE;IACzE,OAAO,CAAC,eAAe,CAAiE;IACxF,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkD;gBAG7D,KAAK,EAAE,MAAM,SAAS,EACtB,KAAK,EAAE,QAAQ;IAChC,8EAA8E;IAC7D,IAAI,GAAE,MAAM,SAAS,UAAU,EAAa;IAC7D,yDAAyD;IACxC,SAAS,GAAE,MAAM,SAAS,WAAW,EAAa;IACnE,mEAAmE;IAClD,GAAG,GAAE,MAAM,MAAyB;IACrD,mFAAmF;IAClE,YAAY,CAAC,GAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,aAAA;IAGtD,UAAU,IAAI,IAAI;IAIlB,iFAAiF;IACjF,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,mBAAmB,GAAG,SAAS;IAelE;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAcnB;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,aAAa;IA8BrB,OAAO,CAAC,QAAQ;IAwBhB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;CA6BhC"}
|
package/lib/ui/dock.js
CHANGED
|
@@ -8,6 +8,8 @@ const GOAL_MARK = '◎';
|
|
|
8
8
|
const PLAN_MODE_MARK = '⏸';
|
|
9
9
|
const TODOS_MARK = '☰';
|
|
10
10
|
const SUBAGENTS_MARK = '⚇';
|
|
11
|
+
const SUBAGENTS_COLLAPSED_MARK = '▸';
|
|
12
|
+
const SUBAGENTS_EXPANDED_MARK = '▾';
|
|
11
13
|
const JOBS_MARK = '⛭';
|
|
12
14
|
/**
|
|
13
15
|
* The dashed rule that opens a section, and the two dashes that lead its name.
|
|
@@ -29,6 +31,7 @@ const TODO_GLYPHS = {
|
|
|
29
31
|
};
|
|
30
32
|
/** The mark a row that is still in flight carries, for a job and a delegation alike. */
|
|
31
33
|
const RUNNING_MARK = '▸';
|
|
34
|
+
const SUBAGENT_ROW_INDENT = ' ';
|
|
32
35
|
/** Each todo state is its own element, so one can be toned without the others. */
|
|
33
36
|
const TODO_TOKENS = {
|
|
34
37
|
pending: 'dock.todos.pending',
|
|
@@ -53,21 +56,50 @@ export class WorkDock {
|
|
|
53
56
|
jobs;
|
|
54
57
|
subagents;
|
|
55
58
|
now;
|
|
59
|
+
openSubagent;
|
|
60
|
+
/** A choice lasts while more than the preview's rows remain live. */
|
|
61
|
+
subagentsExpanded = false;
|
|
62
|
+
/** Rendered rows delimit the section even when its heading is hidden. */
|
|
63
|
+
subagentSection;
|
|
64
|
+
/** Text spans retain full child ids; the drawn ids may be shortened. */
|
|
65
|
+
subagentTexts = new Map();
|
|
56
66
|
constructor(state, theme,
|
|
57
67
|
/** Live background jobs: process state, not something a resume can replay. */
|
|
58
68
|
jobs = () => [],
|
|
59
69
|
/** Delegations this session started; also live state. */
|
|
60
70
|
subagents = () => [],
|
|
61
71
|
/** Clock for elapsed times, so a frame can be pinned in a test. */
|
|
62
|
-
now = () => Date.now()
|
|
72
|
+
now = () => Date.now(),
|
|
73
|
+
/** A child opens through the same read-only transcript path as /subagents open. */
|
|
74
|
+
openSubagent) {
|
|
63
75
|
this.state = state;
|
|
64
76
|
this.theme = theme;
|
|
65
77
|
this.jobs = jobs;
|
|
66
78
|
this.subagents = subagents;
|
|
67
79
|
this.now = now;
|
|
80
|
+
this.openSubagent = openSubagent;
|
|
68
81
|
}
|
|
69
82
|
invalidate() {
|
|
70
|
-
//
|
|
83
|
+
// Paint rebuilds click geometry; invalidation must preserve the reader’s fold choice.
|
|
84
|
+
}
|
|
85
|
+
/** Text opens its child; other cells in a foldable section control that fold. */
|
|
86
|
+
handleMouse(event) {
|
|
87
|
+
if (event.type !== 'click' || event.button !== 'left')
|
|
88
|
+
return undefined;
|
|
89
|
+
if (event.x < 0 || event.x >= event.width || event.y < 0 || event.y >= event.height)
|
|
90
|
+
return undefined;
|
|
91
|
+
const text = this.subagentTexts.get(event.y);
|
|
92
|
+
if (text !== undefined && event.x >= visibleWidth(SUBAGENT_ROW_INDENT) && event.x < text.endX) {
|
|
93
|
+
if (this.openSubagent === undefined)
|
|
94
|
+
return undefined;
|
|
95
|
+
this.openSubagent(text.id);
|
|
96
|
+
return { handled: true, render: true };
|
|
97
|
+
}
|
|
98
|
+
const section = this.subagentSection;
|
|
99
|
+
if (section === undefined || !section.toggleable || event.y < section.start || event.y >= section.end)
|
|
100
|
+
return undefined;
|
|
101
|
+
this.subagentsExpanded = !this.subagentsExpanded;
|
|
102
|
+
return { handled: true, render: true };
|
|
71
103
|
}
|
|
72
104
|
/**
|
|
73
105
|
* The dashed rule that opens a section, with the section's name on it.
|
|
@@ -135,24 +167,33 @@ export class WorkDock {
|
|
|
135
167
|
// A delegation that has reported back is no longer something to watch, for
|
|
136
168
|
// the same reason a settled job leaves: the dock holds work in flight.
|
|
137
169
|
const running = runs.filter(run => run.status === 'running');
|
|
170
|
+
if (running.length <= DOCK_SUBAGENT_LIMIT)
|
|
171
|
+
this.subagentsExpanded = false;
|
|
138
172
|
if (running.length === 0)
|
|
139
173
|
return;
|
|
174
|
+
const start = lines.length;
|
|
175
|
+
const headingRows = this.theme.visible('dock.subagents.heading') ? 1 : 0;
|
|
176
|
+
const limit = this.subagentsExpanded ? running.length : DOCK_SUBAGENT_LIMIT;
|
|
140
177
|
const now = this.now();
|
|
141
178
|
const rows = [];
|
|
142
|
-
for (const run of running.slice(0,
|
|
179
|
+
for (const run of running.slice(0, limit)) {
|
|
143
180
|
if (!this.theme.visible('dock.subagents.running'))
|
|
144
181
|
continue;
|
|
145
|
-
const lead =
|
|
146
|
-
|
|
182
|
+
const lead = `${SUBAGENT_ROW_INDENT}${RUNNING_MARK} `;
|
|
183
|
+
const row = this.theme.cut(this.theme.rich(`${lead}${describeSubagent(run, now)}`, { token: 'dock.subagents.running', column: visibleWidth(lead) }), width, '…');
|
|
184
|
+
this.subagentTexts.set(start + headingRows + rows.length, { id: run.id, endX: visibleWidth(row) });
|
|
185
|
+
rows.push(row);
|
|
147
186
|
}
|
|
148
|
-
if (running.length >
|
|
149
|
-
rows.push(this.theme.style('dock.subagents.overflow', this.theme.cut(` … ${running.length -
|
|
187
|
+
if (running.length > limit && this.theme.visible('dock.subagents.overflow')) {
|
|
188
|
+
rows.push(this.theme.style('dock.subagents.overflow', this.theme.cut(` … ${running.length - limit} more`, width, '…')));
|
|
150
189
|
}
|
|
190
|
+
const foldMark = running.length <= DOCK_SUBAGENT_LIMIT ? '' : ` ${this.subagentsExpanded ? SUBAGENTS_EXPANDED_MARK : SUBAGENTS_COLLAPSED_MARK}`;
|
|
151
191
|
this.pushSection(lines, width, {
|
|
152
|
-
heading: `${SUBAGENTS_MARK} subagents · ${running.length} running`,
|
|
192
|
+
heading: `${SUBAGENTS_MARK} subagents${foldMark} · ${running.length} running`,
|
|
153
193
|
headingToken: 'dock.subagents.heading',
|
|
154
194
|
borderToken: 'dock.subagents.border',
|
|
155
195
|
}, rows);
|
|
196
|
+
this.subagentSection = { start, end: lines.length, toggleable: running.length > DOCK_SUBAGENT_LIMIT };
|
|
156
197
|
}
|
|
157
198
|
pushJobs(lines, jobs, width) {
|
|
158
199
|
// Only work still holding resources earns a row: a settled job is a fact the
|
|
@@ -180,6 +221,8 @@ export class WorkDock {
|
|
|
180
221
|
}, rows);
|
|
181
222
|
}
|
|
182
223
|
render(width) {
|
|
224
|
+
this.subagentSection = undefined;
|
|
225
|
+
this.subagentTexts.clear();
|
|
183
226
|
if (width <= 0)
|
|
184
227
|
return [];
|
|
185
228
|
const state = this.state();
|
|
@@ -201,8 +244,7 @@ export class WorkDock {
|
|
|
201
244
|
lines.push(this.theme.style('dock.planMode', this.theme.cut(`${PLAN_MODE_MARK} plan mode · answer the plan before edits happen`, width, '…')));
|
|
202
245
|
}
|
|
203
246
|
const subagents = this.subagents();
|
|
204
|
-
|
|
205
|
-
this.pushSubagents(lines, subagents, width);
|
|
247
|
+
this.pushSubagents(lines, subagents, width);
|
|
206
248
|
const jobs = this.jobs();
|
|
207
249
|
if (jobs.length > 0)
|
|
208
250
|
this.pushJobs(lines, jobs, width);
|
package/lib/ui/dock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dock.js","sourceRoot":"","sources":["../../src/ui/dock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAkB,MAAM,wBAAwB,CAAA;AACrE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAmB,MAAM,YAAY,CAAA;AACjF,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAoB,MAAM,iBAAiB,CAAA;AAKzF,mEAAmE;AACnE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAA;AAEhC,uFAAuF;AACvF,MAAM,SAAS,GAAG,GAAG,CAAA;AACrB,MAAM,cAAc,GAAG,GAAG,CAAA;AAC1B,MAAM,UAAU,GAAG,GAAG,CAAA;AACtB,MAAM,cAAc,GAAG,GAAG,CAAA;AAC1B,MAAM,SAAS,GAAG,GAAG,CAAA;AAErB;;;;;;;;GAQG;AACH,MAAM,iBAAiB,GAAG,GAAG,CAAA;AAC7B,MAAM,iBAAiB,GAAG,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,CAAA;AAkBrE,6FAA6F;AAC7F,MAAM,UAAU,GAAG,CAAC,IAAe,EAAoB,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,CAAA;AAErF,mDAAmD;AACnD,MAAM,WAAW,GAA6C;IAC5D,OAAO,EAAE,GAAG;IACZ,WAAW,EAAE,GAAG;CACjB,CAAA;AACD,wFAAwF;AACxF,MAAM,YAAY,GAAG,GAAG,CAAA;AAExB,kFAAkF;AAClF,MAAM,WAAW,GAA+C;IAC9D,OAAO,EAAE,oBAAoB;IAC7B,WAAW,EAAE,uBAAuB;CACrC,CAAA;AAED,+EAA+E;AAC/E,SAAS,UAAU,CAAC,KAA0B;IAC5C,MAAM,IAAI,GAAmC,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAA;IAC3E,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;AACjF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,QAAQ;IAEA;IACA;IAEA;IAEA;IAEA;IARnB,YACmB,KAAsB,EACtB,KAAe;IAChC,8EAA8E;IAC7D,OAAoC,GAAG,EAAE,CAAC,EAAE;IAC7D,yDAAyD;IACxC,YAA0C,GAAG,EAAE,CAAC,EAAE;IACnE,mEAAmE;IAClD,MAAoB,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAPpC,UAAK,GAAL,KAAK,CAAiB;QACtB,UAAK,GAAL,KAAK,CAAU;QAEf,SAAI,GAAJ,IAAI,CAAwC;QAE5C,cAAS,GAAT,SAAS,CAAyC;QAElD,QAAG,GAAH,GAAG,CAAiC;IACpD,CAAC;IAEJ,UAAU;QACR,iDAAiD;IACnD,CAAC;IAED;;;;;;OAMG;IACK,WAAW,CAAC,KAAa,EAAE,OAAoB;QACrD,MAAM,IAAI,GAAG,GAAG,iBAAiB,GAAG,OAAO,CAAC,OAAO,GAAG,CAAA;QACtD,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;QAC5F,CAAC;QACD,0EAA0E;QAC1E,yEAAyE;QACzE,iEAAiE;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAA;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;QACpE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,iBAAiB,CAAC,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;QAC9G,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,CAAA;IAChC,CAAC;IAED;;;;;;;;OAQG;IACK,WAAW,CAAC,KAAe,EAAE,KAAa,EAAE,OAAoB,EAAE,IAAuB;QAC/F,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;gBAChD,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC;gBAClC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QAC1F,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;IACrB,CAAC;IAEO,SAAS,CAAC,KAAe,EAAE,KAA2B,EAAE,KAAa;QAC3E,0EAA0E;QAC1E,2EAA2E;QAC3E,WAAW;QACX,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QACrC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAChC,MAAM,IAAI,GAAa,EAAE,CAAA;QACzB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACtC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,SAAQ;YACxC,MAAM,IAAI,GAAG,KAAK,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAA;YAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;QACzH,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,eAAe,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAClF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,OAAO,CAAC,MAAM,GAAG,eAAe,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QAChI,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE;YAC7B,OAAO,EAAE,GAAG,UAAU,YAAY,IAAI,CAAC,MAAM,OAAO;YACpD,YAAY,EAAE,oBAAoB;YAClC,WAAW,EAAE,mBAAmB;SACjC,EAAE,IAAI,CAAC,CAAA;IACV,CAAC;IAEO,aAAa,CAAC,KAAe,EAAE,IAA4B,EAAE,KAAa;QAChF,2EAA2E;QAC3E,uEAAuE;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAA;QAC5D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,MAAM,IAAI,GAAa,EAAE,CAAA;QACzB,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,wBAAwB,CAAC;gBAAE,SAAQ;YAC3D,MAAM,IAAI,GAAG,KAAK,YAAY,GAAG,CAAA;YACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;QACjK,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,mBAAmB,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAAE,CAAC;YAC1F,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,yBAAyB,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,OAAO,CAAC,MAAM,GAAG,mBAAmB,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QACxI,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE;YAC7B,OAAO,EAAE,GAAG,cAAc,gBAAgB,OAAO,CAAC,MAAM,UAAU;YAClE,YAAY,EAAE,wBAAwB;YACtC,WAAW,EAAE,uBAAuB;SACrC,EAAE,IAAI,CAAC,CAAA;IACV,CAAC;IAEO,QAAQ,CAAC,KAAe,EAAE,IAA2B,EAAE,KAAa;QAC1E,6EAA6E;QAC7E,0EAA0E;QAC1E,yCAAyC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;QACnD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAC7B,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAA;QACjF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,MAAM,IAAI,GAAa,EAAE,CAAA;QACzB,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC;gBAAE,SAAQ;YACtD,MAAM,IAAI,GAAG,KAAK,YAAY,GAAG,CAAA;YACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;QACvJ,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,cAAc,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAChF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,OAAO,CAAC,MAAM,GAAG,cAAc,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QAC9H,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE;YAC7B,OAAO,EAAE,GAAG,SAAS,WAAW,IAAI,CAAC,MAAM,UAAU;YACrD,YAAY,EAAE,mBAAmB;YACjC,WAAW,EAAE,kBAAkB;SAChC,EAAE,IAAI,CAAC,CAAA;IACV,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,EAAE,CAAA;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;QAC1B,MAAM,KAAK,GAAa,EAAE,CAAA;QAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS;gBAC/C,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE;gBACrC,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;YAC/D,yEAAyE;YACzE,0EAA0E;YAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAA;YAC3E,oEAAoE;YACpE,2CAA2C;YAC3C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;YAC5D,MAAM,IAAI,GAAG,GAAG,SAAS,SAAS,KAAK,GAAG,MAAM,KAAK,CAAA;YACrD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;QACpI,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YAC1D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,cAAc,kDAAkD,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QAChJ,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;QAClC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QACxB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACtD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QACxE,OAAO,KAAK,CAAA;IACd,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"dock.js","sourceRoot":"","sources":["../../src/ui/dock.ts"],"names":[],"mappings":"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"}
|