@agents-ensemble/cli 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +3 -0
  2. package/dist/format-session-summary.d.ts.map +1 -1
  3. package/dist/format-session-summary.js +74 -7
  4. package/dist/format-session-summary.js.map +1 -1
  5. package/dist/index.js +14 -0
  6. package/dist/index.js.map +1 -1
  7. package/dist/tui/format-operator-context.d.ts +2 -3
  8. package/dist/tui/format-operator-context.d.ts.map +1 -1
  9. package/dist/tui/format-operator-context.js +6 -12
  10. package/dist/tui/format-operator-context.js.map +1 -1
  11. package/dist/tui/ink-test-keys.d.ts +1 -0
  12. package/dist/tui/ink-test-keys.d.ts.map +1 -1
  13. package/dist/tui/ink-test-keys.js +1 -0
  14. package/dist/tui/ink-test-keys.js.map +1 -1
  15. package/dist/tui/issue-session-tui-stream-cursor.test.js +58 -11
  16. package/dist/tui/issue-session-tui-stream-cursor.test.js.map +1 -1
  17. package/dist/tui/issue-session-tui-stream.d.ts.map +1 -1
  18. package/dist/tui/issue-session-tui-stream.js +86 -7
  19. package/dist/tui/issue-session-tui-stream.js.map +1 -1
  20. package/dist/tui/issue-session-tui-stream.test.js +147 -21
  21. package/dist/tui/issue-session-tui-stream.test.js.map +1 -1
  22. package/dist/tui/issue-session-tui.d.ts.map +1 -1
  23. package/dist/tui/issue-session-tui.js +90 -9
  24. package/dist/tui/issue-session-tui.js.map +1 -1
  25. package/dist/tui/issue-session-tui.test.js +280 -54
  26. package/dist/tui/issue-session-tui.test.js.map +1 -1
  27. package/dist/tui/open-question-answer-suggestions.d.ts +19 -0
  28. package/dist/tui/open-question-answer-suggestions.d.ts.map +1 -0
  29. package/dist/tui/open-question-answer-suggestions.js +62 -0
  30. package/dist/tui/open-question-answer-suggestions.js.map +1 -0
  31. package/dist/tui/operator-command-suggestions.d.ts +13 -1
  32. package/dist/tui/operator-command-suggestions.d.ts.map +1 -1
  33. package/dist/tui/operator-command-suggestions.js +23 -2
  34. package/dist/tui/operator-command-suggestions.js.map +1 -1
  35. package/dist/tui/operator-text-area.d.ts +9 -2
  36. package/dist/tui/operator-text-area.d.ts.map +1 -1
  37. package/dist/tui/operator-text-area.js +5 -2
  38. package/dist/tui/operator-text-area.js.map +1 -1
  39. package/dist/tui/operator-text-area.test-double.d.ts +1 -1
  40. package/dist/tui/operator-text-area.test-double.d.ts.map +1 -1
  41. package/dist/tui/operator-text-area.test-double.js +87 -6
  42. package/dist/tui/operator-text-area.test-double.js.map +1 -1
  43. package/dist/tui/operator-text-area.test-stub.d.ts +5 -1
  44. package/dist/tui/operator-text-area.test-stub.d.ts.map +1 -1
  45. package/dist/tui/operator-text-area.test-stub.js +6 -2
  46. package/dist/tui/operator-text-area.test-stub.js.map +1 -1
  47. package/dist/tui/operator-text-area.test.js +13 -0
  48. package/dist/tui/operator-text-area.test.js.map +1 -1
  49. package/dist/tui/tui-layout-constants.d.ts +3 -5
  50. package/dist/tui/tui-layout-constants.d.ts.map +1 -1
  51. package/dist/tui/tui-layout-constants.js +3 -5
  52. package/dist/tui/tui-layout-constants.js.map +1 -1
  53. package/dist/tui/worker-display-name.d.ts +2 -0
  54. package/dist/tui/worker-display-name.d.ts.map +1 -0
  55. package/dist/tui/worker-display-name.js +4 -0
  56. package/dist/tui/worker-display-name.js.map +1 -0
  57. package/package.json +3 -2
@@ -4,11 +4,11 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
4
4
  * IssueSessionTui の縦切りテストでは本番の OperatorTextArea の契約だけを再現する。
5
5
  */
6
6
  import { useEffect, useMemo, useState } from 'react';
7
- import { Text, useCursor, useInput } from 'ink';
7
+ import { Text, useCursor, useInput, usePaste } from 'ink';
8
8
  import stringWidth from 'string-width';
9
- import { computeOperatorInputLayout, mapCursorOffsetToDisplayPosition, sliceVisibleInputDisplayLines, } from './operator-input-layout.js';
9
+ import { computeOperatorInputLayout, logicalPositionToOffset, mapCursorOffsetToDisplayPosition, sliceVisibleInputDisplayLines, } from './operator-input-layout.js';
10
10
  import { INPUT_PANE_PROMPT_COLOR } from './tui-layout-constants.js';
11
- export function OperatorTextArea({ value, onChange, onSubmit, focus = true, contentWidth, promptPrefix = '', maxDisplayLines, onDisplayLineCountChange, cursorStart, }) {
11
+ export function OperatorTextArea({ value, onChange, onSubmit, focus = true, contentWidth, promptPrefix = '', maxDisplayLines, onDisplayLineCountChange, suggestionsActive = false, onTab, cursorPosition: controlledCursorPosition, onCursorChange, cursorStart, }) {
12
12
  const [cursorOffset, setCursorOffset] = useState(value.length);
13
13
  const { setCursorPosition } = useCursor();
14
14
  const promptWidth = stringWidth(promptPrefix);
@@ -22,10 +22,13 @@ export function OperatorTextArea({ value, onChange, onSubmit, focus = true, cont
22
22
  onDisplayLineCountChange?.(layout.displayLines.length);
23
23
  }, [layout.displayLines.length, onDisplayLineCountChange]);
24
24
  useEffect(() => {
25
- if (focus) {
25
+ if (controlledCursorPosition) {
26
+ setCursorOffset(logicalPositionToOffset(value, controlledCursorPosition[0], controlledCursorPosition[1]));
27
+ }
28
+ else if (focus) {
26
29
  setCursorOffset((previous) => Math.min(previous, value.length));
27
30
  }
28
- }, [value, focus]);
31
+ }, [value, focus, controlledCursorPosition]);
29
32
  const visibleCursorLineIndex = cursorPosition.displayLineIndex - scrollOffset;
30
33
  const cursorColumnInVisibleLine = cursorPosition.columnInLine;
31
34
  if (focus && cursorStart !== undefined && visibleCursorLineIndex >= 0) {
@@ -39,11 +42,81 @@ export function OperatorTextArea({ value, onChange, onSubmit, focus = true, cont
39
42
  else {
40
43
  setCursorPosition(undefined);
41
44
  }
45
+ usePaste((pastedText) => {
46
+ const nextValue = value.slice(0, cursorOffset) + pastedText + value.slice(cursorOffset);
47
+ const nextCursorOffset = cursorOffset + pastedText.length;
48
+ onChange(nextValue);
49
+ setCursorOffset(nextCursorOffset);
50
+ onCursorChange?.(cursorPositionFor(nextValue, nextCursorOffset));
51
+ }, { isActive: focus });
42
52
  useInput((input, key) => {
43
53
  if (!focus) {
44
54
  return;
45
55
  }
46
- if (key.pageUp || key.pageDown || key.home || key.end || key.tab || (key.shift && key.tab)) {
56
+ if (key.tab) {
57
+ if (suggestionsActive) {
58
+ onTab?.(!!key.shift);
59
+ }
60
+ return;
61
+ }
62
+ if (key.pageUp ||
63
+ key.pageDown ||
64
+ key.home ||
65
+ key.end ||
66
+ key.leftArrow ||
67
+ key.rightArrow ||
68
+ key.upArrow ||
69
+ key.downArrow) {
70
+ if (suggestionsActive && (key.upArrow || key.downArrow)) {
71
+ return;
72
+ }
73
+ const lineStart = value.lastIndexOf('\n', cursorOffset - 1) + 1;
74
+ const lineEndIndex = value.indexOf('\n', cursorOffset);
75
+ const lineEnd = lineEndIndex < 0 ? value.length : lineEndIndex;
76
+ if (key.home) {
77
+ setCursorOffset(lineStart);
78
+ onCursorChange?.(cursorPositionFor(value, lineStart));
79
+ }
80
+ else if (key.end) {
81
+ setCursorOffset(lineEnd);
82
+ onCursorChange?.(cursorPositionFor(value, lineEnd));
83
+ }
84
+ else if (key.leftArrow) {
85
+ const nextOffset = Math.max(0, cursorOffset - 1);
86
+ setCursorOffset(nextOffset);
87
+ onCursorChange?.(cursorPositionFor(value, nextOffset));
88
+ }
89
+ else if (key.rightArrow) {
90
+ const nextOffset = Math.min(value.length, cursorOffset + 1);
91
+ setCursorOffset(nextOffset);
92
+ onCursorChange?.(cursorPositionFor(value, nextOffset));
93
+ }
94
+ else if (key.upArrow) {
95
+ const newlineIndex = value.lastIndexOf('\n', cursorOffset - 1);
96
+ if (newlineIndex >= 0) {
97
+ const offsetOnPreviousLine = cursorOffset - (newlineIndex + 1);
98
+ const previousLineStart = value.lastIndexOf('\n', newlineIndex - 1) + 1;
99
+ const nextOffset = Math.min(previousLineStart + offsetOnPreviousLine, newlineIndex);
100
+ setCursorOffset(nextOffset);
101
+ onCursorChange?.(cursorPositionFor(value, nextOffset));
102
+ }
103
+ }
104
+ else if (key.downArrow) {
105
+ const nextLineStart = value.indexOf('\n', cursorOffset);
106
+ if (nextLineStart >= 0) {
107
+ const nextLineEndIndex = value.indexOf('\n', nextLineStart + 1);
108
+ const nextLineEnd = nextLineEndIndex < 0 ? value.length : nextLineEndIndex;
109
+ const nextOffset = Math.min(nextLineStart + 1 + (cursorOffset - lineStart), nextLineEnd);
110
+ setCursorOffset(nextOffset);
111
+ onCursorChange?.(cursorPositionFor(value, nextOffset));
112
+ }
113
+ else {
114
+ const nextValue = `${value}\n`;
115
+ onChange(nextValue);
116
+ setCursorOffset(nextValue.length);
117
+ onCursorChange?.(cursorPositionFor(nextValue, nextValue.length));
118
+ }
119
+ }
47
120
  return;
48
121
  }
49
122
  if (key.return && !key.shift) {
@@ -54,6 +127,7 @@ export function OperatorTextArea({ value, onChange, onSubmit, focus = true, cont
54
127
  const nextValue = value.slice(0, cursorOffset) + '\n' + value.slice(cursorOffset);
55
128
  onChange(nextValue);
56
129
  setCursorOffset(cursorOffset + 1);
130
+ onCursorChange?.(cursorPositionFor(nextValue, cursorOffset + 1));
57
131
  return;
58
132
  }
59
133
  if (key.backspace || key.delete) {
@@ -63,12 +137,14 @@ export function OperatorTextArea({ value, onChange, onSubmit, focus = true, cont
63
137
  const nextValue = value.slice(0, cursorOffset - 1) + value.slice(cursorOffset);
64
138
  onChange(nextValue);
65
139
  setCursorOffset(cursorOffset - 1);
140
+ onCursorChange?.(cursorPositionFor(nextValue, cursorOffset - 1));
66
141
  return;
67
142
  }
68
143
  if (input) {
69
144
  const nextValue = value.slice(0, cursorOffset) + input + value.slice(cursorOffset);
70
145
  onChange(nextValue);
71
146
  setCursorOffset(cursorOffset + input.length);
147
+ onCursorChange?.(cursorPositionFor(nextValue, cursorOffset + input.length));
72
148
  }
73
149
  }, { isActive: focus });
74
150
  return (_jsx(_Fragment, { children: visibleLines.map((lineText, index) => {
@@ -76,4 +152,9 @@ export function OperatorTextArea({ value, onChange, onSubmit, focus = true, cont
76
152
  return (_jsxs(Text, { children: [index === 0 && scrollOffset === 0 ? (_jsx(Text, { color: INPUT_PANE_PROMPT_COLOR, children: promptPrefix })) : null, lineText] }, `input-line-${absoluteLineIndex}`));
77
153
  }) }));
78
154
  }
155
+ function cursorPositionFor(value, cursorOffset) {
156
+ const line = value.slice(0, cursorOffset).split('\n').length - 1;
157
+ const lineStart = value.lastIndexOf('\n', cursorOffset - 1) + 1;
158
+ return [line, cursorOffset - lineStart];
159
+ }
79
160
  //# sourceMappingURL=operator-text-area.test-double.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator-text-area.test-double.js","sourceRoot":"","sources":["../../src/tui/operator-text-area.test-double.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operator-text-area.test-double.js","sourceRoot":"","sources":["../../src/tui/operator-text-area.test-double.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
+ import type { TKeybindings } from 'react-ink-textarea';
1
2
  export declare const textAreaSpy: import("vitest").Mock<(...args: any[]) => any>;
2
3
  export declare function TestTextArea(props: {
3
4
  readonly focus: boolean;
4
5
  readonly value: string;
5
6
  readonly onChange?: (value: string) => void;
6
7
  readonly onSubmit?: (value: string) => void;
7
- readonly onCursorChange?: (position: [number, number]) => void;
8
8
  readonly linePrefix?: unknown;
9
9
  readonly viewportLines?: number;
10
10
  readonly initialLineCount?: number;
@@ -12,5 +12,9 @@ export declare function TestTextArea(props: {
12
12
  readonly x?: number;
13
13
  readonly y: number;
14
14
  };
15
+ readonly keybindings?: TKeybindings;
16
+ readonly onTab?: (shift: boolean) => void;
17
+ readonly cursorPosition?: [number, number];
18
+ readonly onCursorChange?: (position: [number, number]) => void;
15
19
  }): null;
16
20
  //# sourceMappingURL=operator-text-area.test-stub.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator-text-area.test-stub.d.ts","sourceRoot":"","sources":["../../src/tui/operator-text-area.test-stub.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,WAAW,gDAAU,CAAC;AAEnC,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE;QAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE,QAqEA"}
1
+ {"version":3,"file":"operator-text-area.test-stub.d.ts","sourceRoot":"","sources":["../../src/tui/operator-text-area.test-stub.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,eAAO,MAAM,WAAW,gDAAU,CAAC;AAEnC,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE;QAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,QAAQ,CAAC,WAAW,CAAC,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;CAChE,QAyEA"}
@@ -17,8 +17,8 @@ export function TestTextArea(props) {
17
17
  key.end ||
18
18
  key.leftArrow ||
19
19
  key.rightArrow ||
20
- key.upArrow ||
21
- key.downArrow) {
20
+ (key.upArrow && props.keybindings?.Up !== false) ||
21
+ (key.downArrow && props.keybindings?.Down !== false)) {
22
22
  if (key.home) {
23
23
  const lineStart = props.value.lastIndexOf('\n', cursorOffset - 1) + 1;
24
24
  setCursorOffset(lineStart);
@@ -37,6 +37,10 @@ export function TestTextArea(props) {
37
37
  }
38
38
  return;
39
39
  }
40
+ if (key.tab) {
41
+ props.onTab?.(!!key.shift);
42
+ return;
43
+ }
40
44
  if (key.return && !key.shift) {
41
45
  props.onSubmit?.(props.value);
42
46
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"operator-text-area.test-stub.js","sourceRoot":"","sources":["../../src/tui/operator-text-area.test-stub.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operator-text-area.test-stub.js","sourceRoot":"","sources":["../../src/tui/operator-text-area.test-stub.tsx"],"names":[],"mappings":"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"}
@@ -38,6 +38,19 @@ describe('OperatorTextArea (production wrapper)', () => {
38
38
  props?.onSubmit?.('hello');
39
39
  expect(onSubmit).toHaveBeenCalledWith('hello');
40
40
  expect(props?.cursorStart).toBeUndefined();
41
+ expect(props?.keybindings).toBeUndefined();
42
+ });
43
+ it('hands arrows and Tab to an active suggestion menu and forwards controlled cursor state', () => {
44
+ const onTab = vi.fn();
45
+ const onCursorChange = vi.fn();
46
+ render(_jsx(OperatorTextArea, { value: "/cl", onChange: () => { }, contentWidth: 40, maxDisplayLines: 4, suggestionsActive: true, onTab: onTab, cursorPosition: [0, 3], onCursorChange: onCursorChange }));
47
+ const props = textAreaSpy.mock.calls.at(-1)?.[0];
48
+ expect(props?.keybindings).toEqual({ Up: false, Down: false });
49
+ expect(props?.cursorPosition).toEqual([0, 3]);
50
+ expect(props?.onCursorChange).toBe(onCursorChange);
51
+ props?.onTab?.(false);
52
+ expect(onTab).toHaveBeenCalledWith(false);
53
+ expect(props?.onSubmit).toBeTypeOf('function');
41
54
  });
42
55
  it('forwards cursorStart to TextArea when promptPrefix is set', () => {
43
56
  render(_jsx(OperatorTextArea, { value: "", onChange: () => { }, contentWidth: 40, promptPrefix: "> ", maxDisplayLines: 4, cursorStart: { x: 5, y: 20 } }));
@@ -1 +1 @@
1
- {"version":3,"file":"operator-text-area.test.js","sourceRoot":"","sources":["../../src/tui/operator-text-area.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operator-text-area.test.js","sourceRoot":"","sources":["../../src/tui/operator-text-area.test.tsx"],"names":[],"mappings":"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"}
@@ -14,11 +14,13 @@ export declare const WORKER_PANE_TITLE = "Workers";
14
14
  export declare const OPEN_QUESTIONS_PANE_TITLE = "Open questions";
15
15
  /** Operator input ペインの UI ラベル。 */
16
16
  export declare const INPUT_PANE_TITLE = "Operator input";
17
+ /** Operator input の入力行先頭に表示するプロンプト。 */
18
+ export declare const OPERATOR_INPUT_PROMPT = "> ";
17
19
  /** Operator input ペイン枠線・タイトル色(他ペインと区別し視認性を確保)。 */
18
20
  export declare const INPUT_PANE_BORDER_COLOR = "blue";
19
21
  /** Operator input コンテキストヒント行の色。 */
20
22
  export declare const INPUT_PANE_HINT_COLOR = "blue";
21
- /** Operator input プロンプト(`operator> `)の色。 */
23
+ /** Operator input の `> ` プロンプト色。 */
22
24
  export declare const INPUT_PANE_PROMPT_COLOR = "blue";
23
25
  /** Worker 状態ペインの固定高さ(枠線込み。タイトルは上枠線埋め込み + サマリ 4 行)。 */
24
26
  export declare const WORKER_PANE_HEIGHT = 6;
@@ -38,10 +40,6 @@ export declare const OPEN_QUESTIONS_PANE_MAX_HEIGHT_RATIO = 0.6;
38
40
  export declare const OPEN_QUESTIONS_PANE_MAX_DISPLAY_LINES = 14;
39
41
  /** Open questions ペインタイトルに付与する選択操作ヒント。 */
40
42
  export declare const OPEN_QUESTIONS_SELECTION_HINT = " \u2014 Shift+\u2191\u2193\u3067\u9078\u629E";
41
- /** Open questions がないときに Operator input へ表示する任意入力 prompt。 */
42
- export declare const OPERATOR_INPUT_DISCRETIONARY_HINT = "\u4EFB\u610F\u5165\u529B \u00B7 /reconnect \u00B7 /close \u4FDD\u5B58\u3057\u3066\u9589\u3058\u308B \u00B7 /exit \u6383\u9664\u3057\u3066\u7D42\u4E86";
43
- /** post-loop 待機中に Operator input へ表示する追加入力 prompt。 */
44
- export declare const OPERATOR_INPUT_POST_LOOP_HINT = "\u8FFD\u52A0\u6307\u793A \u00B7 /reconnect \u00B7 /close \u4FDD\u5B58\u3057\u3066\u9589\u3058\u308B \u00B7 /exit \u6383\u9664\u3057\u3066\u7D42\u4E86";
45
43
  /** 終了処理中に Operator input へ表示する prompt。 */
46
44
  export declare const OPERATOR_INPUT_SHUTTING_DOWN_HINT = "\u7D42\u4E86\u3057\u3066\u3044\u307E\u3059\u2026";
47
45
  /** 入力ペインの枠線(上下)行数。`PANE_BORDER_ROWS` と同値。 */
@@ -1 +1 @@
1
- {"version":3,"file":"tui-layout-constants.d.ts","sourceRoot":"","sources":["../../src/tui/tui-layout-constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,yCAAyC;AACzC,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC,6BAA6B;AAC7B,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,oEAAoE;AACpE,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAE/C,2BAA2B;AAC3B,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAE3C,qDAAqD;AACrD,eAAO,MAAM,yBAAyB,mBAAmB,CAAC;AAE1D,kCAAkC;AAClC,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AAEjD,kDAAkD;AAClD,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAE9C,mCAAmC;AACnC,eAAO,MAAM,qBAAqB,SAAS,CAAC;AAE5C,4CAA4C;AAC5C,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAE9C,sDAAsD;AACtD,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC;;;GAGG;AACH,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,MAAM,CAAC;AAExD,sDAAsD;AACtD,eAAO,MAAM,qCAAqC,KAAK,CAAC;AAExD,0CAA0C;AAC1C,eAAO,MAAM,6BAA6B,iDAAmB,CAAC;AAE9D,6DAA6D;AAC7D,eAAO,MAAM,iCAAiC,0JACO,CAAC;AAEtD,sDAAsD;AACtD,eAAO,MAAM,6BAA6B,0JACW,CAAC;AAEtD,0CAA0C;AAC1C,eAAO,MAAM,iCAAiC,qDAAa,CAAC;AAE5D,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,IAAmB,CAAC;AAEvD,kCAAkC;AAClC,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC,kDAAkD;AAClD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAAkD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,gCAAgC;AAChC,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD,uBAAuB;AACvB,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,0BAA0B;AAC1B,eAAO,MAAM,4BAA4B,IAAI,CAAC"}
1
+ {"version":3,"file":"tui-layout-constants.d.ts","sourceRoot":"","sources":["../../src/tui/tui-layout-constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,yCAAyC;AACzC,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC,6BAA6B;AAC7B,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,oEAAoE;AACpE,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAE/C,2BAA2B;AAC3B,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAE3C,qDAAqD;AACrD,eAAO,MAAM,yBAAyB,mBAAmB,CAAC;AAE1D,kCAAkC;AAClC,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AAEjD,uCAAuC;AACvC,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,kDAAkD;AAClD,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAE9C,mCAAmC;AACnC,eAAO,MAAM,qBAAqB,SAAS,CAAC;AAE5C,oCAAoC;AACpC,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAE9C,sDAAsD;AACtD,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC;;;GAGG;AACH,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,MAAM,CAAC;AAExD,sDAAsD;AACtD,eAAO,MAAM,qCAAqC,KAAK,CAAC;AAExD,0CAA0C;AAC1C,eAAO,MAAM,6BAA6B,iDAAmB,CAAC;AAE9D,0CAA0C;AAC1C,eAAO,MAAM,iCAAiC,qDAAa,CAAC;AAE5D,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,IAAmB,CAAC;AAEvD,kCAAkC;AAClC,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC,kDAAkD;AAClD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAAkD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,gCAAgC;AAChC,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD,uBAAuB;AACvB,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,0BAA0B;AAC1B,eAAO,MAAM,4BAA4B,IAAI,CAAC"}
@@ -14,11 +14,13 @@ export const WORKER_PANE_TITLE = 'Workers';
14
14
  export const OPEN_QUESTIONS_PANE_TITLE = 'Open questions';
15
15
  /** Operator input ペインの UI ラベル。 */
16
16
  export const INPUT_PANE_TITLE = 'Operator input';
17
+ /** Operator input の入力行先頭に表示するプロンプト。 */
18
+ export const OPERATOR_INPUT_PROMPT = '> ';
17
19
  /** Operator input ペイン枠線・タイトル色(他ペインと区別し視認性を確保)。 */
18
20
  export const INPUT_PANE_BORDER_COLOR = 'blue';
19
21
  /** Operator input コンテキストヒント行の色。 */
20
22
  export const INPUT_PANE_HINT_COLOR = 'blue';
21
- /** Operator input プロンプト(`operator> `)の色。 */
23
+ /** Operator input の `> ` プロンプト色。 */
22
24
  export const INPUT_PANE_PROMPT_COLOR = 'blue';
23
25
  /** Worker 状態ペインの固定高さ(枠線込み。タイトルは上枠線埋め込み + サマリ 4 行)。 */
24
26
  export const WORKER_PANE_HEIGHT = 6;
@@ -38,10 +40,6 @@ export const OPEN_QUESTIONS_PANE_MAX_HEIGHT_RATIO = 0.6;
38
40
  export const OPEN_QUESTIONS_PANE_MAX_DISPLAY_LINES = 14;
39
41
  /** Open questions ペインタイトルに付与する選択操作ヒント。 */
40
42
  export const OPEN_QUESTIONS_SELECTION_HINT = ' — Shift+↑↓で選択';
41
- /** Open questions がないときに Operator input へ表示する任意入力 prompt。 */
42
- export const OPERATOR_INPUT_DISCRETIONARY_HINT = '任意入力 · /reconnect · /close 保存して閉じる · /exit 掃除して終了';
43
- /** post-loop 待機中に Operator input へ表示する追加入力 prompt。 */
44
- export const OPERATOR_INPUT_POST_LOOP_HINT = '追加指示 · /reconnect · /close 保存して閉じる · /exit 掃除して終了';
45
43
  /** 終了処理中に Operator input へ表示する prompt。 */
46
44
  export const OPERATOR_INPUT_SHUTTING_DOWN_HINT = '終了しています…';
47
45
  /** 入力ペインの枠線(上下)行数。`PANE_BORDER_ROWS` と同値。 */
@@ -1 +1 @@
1
- {"version":3,"file":"tui-layout-constants.js","sourceRoot":"","sources":["../../src/tui/tui-layout-constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,yCAAyC;AACzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAElC,6BAA6B;AAC7B,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAEpC,oEAAoE;AACpE,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;AAE/C,2BAA2B;AAC3B,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAC;AAE3C,qDAAqD;AACrD,MAAM,CAAC,MAAM,yBAAyB,GAAG,gBAAgB,CAAC;AAE1D,kCAAkC;AAClC,MAAM,CAAC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAEjD,kDAAkD;AAClD,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE9C,mCAAmC;AACnC,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE5C,4CAA4C;AAC5C,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE9C,sDAAsD;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAEpC;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,GAAG,CAAC;AAExD,sDAAsD;AACtD,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAE,CAAC;AAExD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,6BAA6B,GAAG,gBAAgB,CAAC;AAE9D,6DAA6D;AAC7D,MAAM,CAAC,MAAM,iCAAiC,GAC5C,mDAAmD,CAAC;AAEtD,sDAAsD;AACtD,MAAM,CAAC,MAAM,6BAA6B,GACxC,mDAAmD,CAAC;AAEtD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,iCAAiC,GAAG,UAAU,CAAC;AAE5D,6CAA6C;AAC7C,MAAM,CAAC,MAAM,sBAAsB,GAAG,gBAAgB,CAAC;AAEvD,kCAAkC;AAClC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAEhC,kDAAkD;AAClD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,8BAA8B,GAAG,cAAc,CAAC;AAEvF;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD,gCAAgC;AAChC,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEhD,uBAAuB;AACvB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAE/C,0BAA0B;AAC1B,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"tui-layout-constants.js","sourceRoot":"","sources":["../../src/tui/tui-layout-constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,yCAAyC;AACzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAElC,6BAA6B;AAC7B,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAEpC,oEAAoE;AACpE,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;AAE/C,2BAA2B;AAC3B,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAC;AAE3C,qDAAqD;AACrD,MAAM,CAAC,MAAM,yBAAyB,GAAG,gBAAgB,CAAC;AAE1D,kCAAkC;AAClC,MAAM,CAAC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAEjD,uCAAuC;AACvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAE1C,kDAAkD;AAClD,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE9C,mCAAmC;AACnC,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE5C,oCAAoC;AACpC,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE9C,sDAAsD;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAEpC;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,GAAG,CAAC;AAExD,sDAAsD;AACtD,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAE,CAAC;AAExD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,6BAA6B,GAAG,gBAAgB,CAAC;AAE9D,0CAA0C;AAC1C,MAAM,CAAC,MAAM,iCAAiC,GAAG,UAAU,CAAC;AAE5D,6CAA6C;AAC7C,MAAM,CAAC,MAAM,sBAAsB,GAAG,gBAAgB,CAAC;AAEvD,kCAAkC;AAClC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAEhC,kDAAkD;AAClD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,8BAA8B,GAAG,cAAc,CAAC;AAEvF;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD,gCAAgC;AAChC,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEhD,uBAAuB;AACvB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAE/C,0BAA0B;AAC1B,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function formatWorkerDisplayName(name: string, kind: string): string;
2
+ //# sourceMappingURL=worker-display-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-display-name.d.ts","sourceRoot":"","sources":["../../src/tui/worker-display-name.ts"],"names":[],"mappings":"AAAA,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1E"}
@@ -0,0 +1,4 @@
1
+ export function formatWorkerDisplayName(name, kind) {
2
+ return name === kind ? name : `${name} (${kind})`;
3
+ }
4
+ //# sourceMappingURL=worker-display-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-display-name.js","sourceRoot":"","sources":["../../src/tui/worker-display-name.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,uBAAuB,CAAC,IAAY,EAAE,IAAY;IAChE,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,CAAC;AACpD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agents-ensemble/cli",
3
- "version": "0.12.0",
3
+ "version": "0.14.0",
4
4
  "type": "module",
5
5
  "description": "ensemble CLI — Issue-based agent orchestration",
6
6
  "bin": {
@@ -17,7 +17,8 @@
17
17
  "react": "19.2.0",
18
18
  "react-ink-textarea": "npm:@otolab/react-ink-textarea@0.4.1-otolab.3",
19
19
  "string-width": "8.1.0",
20
- "@agents-ensemble/core": "0.12.0"
20
+ "@agents-ensemble/core": "0.14.0",
21
+ "@agents-ensemble/operator-agent": "0.2.0"
21
22
  },
22
23
  "devDependencies": {
23
24
  "@types/js-yaml": "4.0.9",