@agents-ensemble/cli 0.6.4 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/README.md +36 -3
  2. package/config.example.yaml +13 -0
  3. package/dist/async-operator-input.js +1 -1
  4. package/dist/async-operator-input.js.map +1 -1
  5. package/dist/display/session-display-reducer.d.ts.map +1 -1
  6. package/dist/display/session-display-reducer.js +0 -11
  7. package/dist/display/session-display-reducer.js.map +1 -1
  8. package/dist/inline-markdown.d.ts +3 -1
  9. package/dist/inline-markdown.d.ts.map +1 -1
  10. package/dist/inline-markdown.js +232 -33
  11. package/dist/inline-markdown.js.map +1 -1
  12. package/dist/issue-command.d.ts.map +1 -1
  13. package/dist/issue-command.js +8 -4
  14. package/dist/issue-command.js.map +1 -1
  15. package/dist/prompt-operator-input.d.ts +1 -1
  16. package/dist/prompt-operator-input.d.ts.map +1 -1
  17. package/dist/prompt-operator-input.js +1 -1
  18. package/dist/prompt-operator-input.js.map +1 -1
  19. package/dist/session-log-lines.d.ts.map +1 -1
  20. package/dist/session-log-lines.js +64 -8
  21. package/dist/session-log-lines.js.map +1 -1
  22. package/dist/session-sinks.d.ts.map +1 -1
  23. package/dist/session-sinks.js +2 -10
  24. package/dist/session-sinks.js.map +1 -1
  25. package/dist/tui/activity-log.d.ts +8 -0
  26. package/dist/tui/activity-log.d.ts.map +1 -1
  27. package/dist/tui/activity-log.js +16 -0
  28. package/dist/tui/activity-log.js.map +1 -1
  29. package/dist/tui/compute-operator-input-cursor-y.d.ts +4 -0
  30. package/dist/tui/compute-operator-input-cursor-y.d.ts.map +1 -1
  31. package/dist/tui/compute-operator-input-cursor-y.js +4 -2
  32. package/dist/tui/compute-operator-input-cursor-y.js.map +1 -1
  33. package/dist/tui/create-issue-session-tui-host.d.ts.map +1 -1
  34. package/dist/tui/create-issue-session-tui-host.js +44 -8
  35. package/dist/tui/create-issue-session-tui-host.js.map +1 -1
  36. package/dist/tui/create-issue-session-tui-host.test.js +19 -5
  37. package/dist/tui/create-issue-session-tui-host.test.js.map +1 -1
  38. package/dist/tui/issue-session-tui-stream.d.ts +6 -1
  39. package/dist/tui/issue-session-tui-stream.d.ts.map +1 -1
  40. package/dist/tui/issue-session-tui-stream.js +55 -17
  41. package/dist/tui/issue-session-tui-stream.js.map +1 -1
  42. package/dist/tui/issue-session-tui-stream.test.js +345 -11
  43. package/dist/tui/issue-session-tui-stream.test.js.map +1 -1
  44. package/dist/tui/issue-session-tui.d.ts +11 -5
  45. package/dist/tui/issue-session-tui.d.ts.map +1 -1
  46. package/dist/tui/issue-session-tui.js +60 -30
  47. package/dist/tui/issue-session-tui.js.map +1 -1
  48. package/dist/tui/issue-session-tui.test.js +268 -30
  49. package/dist/tui/issue-session-tui.test.js.map +1 -1
  50. package/dist/tui/open-questions-pane.d.ts.map +1 -1
  51. package/dist/tui/open-questions-pane.js +30 -12
  52. package/dist/tui/open-questions-pane.js.map +1 -1
  53. package/dist/tui/pane-layout.d.ts +22 -0
  54. package/dist/tui/pane-layout.d.ts.map +1 -0
  55. package/dist/tui/pane-layout.js +74 -0
  56. package/dist/tui/pane-layout.js.map +1 -0
  57. package/dist/tui/stream-scrollback.d.ts +29 -0
  58. package/dist/tui/stream-scrollback.d.ts.map +1 -0
  59. package/dist/tui/stream-scrollback.js +35 -0
  60. package/dist/tui/stream-scrollback.js.map +1 -0
  61. package/dist/tui/titled-border-pane.d.ts +2 -1
  62. package/dist/tui/titled-border-pane.d.ts.map +1 -1
  63. package/dist/tui/titled-border-pane.js +2 -2
  64. package/dist/tui/titled-border-pane.js.map +1 -1
  65. package/dist/tui/tui-layout-constants.d.ts +11 -6
  66. package/dist/tui/tui-layout-constants.d.ts.map +1 -1
  67. package/dist/tui/tui-layout-constants.js +11 -6
  68. package/dist/tui/tui-layout-constants.js.map +1 -1
  69. package/dist/tui/tui-resize-recovery.d.ts +24 -0
  70. package/dist/tui/tui-resize-recovery.d.ts.map +1 -0
  71. package/dist/tui/tui-resize-recovery.js +34 -0
  72. package/dist/tui/tui-resize-recovery.js.map +1 -0
  73. package/dist/tui/tui-terminal-size.d.ts +45 -0
  74. package/dist/tui/tui-terminal-size.d.ts.map +1 -0
  75. package/dist/tui/tui-terminal-size.js +195 -0
  76. package/dist/tui/tui-terminal-size.js.map +1 -0
  77. package/dist/tui/tui-view-model.d.ts +2 -0
  78. package/dist/tui/tui-view-model.d.ts.map +1 -1
  79. package/dist/tui/tui-view-model.js +7 -0
  80. package/dist/tui/tui-view-model.js.map +1 -1
  81. package/dist/tui/wrap-text-to-width.d.ts.map +1 -1
  82. package/dist/tui/wrap-text-to-width.js +4 -1
  83. package/dist/tui/wrap-text-to-width.js.map +1 -1
  84. package/docs/config.md +67 -3
  85. package/docs/settings.md +17 -4
  86. package/package.json +2 -2
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  > **正本:** npm の `@agents-ensemble/cli` と GitHub の CLI 利用者向け入口。インストール・最小クイックスタート・doc 索引を掲載します。
4
4
 
5
- `@agents-ensemble/cli` は、GitHub Issue を起点に conductor が worker を起動・制御する CLI です。
5
+ `@agents-ensemble/cli` は、GitHub Issue を起点に conductor が worker を起動・制御する CLI です。conductor は Cursor SDK(既定)または Pi(opt-in)を選べます。
6
6
 
7
7
  ## インストール
8
8
 
@@ -16,17 +16,50 @@ pnpm add -g @agents-ensemble/cli
16
16
  ensemble --help
17
17
  ```
18
18
 
19
+ ## Conductor backend の選択
20
+
21
+ 既定の backend は `cursor`(Cursor SDK)です。Pi を使う場合は、リポジトリの `.ensemble/config.yaml` またはユーザ設定の `~/.ensemble/config.yaml` で `conductor.backend` を `pi` にします。
22
+
23
+ ```yaml
24
+ conductor:
25
+ backend: pi
26
+ ```
27
+
28
+ Pi backend は Pi の設定ファイルを読みます。モデル設定と認証情報は、次のいずれかの `settings.json` / `auth.json` に用意してください(プロジェクト設定がユーザ設定を上書きします)。
29
+
30
+ | 層 | パス |
31
+ |----|------|
32
+ | ユーザ | `~/.ensemble/pi/` |
33
+ | プロジェクト | `<repoRoot>/.ensemble/pi/` |
34
+
35
+ Pi backend では `ensemble auth login` は認証を設定しません。このコマンドは Cursor SDK 向けです。Pi の provider 認証は Pi の `auth.json` / `settings.json`(および Pi が提供する設定方法)を使います。`~/.ensemble/pi/` と `<repoRoot>/.ensemble/pi/` の `settings.json` / `auth.json` / `models.json` / `extensions/` / `skills/` / `prompts/` / `themes/` を解決し、`conductor.pi.agentDir` / `conductor.pi.projectDir` で root のみ上書きできます。skills は compiled system prompt に追加され、prompts は `/name args` として展開されます。themes は headless conductor で読み込み・project 同名解決まで行いますが、TUI renderer がないため色・表示設定は適用しません。`.ensemble/pi/SYSTEM.md` / `APPEND_SYSTEM.md` は conductor の system prompt には使わず、modular-prompt のコンパイル結果を優先します。
36
+
37
+ `settings.json` の headless 対応は、モデル選択(`defaultProvider` / `defaultModel`)、認証 fallback(`apiKey` / `apiKeys`)、resource path(`extensions` / `skills` / `prompts` / `themes`)に限定されます。`defaultThinkingLevel`、`thinkingBudgets`、`packages`、`enableSkillCommands` など Pi coding-agent の挙動・TUI・package 設定は警告なしで無視します。詳細な対応キーと失敗モードは [config.md の headless 対応範囲](../config.md#settingsjson-の-headless-対応範囲) を参照してください。
38
+
39
+ MCP は #354 の harness 内蔵 in-process bridge で Pi に接続します。解決済み `mcp.json` がある場合は MCP tools が、設定が無い場合も harness tools が、最小起動から常に有効です。bridge は Pi ExtensionAPI extension ではなく、harness が管理する tool adapter です。設計上の前提と制限は [ADR 0025](../adr/0025-conductor-agent-backend-sdk-and-pi.md) を参照してください。
40
+
41
+ backend はセッション開始時に選択され、resume の途中では切り替えられません。system prompt の渡し方、認証、resume の差分は [ADR 0025](../adr/0025-conductor-agent-backend-sdk-and-pi.md) にまとまっています。
42
+
43
+ backend を選んだ後の主経路は共通です。リポジトリのディレクトリで、対象 Issue を同じ `ensemble issue <url>` コマンドに渡します。
44
+
19
45
  ## 最小クイックスタート
20
46
 
21
- 初回だけ、worker・conductor・GitHub API の認証を準備します。
47
+ 初回だけ、worker・選択した conductor backend・GitHub API の認証を準備します。
22
48
 
23
49
  既定の `cursor` preset は、npm パッケージに含まれない Cursor Agent CLI の `agent` コマンドを使用します。先に [Cursor Agent CLI の公式インストール手順](https://cursor.com/docs/cli) に従ってインストールしてください。
24
50
 
51
+ | 対象 | 準備 |
52
+ |------|------|
53
+ | worker(既定の Cursor ACP) | `agent login` |
54
+ | conductor(Cursor SDK、既定) | `ensemble auth login` |
55
+ | conductor(Pi) | 上記の Pi `settings.json` / `auth.json` を準備。`ensemble auth` は使わない |
56
+ | GitHub API(gh CLI を使う場合) | `gh auth login` |
57
+
25
58
  ```bash
26
59
  # worker(既定の Cursor ACP)
27
60
  agent login
28
61
 
29
- # conductor(Cursor SDK)
62
+ # conductor(Cursor SDK を使う場合だけ)
30
63
  ensemble auth login
31
64
 
32
65
  # GitHub API(gh CLI を使う場合)
@@ -12,8 +12,21 @@ profile:
12
12
  default: implementer-and-reviewer
13
13
 
14
14
  conductor:
15
+ # conductor backend(profile で指定した場合は profile が優先。cursor | pi)
16
+ # この例は Pi resource 配線を示すため pi。既定 backend は cursor。
17
+ backend: pi
15
18
  # conductor モデル id(CLI --model / CONDUCTOR_MODEL_ID より優先度低)
16
19
  model: default
20
+ # Pi backend の resource root(任意。パスだけを上書きする)
21
+ # 相対パスは repoRoot 基準、~ はユーザ home 基準
22
+ pi:
23
+ agentDir: ~/.ensemble/pi
24
+ projectDir: .ensemble/pi
25
+ # 上記の各 root に settings.json / auth.json / models.json、
26
+ # extensions/ / skills/ / prompts/ / themes/ を配置します。
27
+ # settings.json は headless conductor の対応キー(モデル選択・
28
+ # 認証 fallback・resource path)のみ有効です。thinking / packages /
29
+ # TUI 等の Pi coding-agent 設定は警告なしで無視します。
17
30
 
18
31
  acp:
19
32
  # profile / worker に acp 未指定時の built-in preset
@@ -34,7 +34,7 @@ export function bindAsyncOperatorInput(api, options = {}) {
34
34
  if (!input.isTTY) {
35
35
  return () => { };
36
36
  }
37
- stderr.write('\nオペレータ入力: 任意のタイミングで入力して Enter。conductor は継続します(/exit で終了)。\n');
37
+ stderr.write('\nオペレータ入力: 任意のタイミングで入力して Enter。conductor は継続します(/reconnect で再接続、/exit で終了)。\n');
38
38
  const rl = readline.createInterface({ input, output, terminal: true });
39
39
  rl.setPrompt('operator> ');
40
40
  const showPrompt = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"async-operator-input.js","sourceRoot":"","sources":["../src/async-operator-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async-operator-input.js","sourceRoot":"","sources":["../src/async-operator-input.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-display-reducer.d.ts","sourceRoot":"","sources":["../../src/display/session-display-reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,6BAA6B,EAC7B,KAAK,mBAAmB,EAEzB,MAAM,4BAA4B,CAAC;AAsDpC,8CAA8C;AAC9C,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,eAAe,GACrB,mBAAmB,CA4GrB;AAED,OAAO,EAAE,6BAA6B,EAAE,CAAC"}
1
+ {"version":3,"file":"session-display-reducer.d.ts","sourceRoot":"","sources":["../../src/display/session-display-reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,6BAA6B,EAC7B,KAAK,mBAAmB,EAEzB,MAAM,4BAA4B,CAAC;AAkDpC,8CAA8C;AAC9C,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,eAAe,GACrB,mBAAmB,CAoGrB;AAED,OAAO,EAAE,6BAA6B,EAAE,CAAC"}
@@ -22,9 +22,6 @@ function setWorkerStatus(state, name, kind, status, activity) {
22
22
  },
23
23
  };
24
24
  }
25
- function formatConductorErrorMessage(message) {
26
- return `応答を生成できませんでした(${message})。\n別の聞き方で再入力してください。`;
27
- }
28
25
  function seedSessionWorkers(state, workers) {
29
26
  let next = state;
30
27
  for (const worker of workers) {
@@ -86,14 +83,6 @@ export function reduceDisplayState(state, event) {
86
83
  }
87
84
  return { ...nextState, conductorOutput: output };
88
85
  }
89
- if (event.status === 'error') {
90
- const detail = event.error?.message ?? 'unknown error';
91
- const output = formatConductorErrorMessage(detail);
92
- if (nextState.conductorOutput === output) {
93
- return nextState;
94
- }
95
- return { ...nextState, conductorOutput: output };
96
- }
97
86
  return nextState;
98
87
  }
99
88
  case 'conductor.dispatch_hold': {
@@ -1 +1 @@
1
- {"version":3,"file":"session-display-reducer.js","sourceRoot":"","sources":["../../src/display/session-display-reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,GAE1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,6BAA6B,GAG9B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAEnF,MAAM,cAAc,GAAG,yBAAyB,CAAC,YAAY,CAAC,CAAC;AAC/D,MAAM,WAAW,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACtD,MAAM,aAAa,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;AAE1D,SAAS,eAAe,CACtB,KAA0B,EAC1B,IAAY,EACZ,IAAY,EACZ,MAA2B,EAC3B,QAAiB;IAEjB,MAAM,YAAY,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,IACE,OAAO,EAAE,IAAI,KAAK,IAAI;QACtB,OAAO,CAAC,MAAM,KAAK,MAAM;QACzB,OAAO,CAAC,QAAQ,KAAK,YAAY,EACjC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAErF,OAAO;QACL,GAAG,KAAK;QACR,OAAO,EAAE;YACP,GAAG,KAAK,CAAC,OAAO;YAChB,CAAC,IAAI,CAAC,EAAE,MAAM;SACf;KACF,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,OAAe;IAClD,OAAO,iBAAiB,OAAO,sBAAsB,CAAC;AACxD,CAAC;AAED,SAAS,kBAAkB,CACzB,KAA0B,EAC1B,OAA8C;IAE9C,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8CAA8C;AAC9C,MAAM,UAAU,kBAAkB,CAChC,KAA0B,EAC1B,KAAsB;IAEtB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,yBAAyB;YAC5B,OAAO,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAClD,KAAK,sBAAsB;YACzB,OAAO,eAAe,CACpB,KAAK,EACL,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,IAAI,EACV,yBAAyB,CAAC,KAAK,CAAC,KAAK,CAAC,CACvC,CAAC;QACJ,KAAK,+BAA+B;YAClC,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACxE,KAAK,iCAAiC;YACpC,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACrE,KAAK,8BAA8B;YACjC,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QACvE,KAAK,2BAA2B,CAAC,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,2BAA2B,CAC1C,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,QAAQ,CACf,CAAC;YACF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;QAClF,CAAC;QACD,KAAK,wBAAwB;YAC3B,OAAO,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACrE,KAAK,yBAAyB,CAAC,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,iCAAiC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/D,OAAO,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC/E,CAAC;QACD,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC;YAC9C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,OAAO,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;gBAClC,OAAO,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;YACzD,CAAC;YACD,IAAI,CAAC,OAAO,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;gBACvC,OAAO,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,eAAe;YAClB,OAAO,eAAe,CACpB,KAAK,EACL,KAAK,CAAC,OAAO,CAAC,IAAI,EAClB,KAAK,CAAC,OAAO,CAAC,IAAI,EAClB,aAAa,CACd,CAAC;QACJ,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,IAAI,SAAS,GAAG,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;YACzE,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;gBACxD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACnC,IAAI,SAAS,CAAC,eAAe,KAAK,MAAM,EAAE,CAAC;oBACzC,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,OAAO,EAAE,GAAG,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;YACnD,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,eAAe,CAAC;gBACvD,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;gBACnD,IAAI,SAAS,CAAC,eAAe,KAAK,MAAM,EAAE,CAAC;oBACzC,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,OAAO,EAAE,GAAG,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;YACnD,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,KAAK,yBAAyB,CAAC,CAAC,CAAC;YAC/B,MAAM,YAAY,GAAG;gBACnB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC,CAAC;YACF,IACE,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI;gBAC7C,KAAK,CAAC,YAAY,CAAC,cAAc,KAAK,YAAY,CAAC,cAAc,EACjE,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,CAAC;QACpC,CAAC;QACD,KAAK,wBAAwB,CAAC,CAAC,CAAC;YAC9B,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACrC,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC9E,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO;gBACL,GAAG,KAAK;gBACR,aAAa,EAAE,CAAC,GAAG,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC;aACxD,CAAC;QACJ,CAAC;QACD,KAAK,qBAAqB;YACxB,OAAO;gBACL,GAAG,KAAK;gBACR,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,MAAM,CACvC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,KAAK,CAAC,MAAM,CAAC,QAAQ,CAC1D;aACF,CAAC;QACJ;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED,OAAO,EAAE,6BAA6B,EAAE,CAAC"}
1
+ {"version":3,"file":"session-display-reducer.js","sourceRoot":"","sources":["../../src/display/session-display-reducer.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,15 @@ export interface InlineMarkdownSegment {
3
3
  text: string;
4
4
  bold?: boolean;
5
5
  code?: boolean;
6
+ href?: string;
6
7
  }
7
8
  export type InlineMarkdownLine = InlineMarkdownSegment[];
8
9
  /**
9
10
  * Inline Markdown を表示用 segment 列へ変換する。
10
11
  *
11
12
  * marked の block / inline lexer を利用するため、エスケープと inline token のネストを
12
- * regex 置換で再実装せずに扱える。Phase 1 外の構文は raw 表記を保持する。
13
+ * regex 置換で再実装せずに扱える。対応ブロック内の構造も子 token を再帰走査し、
14
+ * Phase 2 外の構文は raw 表記を保持する。
13
15
  */
14
16
  export declare function parseInlineMarkdown(text: string): InlineMarkdownSegment[];
15
17
  /** 共通 segment 列を stderr / dialogue 向け ANSI テキストへ変換する。 */
@@ -1 +1 @@
1
- {"version":3,"file":"inline-markdown.d.ts","sourceRoot":"","sources":["../src/inline-markdown.ts"],"names":[],"mappings":"AAGA,4CAA4C;AAC5C,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;AAyGzD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAqBzE;AAeD,yDAAyD;AACzD,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,qBAAqB,EAAE,GAChC,MAAM,CAER;AAED,6DAA6D;AAC7D,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/D"}
1
+ {"version":3,"file":"inline-markdown.d.ts","sourceRoot":"","sources":["../src/inline-markdown.ts"],"names":[],"mappings":"AAGA,4CAA4C;AAC5C,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;AA4XzD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAqBzE;AAeD,yDAAyD;AACzD,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,qBAAqB,EAAE,GAChC,MAAM,CAER;AAED,6DAA6D;AAC7D,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/D"}
@@ -8,7 +8,8 @@ function appendSegment(segments, text, style) {
8
8
  const previous = segments.at(-1);
9
9
  if (previous &&
10
10
  Boolean(previous.bold) === style.bold &&
11
- Boolean(previous.code) === style.code) {
11
+ Boolean(previous.code) === style.code &&
12
+ previous.href === style.href) {
12
13
  previous.text += text;
13
14
  return;
14
15
  }
@@ -16,53 +17,238 @@ function appendSegment(segments, text, style) {
16
17
  text,
17
18
  ...(style.bold ? { bold: true } : {}),
18
19
  ...(style.code ? { code: true } : {}),
20
+ ...(style.href !== undefined ? { href: style.href } : {}),
19
21
  });
20
22
  }
23
+ function isSupportedInlineLink(token) {
24
+ if (token.type !== 'link') {
25
+ return false;
26
+ }
27
+ // Keep reference links, autolinks, and bare GFM URLs literal. The Phase 2
28
+ // subset only supports the explicit `[text](url)` form.
29
+ return /^\[[\s\S]*\]\s*\(/.test(token.raw);
30
+ }
31
+ function appendToken(token, style, segments, source) {
32
+ if (token.type === 'list' ||
33
+ token.type === 'list_item' ||
34
+ token.type === 'table') {
35
+ appendBlockToken(token, segments, source);
36
+ return;
37
+ }
38
+ if ((token.type === 'paragraph' || token.type === 'text') && token.tokens) {
39
+ appendSourceWithTokens(source ?? token.raw, token.tokens, style, segments);
40
+ return;
41
+ }
42
+ appendInlineToken(token, style, segments, source);
43
+ }
21
44
  function appendTokens(tokens, style, segments) {
22
45
  for (const token of tokens) {
23
- switch (token.type) {
24
- case 'strong':
25
- if (token.tokens) {
26
- appendTokens(token.tokens, { ...style, bold: true }, segments);
27
- }
28
- else {
29
- appendSegment(segments, token.text, { ...style, bold: true });
30
- }
31
- break;
32
- case 'codespan':
33
- appendSegment(segments, token.text, { ...style, code: true });
46
+ appendToken(token, style, segments);
47
+ }
48
+ }
49
+ function appendInlineToken(token, style, segments, source) {
50
+ switch (token.type) {
51
+ case 'strong':
52
+ if (token.tokens) {
53
+ appendTokens(token.tokens, { ...style, bold: true }, segments);
54
+ }
55
+ else {
56
+ appendSegment(segments, token.text, { ...style, bold: true });
57
+ }
58
+ break;
59
+ case 'codespan':
60
+ appendSegment(segments, token.text, { ...style, code: true });
61
+ break;
62
+ case 'escape':
63
+ appendSegment(segments, token.text, style);
64
+ break;
65
+ case 'link':
66
+ if (!isSupportedInlineLink(token)) {
67
+ appendSegment(segments, token.raw, style);
34
68
  break;
35
- case 'escape':
36
- appendSegment(segments, token.text, style);
69
+ }
70
+ if (token.tokens) {
71
+ appendTokens(token.tokens, { ...style, href: token.href }, segments);
72
+ }
73
+ else {
74
+ appendSegment(segments, token.text, { ...style, href: token.href });
75
+ }
76
+ break;
77
+ case 'text':
78
+ if (token.tokens) {
79
+ appendSourceWithTokens(token.raw, token.tokens, style, segments);
80
+ }
81
+ else {
82
+ appendSegment(segments, source ?? token.raw, style);
83
+ }
84
+ break;
85
+ default:
86
+ // Unsupported inline syntax remains verbatim for backward compatibility.
87
+ appendSegment(segments, source ?? token.raw, style);
88
+ break;
89
+ }
90
+ }
91
+ function findSourceRange(source, raw, from) {
92
+ const exactStart = source.indexOf(raw, from);
93
+ if (exactStart >= 0) {
94
+ return { start: exactStart, end: exactStart + raw.length };
95
+ }
96
+ // Inline text tokens may begin with the newline separating the first line
97
+ // of a list item from its continuation. Match that newline literally, then
98
+ // resolve the following indented line using the normal line matcher.
99
+ const leadingNewlines = /^\n+/.exec(raw)?.[0] ?? '';
100
+ if (leadingNewlines) {
101
+ if (!source.startsWith(leadingNewlines, from)) {
102
+ return undefined;
103
+ }
104
+ const remainder = raw.slice(leadingNewlines.length);
105
+ if (!remainder) {
106
+ return { start: from, end: from + leadingNewlines.length };
107
+ }
108
+ const remainderRange = findSourceRange(source, remainder, from + leadingNewlines.length);
109
+ return remainderRange
110
+ ? { start: from, end: remainderRange.end }
111
+ : undefined;
112
+ }
113
+ // marked removes the common indentation from nested block token raw values.
114
+ // Match every token line against the corresponding source line so blank
115
+ // lines do not cause the rest of a loose list to be treated as raw text.
116
+ const hasTrailingNewline = raw.endsWith('\n');
117
+ const rawLines = hasTrailingNewline ? raw.slice(0, -1).split('\n') : raw.split('\n');
118
+ const firstLine = rawLines[0]?.trimStart() ?? '';
119
+ if (!firstLine || rawLines.length === 0) {
120
+ return undefined;
121
+ }
122
+ const sourceLines = [];
123
+ for (let start = 0; start <= source.length;) {
124
+ const newline = source.indexOf('\n', start);
125
+ const contentEnd = newline >= 0 ? newline : source.length;
126
+ sourceLines.push({
127
+ start,
128
+ contentEnd,
129
+ end: newline >= 0 ? newline + 1 : source.length,
130
+ text: source.slice(start, contentEnd),
131
+ });
132
+ if (newline < 0) {
133
+ break;
134
+ }
135
+ start = newline + 1;
136
+ }
137
+ for (let firstIndex = 0; firstIndex < sourceLines.length; firstIndex += 1) {
138
+ const firstSourceLine = sourceLines[firstIndex];
139
+ if (firstSourceLine.start < from) {
140
+ continue;
141
+ }
142
+ let matches = true;
143
+ let lastMatchEnd;
144
+ for (let offset = 0; offset < rawLines.length; offset += 1) {
145
+ const sourceLine = sourceLines[firstIndex + offset];
146
+ if (!sourceLine) {
147
+ matches = false;
37
148
  break;
38
- case 'text':
39
- if (token.tokens) {
40
- appendTokens(token.tokens, style, segments);
149
+ }
150
+ const expected = rawLines[offset]?.trimStart() ?? '';
151
+ const leadingLength = sourceLine.text.length - sourceLine.text.trimStart().length;
152
+ const content = sourceLine.text.slice(leadingLength);
153
+ if (!expected) {
154
+ if (content !== '') {
155
+ matches = false;
156
+ break;
41
157
  }
42
- else {
43
- appendSegment(segments, token.text, style);
158
+ lastMatchEnd = sourceLine.contentEnd;
159
+ continue;
160
+ }
161
+ let matchOffset = 0;
162
+ if (!content.startsWith(expected)) {
163
+ // A list item's first text token starts after its marker in source,
164
+ // while marked's normalized raw value starts at the item text.
165
+ const marker = /^(?:[-+*]|\d+[.)])[ \t]+/.exec(content);
166
+ if (offset !== 0 || !marker || !content.slice(marker[0].length).startsWith(expected)) {
167
+ matches = false;
168
+ break;
44
169
  }
45
- break;
46
- default:
47
- // Phase 1 only styles strong and codespan. Preserve every other
48
- // token verbatim so unsupported Markdown remains backward compatible.
49
- appendSegment(segments, token.raw, style);
50
- break;
170
+ matchOffset = marker[0].length;
171
+ }
172
+ const matchEnd = leadingLength + matchOffset + expected.length;
173
+ // Preserve trailing whitespace on a fully matched source line, but do
174
+ // not consume following inline tokens on a continuation line.
175
+ lastMatchEnd = sourceLine.start +
176
+ (/^[ \t]*$/.test(sourceLine.text.slice(matchEnd))
177
+ ? sourceLine.text.length
178
+ : matchEnd);
179
+ }
180
+ if (matches) {
181
+ const lastSourceLine = sourceLines[firstIndex + rawLines.length - 1];
182
+ return {
183
+ // Include the source line's indentation in the range. This keeps
184
+ // unsupported blocks byte-for-byte identical and lets recursive
185
+ // children receive the original layout.
186
+ start: firstSourceLine.start,
187
+ end: hasTrailingNewline
188
+ ? lastSourceLine.end
189
+ : lastMatchEnd ?? lastSourceLine.contentEnd,
190
+ };
191
+ }
192
+ }
193
+ return undefined;
194
+ }
195
+ function appendSourceWithTokens(source, tokens, style, segments) {
196
+ let cursor = 0;
197
+ for (const token of tokens) {
198
+ const childRange = findSourceRange(source, token.raw, cursor);
199
+ if (!childRange) {
200
+ // marked may normalize a token in a malformed construct. Preserve the
201
+ // complete source rather than duplicating or inventing text.
202
+ appendSegment(segments, source.slice(cursor), style);
203
+ return;
204
+ }
205
+ appendSegment(segments, source.slice(cursor, childRange.start), style);
206
+ appendToken(token, style, segments, source.slice(childRange.start, childRange.end));
207
+ cursor = childRange.end;
208
+ }
209
+ appendSegment(segments, source.slice(cursor), style);
210
+ }
211
+ function appendTableToken(token, segments, source = token.raw) {
212
+ let cursor = 0;
213
+ const cells = [
214
+ ...token.header,
215
+ ...token.rows.flat(),
216
+ ];
217
+ for (const cell of cells) {
218
+ if (!cell.text) {
219
+ continue;
220
+ }
221
+ const cellStart = source.indexOf(cell.text, cursor);
222
+ if (cellStart < 0) {
223
+ appendSegment(segments, source.slice(cursor), PLAIN_STYLE);
224
+ return;
51
225
  }
226
+ appendSegment(segments, source.slice(cursor, cellStart), PLAIN_STYLE);
227
+ appendSourceWithTokens(cell.text, cell.tokens, PLAIN_STYLE, segments);
228
+ cursor = cellStart + cell.text.length;
52
229
  }
230
+ appendSegment(segments, source.slice(cursor), PLAIN_STYLE);
53
231
  }
54
- function appendBlockToken(token, segments) {
232
+ function appendBlockToken(token, segments, source = token.raw) {
233
+ if (token.type === 'table') {
234
+ appendTableToken(token, segments, source);
235
+ return;
236
+ }
237
+ if (token.type === 'list') {
238
+ appendSourceWithTokens(source, token.items, PLAIN_STYLE, segments);
239
+ return;
240
+ }
241
+ if (token.type === 'list_item') {
242
+ appendSourceWithTokens(source, token.tokens, PLAIN_STYLE, segments);
243
+ return;
244
+ }
55
245
  if ((token.type === 'paragraph' || token.type === 'text') && token.tokens) {
56
- appendTokens(token.tokens, PLAIN_STYLE, segments);
57
- // Paragraph tokens omit a trailing newline from their inline children,
58
- // while the raw token still contains it. Keep that layout whitespace.
59
- const consumedRawLength = token.tokens.reduce((length, child) => length + child.raw.length, 0);
60
- appendSegment(segments, token.raw.slice(consumedRawLength), PLAIN_STYLE);
246
+ appendSourceWithTokens(source, token.tokens, PLAIN_STYLE, segments);
61
247
  return;
62
248
  }
63
249
  // Block-level constructs (for example fenced code) are outside the
64
250
  // Phase 1 subset and must remain exactly as they were received.
65
- appendSegment(segments, token.raw, PLAIN_STYLE);
251
+ appendSegment(segments, source, PLAIN_STYLE);
66
252
  }
67
253
  function containsHtmlToken(tokens) {
68
254
  for (const token of tokens) {
@@ -72,6 +258,18 @@ function containsHtmlToken(tokens) {
72
258
  if ('tokens' in token && token.tokens && containsHtmlToken(token.tokens)) {
73
259
  return true;
74
260
  }
261
+ if (token.type === 'list') {
262
+ if (token.items.some((item) => containsHtmlToken(item.tokens))) {
263
+ return true;
264
+ }
265
+ }
266
+ if (token.type === 'table') {
267
+ const table = token;
268
+ const cells = [...table.header, ...table.rows.flat()];
269
+ if (cells.some((cell) => containsHtmlToken(cell.tokens))) {
270
+ return true;
271
+ }
272
+ }
75
273
  }
76
274
  return false;
77
275
  }
@@ -79,7 +277,8 @@ function containsHtmlToken(tokens) {
79
277
  * Inline Markdown を表示用 segment 列へ変換する。
80
278
  *
81
279
  * marked の block / inline lexer を利用するため、エスケープと inline token のネストを
82
- * regex 置換で再実装せずに扱える。Phase 1 外の構文は raw 表記を保持する。
280
+ * regex 置換で再実装せずに扱える。対応ブロック内の構造も子 token を再帰走査し、
281
+ * Phase 2 外の構文は raw 表記を保持する。
83
282
  */
84
283
  export function parseInlineMarkdown(text) {
85
284
  if (!text) {
@@ -1 +1 @@
1
- {"version":3,"file":"inline-markdown.js","sourceRoot":"","sources":["../src/inline-markdown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inline-markdown.js","sourceRoot":"","sources":["../src/inline-markdown.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"issue-command.d.ts","sourceRoot":"","sources":["../src/issue-command.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EAClB,WAAW,EAOX,eAAe,EACf,aAAa,EACb,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAW5F,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,yDAAyD;IACzD,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,uDAAuD;IACvD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B,CAAC,EAAE,OAAO,0BAA0B,CAAC;IAC/D,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAC;IAC/C,eAAe,CAAC,EAAE,OAAO,eAAe,CAAC;IACzC,WAAW,CAAC,EAAE,OAAO,WAAW,CAAC;IACjC,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAC;IAC/C,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,gCAAgC,CAAC,EAAE,OAAO,gCAAgC,CAAC;IAC3E,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,0BAA0B;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,gFAAgF;AAChF,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,QAAQ,GAAG,UAAU,CAAC,EACzD,OAAO,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAC/C,IAAI,GAAE,IAAI,CAAC,gBAAgB,EAAE,kCAAkC,CAAM,GACpE,OAAO,CAAC,0BAA0B,CAAC,CA2BrC;AAED,6EAA6E;AAC7E,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,GAAG,YAAY,CAAC,EAC7D,WAAW,EAAE,OAAO,EACpB,MAAM,CAAC,EAAE,cAAc,GACtB,MAAM,CAOR;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,mBAAmB,EAC5B,IAAI,GAAE,gBAAqB,GAC1B,OAAO,CAAC,sBAAsB,CAAC,CAyJjC"}
1
+ {"version":3,"file":"issue-command.d.ts","sourceRoot":"","sources":["../src/issue-command.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EAClB,WAAW,EAOX,eAAe,EACf,aAAa,EACb,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAW5F,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,yDAAyD;IACzD,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,uDAAuD;IACvD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B,CAAC,EAAE,OAAO,0BAA0B,CAAC;IAC/D,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAC;IAC/C,eAAe,CAAC,EAAE,OAAO,eAAe,CAAC;IACzC,WAAW,CAAC,EAAE,OAAO,WAAW,CAAC;IACjC,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAC;IAC/C,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,gCAAgC,CAAC,EAAE,OAAO,gCAAgC,CAAC;IAC3E,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,0BAA0B;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,gFAAgF;AAChF,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,QAAQ,GAAG,UAAU,CAAC,EACzD,OAAO,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAC/C,IAAI,GAAE,IAAI,CAAC,gBAAgB,EAAE,kCAAkC,CAAM,GACpE,OAAO,CAAC,0BAA0B,CAAC,CA2BrC;AAED,6EAA6E;AAC7E,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,GAAG,YAAY,CAAC,EAC7D,WAAW,EAAE,OAAO,EACpB,MAAM,CAAC,EAAE,cAAc,GACtB,MAAM,CAOR;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,mBAAmB,EAC5B,IAAI,GAAE,gBAAqB,GAC1B,OAAO,CAAC,sBAAsB,CAAC,CA6JjC"}
@@ -75,7 +75,8 @@ export async function executeIssueCommand(issueUrl, options, deps = {}) {
75
75
  : resolvedInitialOperatorMessage;
76
76
  const interactive = isInteractive(initialOperatorMessageForBinding);
77
77
  const hasOneShotOperatorMessage = Boolean(resolvedInitialOperatorMessageForBinding);
78
- const useTui = interactive && isTty();
78
+ const tty = isTty();
79
+ const useTui = interactive && tty;
79
80
  const tuiHost = useTui
80
81
  ? createIssueSessionTuiHost(issueUrl, {
81
82
  config: ensembleConfig,
@@ -152,13 +153,16 @@ export async function executeIssueCommand(issueUrl, options, deps = {}) {
152
153
  issueUrl,
153
154
  initialOperatorMessage: initialOperatorMessageForBinding,
154
155
  })),
155
- continueOnConductorError: !hasOneShotOperatorMessage,
156
- ...(hasOneShotOperatorMessage
156
+ // A TTY remains interactive after the initial message, so keep
157
+ // the normal TTY policy even when that message was injected
158
+ // through the CLI or environment.
159
+ continueOnConductorError: tty || !hasOneShotOperatorMessage,
160
+ ...(!tty && hasOneShotOperatorMessage
157
161
  ? {
158
162
  stopOnUnansweredInput: true,
159
163
  }
160
164
  : {}),
161
- ...(isTty() && postLoopWait && !hasOneShotOperatorMessage
165
+ ...(tty && postLoopWait
162
166
  ? {
163
167
  waitForOperatorExit: true,
164
168
  }
@@ -1 +1 @@
1
- {"version":3,"file":"issue-command.js","sourceRoot":"","sources":["../src/issue-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issue-command.js","sourceRoot":"","sources":["../src/issue-command.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { OperatorInputContext } from '@agents-ensemble/core';
2
2
  /** TTY、CLI メッセージ、または `ENSEMBLE_OPERATOR_MESSAGE` で入力が届く環境か。 */
3
3
  export declare function isOperatorInputInteractive(initialOperatorMessage?: string): boolean;
4
- /** post-loop 待機を有効にできる TTY 入力か(`ENSEMBLE_OPERATOR_MESSAGE` 単発注入は除外)。 */
4
+ /** post-loop 待機を有効にできる TTY 入力か(初回メッセージの有無は問わない)。 */
5
5
  export declare function isOperatorInputTty(): boolean;
6
6
  export declare function promptOperatorInput(context: OperatorInputContext, issueUrl?: string): Promise<string | undefined>;
7
7
  //# sourceMappingURL=prompt-operator-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-operator-input.d.ts","sourceRoot":"","sources":["../src/prompt-operator-input.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAIlE,+DAA+D;AAC/D,wBAAgB,0BAA0B,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,OAAO,CAKnF;AAED,wEAAwE;AACxE,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAMD,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA0C7B"}
1
+ {"version":3,"file":"prompt-operator-input.d.ts","sourceRoot":"","sources":["../src/prompt-operator-input.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAIlE,+DAA+D;AAC/D,wBAAgB,0BAA0B,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,OAAO,CAKnF;AAED,oDAAoD;AACpD,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAMD,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA0C7B"}
@@ -9,7 +9,7 @@ export function isOperatorInputInteractive(initialOperatorMessage) {
9
9
  }
10
10
  return process.stdin.isTTY ?? false;
11
11
  }
12
- /** post-loop 待機を有効にできる TTY 入力か(`ENSEMBLE_OPERATOR_MESSAGE` 単発注入は除外)。 */
12
+ /** post-loop 待機を有効にできる TTY 入力か(初回メッセージの有無は問わない)。 */
13
13
  export function isOperatorInputTty() {
14
14
  return process.stdin.isTTY ?? false;
15
15
  }