thatgfsj-code 3.0.14 → 3.0.15

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 (38) hide show
  1. package/dist/cmd/index.js +7 -0
  2. package/dist/cmd/index.js.map +1 -1
  3. package/dist/llm/index.d.ts.map +1 -1
  4. package/dist/llm/index.js +12 -1
  5. package/dist/llm/index.js.map +1 -1
  6. package/dist/setup/browser-setup.d.ts.map +1 -1
  7. package/dist/setup/browser-setup.js +4 -0
  8. package/dist/setup/browser-setup.js.map +1 -1
  9. package/dist/tools/browser.d.ts +18 -2
  10. package/dist/tools/browser.d.ts.map +1 -1
  11. package/dist/tools/browser.js +41 -1
  12. package/dist/tools/browser.js.map +1 -1
  13. package/dist/tui/app.d.ts.map +1 -1
  14. package/dist/tui/app.js +38 -5
  15. package/dist/tui/app.js.map +1 -1
  16. package/dist/tui/components/ChatList.d.ts +9 -7
  17. package/dist/tui/components/ChatList.d.ts.map +1 -1
  18. package/dist/tui/components/ChatList.js +12 -12
  19. package/dist/tui/components/ChatList.js.map +1 -1
  20. package/dist/tui/components/ModelSettings.d.ts +0 -11
  21. package/dist/tui/components/ModelSettings.d.ts.map +1 -1
  22. package/dist/tui/components/ModelSettings.js +65 -13
  23. package/dist/tui/components/ModelSettings.js.map +1 -1
  24. package/dist/tui/components/ToolCall.d.ts +30 -0
  25. package/dist/tui/components/ToolCall.d.ts.map +1 -1
  26. package/dist/tui/components/ToolCall.js +55 -17
  27. package/dist/tui/components/ToolCall.js.map +1 -1
  28. package/dist/tui/hooks/useChat.d.ts +7 -18
  29. package/dist/tui/hooks/useChat.d.ts.map +1 -1
  30. package/dist/tui/hooks/useChat.js +157 -119
  31. package/dist/tui/hooks/useChat.js.map +1 -1
  32. package/dist/tui/hooks/useCommands.d.ts +3 -1
  33. package/dist/tui/hooks/useCommands.d.ts.map +1 -1
  34. package/dist/tui/hooks/useCommands.js +10 -0
  35. package/dist/tui/hooks/useCommands.js.map +1 -1
  36. package/dist/types.d.ts +10 -5
  37. package/dist/types.d.ts.map +1 -1
  38. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ChatList.js","sourceRoot":"","sources":["../../../src/tui/components/ChatList.tsx"],"names":[],"mappings":";AAAA,6BAA6B;AAC7B,OAAc,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAClC,OAAO,EAAE,WAAW,EAAoB,MAAM,kBAAkB,CAAC;AAajE;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAS;IACnH,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAE5F,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACxB,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CACtB,KAAC,MAAM,IAAC,KAAK,EAAE,QAAQ,YACpB,CAAC,GAAgB,EAAE,KAAa,EAAE,EAAE,CAAC,CACpC,KAAC,WAAW,IAAsB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,IAApE,OAAO,KAAK,EAAE,CAA0D,CAC3F,GACM,CACV,EACA,YAAY,IAAI,CACf,KAAC,WAAW,IACV,OAAO,EAAE;oBACP,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,SAAS,IAAI,EAAE;oBACxB,SAAS,EAAE,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS;iBAChG,EACD,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,GACZ,CACH,IACG,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"ChatList.js","sourceRoot":"","sources":["../../../src/tui/components/ChatList.tsx"],"names":[],"mappings":";AAAA,6BAA6B;AAC7B,OAAc,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAClC,OAAO,EAAE,WAAW,EAAoB,MAAM,kBAAkB,CAAC;AAUjE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAS;IACpF,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,YACxB,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CACtB,KAAC,MAAM,IAAC,KAAK,EAAE,QAAQ,YACpB,CAAC,GAAgB,EAAE,KAAa,EAAE,EAAE,CAAC,CACpC,KAAC,WAAW,IAAsB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,IAApE,OAAO,KAAK,EAAE,CAA0D,CAC3F,GACM,CACV,GACG,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -6,17 +6,6 @@ interface Props {
6
6
  onClose: () => void;
7
7
  width?: number;
8
8
  }
9
- /**
10
- * v3.0.8: the model settings dialog (opencode-style), opened with
11
- * /models. Manages the model list and per-model settings:
12
- *
13
- * ↑/↓ 选择模型 a 添加模型
14
- * t 思考强度循环 c 上下文长度
15
- * d 删除自定义模型 esc 关闭
16
- *
17
- * Settings persist to config.json (modelSettings / customModels) and the
18
- * current model's context length applies to the live session immediately.
19
- */
20
9
  export declare function ModelSettings({ app, onClose, width }: Props): React.JSX.Element;
21
10
  export {};
22
11
  //# sourceMappingURL=ModelSettings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModelSettings.d.ts","sourceRoot":"","sources":["../../../src/tui/components/ModelSettings.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAK9C,UAAU,KAAK;IACb,GAAG,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,qBAmM3D"}
1
+ {"version":3,"file":"ModelSettings.d.ts","sourceRoot":"","sources":["../../../src/tui/components/ModelSettings.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,KAA8B,MAAM,OAAO,CAAC;AAGnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAK9C,UAAU,KAAK;IACb,GAAG,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA8CD,wBAAgB,aAAa,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,qBAkN3D"}
@@ -1,19 +1,47 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  /** @jsxImportSource react */
3
3
  import { useEffect, useState } from 'react';
4
4
  import { Box, Text, useInput } from 'ink';
5
+ import stringWidth from 'string-width';
5
6
  import { theme } from '../theme.js';
6
7
  /**
7
- * v3.0.8: the model settings dialog (opencode-style), opened with
8
- * /models. Manages the model list and per-model settings:
8
+ * v3.0.15: the model settings dialog (opencode-style), opened with /models.
9
+ * Renders as a fixed-width, rounded-border modal that the app centers in the
10
+ * terminal (see TuiApp's model_settings branch, mirroring opencode's
11
+ * ui/dialog.tsx full-screen + alignItems:center container).
9
12
  *
10
- * ↑/↓ 选择模型 a 添加模型
11
- * t 思考强度循环 c 上下文长度
12
- * d 删除自定义模型 esc 关闭
13
+ * Layout rules learned from opencode's dialog-select.tsx:
14
+ * - header row: bold title left, muted "esc" right (space-between)
15
+ * - every line is pre-truncated to the dialog content width
16
+ * (dialogWidth - border 2 - paddingX 2) so nothing ever wraps
17
+ * - footer key hints use the "key + dim description" pattern, split over
18
+ * two compact rows instead of one over-long line
19
+ *
20
+ * Keys:
21
+ * ↑/↓ 选择 a 添加模型 c 上下文长度(5-1000) w 上下文窗口
22
+ * t 思考强度循环(off/low/medium/high) d 删除自定义模型 esc 关闭
13
23
  *
14
24
  * Settings persist to config.json (modelSettings / customModels) and the
15
25
  * current model's context length applies to the live session immediately.
16
26
  */
27
+ /** CJK-aware truncation: never exceed `max` display columns. */
28
+ function truncateToWidth(s, max) {
29
+ if (max <= 0)
30
+ return '';
31
+ if (stringWidth(s) <= max)
32
+ return s;
33
+ let out = '';
34
+ for (const ch of s) {
35
+ if (stringWidth(out + ch) > max - 1)
36
+ return out + '…';
37
+ out += ch;
38
+ }
39
+ return out;
40
+ }
41
+ /** opencode FooterAction pattern: accent key + dim description. */
42
+ function KeyHint({ keys, desc, last = false }) {
43
+ return (_jsxs(_Fragment, { children: [_jsx(Text, { color: theme.accent, children: keys }), _jsxs(Text, { color: theme.textDim, children: [" ", desc] }), !last && _jsx(Text, { color: theme.textFaint, children: " \u00B7 " })] }));
44
+ }
17
45
  export function ModelSettings({ app, onClose, width }) {
18
46
  const [models, setModels] = useState(() => app.listConfiguredModels());
19
47
  const [selected, setSelected] = useState(0);
@@ -147,16 +175,40 @@ export function ModelSettings({ app, onClose, width }) {
147
175
  return;
148
176
  }
149
177
  });
150
- const dialogWidth = Math.min(width || 80, 72);
151
- const THINKING_LABEL = { off: 'off', low: 'low', medium: 'medium', high: 'high' };
152
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: theme.border, paddingX: 1, width: dialogWidth, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsx(Text, { color: theme.accent, bold: true, children: "\u25C6 \u6A21\u578B\u8BBE\u7F6E" }), _jsx(Text, { color: theme.textFaint, children: "esc \u5173\u95ED" })] }), _jsx(Text, { color: theme.border, children: '─'.repeat(Math.max(10, dialogWidth - 2)) }), _jsx(Text, { color: theme.textDim, children: "\u6A21\u578B\u5217\u8868" }), models.map((m, i) => {
178
+ // Dialog geometry. Content width = dialogWidth - border(2) - paddingX(2).
179
+ // Every rendered line is pre-truncated to this budget so the frame never
180
+ // wraps (the v3.0.14 separator/keys overflow bug).
181
+ const dialogWidth = Math.max(24, Math.min(width || 72, 72));
182
+ const contentW = dialogWidth - 4;
183
+ const rule = '─'.repeat(contentW);
184
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: theme.border, paddingX: 1, width: dialogWidth, children: [_jsxs(Box, { justifyContent: "space-between", width: contentW, children: [_jsx(Text, { color: theme.accent, bold: true, children: "\u25C6 \u6A21\u578B\u8BBE\u7F6E" }), _jsx(Text, { color: theme.textFaint, children: "esc \u5173\u95ED" })] }), _jsx(Text, { color: theme.border, children: rule }), models.map((m, i) => {
153
185
  const st = settings[m] || {};
154
186
  const isSel = i === idx;
155
187
  const isCurrent = m === currentModel;
156
188
  const thinking = st.thinking ?? 'off';
157
- return (_jsxs(Box, { children: [_jsx(Text, { color: isSel ? theme.accent : theme.textFaint, children: isSel ? '▸ ' : ' ' }), _jsx(Text, { color: isSel ? theme.text : theme.textDim, bold: isSel, wrap: "truncate-end", children: m.slice(0, dialogWidth - 34) }), _jsxs(Text, { color: theme.textFaint, children: [" ctx ", st.contextLength ?? app.session.getMaxMessages()] }), _jsxs(Text, { color: theme.textFaint, children: [" \u00B7 \u7A97\u53E3 ", (app.getContextWindow(m) / 1000).toFixed(0), "k"] }), _jsxs(Text, { color: thinking !== 'off' ? theme.accent : theme.textFaint, children: [' ', "thinking ", THINKING_LABEL[thinking]] }), isCurrent && _jsx(Text, { color: theme.success, children: " \u25CF \u5F53\u524D" })] }, m));
158
- }), _jsx(Text, { color: theme.border, children: '─'.repeat(Math.max(10, dialogWidth - 2)) }), submode ? (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsx(Text, { color: theme.accent, children: submode.type === 'add' ? '添加模型 id ❯ '
159
- : submode.type === 'window' ? `${active} 上下文窗口(tokens) ❯ `
160
- : `${active} 上下文长度 ❯ ` }), _jsx(Text, { children: submode.value }), _jsx(Text, { color: theme.text, children: "\u2588" })] }), submode.error && _jsx(Text, { color: theme.error, children: submode.error }), _jsx(Text, { color: theme.textFaint, children: "enter \u786E\u8BA4 \u00B7 esc \u53D6\u6D88" })] })) : (_jsxs(Box, { children: [_jsx(Text, { color: theme.textFaint, children: "\u2191\u2193 \u9009\u62E9 \u00B7 " }), _jsx(Text, { color: theme.accent, children: "a" }), _jsx(Text, { color: theme.textFaint, children: " \u6DFB\u52A0\u6A21\u578B \u00B7 " }), _jsx(Text, { color: theme.accent, children: "c" }), _jsx(Text, { color: theme.textFaint, children: " \u4E0A\u4E0B\u6587\u957F\u5EA6 \u00B7 " }), _jsx(Text, { color: theme.accent, children: "w" }), _jsx(Text, { color: theme.textFaint, children: " \u4E0A\u4E0B\u6587\u7A97\u53E3(tokens) \u00B7 " }), _jsx(Text, { color: theme.accent, children: "t" }), _jsx(Text, { color: theme.textFaint, children: " \u601D\u8003\u5F3A\u5EA6 \u00B7 " }), _jsx(Text, { color: theme.accent, children: "d" }), _jsx(Text, { color: theme.textFaint, children: " \u5220\u9664\u81EA\u5B9A\u4E49" })] })), toast && _jsxs(Text, { color: theme.success, children: ["\u2713 ", toast] })] }));
189
+ // chips render right of the id; the id shrinks (with ) so the
190
+ // whole row always fits in one line.
191
+ const chipsFull = `ctx ${st.contextLength ?? app.session.getMaxMessages()}` +
192
+ ` · 窗口 ${(app.getContextWindow(m) / 1000).toFixed(0)}k` +
193
+ ` · thinking ${thinking}` +
194
+ (isCurrent ? ' · ● 当前' : '');
195
+ let chips = chipsFull;
196
+ let maxIdW = contentW - 2 - 2 - stringWidth(chips); // prefix '▸ ' + gap ' '
197
+ if (maxIdW < 4) {
198
+ // pathological narrow dialog: keep a minimal id, truncate chips too
199
+ maxIdW = 4;
200
+ chips = truncateToWidth(chipsFull, Math.max(1, contentW - 4 - maxIdW));
201
+ }
202
+ const id = truncateToWidth(m, maxIdW);
203
+ return (_jsxs(Box, { children: [_jsx(Text, { color: isSel ? theme.accent : theme.textFaint, children: isSel ? '▸ ' : ' ' }), _jsx(Text, { color: isSel ? theme.text : theme.textDim, bold: isSel, wrap: "truncate-end", children: id }), _jsxs(Text, { color: theme.textFaint, children: [' ', chips] })] }, m));
204
+ }), _jsx(Text, { color: theme.border, children: rule }), submode ? (_jsxs(Box, { flexDirection: "column", width: contentW, children: [(() => {
205
+ const label = submode.type === 'add' ? '添加模型 id ❯ '
206
+ : submode.type === 'window' ? `${truncateToWidth(active, 24)} 上下文窗口(tokens) ❯ `
207
+ : `${truncateToWidth(active, 24)} 上下文长度 ❯ `;
208
+ const budget = contentW - stringWidth(submode.value) - 1; // 1 = cursor █
209
+ return (_jsxs(Box, { children: [_jsx(Text, { color: theme.accent, children: truncateToWidth(label, Math.max(4, budget)) }), _jsx(Text, { color: theme.text, children: truncateToWidth(submode.value, Math.max(0, contentW - 1)) }), _jsx(Text, { color: theme.text, children: "\u2588" })] }));
210
+ })(), submode.error && _jsx(Text, { color: theme.error, wrap: "truncate-end", children: truncateToWidth(submode.error, contentW) }), _jsxs(Box, { children: [_jsx(KeyHint, { keys: "enter", desc: "\u786E\u8BA4" }), _jsx(KeyHint, { keys: "esc", desc: "\u53D6\u6D88", last: true })] })] })) : (
211
+ // two-line compact key table: accent keys, dim descriptions.
212
+ _jsxs(Box, { flexDirection: "column", width: contentW, children: [_jsxs(Box, { children: [_jsx(KeyHint, { keys: "\u2191\u2193", desc: "\u9009\u62E9" }), _jsx(KeyHint, { keys: "enter/a", desc: "\u6DFB\u52A0" }), _jsx(KeyHint, { keys: "d", desc: "\u5220\u9664" }), _jsx(KeyHint, { keys: "esc", desc: "\u5173\u95ED", last: true })] }), _jsxs(Box, { children: [_jsx(KeyHint, { keys: "c", desc: "\u4E0A\u4E0B\u6587\u957F\u5EA6" }), _jsx(KeyHint, { keys: "w", desc: "\u4E0A\u4E0B\u6587\u7A97\u53E3" }), _jsx(KeyHint, { keys: "t", desc: "\u601D\u8003\u5F3A\u5EA6", last: true })] })] })), toast && _jsx(Text, { color: theme.success, wrap: "truncate-end", children: truncateToWidth(`✓ ${toast}`, contentW) })] }));
161
213
  }
162
214
  //# sourceMappingURL=ModelSettings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModelSettings.js","sourceRoot":"","sources":["../../../src/tui/components/ModelSettings.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModelSettings.js","sourceRoot":"","sources":["../../../src/tui/components/ModelSettings.tsx"],"names":[],"mappings":"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"}
@@ -10,6 +10,36 @@ interface Props {
10
10
  tool: ToolCallData;
11
11
  width?: number;
12
12
  }
13
+ /**
14
+ * Compact one-line arg preview per tool, opencode-style:
15
+ * ⎿ shell(npm test)
16
+ * ⎿ file(write src/app.ts)
17
+ *
18
+ * v3.0.16: exported pure function — also drives the append-only streaming
19
+ * writer in useChat (direct stdout writes share the exact formatting the
20
+ * <Static>-rendered ToolCall component uses, so scrollback looks identical
21
+ * no matter which path produced the line).
22
+ */
23
+ export declare function formatToolLabel(name: string, args: string): {
24
+ title: string;
25
+ detail: string;
26
+ };
27
+ /**
28
+ * v3.0.16: the result summary line under a `⎿` call line, extracted from the
29
+ * ToolCall component so the streaming writer can paint the same summary as
30
+ * plain text. Pure: (result, isError) → line text + theme color, or null
31
+ * while the call is still running (result undefined).
32
+ */
33
+ export declare function formatToolResultLine(result: string, isError: boolean): {
34
+ text: string;
35
+ color: string;
36
+ } | null;
37
+ /**
38
+ * v3.0.16: the pre-execution `⎿ name(args) ⟳` line painted by the streaming
39
+ * writer the moment a pending tool_calls chunk arrives. Pure and
40
+ * color-free (callers add theme colors with chalk).
41
+ */
42
+ export declare function formatToolPendingText(name: string, args: string): string;
13
43
  /**
14
44
  * v3.0.6 (opencode-style): tool calls render as a dim `⎿` continuation
15
45
  * line with a compact result summary — 2 lines of output (or the error),
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCall.d.ts","sourceRoot":"","sources":["../../../src/tui/components/ToolCall.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,KAAK;IACb,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAkCD;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,qBAiCvC;AAED,YAAY,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"ToolCall.d.ts","sourceRoot":"","sources":["../../../src/tui/components/ToolCall.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,KAAK;IACb,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CA2C7F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAY7G;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAGxE;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,qBAsBvC;AAED,YAAY,EAAE,YAAY,EAAE,CAAC"}
@@ -5,8 +5,13 @@ import { theme } from '../theme.js';
5
5
  * Compact one-line arg preview per tool, opencode-style:
6
6
  * ⎿ shell(npm test)
7
7
  * ⎿ file(write src/app.ts)
8
+ *
9
+ * v3.0.16: exported pure function — also drives the append-only streaming
10
+ * writer in useChat (direct stdout writes share the exact formatting the
11
+ * <Static>-rendered ToolCall component uses, so scrollback looks identical
12
+ * no matter which path produced the line).
8
13
  */
9
- function formatToolLabel(name, args) {
14
+ export function formatToolLabel(name, args) {
10
15
  try {
11
16
  const obj = JSON.parse(args);
12
17
  switch (name) {
@@ -20,6 +25,24 @@ function formatToolLabel(name, args) {
20
25
  return { title: obj.action || 'search', detail: obj.pattern || obj.query || '' };
21
26
  case 'nwt':
22
27
  return { title: `nwt ${obj.action || ''}`.trim(), detail: obj.task || obj.query || '' };
28
+ case 'browser': {
29
+ // v3.0.16: browser tool got its own label shape.
30
+ // search → `browser search (bing)` + "query"
31
+ // open → `browser open` + url
32
+ // close → `browser close`
33
+ const action = String(obj.action || 'browser').toLowerCase();
34
+ if (action === 'search') {
35
+ const engine = String(obj.engine || 'bing').toLowerCase();
36
+ return { title: `browser search (${engine})`, detail: obj.query ? `"${String(obj.query).slice(0, 60)}"` : '' };
37
+ }
38
+ if (action === 'open') {
39
+ return { title: 'browser open', detail: String(obj.url || '').slice(0, 70) };
40
+ }
41
+ if (action === 'close') {
42
+ return { title: 'browser close', detail: '' };
43
+ }
44
+ return { title: `browser ${action}`, detail: '' };
45
+ }
23
46
  default: {
24
47
  if (name.startsWith('mcp__')) {
25
48
  const short = name.replace(/^mcp__/, '').replace(/__/, ' · ');
@@ -33,6 +56,34 @@ function formatToolLabel(name, args) {
33
56
  return { title: name, detail: (args || '').slice(0, 50) };
34
57
  }
35
58
  }
59
+ /**
60
+ * v3.0.16: the result summary line under a `⎿` call line, extracted from the
61
+ * ToolCall component so the streaming writer can paint the same summary as
62
+ * plain text. Pure: (result, isError) → line text + theme color, or null
63
+ * while the call is still running (result undefined).
64
+ */
65
+ export function formatToolResultLine(result, isError) {
66
+ const lines = result.split('\n').filter(l => l.trim());
67
+ if (isError) {
68
+ return { text: lines[0]?.slice(0, 90) || 'failed', color: theme.error };
69
+ }
70
+ if (lines.length === 0) {
71
+ return { text: 'ok (no output)', color: theme.textFaint };
72
+ }
73
+ if (lines.length <= 2) {
74
+ return { text: lines.join(' · ').slice(0, 100), color: theme.textDim };
75
+ }
76
+ return { text: `${lines.length} 行 · ${lines[0].slice(0, 70)}`, color: theme.textFaint };
77
+ }
78
+ /**
79
+ * v3.0.16: the pre-execution `⎿ name(args) ⟳` line painted by the streaming
80
+ * writer the moment a pending tool_calls chunk arrives. Pure and
81
+ * color-free (callers add theme colors with chalk).
82
+ */
83
+ export function formatToolPendingText(name, args) {
84
+ const { title, detail } = formatToolLabel(name, args);
85
+ return `⎿ ${title}${detail ? ` ${detail}` : ''} ⟳`;
86
+ }
36
87
  /**
37
88
  * v3.0.6 (opencode-style): tool calls render as a dim `⎿` continuation
38
89
  * line with a compact result summary — 2 lines of output (or the error),
@@ -41,22 +92,9 @@ function formatToolLabel(name, args) {
41
92
  export function ToolCall({ tool }) {
42
93
  const { title, detail } = formatToolLabel(tool.name, tool.args);
43
94
  const running = tool.result === undefined;
44
- let resultLine = null;
45
- if (tool.result !== undefined) {
46
- const lines = tool.result.split('\n').filter(l => l.trim());
47
- if (tool.isError) {
48
- resultLine = { text: lines[0]?.slice(0, 90) || 'failed', color: theme.error };
49
- }
50
- else if (lines.length === 0) {
51
- resultLine = { text: 'ok (no output)', color: theme.textFaint };
52
- }
53
- else if (lines.length <= 2) {
54
- resultLine = { text: lines.join(' · ').slice(0, 100), color: theme.textDim };
55
- }
56
- else {
57
- resultLine = { text: `${lines.length} 行 · ${lines[0].slice(0, 70)}`, color: theme.textFaint };
58
- }
59
- }
95
+ const resultLine = tool.result !== undefined
96
+ ? formatToolResultLine(tool.result, !!tool.isError)
97
+ : null;
60
98
  return (_jsxs(Box, { flexDirection: "column", paddingLeft: 2, marginBottom: 0, children: [_jsxs(Box, { children: [_jsx(Text, { color: theme.toolMark, children: "\u23BF " }), _jsx(Text, { color: theme.accentDim, children: title }), detail && _jsxs(Text, { color: theme.textDim, children: [" ", detail] }), running && _jsx(Text, { color: theme.textFaint, children: " \u27F3" })] }), resultLine && (_jsx(Box, { paddingLeft: 2, children: _jsx(Text, { color: resultLine.color, wrap: "truncate-end", children: resultLine.text }) }))] }));
61
99
  }
62
100
  //# sourceMappingURL=ToolCall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCall.js","sourceRoot":"","sources":["../../../src/tui/components/ToolCall.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolCall.js","sourceRoot":"","sources":["../../../src/tui/components/ToolCall.tsx"],"names":[],"mappings":"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"}
@@ -1,30 +1,19 @@
1
1
  import type { MessageData } from '../components/ChatMessage.js';
2
- import type { ToolCallData } from '../components/ToolCall.js';
3
2
  import type { App } from '../../app/index.js';
4
3
  import type { Usage } from '../../types.js';
5
- /**
6
- * Hook for managing chat state and the streaming response lifecycle.
7
- *
8
- * v3.0.0: streamResponse yields structured StreamChunks (text / tool_calls /
9
- * thinking / usage). The previous @@TOOL@@ sentinel-string parsing is gone.
10
- *
11
- * Persisted message order matches the source chunks exactly:
12
- * - text chunks → accumulated into fullContent (later compressed via
13
- * compressThinking before persistence)
14
- * - tool_calls chunks → results are summarized into a `[tool: name → result]`
15
- * suffix on the assistant message (same belt-and-suspenders behavior as
16
- * v2.2.6)
17
- * - usage chunks → surfaced via state.lastUsage so the TUI Header can render
18
- * cache hit-rate (consumed by app.tsx via /cache command in M3)
19
- */
20
4
  export declare function useChat(app: App): {
21
5
  sendMessage: (input: string) => void;
22
6
  cancel: () => void;
23
7
  hydrateMessages: (msgs: MessageData[]) => void;
8
+ clearMessages: () => void;
9
+ /**
10
+ * v3.0.16: DISPLAY-ONLY message list. Completed assistant text no longer
11
+ * lives here — it is committed straight into the terminal scrollback while
12
+ * streaming (claude-code style append-only rendering), so the list only
13
+ * carries user messages, errors and notices (auto-compact, /commands…).
14
+ */
24
15
  messages: MessageData[];
25
16
  isThinking: boolean;
26
- streaming: string;
27
- streamingToolCalls: ToolCallData[];
28
17
  queuedMessage: string | null;
29
18
  /**
30
19
  * v3.0.0: Latest cache usage emitted by the provider, surfaced to the TUI
@@ -1 +1 @@
1
- {"version":3,"file":"useChat.d.ts","sourceRoot":"","sources":["../../../src/tui/hooks/useChat.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,KAAK,EAAe,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAgBzD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,GAAG;yBA+PU,MAAM;;4BAuBH,WAAW,EAAE;cAlT9C,WAAW,EAAE;gBACX,OAAO;eACR,MAAM;wBACG,YAAY,EAAE;mBACnB,MAAM,GAAG,IAAI;IAC5B;;;;OAIG;eACQ,KAAK,GAAG,IAAI;EA6SxB"}
1
+ {"version":3,"file":"useChat.d.ts","sourceRoot":"","sources":["../../../src/tui/hooks/useChat.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAI9C,OAAO,KAAK,EAAyC,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAgGnF,wBAAgB,OAAO,CAAC,GAAG,EAAE,GAAG;yBA8NU,MAAM;;4BAuBH,WAAW,EAAE;;IAlVxD;;;;;OAKG;cACO,WAAW,EAAE;gBACX,OAAO;mBACJ,MAAM,GAAG,IAAI;IAC5B;;;;OAIG;eACQ,KAAK,GAAG,IAAI;EA8UxB"}