@esso0428/pi-subagents 0.15.17 → 0.17.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/CHANGELOG.md +17 -0
- package/README.md +10 -12
- package/dist/agent-history-list.d.ts.map +1 -1
- package/dist/agent-history-list.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -40
- package/dist/index.js.map +1 -1
- package/dist/output-file.js +3 -3
- package/dist/output-file.js.map +1 -1
- package/dist/settings.d.ts +1 -8
- package/dist/settings.d.ts.map +1 -1
- package/dist/settings.js +0 -5
- package/dist/settings.js.map +1 -1
- package/dist/ui/agent-widget.d.ts +66 -28
- package/dist/ui/agent-widget.d.ts.map +1 -1
- package/dist/ui/agent-widget.js +325 -134
- package/dist/ui/agent-widget.js.map +1 -1
- package/dist/ui/ccstyle/diff/ansi-utils.js +2 -2
- package/dist/ui/ccstyle/diff/ansi-utils.js.map +1 -1
- package/dist/ui/ccstyle/diff/diff-presentation.d.ts.map +1 -1
- package/dist/ui/ccstyle/diff/diff-presentation.js +0 -1
- package/dist/ui/ccstyle/diff/diff-presentation.js.map +1 -1
- package/dist/ui/ccstyle/diff/diff-renderer.d.ts +1 -1
- package/dist/ui/ccstyle/diff/diff-renderer.d.ts.map +1 -1
- package/dist/ui/ccstyle/diff/diff-renderer.js +15 -10
- package/dist/ui/ccstyle/diff/diff-renderer.js.map +1 -1
- package/dist/ui/ccstyle/diff/line-width-safety.d.ts.map +1 -1
- package/dist/ui/ccstyle/diff/line-width-safety.js +1 -2
- package/dist/ui/ccstyle/diff/line-width-safety.js.map +1 -1
- package/dist/ui/ccstyle/diff/shiki-highlight.d.ts +19 -0
- package/dist/ui/ccstyle/diff/shiki-highlight.d.ts.map +1 -0
- package/dist/ui/ccstyle/diff/shiki-highlight.js +85 -0
- package/dist/ui/ccstyle/diff/shiki-highlight.js.map +1 -0
- package/dist/ui/ccstyle/tool-renderer.d.ts +1 -1
- package/dist/ui/ccstyle/tool-renderer.d.ts.map +1 -1
- package/dist/ui/ccstyle/tool-renderer.js +1 -1
- package/dist/ui/ccstyle/tool-renderer.js.map +1 -1
- package/dist/ui/ccstyle/tool-result.d.ts +9 -1
- package/dist/ui/ccstyle/tool-result.d.ts.map +1 -1
- package/dist/ui/ccstyle/tool-result.js +137 -5
- package/dist/ui/ccstyle/tool-result.js.map +1 -1
- package/dist/ui/conversation-blocks.d.ts.map +1 -1
- package/dist/ui/conversation-blocks.js +14 -13
- package/dist/ui/conversation-blocks.js.map +1 -1
- package/dist/ui/conversation-role.d.ts +1 -1
- package/dist/ui/conversation-role.d.ts.map +1 -1
- package/dist/ui/conversation-search.js +4 -4
- package/dist/ui/conversation-search.js.map +1 -1
- package/dist/ui/conversation-timeline.d.ts +17 -1
- package/dist/ui/conversation-timeline.d.ts.map +1 -1
- package/dist/ui/conversation-timeline.js +116 -43
- package/dist/ui/conversation-timeline.js.map +1 -1
- package/dist/ui/conversation-viewer.d.ts +5 -1
- package/dist/ui/conversation-viewer.d.ts.map +1 -1
- package/dist/ui/conversation-viewer.js +67 -26
- package/dist/ui/conversation-viewer.js.map +1 -1
- package/dist/write-execution.d.ts.map +1 -1
- package/dist/write-execution.js +1 -1
- package/dist/write-execution.js.map +1 -1
- package/package.json +6 -5
- package/src/agent-history-list.ts +1 -1
- package/src/index.ts +19 -73
- package/src/output-file.ts +3 -3
- package/src/settings.ts +1 -12
- package/src/ui/agent-widget.ts +264 -114
- package/src/ui/ccstyle/diff/ansi-utils.ts +2 -2
- package/src/ui/ccstyle/diff/diff-presentation.ts +0 -1
- package/src/ui/ccstyle/diff/diff-renderer.ts +22 -21
- package/src/ui/ccstyle/diff/line-width-safety.ts +1 -2
- package/src/ui/ccstyle/diff/shiki-highlight.ts +97 -0
- package/src/ui/ccstyle/tool-renderer.ts +3 -3
- package/src/ui/ccstyle/tool-result.ts +175 -7
- package/src/ui/conversation-role.ts +1 -1
- package/src/ui/conversation-search.ts +4 -4
- package/src/ui/conversation-timeline.ts +7 -7
- package/src/ui/conversation-viewer.ts +16 -7
- package/src/write-execution.ts +2 -2
- package/dist/ui/fleet-list.d.ts +0 -122
- package/dist/ui/fleet-list.d.ts.map +0 -1
- package/dist/ui/fleet-list.js +0 -375
- package/dist/ui/fleet-list.js.map +0 -1
- package/src/ui/deferred-ui-refresh.ts +0 -72
- package/src/ui/fleet-list.ts +0 -585
- package/test/agent-history-list.test.ts +0 -121
- package/test/agent-manager-history.test.ts +0 -88
- package/test/agent-menu-history-navigation.test.ts +0 -86
- package/test/output-file-history.test.ts +0 -50
- package/test/ui/agent-widget.test.ts +0 -172
- package/test/ui/conversation-blocks.test.ts +0 -103
- package/test/ui/conversation-diff.test.ts +0 -91
- package/test/ui/conversation-search.test.ts +0 -55
- package/test/ui/conversation-viewer.test.ts +0 -438
- package/test/ui/deferred-ui-refresh.test.ts +0 -55
- package/test/ui/fleet-list.test.ts +0 -389
- package/test/write-execution.test.ts +0 -83
- package/tsconfig.json +0 -16
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Uses the callback form of setWidget for themed rendering.
|
|
6
6
|
*/
|
|
7
7
|
import type { AgentManager } from "../agent-manager.js";
|
|
8
|
-
import type { AgentInvocation, SubagentType, WidgetMode } from "../types.js";
|
|
8
|
+
import type { AgentInvocation, AgentRecord, SubagentType, WidgetMode } from "../types.js";
|
|
9
9
|
import { type LifetimeUsage, type SessionLike } from "../usage.js";
|
|
10
10
|
/** Maximum number of rendered lines before overflow collapse kicks in. */
|
|
11
11
|
export declare const MAX_WIDGET_LINES = 12;
|
|
@@ -23,6 +23,18 @@ export type Theme = {
|
|
|
23
23
|
fg(color: string, text: string): string;
|
|
24
24
|
bold(text: string): string;
|
|
25
25
|
};
|
|
26
|
+
export type AgentWidgetOpenMode = "live" | "history";
|
|
27
|
+
export type AgentWidgetOpenCallback = (record: AgentRecord, mode: AgentWidgetOpenMode) => void | Promise<void>;
|
|
28
|
+
export type AgentWidgetOptions = {
|
|
29
|
+
canOpenHistory: (record: AgentRecord) => boolean;
|
|
30
|
+
onOpen: AgentWidgetOpenCallback;
|
|
31
|
+
};
|
|
32
|
+
/** @deprecated Use AgentWidgetOpenMode. */
|
|
33
|
+
export type AgentOpenMode = AgentWidgetOpenMode;
|
|
34
|
+
/** @deprecated Use AgentWidgetOpenCallback. */
|
|
35
|
+
export type AgentOpenCallback = AgentWidgetOpenCallback;
|
|
36
|
+
/** @deprecated Use AgentWidgetOptions.canOpenHistory. */
|
|
37
|
+
export type AgentHistoryCapability = AgentWidgetOptions["canOpenHistory"];
|
|
26
38
|
export type UICtx = {
|
|
27
39
|
setStatus(key: string, text: string | undefined): void;
|
|
28
40
|
setWidget(key: string, content: undefined | ((tui: any, theme: Theme) => {
|
|
@@ -31,6 +43,11 @@ export type UICtx = {
|
|
|
31
43
|
}), options?: {
|
|
32
44
|
placement?: "aboveEditor" | "belowEditor";
|
|
33
45
|
}): void;
|
|
46
|
+
onTerminalInput(handler: (data: string) => {
|
|
47
|
+
consume?: boolean;
|
|
48
|
+
data?: string;
|
|
49
|
+
} | undefined): () => void;
|
|
50
|
+
getEditorText(): string;
|
|
34
51
|
};
|
|
35
52
|
/** Per-agent live activity state. */
|
|
36
53
|
export interface AgentActivity {
|
|
@@ -104,32 +121,30 @@ export declare function describeActivity(activeTools: Map<string, string>, respo
|
|
|
104
121
|
export declare class AgentWidget {
|
|
105
122
|
private manager;
|
|
106
123
|
private agentActivity;
|
|
107
|
-
/**
|
|
108
|
-
* Read live at render time. Selects which agents the widget shows — see
|
|
109
|
-
* `WidgetMode`. Defaults to `"all"` when a caller supplies no policy; the
|
|
110
|
-
* extension supplies one defaulting to `"background"`.
|
|
111
|
-
*/
|
|
124
|
+
/** Read live at render time. Selects which agents the widget shows. */
|
|
112
125
|
private mode;
|
|
126
|
+
private options;
|
|
113
127
|
private uiCtx;
|
|
114
128
|
private widgetFrame;
|
|
115
129
|
private widgetInterval;
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
130
|
+
private inputUnsub;
|
|
131
|
+
/** Whether arrow keys currently navigate the agent roster. */
|
|
132
|
+
private navigationActive;
|
|
133
|
+
/** Stable identity of the selected row, so roster changes do not jump selection. */
|
|
134
|
+
private selectedAgentId;
|
|
135
|
+
/** First logical row currently represented by the bounded viewport. */
|
|
136
|
+
private viewportStart;
|
|
120
137
|
/** Whether the widget callback is currently registered with the TUI. */
|
|
121
138
|
private widgetRegistered;
|
|
122
139
|
/** Cached TUI reference from widget factory callback, used for requestRender(). */
|
|
123
140
|
private tui;
|
|
124
141
|
/** Last status bar text, used to avoid redundant setStatus calls. */
|
|
125
142
|
private lastStatusText;
|
|
143
|
+
/** Snapshot of the state used for the last widget registration/render request. */
|
|
144
|
+
private lastRenderKey;
|
|
126
145
|
constructor(manager: AgentManager, agentActivity: Map<string, AgentActivity>,
|
|
127
|
-
/**
|
|
128
|
-
|
|
129
|
-
* `WidgetMode`. Defaults to `"all"` when a caller supplies no policy; the
|
|
130
|
-
* extension supplies one defaulting to `"background"`.
|
|
131
|
-
*/
|
|
132
|
-
mode?: () => WidgetMode);
|
|
146
|
+
/** Read live at render time. Selects which agents the widget shows. */
|
|
147
|
+
mode?: () => WidgetMode, options?: AgentWidgetOptions);
|
|
133
148
|
/**
|
|
134
149
|
* Agents eligible for the widget, per the current `WidgetMode`:
|
|
135
150
|
* - `off`: none (the widget's existing empty-state path hides it entirely).
|
|
@@ -143,18 +158,39 @@ export declare class AgentWidget {
|
|
|
143
158
|
*/
|
|
144
159
|
private widgetAgents;
|
|
145
160
|
/** Set the UI context (grabbed from first tool execution). */
|
|
146
|
-
setUICtx(ctx: UICtx):
|
|
147
|
-
/**
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
*/
|
|
161
|
+
setUICtx(ctx: UICtx): boolean;
|
|
162
|
+
/** Request a render on the currently registered TUI without touching input. */
|
|
163
|
+
requestUiRefresh(force?: boolean): boolean;
|
|
164
|
+
/** Called on each new turn (tool_execution_start). */
|
|
151
165
|
onTurnStart(): void;
|
|
152
|
-
/**
|
|
166
|
+
/** Keep the spinner/elapsed-time timer alive only while a visible agent runs. */
|
|
153
167
|
ensureTimer(): void;
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
168
|
+
private syncTimer;
|
|
169
|
+
/**
|
|
170
|
+
* Retained for the lifecycle call sites. Terminal visibility is determined
|
|
171
|
+
* by the manager record and the history capability, not a one-turn timer.
|
|
172
|
+
*/
|
|
173
|
+
markFinished(_agentId: string): void;
|
|
174
|
+
/**
|
|
175
|
+
* Records represented by selectable rows in the above-editor widget.
|
|
176
|
+
*
|
|
177
|
+
* Keep this order as the single source of truth for both rendering and key
|
|
178
|
+
* navigation. `listAgents()` is newest-first; active rows come first so the
|
|
179
|
+
* panel exposes currently useful work before terminal history.
|
|
180
|
+
*/
|
|
181
|
+
private roster;
|
|
182
|
+
/** True when pi's prompt editor owns the keyboard. */
|
|
183
|
+
private editorHasFocus;
|
|
184
|
+
private selectedIndexOf;
|
|
185
|
+
private deactivate;
|
|
186
|
+
/** Move the selected row, activating only from an empty focused editor. */
|
|
187
|
+
private moveSelection;
|
|
188
|
+
private openSelected;
|
|
189
|
+
/** Handle terminal input before it reaches the focused prompt editor. */
|
|
190
|
+
handleKey(data: string): {
|
|
191
|
+
consume?: boolean;
|
|
192
|
+
data?: string;
|
|
193
|
+
} | undefined;
|
|
158
194
|
/** Render a finished agent line. */
|
|
159
195
|
private renderFinishedLine;
|
|
160
196
|
/**
|
|
@@ -162,8 +198,10 @@ export declare class AgentWidget {
|
|
|
162
198
|
* reading live state each time instead of capturing it in a closure.
|
|
163
199
|
*/
|
|
164
200
|
private renderWidget;
|
|
165
|
-
/**
|
|
166
|
-
|
|
201
|
+
/** Build a render-relevant snapshot without capturing mutable records. */
|
|
202
|
+
private renderKey;
|
|
203
|
+
/** Force an immediate widget update. `advanceSpinner` is reserved for the timer. */
|
|
204
|
+
update(advanceSpinner?: boolean): void;
|
|
167
205
|
dispose(): void;
|
|
168
206
|
}
|
|
169
207
|
//# sourceMappingURL=agent-widget.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-widget.d.ts","sourceRoot":"","sources":["../../src/ui/agent-widget.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-widget.d.ts","sourceRoot":"","sources":["../../src/ui/agent-widget.ts"],"names":[],"mappings":"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"}
|