openhorse 0.1.19 → 0.1.21

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 (84) hide show
  1. package/dist/cli.js +446 -33
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/index.d.ts.map +1 -1
  4. package/dist/commands/index.js +99 -40
  5. package/dist/commands/index.js.map +1 -1
  6. package/dist/commands/types.d.ts +14 -0
  7. package/dist/commands/types.d.ts.map +1 -1
  8. package/dist/commands/types.js.map +1 -1
  9. package/dist/framework/query.d.ts.map +1 -1
  10. package/dist/framework/query.js +25 -7
  11. package/dist/framework/query.js.map +1 -1
  12. package/dist/runtime/turn-controller.d.ts +37 -0
  13. package/dist/runtime/turn-controller.d.ts.map +1 -0
  14. package/dist/runtime/turn-controller.js +84 -0
  15. package/dist/runtime/turn-controller.js.map +1 -0
  16. package/dist/services/config.d.ts +4 -2
  17. package/dist/services/config.d.ts.map +1 -1
  18. package/dist/services/config.js +30 -0
  19. package/dist/services/config.js.map +1 -1
  20. package/dist/services/global-config.d.ts +13 -0
  21. package/dist/services/global-config.d.ts.map +1 -1
  22. package/dist/services/global-config.js +4 -0
  23. package/dist/services/global-config.js.map +1 -1
  24. package/dist/services/llm.d.ts +4 -1
  25. package/dist/services/llm.d.ts.map +1 -1
  26. package/dist/services/llm.js +15 -2
  27. package/dist/services/llm.js.map +1 -1
  28. package/dist/ui/command-panel.d.ts +17 -0
  29. package/dist/ui/command-panel.d.ts.map +1 -1
  30. package/dist/ui/command-panel.js +234 -93
  31. package/dist/ui/command-panel.js.map +1 -1
  32. package/dist/ui/file-completion.d.ts +3 -0
  33. package/dist/ui/file-completion.d.ts.map +1 -1
  34. package/dist/ui/file-completion.js +7 -2
  35. package/dist/ui/file-completion.js.map +1 -1
  36. package/dist/ui/multiline-input.d.ts +4 -0
  37. package/dist/ui/multiline-input.d.ts.map +1 -1
  38. package/dist/ui/multiline-input.js +7 -0
  39. package/dist/ui/multiline-input.js.map +1 -1
  40. package/dist/ui/user-input.d.ts +1 -0
  41. package/dist/ui/user-input.d.ts.map +1 -1
  42. package/dist/ui/user-input.js +8 -4
  43. package/dist/ui/user-input.js.map +1 -1
  44. package/dist/ui-v2/components/command-palette.d.ts +6 -0
  45. package/dist/ui-v2/components/command-palette.d.ts.map +1 -0
  46. package/dist/ui-v2/components/command-palette.js +57 -0
  47. package/dist/ui-v2/components/command-palette.js.map +1 -0
  48. package/dist/ui-v2/components/session-picker.d.ts +17 -0
  49. package/dist/ui-v2/components/session-picker.d.ts.map +1 -0
  50. package/dist/ui-v2/components/session-picker.js +23 -0
  51. package/dist/ui-v2/components/session-picker.js.map +1 -0
  52. package/dist/ui-v2/components/shell.d.ts +49 -0
  53. package/dist/ui-v2/components/shell.d.ts.map +1 -0
  54. package/dist/ui-v2/components/shell.js +190 -0
  55. package/dist/ui-v2/components/shell.js.map +1 -0
  56. package/dist/ui-v2/index.d.ts +10 -0
  57. package/dist/ui-v2/index.d.ts.map +1 -0
  58. package/dist/ui-v2/index.js +26 -0
  59. package/dist/ui-v2/index.js.map +1 -0
  60. package/dist/ui-v2/runtime/text.d.ts +8 -0
  61. package/dist/ui-v2/runtime/text.d.ts.map +1 -0
  62. package/dist/ui-v2/runtime/text.js +58 -0
  63. package/dist/ui-v2/runtime/text.js.map +1 -0
  64. package/dist/ui-v2/state/input-reducer.d.ts +39 -0
  65. package/dist/ui-v2/state/input-reducer.d.ts.map +1 -0
  66. package/dist/ui-v2/state/input-reducer.js +82 -0
  67. package/dist/ui-v2/state/input-reducer.js.map +1 -0
  68. package/dist/ui-v2/state/picker.d.ts +16 -0
  69. package/dist/ui-v2/state/picker.d.ts.map +1 -0
  70. package/dist/ui-v2/state/picker.js +52 -0
  71. package/dist/ui-v2/state/picker.js.map +1 -0
  72. package/dist/ui-v2/state/sessions.d.ts +14 -0
  73. package/dist/ui-v2/state/sessions.d.ts.map +1 -0
  74. package/dist/ui-v2/state/sessions.js +65 -0
  75. package/dist/ui-v2/state/sessions.js.map +1 -0
  76. package/dist/ui-v2/state/suggestions.d.ts +22 -0
  77. package/dist/ui-v2/state/suggestions.d.ts.map +1 -0
  78. package/dist/ui-v2/state/suggestions.js +55 -0
  79. package/dist/ui-v2/state/suggestions.js.map +1 -0
  80. package/dist/ui-v2/types.d.ts +33 -0
  81. package/dist/ui-v2/types.d.ts.map +1 -0
  82. package/dist/ui-v2/types.js +9 -0
  83. package/dist/ui-v2/types.js.map +1 -0
  84. package/package.json +2 -2
@@ -10,19 +10,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
10
10
  return (mod && mod.__esModule) ? mod : { "default": mod };
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.setInputPromptRenderer = setInputPromptRenderer;
14
+ exports.setInputRenderContextProvider = setInputRenderContextProvider;
15
+ exports.setInputStatusText = setInputStatusText;
13
16
  exports.showCommandPanel = showCommandPanel;
14
17
  exports.hideCommandPanel = hideCommandPanel;
15
18
  exports.navigatePanel = navigatePanel;
16
19
  exports.selectCommand = selectCommand;
20
+ exports.completeSelectedCommand = completeSelectedCommand;
17
21
  exports.updatePanelFilter = updatePanelFilter;
18
22
  exports.isPanelVisible = isPanelVisible;
19
23
  exports.getSelectedCommandName = getSelectedCommandName;
20
24
  exports.getPendingCommand = getPendingCommand;
21
25
  exports.clearPendingCommand = clearPendingCommand;
22
26
  exports.redrawInputWithPrompt = redrawInputWithPrompt;
27
+ exports.clearRenderedInput = clearRenderedInput;
23
28
  exports.resetRenderLength = resetRenderLength;
29
+ exports.writeOutputPreservingInput = writeOutputPreservingInput;
30
+ exports.writeLinePreservingInput = writeLinePreservingInput;
24
31
  const chalk_1 = __importDefault(require("chalk"));
25
32
  const index_1 = require("../commands/index");
33
+ const ui_v2_1 = require("../ui-v2");
26
34
  // ============================================================================
27
35
  // 颜色常量 - Issue #32 #3.11: NO_COLOR 支持
28
36
  // ============================================================================
@@ -31,21 +39,28 @@ const NO_COLOR = process.env.NO_COLOR !== undefined || process.env.TERM === 'dum
31
39
  // 如果 NO_COLOR 设置,使用无颜色的 chalk
32
40
  const colorize = NO_COLOR ? {
33
41
  accent: (s) => s,
34
- brand: (s) => s,
35
42
  dim: (s) => s,
36
43
  selected: (s) => s,
37
44
  } : {
38
45
  accent: chalk_1.default.hex('#00D4AA'),
39
- brand: chalk_1.default.hex('#FF6B35'),
40
46
  dim: chalk_1.default.dim,
41
47
  selected: chalk_1.default.bgHex('#1E293B').hex('#E2E8F0'),
42
48
  };
43
49
  const ACCENT = colorize.accent;
44
- const BRAND = colorize.brand;
45
50
  const DIM = colorize.dim;
46
51
  const SELECTED = colorize.selected;
47
- const DEFAULT_MATCH_LIMIT = 8;
48
- const FILTERED_MATCH_LIMIT = 6;
52
+ let inputPromptRenderer = 'legacy';
53
+ let inputRenderContextProvider = () => ({});
54
+ let inputStatusText = '';
55
+ function setInputPromptRenderer(renderer) {
56
+ inputPromptRenderer = renderer;
57
+ }
58
+ function setInputRenderContextProvider(provider) {
59
+ inputRenderContextProvider = provider;
60
+ }
61
+ function setInputStatusText(statusText) {
62
+ inputStatusText = statusText;
63
+ }
49
64
  // ============================================================================
50
65
  // SIGWINCH 处理 - Issue #32 #3.11
51
66
  // ============================================================================
@@ -67,9 +82,13 @@ let state = {
67
82
  selectedIndex: 0,
68
83
  filter: '',
69
84
  matches: [],
85
+ moreCount: 0,
86
+ totalMatches: 0,
70
87
  };
71
88
  /** 面板高度(用于清除) */
72
89
  let panelHeight = 0;
90
+ /** 已为面板预留的屏幕行数,避免底部绘制时反复滚屏 */
91
+ let reservedPanelHeight = 0;
73
92
  /** 当前输入缓冲(供 CLI 读取) */
74
93
  let pendingCommand = null;
75
94
  // ============================================================================
@@ -91,11 +110,13 @@ function showCommandPanel(filter = '') {
91
110
  */
92
111
  function hideCommandPanel() {
93
112
  if (state.visible) {
94
- clearPanel();
113
+ clearPanel({ release: true });
95
114
  state.visible = false;
96
115
  state.matches = [];
97
116
  state.filter = '';
98
117
  state.selectedIndex = 0;
118
+ state.moreCount = 0;
119
+ state.totalMatches = 0;
99
120
  }
100
121
  }
101
122
  /**
@@ -124,6 +145,16 @@ function selectCommand() {
124
145
  hideCommandPanel();
125
146
  return pendingCommand;
126
147
  }
148
+ /**
149
+ * 补全当前命令但不执行。
150
+ */
151
+ function completeSelectedCommand() {
152
+ if (!state.visible || state.matches.length === 0)
153
+ return null;
154
+ const cmd = state.matches[state.selectedIndex];
155
+ hideCommandPanel();
156
+ return '/' + cmd.name + ' ';
157
+ }
127
158
  /**
128
159
  * 更新过滤条件
129
160
  */
@@ -131,12 +162,7 @@ function updatePanelFilter(filter) {
131
162
  state.filter = filter;
132
163
  state.selectedIndex = 0;
133
164
  updateMatches();
134
- if (state.matches.length > 0) {
135
- render();
136
- }
137
- else {
138
- hideCommandPanel();
139
- }
165
+ render();
140
166
  }
141
167
  /**
142
168
  * 获取面板是否可见
@@ -168,113 +194,116 @@ function clearPendingCommand() {
168
194
  // 内部辅助
169
195
  // ============================================================================
170
196
  function updateMatches() {
171
- const commands = (0, index_1.getCommands)();
172
- if (!state.filter) {
173
- state.matches = commands.slice(0, DEFAULT_MATCH_LIMIT);
174
- }
175
- else {
176
- state.matches = commands
177
- .filter(c => c.name.startsWith(state.filter) || c.aliases?.some(a => a.startsWith(state.filter)))
178
- .slice(0, FILTERED_MATCH_LIMIT);
179
- }
197
+ const result = (0, ui_v2_1.buildCommandSuggestions)((0, index_1.getCommands)(), state.filter);
198
+ state.matches = result.commands;
199
+ state.moreCount = result.moreCount;
200
+ state.totalMatches = result.total;
180
201
  }
181
202
  /** 上次渲染的面板行数 */
182
203
  let lastPanelLines = [];
183
204
  function render() {
184
- // 先清除上次的面板(使用保存的行数)
185
- clearPanel();
186
- if (state.matches.length === 0) {
187
- return;
188
- }
189
- // Issue #32 #3.11: 使用动态终端宽度
190
- const innerWidth = Math.min(terminalWidth - 4, 60);
191
- const lines = [];
192
- // 标题行
193
205
  const title = state.filter ? `Matching "${state.filter}"` : 'Commands';
194
- lines.push(DIM(`┌─ ${title} `) + DIM('─'.repeat(innerWidth - title.length - 3)) + DIM('┐'));
195
- // 命令列表
196
- for (let i = 0; i < state.matches.length; i++) {
197
- const cmd = state.matches[i];
198
- const isSelected = i === state.selectedIndex;
199
- // 格式: /name (alias) description. Keep rows compact while users type.
200
- const aliases = cmd.aliases?.length ? ` (${cmd.aliases[0]})` : '';
201
- const content = `/${cmd.name}${aliases}`;
202
- const desc = cmd.description.length > 28 ? cmd.description.slice(0, 25) + '...' : cmd.description;
203
- const padding = innerWidth - content.length - desc.length - 2;
204
- const gap = ' '.repeat(Math.max(1, padding));
205
- if (isSelected) {
206
- lines.push(DIM('│ ') + SELECTED(content + gap + desc) + DIM(' │'));
207
- }
208
- else {
209
- lines.push(DIM('│ ') + ACCENT(content) + gap + DIM(desc) + DIM(' │'));
210
- }
211
- }
212
- // 底部
213
- lines.push(DIM('└') + DIM('─'.repeat(innerWidth)) + DIM('┘'));
214
- // 操作提示
215
- lines.push(DIM(' ↑↓ Select Enter Esc'));
206
+ const lines = (0, ui_v2_1.renderCommandPalette)({
207
+ title,
208
+ items: (0, ui_v2_1.buildCommandSuggestions)(state.matches, '').items,
209
+ selectedIndex: state.selectedIndex,
210
+ width: terminalWidth,
211
+ moreCount: state.moreCount,
212
+ emptyLabel: 'No matching commands',
213
+ footer: ' ↑↓ Select Tab Complete Enter Run Esc',
214
+ theme: {
215
+ accent: ACCENT,
216
+ dim: DIM,
217
+ selected: SELECTED,
218
+ },
219
+ });
220
+ // 先清除上次的面板(使用保存的行数)
221
+ clearPanel({ release: false });
222
+ const panelOffset = getPanelOffsetRows();
223
+ reservePanelSpace(lines.length + panelOffset);
216
224
  // 保存行数用于下次清除
217
225
  lastPanelLines = lines;
218
226
  panelHeight = lines.length;
219
227
  // 使用更安全的渲染方式:保存光标位置,清除下方区域,写入面板,恢复光标
220
- process.stdout.write('\x1b[s'); // 保存光标位置
221
- // 清除从当前行到屏幕底部的内容(不移动光标)
228
+ process.stdout.write('\x1b7'); // 保存光标位置
229
+ if (panelOffset > 0) {
230
+ process.stdout.write(`\x1b[${panelOffset}B\r`);
231
+ }
232
+ // 清除从面板起点到屏幕底部的内容(不移动输入光标)
222
233
  process.stdout.write('\x1b[J'); // 清除从光标到屏幕底部
223
- // 现在写入面板内容(光标在原位置)
224
- for (const line of lines) {
225
- process.stdout.write('\n'); // 换行(更安全)
226
- process.stdout.write('\r' + line);
234
+ // 现在写入面板内容
235
+ for (let index = 0; index < lines.length; index++) {
236
+ if (index > 0 || panelOffset === 0) {
237
+ process.stdout.write('\n');
238
+ }
239
+ process.stdout.write('\r' + lines[index]);
227
240
  }
228
241
  // 恢复光标到保存的位置
229
- process.stdout.write('\x1b[u');
242
+ process.stdout.write('\x1b8');
230
243
  }
231
- function clearPanel() {
244
+ function clearPanel(options = {}) {
232
245
  // 使用保存的行数清除
233
- const height = lastPanelLines.length || panelHeight;
246
+ const height = Math.max(reservedPanelHeight, lastPanelLines.length, panelHeight);
234
247
  if (height > 0) {
235
248
  // 保存当前光标位置
236
- process.stdout.write('\x1b[s');
249
+ process.stdout.write('\x1b7');
250
+ const panelOffset = getPanelOffsetRows();
251
+ if (panelOffset > 0) {
252
+ process.stdout.write(`\x1b[${panelOffset}B\r`);
253
+ }
237
254
  // 清除从光标到屏幕底部
238
255
  process.stdout.write('\x1b[J');
239
256
  // 恢复光标位置
240
- process.stdout.write('\x1b[u');
257
+ process.stdout.write('\x1b8');
241
258
  lastPanelLines = [];
242
259
  panelHeight = 0;
260
+ if (options.release) {
261
+ reservedPanelHeight = 0;
262
+ }
243
263
  }
244
264
  }
265
+ function reservePanelSpace(requiredHeight) {
266
+ if (requiredHeight <= reservedPanelHeight)
267
+ return;
268
+ const extraLines = requiredHeight - reservedPanelHeight;
269
+ const panelOffset = getPanelOffsetRows();
270
+ if (panelOffset > 0) {
271
+ process.stdout.write(`\x1b[${panelOffset}B\r`);
272
+ }
273
+ process.stdout.write('\n'.repeat(extraLines));
274
+ process.stdout.write(`\x1b[${extraLines + panelOffset}A`);
275
+ if (lastInputCursorColumn > 0) {
276
+ process.stdout.write(`\x1b[${lastInputCursorColumn}G`);
277
+ }
278
+ reservedPanelHeight = requiredHeight;
279
+ }
245
280
  /** 上次渲染的总长度(prompt + input 的可见宽度) */
246
281
  let lastTotalRendered = 0;
282
+ let lastInputBlockHeight = 0;
283
+ let lastInputCursorRow = 0;
284
+ let lastInputCursorColumn = 0;
285
+ let lastInputValue = '';
286
+ let lastInputModeIndicator = '';
287
+ let v2InputFrameVisible = false;
288
+ let v2InputFrameLeadingNewline = false;
289
+ let outputCursorColumn = 0;
290
+ let outputCursorColumnBeforeFrame = 0;
247
291
  /** 是否是首次渲染(首次不清除) */
248
292
  let isFirstRender = true;
249
- /**
250
- * 计算字符串在终端中的可见宽度(字符数,不含 ANSI 码)
251
- * CJK 字符占 2 格,普通字符占 1 格
252
- */
253
- function visualWidth(str) {
254
- let width = 0;
255
- for (const ch of str) {
256
- const cp = ch.codePointAt(0) || 0;
257
- // CJK / CJK Unified Ideographs / Hangul / Full-width 占 2 格
258
- width += (cp >= 0x1100 && (cp <= 0x115F || cp === 0x2329 || cp === 0x232A ||
259
- (cp >= 0x2E80 && cp <= 0xA4CF && cp !== 0x303F) ||
260
- (cp >= 0xAC00 && cp <= 0xD7A3) ||
261
- (cp >= 0xF900 && cp <= 0xFAFF) ||
262
- (cp >= 0xFE10 && cp <= 0xFE19) ||
263
- (cp >= 0xFE30 && cp <= 0xFE6F) ||
264
- (cp >= 0xFF01 && cp <= 0xFF60) ||
265
- (cp >= 0xFFE0 && cp <= 0xFFE6) ||
266
- (cp >= 0x20000 && cp <= 0x2FFFD) ||
267
- (cp >= 0x30000 && cp <= 0x3FFFD))) ? 2 : 1;
268
- }
269
- return width;
270
- }
271
293
  /**
272
294
  * 重绘输入行(带 prompt)
273
295
  * v0.1.15: 修复换行残留 — 使用可见宽度计算(CJK 占 2 格)
274
296
  */
275
297
  function redrawInputWithPrompt(input, modeIndicator = '') {
298
+ if (state.visible && (lastPanelLines.length > 0 || reservedPanelHeight > 0)) {
299
+ clearPanel({ release: false });
300
+ }
301
+ if (inputPromptRenderer === 'v2') {
302
+ redrawV2InputFrame(input, modeIndicator);
303
+ return;
304
+ }
276
305
  const prompt = ACCENT('❯ ') + (modeIndicator ? DIM(modeIndicator) : '');
277
- const promptWidth = visualWidth(stripAnsi(prompt));
306
+ const promptWidth = (0, ui_v2_1.visualWidth)((0, ui_v2_1.stripAnsi)(prompt));
278
307
  if (!isFirstRender) {
279
308
  const lastTotal = lastTotalRendered;
280
309
  // 使用可见宽度计算上次渲染占用的行数
@@ -298,21 +327,133 @@ function redrawInputWithPrompt(input, modeIndicator = '') {
298
327
  // 绘制新的输入
299
328
  process.stdout.write(prompt + input);
300
329
  // 记录可见总宽度(prompt + input)
301
- lastTotalRendered = promptWidth + visualWidth(input);
330
+ lastTotalRendered = promptWidth + (0, ui_v2_1.visualWidth)(input);
331
+ lastInputCursorColumn = (lastTotalRendered % terminalWidth) + 1;
332
+ isFirstRender = false;
333
+ }
334
+ function redrawV2InputFrame(input, modeIndicator) {
335
+ const wasVisible = v2InputFrameVisible;
336
+ if (v2InputFrameVisible) {
337
+ clearPreviousV2InputFrame();
338
+ }
339
+ const leadingNewline = !wasVisible && outputCursorColumn > 0;
340
+ outputCursorColumnBeforeFrame = outputCursorColumn;
341
+ if (leadingNewline) {
342
+ process.stdout.write('\n');
343
+ }
344
+ const context = inputRenderContextProvider();
345
+ const frameInput = [
346
+ ...(context.prefixLines || []),
347
+ input,
348
+ ].join('\n');
349
+ const frame = (0, ui_v2_1.renderV2InputFrame)({
350
+ input: frameInput,
351
+ modeIndicator,
352
+ width: terminalWidth,
353
+ statusText: inputStatusText,
354
+ });
355
+ process.stdout.write(frame.output);
356
+ const rowsToCursor = frame.height - 1 - frame.cursorRow;
357
+ if (rowsToCursor > 0) {
358
+ process.stdout.write(`\x1b[${rowsToCursor}A`);
359
+ }
360
+ process.stdout.write(`\r\x1b[${frame.cursorColumn}G`);
361
+ lastInputBlockHeight = frame.height;
362
+ lastInputCursorRow = frame.cursorRow;
363
+ lastInputCursorColumn = frame.cursorColumn;
364
+ lastTotalRendered = (0, ui_v2_1.visualWidth)(input);
365
+ lastInputValue = input;
366
+ lastInputModeIndicator = modeIndicator;
367
+ v2InputFrameVisible = true;
368
+ v2InputFrameLeadingNewline = leadingNewline;
302
369
  isFirstRender = false;
303
370
  }
371
+ function clearPreviousV2InputFrame() {
372
+ if (lastInputBlockHeight <= 0 || !v2InputFrameVisible)
373
+ return;
374
+ if (lastInputCursorRow > 0) {
375
+ process.stdout.write(`\x1b[${lastInputCursorRow}A`);
376
+ }
377
+ process.stdout.write('\r');
378
+ for (let i = 0; i < lastInputBlockHeight; i++) {
379
+ process.stdout.write('\x1b[2K');
380
+ if (i < lastInputBlockHeight - 1) {
381
+ process.stdout.write('\x1b[1B');
382
+ }
383
+ }
384
+ if (lastInputBlockHeight > 1) {
385
+ process.stdout.write(`\x1b[${lastInputBlockHeight - 1}A`);
386
+ }
387
+ if (v2InputFrameLeadingNewline) {
388
+ process.stdout.write('\x1b[1A');
389
+ process.stdout.write(`\r\x1b[${outputCursorColumnBeforeFrame + 1}G`);
390
+ outputCursorColumn = outputCursorColumnBeforeFrame;
391
+ }
392
+ else {
393
+ outputCursorColumn = 0;
394
+ process.stdout.write('\r');
395
+ }
396
+ v2InputFrameVisible = false;
397
+ }
398
+ function clearRenderedInput() {
399
+ if (inputPromptRenderer === 'v2') {
400
+ clearPreviousV2InputFrame();
401
+ }
402
+ else {
403
+ process.stdout.write('\x1b[2K\r');
404
+ }
405
+ resetRenderLength();
406
+ }
407
+ function getPanelOffsetRows() {
408
+ return inputPromptRenderer === 'v2' ? 2 : 0;
409
+ }
304
410
  /**
305
411
  * 重置渲染长度跟踪
306
412
  */
307
413
  function resetRenderLength() {
308
414
  lastTotalRendered = 0;
415
+ lastInputBlockHeight = 0;
416
+ lastInputCursorRow = 0;
417
+ lastInputCursorColumn = 0;
418
+ lastInputValue = '';
419
+ lastInputModeIndicator = '';
420
+ v2InputFrameVisible = false;
421
+ v2InputFrameLeadingNewline = false;
422
+ outputCursorColumn = 0;
423
+ outputCursorColumnBeforeFrame = 0;
309
424
  isFirstRender = true;
310
425
  }
311
- /**
312
- * 去除 ANSI 颜色码,计算实际可见长度
313
- */
314
- function stripAnsi(str) {
315
- // 简单的 ANSI 去除
316
- return str.replace(/\x1b\[[0-9;]*m/g, '');
426
+ function writeOutputPreservingInput(text) {
427
+ if (inputPromptRenderer !== 'v2' || !v2InputFrameVisible) {
428
+ process.stdout.write(text);
429
+ trackOutputCursor(text);
430
+ return;
431
+ }
432
+ const input = lastInputValue;
433
+ const modeIndicator = lastInputModeIndicator;
434
+ clearPreviousV2InputFrame();
435
+ process.stdout.write(text);
436
+ trackOutputCursor(text);
437
+ redrawV2InputFrame(input, modeIndicator);
438
+ }
439
+ function writeLinePreservingInput(text = '') {
440
+ writeOutputPreservingInput(text + '\n');
441
+ }
442
+ function trackOutputCursor(text) {
443
+ const plain = (0, ui_v2_1.stripAnsi)(text);
444
+ for (const ch of plain) {
445
+ if (ch === '\n') {
446
+ outputCursorColumn = 0;
447
+ }
448
+ else if (ch === '\r') {
449
+ outputCursorColumn = 0;
450
+ }
451
+ else {
452
+ outputCursorColumn += (0, ui_v2_1.visualWidth)(ch);
453
+ if (outputCursorColumn >= terminalWidth) {
454
+ outputCursorColumn = outputCursorColumn % terminalWidth;
455
+ }
456
+ }
457
+ }
317
458
  }
318
459
  //# sourceMappingURL=command-panel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-panel.js","sourceRoot":"","sources":["../../src/ui/command-panel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-panel.js","sourceRoot":"","sources":["../../src/ui/command-panel.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@
4
4
  * 输入 @ 后自动补全文件路径,支持 glob 匹配。
5
5
  */
6
6
  import { type FileMatch } from '../services/file-glob';
7
+ type FilePromptRenderer = 'legacy' | 'v2';
8
+ export declare function setFileCompletionPromptRenderer(renderer: FilePromptRenderer): void;
7
9
  export interface FileCompletionState {
8
10
  visible: boolean;
9
11
  query: string;
@@ -59,4 +61,5 @@ export declare function getFullInput(): string;
59
61
  * 重绘输入(带 @ 和路径)
60
62
  */
61
63
  export declare function redrawInputWithFile(input: string): void;
64
+ export {};
62
65
  //# sourceMappingURL=file-completion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-completion.d.ts","sourceRoot":"","sources":["../../src/ui/file-completion.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAWnE,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AAgBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAOzE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAQzC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAS5D;AAED;;;GAGG;AACH,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAM1C;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAa5C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CASnD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAyED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIvD"}
1
+ {"version":3,"file":"file-completion.d.ts","sourceRoot":"","sources":["../../src/ui/file-completion.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAOnE,KAAK,kBAAkB,GAAG,QAAQ,GAAG,IAAI,CAAC;AAG1C,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAElF;AAMD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AAgBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAOzE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAQzC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAS5D;AAED;;;GAGG;AACH,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAM1C;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAa5C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CASnD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAyED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIvD"}
@@ -8,6 +8,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
8
8
  return (mod && mod.__esModule) ? mod : { "default": mod };
9
9
  };
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.setFileCompletionPromptRenderer = setFileCompletionPromptRenderer;
11
12
  exports.showFileCompletion = showFileCompletion;
12
13
  exports.hideFileCompletion = hideFileCompletion;
13
14
  exports.navigateFiles = navigateFiles;
@@ -21,10 +22,14 @@ exports.getFullInput = getFullInput;
21
22
  exports.redrawInputWithFile = redrawInputWithFile;
22
23
  const chalk_1 = __importDefault(require("chalk"));
23
24
  const file_glob_1 = require("../services/file-glob");
25
+ const ui_v2_1 = require("../ui-v2");
24
26
  const ACCENT = chalk_1.default.hex('#00D4AA');
25
27
  const DIM = chalk_1.default.dim;
26
28
  const SELECTED = chalk_1.default.bgHex('#1E293B').hex('#E2E8F0');
27
- const BRAND = chalk_1.default.hex('#FF6B35');
29
+ let filePromptRenderer = 'legacy';
30
+ function setFileCompletionPromptRenderer(renderer) {
31
+ filePromptRenderer = renderer;
32
+ }
28
33
  let state = {
29
34
  visible: false,
30
35
  query: '',
@@ -203,7 +208,7 @@ function clearPanel() {
203
208
  */
204
209
  function redrawInputWithFile(input) {
205
210
  process.stdout.write('\r\x1b[2K');
206
- const prompt = ACCENT('❯ ');
211
+ const prompt = filePromptRenderer === 'v2' ? (0, ui_v2_1.renderV2Prompt)() : ACCENT('❯ ');
207
212
  process.stdout.write(prompt + input);
208
213
  }
209
214
  //# sourceMappingURL=file-completion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-completion.js","sourceRoot":"","sources":["../../src/ui/file-completion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-completion.js","sourceRoot":"","sources":["../../src/ui/file-completion.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,10 @@ export declare function addMultilineLine(line: string): void;
24
24
  * 获取完整输入(合并所有行)
25
25
  */
26
26
  export declare function getMultilineInput(): string;
27
+ /**
28
+ * 获取已确认的多行输入行
29
+ */
30
+ export declare function getMultilineLines(): string[];
27
31
  /**
28
32
  * 重置多行状态
29
33
  */
@@ -1 +1 @@
1
- {"version":3,"file":"multiline-input.d.ts","sourceRoot":"","sources":["../../src/ui/multiline-input.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAWD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAGzD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAOnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAGrC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAGjD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
1
+ {"version":3,"file":"multiline-input.d.ts","sourceRoot":"","sources":["../../src/ui/multiline-input.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAWD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAGzD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAOnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAGrC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAGjD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
@@ -13,6 +13,7 @@ exports.shouldEnterMultiline = shouldEnterMultiline;
13
13
  exports.enterMultiline = enterMultiline;
14
14
  exports.addMultilineLine = addMultilineLine;
15
15
  exports.getMultilineInput = getMultilineInput;
16
+ exports.getMultilineLines = getMultilineLines;
16
17
  exports.resetMultiline = resetMultiline;
17
18
  exports.isMultilineActive = isMultilineActive;
18
19
  exports.getMultilineLineCount = getMultilineLineCount;
@@ -59,6 +60,12 @@ function addMultilineLine(line) {
59
60
  function getMultilineInput() {
60
61
  return state.lines.join('\n');
61
62
  }
63
+ /**
64
+ * 获取已确认的多行输入行
65
+ */
66
+ function getMultilineLines() {
67
+ return [...state.lines];
68
+ }
62
69
  /**
63
70
  * 重置多行状态
64
71
  */
@@ -1 +1 @@
1
- {"version":3,"file":"multiline-input.js","sourceRoot":"","sources":["../../src/ui/multiline-input.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;AA4BH,oDAEC;AAKD,wCAGC;AAKD,4CAOC;AAKD,8CAEC;AAKD,wCAGC;AAKD,8CAEC;AAKD,sDAEC;AAKD,4DAGC;AAKD,0CAEC;AA5FD,kDAA0B;AAE1B,MAAM,MAAM,GAAG,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACpC,MAAM,GAAG,GAAG,eAAK,CAAC,GAAG,CAAC;AAWtB,IAAI,KAAK,GAAmB;IAC1B,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,EAAE;CACV,CAAC;AAEF,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E;;GAEG;AACH,SAAgB,oBAAoB,CAAC,KAAa;IAChD,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,YAAoB;IACjD,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,CAAC,KAAK,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU;AACvD,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc;IAC5B,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;IACrB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,KAAK,CAAC,MAAM,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB;IACnC,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAgB,wBAAwB;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC,QAAQ,OAAO,IAAI,CAAC,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe;IAC7B,cAAc,EAAE,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"multiline-input.js","sourceRoot":"","sources":["../../src/ui/multiline-input.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;AA4BH,oDAEC;AAKD,wCAGC;AAKD,4CAOC;AAKD,8CAEC;AAKD,8CAEC;AAKD,wCAGC;AAKD,8CAEC;AAKD,sDAEC;AAKD,4DAGC;AAKD,0CAEC;AAnGD,kDAA0B;AAE1B,MAAM,MAAM,GAAG,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACpC,MAAM,GAAG,GAAG,eAAK,CAAC,GAAG,CAAC;AAWtB,IAAI,KAAK,GAAmB;IAC1B,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,EAAE;CACV,CAAC;AAEF,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E;;GAEG;AACH,SAAgB,oBAAoB,CAAC,KAAa;IAChD,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,YAAoB;IACjD,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,CAAC,KAAK,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU;AACvD,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc;IAC5B,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;IACrB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,KAAK,CAAC,MAAM,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB;IACnC,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAgB,wBAAwB;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC,QAAQ,OAAO,IAAI,CAAC,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe;IAC7B,cAAc,EAAE,CAAC;AACnB,CAAC"}
@@ -7,4 +7,5 @@
7
7
  export declare function renderUserInputPrompt(): string;
8
8
  export declare function renderUserInputContent(text: string, width?: number): string;
9
9
  export declare function renderUserInputEcho(input: string, width?: number): string;
10
+ export declare function renderUserInputEchoFrame(input: string, width?: number): string;
10
11
  //# sourceMappingURL=user-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-input.d.ts","sourceRoot":"","sources":["../../src/ui/user-input.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgDH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAM3E;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAKzE"}
1
+ {"version":3,"file":"user-input.d.ts","sourceRoot":"","sources":["../../src/ui/user-input.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA8CH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAM3E;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAKzE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAI9E"}