@agents-ensemble/cli 0.5.3 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +67 -0
- package/config.example.yaml +46 -0
- package/dist/async-operator-input.d.ts +1 -0
- package/dist/async-operator-input.d.ts.map +1 -1
- package/dist/async-operator-input.js +4 -4
- package/dist/async-operator-input.js.map +1 -1
- package/dist/display/create-session-display-sink.d.ts.map +1 -1
- package/dist/display/create-session-display-sink.js +1 -0
- package/dist/display/create-session-display-sink.js.map +1 -1
- package/dist/display/session-display-reducer.d.ts.map +1 -1
- package/dist/display/session-display-reducer.js +11 -0
- package/dist/display/session-display-reducer.js.map +1 -1
- package/dist/display/session-display-state.d.ts +5 -0
- package/dist/display/session-display-state.d.ts.map +1 -1
- package/dist/display/session-display-state.js +4 -0
- package/dist/display/session-display-state.js.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/issue-command.d.ts +3 -0
- package/dist/issue-command.d.ts.map +1 -1
- package/dist/issue-command.js +34 -5
- package/dist/issue-command.js.map +1 -1
- package/dist/operator-message.d.ts +6 -0
- package/dist/operator-message.d.ts.map +1 -0
- package/dist/operator-message.js +17 -0
- package/dist/operator-message.js.map +1 -0
- package/dist/prompt-operator-input.d.ts +2 -2
- package/dist/prompt-operator-input.d.ts.map +1 -1
- package/dist/prompt-operator-input.js +5 -5
- package/dist/prompt-operator-input.js.map +1 -1
- package/dist/session-log-lines.d.ts.map +1 -1
- package/dist/session-log-lines.js +12 -4
- package/dist/session-log-lines.js.map +1 -1
- package/dist/session-sinks.d.ts.map +1 -1
- package/dist/session-sinks.js +1 -0
- package/dist/session-sinks.js.map +1 -1
- package/dist/tui/compute-operator-input-cursor-y.d.ts +14 -0
- package/dist/tui/compute-operator-input-cursor-y.d.ts.map +1 -1
- package/dist/tui/compute-operator-input-cursor-y.js +17 -0
- package/dist/tui/compute-operator-input-cursor-y.js.map +1 -1
- package/dist/tui/create-issue-session-tui-host.d.ts +7 -2
- package/dist/tui/create-issue-session-tui-host.d.ts.map +1 -1
- package/dist/tui/create-issue-session-tui-host.js +29 -11
- package/dist/tui/create-issue-session-tui-host.js.map +1 -1
- package/dist/tui/create-issue-session-tui-host.test.js +142 -1
- package/dist/tui/create-issue-session-tui-host.test.js.map +1 -1
- package/dist/tui/create-tui-telemetry-sink.d.ts +1 -1
- package/dist/tui/create-tui-telemetry-sink.d.ts.map +1 -1
- package/dist/tui/create-tui-telemetry-sink.js +5 -5
- package/dist/tui/create-tui-telemetry-sink.js.map +1 -1
- package/dist/tui/format-operator-context.d.ts +26 -4
- package/dist/tui/format-operator-context.d.ts.map +1 -1
- package/dist/tui/format-operator-context.js +73 -18
- package/dist/tui/format-operator-context.js.map +1 -1
- package/dist/tui/issue-session-tui-stream-cursor.test.d.ts +2 -0
- package/dist/tui/issue-session-tui-stream-cursor.test.d.ts.map +1 -0
- package/dist/tui/issue-session-tui-stream-cursor.test.js +47 -0
- package/dist/tui/issue-session-tui-stream-cursor.test.js.map +1 -0
- package/dist/tui/issue-session-tui-stream.d.ts +11 -0
- package/dist/tui/issue-session-tui-stream.d.ts.map +1 -0
- package/dist/tui/issue-session-tui-stream.js +117 -0
- package/dist/tui/issue-session-tui-stream.js.map +1 -0
- package/dist/tui/issue-session-tui-stream.test.d.ts +2 -0
- package/dist/tui/issue-session-tui-stream.test.d.ts.map +1 -0
- package/dist/tui/issue-session-tui-stream.test.js +380 -0
- package/dist/tui/issue-session-tui-stream.test.js.map +1 -0
- package/dist/tui/issue-session-tui.d.ts +24 -1
- package/dist/tui/issue-session-tui.d.ts.map +1 -1
- package/dist/tui/issue-session-tui.js +35 -26
- package/dist/tui/issue-session-tui.js.map +1 -1
- package/dist/tui/issue-session-tui.test.js +299 -23
- package/dist/tui/issue-session-tui.test.js.map +1 -1
- package/dist/tui/open-questions-pane.d.ts +2 -0
- package/dist/tui/open-questions-pane.d.ts.map +1 -1
- package/dist/tui/open-questions-pane.js +5 -3
- package/dist/tui/open-questions-pane.js.map +1 -1
- package/dist/tui/operator-text-area-emacs-keys.test.js +28 -25
- package/dist/tui/operator-text-area-emacs-keys.test.js.map +1 -1
- package/dist/tui/operator-text-area-keyboard-harness.d.ts +3 -2
- package/dist/tui/operator-text-area-keyboard-harness.d.ts.map +1 -1
- package/dist/tui/operator-text-area-keyboard-harness.js +3 -3
- package/dist/tui/operator-text-area-keyboard-harness.js.map +1 -1
- package/dist/tui/operator-text-area.d.ts.map +1 -1
- package/dist/tui/operator-text-area.js +2 -1
- package/dist/tui/operator-text-area.js.map +1 -1
- package/dist/tui/operator-text-area.test-double.d.ts.map +1 -1
- package/dist/tui/operator-text-area.test-double.js +3 -2
- package/dist/tui/operator-text-area.test-double.js.map +1 -1
- package/dist/tui/stream-layout.d.ts +20 -0
- package/dist/tui/stream-layout.d.ts.map +1 -0
- package/dist/tui/stream-layout.js +55 -0
- package/dist/tui/stream-layout.js.map +1 -0
- package/dist/tui/titled-border-line.d.ts +10 -1
- package/dist/tui/titled-border-line.d.ts.map +1 -1
- package/dist/tui/titled-border-line.js +62 -12
- package/dist/tui/titled-border-line.js.map +1 -1
- package/dist/tui/titled-border-pane.d.ts +5 -1
- package/dist/tui/titled-border-pane.d.ts.map +1 -1
- package/dist/tui/titled-border-pane.ink.test.js +67 -0
- package/dist/tui/titled-border-pane.ink.test.js.map +1 -1
- package/dist/tui/titled-border-pane.js +32 -3
- package/dist/tui/titled-border-pane.js.map +1 -1
- package/dist/tui/tui-layout-constants.d.ts +12 -0
- package/dist/tui/tui-layout-constants.d.ts.map +1 -1
- package/dist/tui/tui-layout-constants.js +12 -0
- package/dist/tui/tui-layout-constants.js.map +1 -1
- package/dist/tui/tui-layout-mode.d.ts +13 -0
- package/dist/tui/tui-layout-mode.d.ts.map +1 -0
- package/dist/tui/tui-layout-mode.js +16 -0
- package/dist/tui/tui-layout-mode.js.map +1 -0
- package/dist/tui/tui-view-model.d.ts +12 -1
- package/dist/tui/tui-view-model.d.ts.map +1 -1
- package/dist/tui/tui-view-model.js +25 -4
- package/dist/tui/tui-view-model.js.map +1 -1
- package/docs/config.md +170 -0
- package/docs/settings.md +161 -0
- package/package.json +8 -5
package/README.md
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# agents-ensemble CLI
|
|
2
|
+
|
|
3
|
+
> **正本:** npm の `@agents-ensemble/cli` と GitHub の CLI 利用者向け入口。インストール・最小クイックスタート・doc 索引を掲載します。
|
|
4
|
+
|
|
5
|
+
`@agents-ensemble/cli` は、GitHub Issue を起点に conductor が worker を起動・制御する CLI です。
|
|
6
|
+
|
|
7
|
+
## インストール
|
|
8
|
+
|
|
9
|
+
Node.js 22 以上を用意し、npm または pnpm でインストールします。
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm install -g @agents-ensemble/cli
|
|
13
|
+
# または
|
|
14
|
+
pnpm add -g @agents-ensemble/cli
|
|
15
|
+
|
|
16
|
+
ensemble --help
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## 最小クイックスタート
|
|
20
|
+
|
|
21
|
+
初回だけ、worker・conductor・GitHub API の認証を準備します。
|
|
22
|
+
|
|
23
|
+
既定の `cursor` preset は、npm パッケージに含まれない Cursor Agent CLI の `agent` コマンドを使用します。先に [Cursor Agent CLI の公式インストール手順](https://cursor.com/docs/cli) に従ってインストールしてください。
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# worker(既定の Cursor ACP)
|
|
27
|
+
agent login
|
|
28
|
+
|
|
29
|
+
# conductor(Cursor SDK)
|
|
30
|
+
ensemble auth login
|
|
31
|
+
|
|
32
|
+
# GitHub API(gh CLI を使う場合)
|
|
33
|
+
gh auth login
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
GitHub API トークンを直接渡す場合は、`gh auth login` の代わりに `GITHUB_TOKEN` または `GH_TOKEN` を設定してください。
|
|
37
|
+
|
|
38
|
+
リポジトリを clone したディレクトリで、対象 Issue を指定して起動します。
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
cd /path/to/your/repository
|
|
42
|
+
ensemble issue https://github.com/OWNER/REPOSITORY/issues/123
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
初回の作業指示は、Issue 参照の後ろに CLI 引数として渡せます。複数の引数はスペース 1 つで結合され、前後の空白は除かれます。
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
ensemble issue https://github.com/OWNER/REPOSITORY/issues/123 受け入れ条件を確認して実装してください
|
|
49
|
+
ensemble issue https://github.com/OWNER/REPOSITORY/issues/123 "まずテストから始めてください"
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
これは TTY / 非 TTY の両方で、セッション開始後に 1 回だけ `operator.message` として conductor へ送られます。CLI メッセージと `ENSEMBLE_OPERATOR_MESSAGE` は併用できず、両方が空でない場合は起動エラーになります。`--continue` / `--resume` では CLI メッセージは注入されず、stderr に警告が出ます。詳細は [オペレータ入力](https://github.com/otolab/agents-ensemble/blob/main/docs/operator-input.md) と [設定値リファレンス](https://github.com/otolab/agents-ensemble/blob/main/docs/settings.md) を参照してください。
|
|
53
|
+
|
|
54
|
+
## 利用者向け doc
|
|
55
|
+
|
|
56
|
+
設定・TUI・認証の詳細は README に重複させず、次の正本を参照してください。
|
|
57
|
+
|
|
58
|
+
| 文書 | 内容 |
|
|
59
|
+
|------|------|
|
|
60
|
+
| [設定値リファレンス](https://github.com/otolab/agents-ensemble/blob/main/docs/settings.md) | CLI / 環境変数 / config / profile / TUI の設定一覧と解決順 |
|
|
61
|
+
| [ensemble 共通設定](https://github.com/otolab/agents-ensemble/blob/main/docs/config.md) | `.ensemble/config.yaml` の書き方・スキーマ・MCP 設定 |
|
|
62
|
+
| [オペレータ入力](https://github.com/otolab/agents-ensemble/blob/main/docs/operator-input.md) | TUI レイアウトと入力の利用者向け挙動 |
|
|
63
|
+
| [TUI ショートカット](https://github.com/otolab/agents-ensemble/blob/main/docs/cli-text-input-keybindings.md) | 入力ショートカットの対応状況と実装方針 |
|
|
64
|
+
| [ユーザ定義 team profile](https://github.com/otolab/agents-ensemble/blob/main/docs/user-teams.md) | `~/.ensemble/teams/` の profile 配置と解決順 |
|
|
65
|
+
| [conductor 認証再接続](https://github.com/otolab/agents-ensemble/blob/main/docs/conductor-auth-reconnect.md) | send 経路の in-process 再接続設計 |
|
|
66
|
+
|
|
67
|
+
GitHub 上の全ドキュメントは [docs/README.md](https://github.com/otolab/agents-ensemble/blob/main/docs/README.md) から参照できます。
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# ensemble 共通設定の例(config.example.yaml)
|
|
2
|
+
#
|
|
3
|
+
# 使い方:
|
|
4
|
+
# cp config.example.yaml .ensemble/config.yaml
|
|
5
|
+
# または cp config.example.yaml ~/.ensemble/config.yaml
|
|
6
|
+
#
|
|
7
|
+
# 実運用の config は gitignore 対象。token 等の秘密情報は書かないこと。
|
|
8
|
+
# 詳細: docs/config.md
|
|
9
|
+
|
|
10
|
+
profile:
|
|
11
|
+
# --profile 未指定時の team profile(名前またはパス)
|
|
12
|
+
default: implementer-and-reviewer
|
|
13
|
+
|
|
14
|
+
conductor:
|
|
15
|
+
# conductor モデル id(CLI --model / CONDUCTOR_MODEL_ID より優先度低)
|
|
16
|
+
model: default
|
|
17
|
+
|
|
18
|
+
acp:
|
|
19
|
+
# profile / worker に acp 未指定時の built-in preset
|
|
20
|
+
defaultPreset: cursor
|
|
21
|
+
|
|
22
|
+
session:
|
|
23
|
+
# isolated: Issue 専用 worktree(既定) / in-repo: メイン worktree で直接作業
|
|
24
|
+
worktree: isolated
|
|
25
|
+
maxTurns:
|
|
26
|
+
tty: 0 # 0 = 無制限
|
|
27
|
+
nonTty: 5
|
|
28
|
+
postLoop:
|
|
29
|
+
wait: true # TTY 時、自律ループ停止後に /exit まで待つ(--no-wait で上書き)
|
|
30
|
+
|
|
31
|
+
github:
|
|
32
|
+
auth:
|
|
33
|
+
# GITHUB_TOKEN / GH_TOKEN が無いとき gh auth token を試すか(既定: true)
|
|
34
|
+
allowGhAuthTokenFallback: true
|
|
35
|
+
monitor:
|
|
36
|
+
enabled: true
|
|
37
|
+
debounceMs: 30000
|
|
38
|
+
pollIntervalMs: 60000
|
|
39
|
+
activePollIntervalMs: 15000
|
|
40
|
+
stopPollWaitMs: 5000
|
|
41
|
+
|
|
42
|
+
tui:
|
|
43
|
+
# TTY レイアウト(非 TTY では pane)。env ENSEMBLE_TUI_LAYOUT より優先度低
|
|
44
|
+
layout: pane # pane | stream
|
|
45
|
+
# Issue リンクの OSC 8 強制 on/off / 自動。env FORCE_HYPERLINK より優先度低
|
|
46
|
+
forceHyperlink: auto # auto | on | off
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { OperatorInputBindingApi } from '@agents-ensemble/core';
|
|
2
2
|
export interface AsyncOperatorInputOptions {
|
|
3
3
|
issueUrl?: string;
|
|
4
|
+
initialOperatorMessage?: string;
|
|
4
5
|
}
|
|
5
6
|
/** open question 追加時に TTY プロンプト直前の案内を更新する。 */
|
|
6
7
|
export declare function notifyOperatorInputReprompt(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async-operator-input.d.ts","sourceRoot":"","sources":["../src/async-operator-input.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"async-operator-input.d.ts","sourceRoot":"","sources":["../src/async-operator-input.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAC;AAM3F,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,8CAA8C;AAC9C,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAuBD,yCAAyC;AACzC,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,uBAAuB,EAC5B,OAAO,GAAE,yBAA8B,GACtC,MAAM,IAAI,CA4CZ"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as readline from 'node:readline/promises';
|
|
2
2
|
import { stdin as input, stderr, stdout as output } from 'node:process';
|
|
3
3
|
import { formatIssueReference } from './tui/format-operator-context.js';
|
|
4
|
-
|
|
4
|
+
import { resolveInitialOperatorMessage } from './operator-message.js';
|
|
5
5
|
let activeReprompt;
|
|
6
6
|
/** open question 追加時に TTY プロンプト直前の案内を更新する。 */
|
|
7
7
|
export function notifyOperatorInputReprompt() {
|
|
@@ -26,9 +26,9 @@ function writeBeforePrompt(context, issueUrl) {
|
|
|
26
26
|
}
|
|
27
27
|
/** TTY 向け: 行入力を非ブロッキングで `submit` へ渡す。 */
|
|
28
28
|
export function bindAsyncOperatorInput(api, options = {}) {
|
|
29
|
-
const
|
|
30
|
-
if (
|
|
31
|
-
api.submit(
|
|
29
|
+
const initialOperatorMessage = resolveInitialOperatorMessage(options.initialOperatorMessage);
|
|
30
|
+
if (initialOperatorMessage) {
|
|
31
|
+
api.submit(initialOperatorMessage);
|
|
32
32
|
return () => { };
|
|
33
33
|
}
|
|
34
34
|
if (!input.isTTY) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async-operator-input.js","sourceRoot":"","sources":["../src/async-operator-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;
|
|
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":"create-session-display-sink.d.ts","sourceRoot":"","sources":["../../src/display/create-session-display-sink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAG1E,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,qBAAqB,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;CACrC;
|
|
1
|
+
{"version":3,"file":"create-session-display-sink.d.ts","sourceRoot":"","sources":["../../src/display/create-session-display-sink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAG1E,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,qBAAqB,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;CACrC;AAoBD,sEAAsE;AACtE,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,+BAA+B,GACvC,cAAc,CAiBhB"}
|
|
@@ -4,6 +4,7 @@ function shouldRender(event) {
|
|
|
4
4
|
return (event.type === 'operator.input' ||
|
|
5
5
|
event.type === 'conductor.send.started' ||
|
|
6
6
|
event.type === 'conductor.send' ||
|
|
7
|
+
event.type === 'conductor.dispatch_hold' ||
|
|
7
8
|
event.type === 'harness.worker.prompt.started' ||
|
|
8
9
|
event.type === 'harness.worker.prompt.completed' ||
|
|
9
10
|
event.type === 'harness.worker.prompt.failed' ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-session-display-sink.js","sourceRoot":"","sources":["../../src/display/create-session-display-sink.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAO3E,SAAS,YAAY,CAAC,KAAsB;IAC1C,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,gBAAgB;QAC/B,KAAK,CAAC,IAAI,KAAK,wBAAwB;QACvC,KAAK,CAAC,IAAI,KAAK,gBAAgB;QAC/B,KAAK,CAAC,IAAI,KAAK,+BAA+B;QAC9C,KAAK,CAAC,IAAI,KAAK,iCAAiC;QAChD,KAAK,CAAC,IAAI,KAAK,8BAA8B;QAC7C,KAAK,CAAC,IAAI,KAAK,sBAAsB;QACrC,KAAK,CAAC,IAAI,KAAK,yBAAyB;QACxC,KAAK,CAAC,IAAI,KAAK,cAAc;QAC7B,KAAK,CAAC,IAAI,KAAK,eAAe;QAC9B,KAAK,CAAC,IAAI,KAAK,wBAAwB;QACvC,KAAK,CAAC,IAAI,KAAK,qBAAqB,CACrC,CAAC;AACJ,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,wBAAwB,CACtC,OAAwC;IAExC,IAAI,KAAK,GAAG,6BAA6B,CAAC;IAE1C,OAAO,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,aAAa,GAAG,KAAK,CAAC;QAC5B,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,SAAS,KAAK,aAAa,CAAC;QACjD,KAAK,GAAG,SAAS,CAAC;QAElB,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACxC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,wBAAwB,EAAE,CAAC;YAC5C,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC;QACrC,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"create-session-display-sink.js","sourceRoot":"","sources":["../../src/display/create-session-display-sink.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAO3E,SAAS,YAAY,CAAC,KAAsB;IAC1C,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,gBAAgB;QAC/B,KAAK,CAAC,IAAI,KAAK,wBAAwB;QACvC,KAAK,CAAC,IAAI,KAAK,gBAAgB;QAC/B,KAAK,CAAC,IAAI,KAAK,yBAAyB;QACxC,KAAK,CAAC,IAAI,KAAK,+BAA+B;QAC9C,KAAK,CAAC,IAAI,KAAK,iCAAiC;QAChD,KAAK,CAAC,IAAI,KAAK,8BAA8B;QAC7C,KAAK,CAAC,IAAI,KAAK,sBAAsB;QACrC,KAAK,CAAC,IAAI,KAAK,yBAAyB;QACxC,KAAK,CAAC,IAAI,KAAK,cAAc;QAC7B,KAAK,CAAC,IAAI,KAAK,eAAe;QAC9B,KAAK,CAAC,IAAI,KAAK,wBAAwB;QACvC,KAAK,CAAC,IAAI,KAAK,qBAAqB,CACrC,CAAC;AACJ,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,wBAAwB,CACtC,OAAwC;IAExC,IAAI,KAAK,GAAG,6BAA6B,CAAC;IAE1C,OAAO,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,aAAa,GAAG,KAAK,CAAC;QAC5B,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,SAAS,KAAK,aAAa,CAAC;QACjD,KAAK,GAAG,SAAS,CAAC;QAElB,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACxC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,wBAAwB,EAAE,CAAC;YAC5C,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC;QACrC,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -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,
|
|
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"}
|
|
@@ -96,6 +96,17 @@ export function reduceDisplayState(state, event) {
|
|
|
96
96
|
}
|
|
97
97
|
return nextState;
|
|
98
98
|
}
|
|
99
|
+
case 'conductor.dispatch_hold': {
|
|
100
|
+
const dispatchHold = {
|
|
101
|
+
hold: event.hold,
|
|
102
|
+
heldEventCount: event.heldEventCount,
|
|
103
|
+
};
|
|
104
|
+
if (state.dispatchHold.hold === dispatchHold.hold &&
|
|
105
|
+
state.dispatchHold.heldEventCount === dispatchHold.heldEventCount) {
|
|
106
|
+
return state;
|
|
107
|
+
}
|
|
108
|
+
return { ...state, dispatchHold };
|
|
109
|
+
}
|
|
99
110
|
case 'open.question.enqueued': {
|
|
100
111
|
if (event.question.status !== 'open') {
|
|
101
112
|
return state;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-display-reducer.js","sourceRoot":"","sources":["../../src/display/session-display-reducer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-display-reducer.js","sourceRoot":"","sources":["../../src/display/session-display-reducer.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,16 @@ export interface WorkerDisplayState {
|
|
|
6
6
|
/** processing 中の活動ヒント(例: `calling: Shell`)。 */
|
|
7
7
|
activity?: string;
|
|
8
8
|
}
|
|
9
|
+
export interface DispatchHoldDisplayState {
|
|
10
|
+
hold: boolean;
|
|
11
|
+
heldEventCount: number;
|
|
12
|
+
}
|
|
9
13
|
/** #54 最小 UI の表示ペイン用 state(入力欄は含めない)。 */
|
|
10
14
|
export interface SessionDisplayState {
|
|
11
15
|
workers: Record<string, WorkerDisplayState>;
|
|
12
16
|
conductorOutput: string | null;
|
|
13
17
|
openQuestions: OpenQuestion[];
|
|
18
|
+
dispatchHold: DispatchHoldDisplayState;
|
|
14
19
|
}
|
|
15
20
|
export declare const INITIAL_SESSION_DISPLAY_STATE: SessionDisplayState;
|
|
16
21
|
//# sourceMappingURL=session-display-state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-display-state.d.ts","sourceRoot":"","sources":["../../src/display/session-display-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE/E,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAEpC,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,mBAAmB,CAAC;IAC5B,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,yCAAyC;AACzC,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC5C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,YAAY,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"session-display-state.d.ts","sourceRoot":"","sources":["../../src/display/session-display-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE/E,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAEpC,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,mBAAmB,CAAC;IAC5B,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,yCAAyC;AACzC,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC5C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,YAAY,EAAE,wBAAwB,CAAC;CACxC;AAED,eAAO,MAAM,6BAA6B,EAAE,mBAQ3C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-display-state.js","sourceRoot":"","sources":["../../src/display/session-display-state.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session-display-state.js","sourceRoot":"","sources":["../../src/display/session-display-state.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAC,MAAM,6BAA6B,GAAwB;IAChE,OAAO,EAAE,EAAE;IACX,eAAe,EAAE,IAAI;IACrB,aAAa,EAAE,EAAE;IACjB,YAAY,EAAE;QACZ,IAAI,EAAE,KAAK;QACX,cAAc,EAAE,CAAC;KAClB;CACF,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -9,6 +9,7 @@ import { isOperatorInputTty } from './prompt-operator-input.js';
|
|
|
9
9
|
import { resolveIssueSummaryFormat } from './resolve-summary-format.js';
|
|
10
10
|
import { writeIssueSessionSummary } from './write-issue-session-summary.js';
|
|
11
11
|
import { formatProfilesListJson, formatProfilesListText } from './format-profiles-list.js';
|
|
12
|
+
import { normalizeInitialOperatorMessage } from './operator-message.js';
|
|
12
13
|
const program = new Command();
|
|
13
14
|
program
|
|
14
15
|
.name('ensemble')
|
|
@@ -18,13 +19,14 @@ program
|
|
|
18
19
|
.command('issue')
|
|
19
20
|
.description('Start conductor orchestration for a GitHub Issue')
|
|
20
21
|
.argument('<issue-url>', 'GitHub Issue URL or number (e.g. 31, #31)')
|
|
22
|
+
.argument('[message...]', 'Initial operator message words')
|
|
21
23
|
.option('--repo-root <path>', 'Path to the local git clone for worker worktrees', process.cwd())
|
|
22
24
|
.option('--conductor-cwd <path>', 'Workspace for the conductor SDK agent', process.cwd())
|
|
23
25
|
.option('--resume <agentId>', 'Resume a previous conductor agent')
|
|
24
26
|
.option('--continue', 'Resume the latest session for this issue (uses sidecar with newest updatedAt)')
|
|
25
27
|
.option('--profile <name>', 'Team profile name or path (default: config profile.default, ENSEMBLE_DEFAULT_PROFILE env, else bundled implementer-and-reviewer). Name resolves: project .ensemble/teams/ > ~/.ensemble/teams/ > bundled > legacy profiles/')
|
|
26
28
|
.option('--model <id>', 'Conductor model id (default: config conductor.model, else default)')
|
|
27
|
-
.option('--max-turns <n>', 'Maximum conductor autonomous turns (0 = unlimited; default: unlimited on TTY, 5 otherwise)', (value) => Number.parseInt(value, 10))
|
|
29
|
+
.option('--max-turns <n>', 'Maximum conductor autonomous turns (0 = unlimited; default: unlimited on TTY or with an initial operator message, 5 otherwise)', (value) => Number.parseInt(value, 10))
|
|
28
30
|
.option('--no-max-turns', 'Disable autonomous turn limit')
|
|
29
31
|
.option('--no-wait', 'Exit immediately when the autonomous loop completes (TTY default: wait for /exit)')
|
|
30
32
|
.option('--worktree <mode>', 'Worker workspace: isolated (default via config) or in-repo (main worktree)')
|
|
@@ -35,12 +37,13 @@ program
|
|
|
35
37
|
.option('--github-monitor-debounce-ms <n>', 'Debounce interval for GitHub update notifications (default: config github.monitor.debounceMs, else 30000)', (value) => Number.parseInt(value, 10))
|
|
36
38
|
.option('--summary-format <format>', 'Exit summary format: auto (TTY=text, non-TTY=json), json, or text', 'auto')
|
|
37
39
|
.option('--include-full-response-text', 'Include full worker responseText in JSON exit summary (default: responsePreview only)')
|
|
38
|
-
.action(async (issueRef, options) => {
|
|
40
|
+
.action(async (issueRef, messageParts, options) => {
|
|
39
41
|
try {
|
|
40
42
|
const repoRoot = resolve(options.repoRoot);
|
|
41
43
|
const issueUrl = await resolveIssueUrl(issueRef, repoRoot);
|
|
42
44
|
const result = await executeIssueCommand(issueUrl, {
|
|
43
45
|
...options,
|
|
46
|
+
initialOperatorMessage: normalizeInitialOperatorMessage(messageParts),
|
|
44
47
|
defaultAcpArgs: options.defaultAcpArg,
|
|
45
48
|
});
|
|
46
49
|
writeIssueSessionSummary(result, {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/issue-command.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export interface IssueCommandOptions {
|
|
|
14
14
|
defaultAcpCli?: string;
|
|
15
15
|
defaultAcpCommand?: string;
|
|
16
16
|
defaultAcpArgs?: string[];
|
|
17
|
+
/** `ensemble issue <ref> [message...]` の初回オペレータメッセージ。 */
|
|
18
|
+
initialOperatorMessage?: string;
|
|
17
19
|
/** commander の `--no-github-monitor` 用。false で監視無効。 */
|
|
18
20
|
githubMonitor?: boolean;
|
|
19
21
|
githubMonitorDebounceMs?: number;
|
|
@@ -26,6 +28,7 @@ export interface IssueCommandDeps {
|
|
|
26
28
|
loadEnsembleConfig?: typeof loadEnsembleConfig;
|
|
27
29
|
SessionLogger?: typeof SessionLogger;
|
|
28
30
|
findLatestSessionSidecarForIssue?: typeof findLatestSessionSidecarForIssue;
|
|
31
|
+
writeStderr?: (message: string) => void;
|
|
29
32
|
}
|
|
30
33
|
export interface ResolveResumeAgentIdResult {
|
|
31
34
|
resumeAgentId?: string;
|
|
@@ -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;
|
|
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"}
|
package/dist/issue-command.js
CHANGED
|
@@ -7,6 +7,7 @@ import { createSessionDisplaySink } from './display/create-session-display-sink.
|
|
|
7
7
|
import { selectSessionDisplayBackend } from './display/select-session-display-backend.js';
|
|
8
8
|
import { createHarnessSink, createObservationSink } from './session-sinks.js';
|
|
9
9
|
import { createIssueSessionTuiHost } from './tui/create-issue-session-tui-host.js';
|
|
10
|
+
import { normalizeInitialOperatorMessage, resolveInitialOperatorMessage, } from './operator-message.js';
|
|
10
11
|
/** `--resume` / `--continue` から `runIssueSession` に渡す `resumeAgentId` を解決する。 */
|
|
11
12
|
export async function resolveResumeAgentIdFromOptions(options, context, deps = {}) {
|
|
12
13
|
if (options.resume && options.continue) {
|
|
@@ -47,6 +48,10 @@ export async function executeIssueCommand(issueUrl, options, deps = {}) {
|
|
|
47
48
|
const loadProfileFn = deps.loadProfile ?? loadProfile;
|
|
48
49
|
const loadConfig = deps.loadEnsembleConfig ?? loadEnsembleConfig;
|
|
49
50
|
const SessionLoggerCtor = deps.SessionLogger ?? SessionLogger;
|
|
51
|
+
const writeStderr = deps.writeStderr ?? ((message) => void process.stderr.write(`${message}\n`));
|
|
52
|
+
const initialOperatorMessage = normalizeInitialOperatorMessage(options.initialOperatorMessage);
|
|
53
|
+
// 起動前に CLI / env の併用を検出し、セッションを開始しない。
|
|
54
|
+
const resolvedInitialOperatorMessage = resolveInitialOperatorMessage(initialOperatorMessage);
|
|
50
55
|
const repoRoot = resolve(options.repoRoot);
|
|
51
56
|
const ensembleConfig = await loadConfig(repoRoot);
|
|
52
57
|
const workerWorktreeMode = parseWorktreeMode(resolveSessionWorktreeMode({
|
|
@@ -59,9 +64,24 @@ export async function executeIssueCommand(issueUrl, options, deps = {}) {
|
|
|
59
64
|
config: ensembleConfig,
|
|
60
65
|
});
|
|
61
66
|
const { resumeAgentId, continuedFromSidecar } = await resolveResumeAgentIdFromOptions(options, { issueUrl, repoRoot }, deps);
|
|
62
|
-
|
|
67
|
+
if (initialOperatorMessage && resumeAgentId) {
|
|
68
|
+
writeStderr('Warning: the initial CLI operator message is ignored with --continue or --resume.');
|
|
69
|
+
}
|
|
70
|
+
const initialOperatorMessageForBinding = resumeAgentId
|
|
71
|
+
? undefined
|
|
72
|
+
: initialOperatorMessage;
|
|
73
|
+
const resolvedInitialOperatorMessageForBinding = resumeAgentId
|
|
74
|
+
? resolveInitialOperatorMessage()
|
|
75
|
+
: resolvedInitialOperatorMessage;
|
|
76
|
+
const interactive = isInteractive(initialOperatorMessageForBinding);
|
|
77
|
+
const hasOneShotOperatorMessage = Boolean(resolvedInitialOperatorMessageForBinding);
|
|
63
78
|
const useTui = interactive && isTty();
|
|
64
|
-
const tuiHost = useTui
|
|
79
|
+
const tuiHost = useTui
|
|
80
|
+
? createIssueSessionTuiHost(issueUrl, {
|
|
81
|
+
config: ensembleConfig,
|
|
82
|
+
initialOperatorMessage: initialOperatorMessageForBinding,
|
|
83
|
+
})
|
|
84
|
+
: undefined;
|
|
65
85
|
const sessionLogger = new SessionLoggerCtor({ issueUrl, repoRoot });
|
|
66
86
|
if (useTui) {
|
|
67
87
|
sessionLogger.subscribe(tuiHost.telemetrySink);
|
|
@@ -127,9 +147,18 @@ export async function executeIssueCommand(issueUrl, options, deps = {}) {
|
|
|
127
147
|
...(defaultAcp ? { defaultAcp: { ...defaultAcp, config: ensembleConfig } } : { defaultAcp: { config: ensembleConfig } }),
|
|
128
148
|
...(interactive
|
|
129
149
|
? {
|
|
130
|
-
bindOperatorInput: tuiHost?.bindOperatorInput ??
|
|
131
|
-
|
|
132
|
-
|
|
150
|
+
bindOperatorInput: tuiHost?.bindOperatorInput ??
|
|
151
|
+
((api) => bindAsyncOperatorInput(api, {
|
|
152
|
+
issueUrl,
|
|
153
|
+
initialOperatorMessage: initialOperatorMessageForBinding,
|
|
154
|
+
})),
|
|
155
|
+
continueOnConductorError: !hasOneShotOperatorMessage,
|
|
156
|
+
...(hasOneShotOperatorMessage
|
|
157
|
+
? {
|
|
158
|
+
stopOnUnansweredInput: true,
|
|
159
|
+
}
|
|
160
|
+
: {}),
|
|
161
|
+
...(isTty() && postLoopWait && !hasOneShotOperatorMessage
|
|
133
162
|
? {
|
|
134
163
|
waitForOperatorExit: true,
|
|
135
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issue-command.js","sourceRoot":"","sources":["../src/issue-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EAClB,WAAW,EACX,uBAAuB,EACvB,8BAA8B,EAC9B,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,eAAe,EACf,aAAa,GAGd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"issue-command.js","sourceRoot":"","sources":["../src/issue-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const OPERATOR_MESSAGE_ENV = "ENSEMBLE_OPERATOR_MESSAGE";
|
|
2
|
+
/** CLI の variadic 引数、または単一文字列をオペレータメッセージへ正規化する。 */
|
|
3
|
+
export declare function normalizeInitialOperatorMessage(message: string | readonly string[] | undefined): string | undefined;
|
|
4
|
+
/** CLI と環境変数の初回オペレータメッセージを解決する。 */
|
|
5
|
+
export declare function resolveInitialOperatorMessage(cliMessage?: string, env?: NodeJS.ProcessEnv): string | undefined;
|
|
6
|
+
//# sourceMappingURL=operator-message.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operator-message.d.ts","sourceRoot":"","sources":["../src/operator-message.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,8BAA8B,CAAC;AAEhE,mDAAmD;AACnD,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,SAAS,GAC9C,MAAM,GAAG,SAAS,CAIpB;AAED,mCAAmC;AACnC,wBAAgB,6BAA6B,CAC3C,UAAU,CAAC,EAAE,MAAM,EACnB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,GAAG,SAAS,CAWpB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export const OPERATOR_MESSAGE_ENV = 'ENSEMBLE_OPERATOR_MESSAGE';
|
|
2
|
+
/** CLI の variadic 引数、または単一文字列をオペレータメッセージへ正規化する。 */
|
|
3
|
+
export function normalizeInitialOperatorMessage(message) {
|
|
4
|
+
const joined = typeof message === 'string' ? message : message?.join(' ');
|
|
5
|
+
const trimmed = joined?.trim();
|
|
6
|
+
return trimmed || undefined;
|
|
7
|
+
}
|
|
8
|
+
/** CLI と環境変数の初回オペレータメッセージを解決する。 */
|
|
9
|
+
export function resolveInitialOperatorMessage(cliMessage, env = process.env) {
|
|
10
|
+
const fromCli = normalizeInitialOperatorMessage(cliMessage);
|
|
11
|
+
const fromEnv = normalizeInitialOperatorMessage(env[OPERATOR_MESSAGE_ENV]);
|
|
12
|
+
if (fromCli && fromEnv) {
|
|
13
|
+
throw new Error(`Cannot use a CLI operator message together with ${OPERATOR_MESSAGE_ENV}; provide only one.`);
|
|
14
|
+
}
|
|
15
|
+
return fromCli ?? fromEnv;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=operator-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operator-message.js","sourceRoot":"","sources":["../src/operator-message.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;AAEhE,mDAAmD;AACnD,MAAM,UAAU,+BAA+B,CAC7C,OAA+C;IAE/C,MAAM,MAAM,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC;IAC/B,OAAO,OAAO,IAAI,SAAS,CAAC;AAC9B,CAAC;AAED,mCAAmC;AACnC,MAAM,UAAU,6BAA6B,CAC3C,UAAmB,EACnB,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,OAAO,GAAG,+BAA+B,CAAC,UAAU,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,+BAA+B,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAE3E,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,mDAAmD,oBAAoB,qBAAqB,CAC7F,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,IAAI,OAAO,CAAC;AAC5B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { OperatorInputContext } from '@agents-ensemble/core';
|
|
2
|
-
/** TTY
|
|
3
|
-
export declare function isOperatorInputInteractive(): boolean;
|
|
2
|
+
/** TTY、CLI メッセージ、または `ENSEMBLE_OPERATOR_MESSAGE` で入力が届く環境か。 */
|
|
3
|
+
export declare function isOperatorInputInteractive(initialOperatorMessage?: string): boolean;
|
|
4
4
|
/** post-loop 待機を有効にできる TTY 入力か(`ENSEMBLE_OPERATOR_MESSAGE` 単発注入は除外)。 */
|
|
5
5
|
export declare function isOperatorInputTty(): boolean;
|
|
6
6
|
export declare function promptOperatorInput(context: OperatorInputContext, issueUrl?: string): Promise<string | undefined>;
|
|
@@ -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;
|
|
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,10 +1,10 @@
|
|
|
1
1
|
import * as readline from 'node:readline/promises';
|
|
2
2
|
import { stdin as input, stdout as output } from 'node:process';
|
|
3
3
|
import { formatIssueReference } from './tui/format-operator-context.js';
|
|
4
|
-
|
|
5
|
-
/** TTY
|
|
6
|
-
export function isOperatorInputInteractive() {
|
|
7
|
-
if (
|
|
4
|
+
import { resolveInitialOperatorMessage } from './operator-message.js';
|
|
5
|
+
/** TTY、CLI メッセージ、または `ENSEMBLE_OPERATOR_MESSAGE` で入力が届く環境か。 */
|
|
6
|
+
export function isOperatorInputInteractive(initialOperatorMessage) {
|
|
7
|
+
if (resolveInitialOperatorMessage(initialOperatorMessage)) {
|
|
8
8
|
return true;
|
|
9
9
|
}
|
|
10
10
|
return process.stdin.isTTY ?? false;
|
|
@@ -17,7 +17,7 @@ function formatMaxTurnsLabel(maxTurns) {
|
|
|
17
17
|
return maxTurns === null ? '∞' : String(maxTurns);
|
|
18
18
|
}
|
|
19
19
|
export async function promptOperatorInput(context, issueUrl) {
|
|
20
|
-
const fromEnv =
|
|
20
|
+
const fromEnv = resolveInitialOperatorMessage();
|
|
21
21
|
if (fromEnv) {
|
|
22
22
|
return fromEnv;
|
|
23
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-operator-input.js","sourceRoot":"","sources":["../src/prompt-operator-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"prompt-operator-input.js","sourceRoot":"","sources":["../src/prompt-operator-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAEtE,+DAA+D;AAC/D,MAAM,UAAU,0BAA0B,CAAC,sBAA+B;IACxE,IAAI,6BAA6B,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC;AACtC,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,kBAAkB;IAChC,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC;AACtC,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAuB;IAClD,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAA6B,EAC7B,QAAiB;IAEjB,MAAM,OAAO,GAAG,6BAA6B,EAAE,CAAC;IAChD,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,YAAY,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACjC,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC7C,MAAM,CAAC,KAAK,CACV,KAAK,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,YAAY,KAAK,QAAQ,CAAC,QAAQ,IAAI,CACrE,CAAC;YACF,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,KAAK,CACV,YAAY,OAAO,CAAC,eAAe,IAAI,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAC/F,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,MAAM,GACV,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;YAC9B,CAAC,CAAC,wCAAwC;YAC1C,CAAC,CAAC,gCAAgC,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,OAAO,IAAI,SAAS,CAAC;IAC9B,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-log-lines.d.ts","sourceRoot":"","sources":["../src/session-log-lines.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAE/B,kDAAkD;AAClD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"session-log-lines.d.ts","sourceRoot":"","sources":["../src/session-log-lines.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAE/B,kDAAkD;AAClD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAwE/E;AAED,sDAAsD;AACtD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CA6BnF;AAED,mFAAmF;AACnF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CA6BtF;AAED,iCAAiC;AACjC,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAYtF"}
|