@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.
- package/README.md +36 -3
- package/config.example.yaml +13 -0
- package/dist/async-operator-input.js +1 -1
- package/dist/async-operator-input.js.map +1 -1
- package/dist/display/session-display-reducer.d.ts.map +1 -1
- package/dist/display/session-display-reducer.js +0 -11
- package/dist/display/session-display-reducer.js.map +1 -1
- package/dist/inline-markdown.d.ts +3 -1
- package/dist/inline-markdown.d.ts.map +1 -1
- package/dist/inline-markdown.js +232 -33
- package/dist/inline-markdown.js.map +1 -1
- package/dist/issue-command.d.ts.map +1 -1
- package/dist/issue-command.js +8 -4
- package/dist/issue-command.js.map +1 -1
- package/dist/prompt-operator-input.d.ts +1 -1
- package/dist/prompt-operator-input.d.ts.map +1 -1
- package/dist/prompt-operator-input.js +1 -1
- 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 +64 -8
- package/dist/session-log-lines.js.map +1 -1
- package/dist/session-sinks.d.ts.map +1 -1
- package/dist/session-sinks.js +2 -10
- package/dist/session-sinks.js.map +1 -1
- package/dist/tui/activity-log.d.ts +8 -0
- package/dist/tui/activity-log.d.ts.map +1 -1
- package/dist/tui/activity-log.js +16 -0
- package/dist/tui/activity-log.js.map +1 -1
- package/dist/tui/compute-operator-input-cursor-y.d.ts +4 -0
- package/dist/tui/compute-operator-input-cursor-y.d.ts.map +1 -1
- package/dist/tui/compute-operator-input-cursor-y.js +4 -2
- package/dist/tui/compute-operator-input-cursor-y.js.map +1 -1
- package/dist/tui/create-issue-session-tui-host.d.ts.map +1 -1
- package/dist/tui/create-issue-session-tui-host.js +44 -8
- package/dist/tui/create-issue-session-tui-host.js.map +1 -1
- package/dist/tui/create-issue-session-tui-host.test.js +19 -5
- package/dist/tui/create-issue-session-tui-host.test.js.map +1 -1
- package/dist/tui/issue-session-tui-stream.d.ts +6 -1
- package/dist/tui/issue-session-tui-stream.d.ts.map +1 -1
- package/dist/tui/issue-session-tui-stream.js +55 -17
- package/dist/tui/issue-session-tui-stream.js.map +1 -1
- package/dist/tui/issue-session-tui-stream.test.js +345 -11
- package/dist/tui/issue-session-tui-stream.test.js.map +1 -1
- package/dist/tui/issue-session-tui.d.ts +11 -5
- package/dist/tui/issue-session-tui.d.ts.map +1 -1
- package/dist/tui/issue-session-tui.js +60 -30
- package/dist/tui/issue-session-tui.js.map +1 -1
- package/dist/tui/issue-session-tui.test.js +268 -30
- package/dist/tui/issue-session-tui.test.js.map +1 -1
- package/dist/tui/open-questions-pane.d.ts.map +1 -1
- package/dist/tui/open-questions-pane.js +30 -12
- package/dist/tui/open-questions-pane.js.map +1 -1
- package/dist/tui/pane-layout.d.ts +22 -0
- package/dist/tui/pane-layout.d.ts.map +1 -0
- package/dist/tui/pane-layout.js +74 -0
- package/dist/tui/pane-layout.js.map +1 -0
- package/dist/tui/stream-scrollback.d.ts +29 -0
- package/dist/tui/stream-scrollback.d.ts.map +1 -0
- package/dist/tui/stream-scrollback.js +35 -0
- package/dist/tui/stream-scrollback.js.map +1 -0
- package/dist/tui/titled-border-pane.d.ts +2 -1
- package/dist/tui/titled-border-pane.d.ts.map +1 -1
- package/dist/tui/titled-border-pane.js +2 -2
- package/dist/tui/titled-border-pane.js.map +1 -1
- package/dist/tui/tui-layout-constants.d.ts +11 -6
- package/dist/tui/tui-layout-constants.d.ts.map +1 -1
- package/dist/tui/tui-layout-constants.js +11 -6
- package/dist/tui/tui-layout-constants.js.map +1 -1
- package/dist/tui/tui-resize-recovery.d.ts +24 -0
- package/dist/tui/tui-resize-recovery.d.ts.map +1 -0
- package/dist/tui/tui-resize-recovery.js +34 -0
- package/dist/tui/tui-resize-recovery.js.map +1 -0
- package/dist/tui/tui-terminal-size.d.ts +45 -0
- package/dist/tui/tui-terminal-size.d.ts.map +1 -0
- package/dist/tui/tui-terminal-size.js +195 -0
- package/dist/tui/tui-terminal-size.js.map +1 -0
- package/dist/tui/tui-view-model.d.ts +2 -0
- package/dist/tui/tui-view-model.d.ts.map +1 -1
- package/dist/tui/tui-view-model.js +7 -0
- package/dist/tui/tui-view-model.js.map +1 -1
- package/dist/tui/wrap-text-to-width.d.ts.map +1 -1
- package/dist/tui/wrap-text-to-width.js +4 -1
- package/dist/tui/wrap-text-to-width.js.map +1 -1
- package/docs/config.md +67 -3
- package/docs/settings.md +17 -4
- package/package.json +2 -2
package/docs/settings.md
CHANGED
|
@@ -28,6 +28,14 @@ CLI > 環境変数 > project config > user config > コード default
|
|
|
28
28
|
|
|
29
29
|
`profile.default` / `conductor.model` / `acp.defaultPreset` など。設計判断は [ADR 0020](https://github.com/otolab/agents-ensemble/blob/main/docs/adr/0020-ensemble-config-setting-resolution.md)。
|
|
30
30
|
|
|
31
|
+
`conductor.backend` は、選択した profile の `conductor.backend` を project/user の deep merge 済み config より優先し、どちらも未指定なら `cursor` を使います。`cursor` は Cursor SDK 経路、`pi` は Pi Agent Core 経路を選びます。Pi は compiled conductor instructions を native system prompt に載せ、`~/.ensemble/pi` と `<repoRoot>/.ensemble/pi` の `settings.json` / `auth.json` / `models.json` / `extensions/` / `skills/` / `prompts/` / `themes/` を解決します。skills は system prompt へ追加し、prompts は `/name args` で展開します。themes は headless conductor のため読み込み・project 同名解決のみ行い、TUI 表示には使いません。root は `conductor.pi.agentDir` / `conductor.pi.projectDir` で上書きできます。`.ensemble/pi/SYSTEM.md` / `APPEND_SYSTEM.md` は無視します。`ensemble auth login` は Cursor SDK 向けで、Pi の認証には使いません。`settings.json` の headless 対応キーはモデル選択、認証 fallback、resource path に限られ、`defaultThinkingLevel` / `thinkingBudgets` / `packages` / `enableSkillCommands` など未対応キーは警告なしで無視します(詳細は [config.md](config.md#settingsjson-の-headless-対応範囲))。resume では sidecar に保存した backend と起動時の解決結果が一致しない場合、次のエラーで conductor を起動せず失敗します。
|
|
32
|
+
|
|
33
|
+
```text
|
|
34
|
+
Session sidecar conductorBackend mismatch: pi !== cursor
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
旧 sidecar にこのフィールドがない場合は、従来どおり `cursor` として扱います。Pi の `conductorAgentId` は Pi の session id としても使われ、transcript は `<conductor-cwd>/.ensemble/pi/sessions/` の JSONL に保存されます。`--continue` / `--resume` ではその transcript を復元し、Issue context から compiled `systemPrompt` を毎回再コンパイルして native system prompt に再注入します。
|
|
38
|
+
|
|
31
39
|
### パターン B — Phase 1 横断(env なし)
|
|
32
40
|
|
|
33
41
|
```
|
|
@@ -53,7 +61,8 @@ config キーなし。CI・スクリプト・端末検出、または 1 回限
|
|
|
53
61
|
| 種別 | 解決順 |
|
|
54
62
|
|------|--------|
|
|
55
63
|
| GitHub API | `GITHUB_TOKEN` > `GH_TOKEN` > (`allowGhAuthTokenFallback: true` 時のみ)`gh auth token` |
|
|
56
|
-
| conductor | `CURSOR_API_KEY` > `~/.cursor/sdk/auth.json`(`ensemble auth login`) |
|
|
64
|
+
| conductor (cursor) | `CURSOR_API_KEY` > `~/.cursor/sdk/auth.json`(`ensemble auth login`) |
|
|
65
|
+
| conductor (pi) | Pi の `auth.json` / `settings.json`(`~/.ensemble/pi/` → `<repoRoot>/.ensemble/pi/`、`conductor.pi.*` で root 上書き) > provider 環境変数。`ensemble auth` は使わない |
|
|
57
66
|
| worker ACP(preset 依存) | preset ごとに README / ADR 0019 参照 |
|
|
58
67
|
|
|
59
68
|
## 一覧 — Phase 1(config.yaml)
|
|
@@ -62,6 +71,9 @@ config キーなし。CI・スクリプト・端末検出、または 1 回限
|
|
|
62
71
|
|------|-------------|----------|-----|----------------|------|
|
|
63
72
|
| 既定 team profile | `profile.default` | `ENSEMBLE_DEFAULT_PROFILE` | `--profile` | 同梱 `implementer-and-reviewer` | A |
|
|
64
73
|
| conductor モデル | `conductor.model` | `CONDUCTOR_MODEL_ID` | `--model` | `default` | A |
|
|
74
|
+
| conductor backend | `conductor.backend` | — | — | `cursor` | profile > config > default |
|
|
75
|
+
| Pi user resource root | `conductor.pi.agentDir` | — | — | `~/.ensemble/pi` | config |
|
|
76
|
+
| Pi project resource root | `conductor.pi.projectDir` | — | — | `<repoRoot>/.ensemble/pi` | config |
|
|
65
77
|
| worker ACP preset(profile 未指定 worker) | `acp.defaultPreset` | `ENSEMBLE_DEFAULT_ACP_CLI` | `--default-acp-cli` 等 | `cursor` | C |
|
|
66
78
|
| Issue worktree | `session.worktree` | — | `--worktree` | `isolated` | B |
|
|
67
79
|
| 自律ターン上限(TTY) | `session.maxTurns.tty` | — | `--max-turns` / `--no-max-turns` | `0`(無制限) | B |
|
|
@@ -101,7 +113,8 @@ TUI 設定は `loadEnsembleConfig` 結果を `createIssueSessionTuiHost` へ渡
|
|
|
101
113
|
| 設定 | 環境変数 | config で制御できること |
|
|
102
114
|
|------|----------|------------------------|
|
|
103
115
|
| GitHub API token | `GITHUB_TOKEN` / `GH_TOKEN` | `github.auth.allowGhAuthTokenFallback` のみ |
|
|
104
|
-
| conductor API key | `CURSOR_API_KEY` | —(`ensemble auth login` は別経路) |
|
|
116
|
+
| conductor API key (cursor) | `CURSOR_API_KEY` | —(`ensemble auth login` は別経路) |
|
|
117
|
+
| conductor API key (pi) | provider ごとの環境変数(Pi の env mapping) | Pi `auth.json` / `settings.json` にも設定可能 |
|
|
105
118
|
|
|
106
119
|
## 一覧 — 別ファイル
|
|
107
120
|
|
|
@@ -125,7 +138,7 @@ TUI 設定は `loadEnsembleConfig` 結果を `createIssueSessionTuiHost` へ渡
|
|
|
125
138
|
| チーム / 個人の恒久既定(モデル、worktree、monitor) | `~/.ensemble/config.yaml` または project `.ensemble/config.yaml` |
|
|
126
139
|
| CI で 1 ジョブだけ上書き | 環境変数(`CONDUCTOR_MODEL_ID` 等) |
|
|
127
140
|
| 1 回限りの実行 | CLI フラグ(初回メッセージは `ensemble issue <ref> [message...]`) |
|
|
128
|
-
| token | 環境変数 or `
|
|
141
|
+
| token | Cursor: 環境変数 or `ensemble auth login`、Pi: Pi の `auth.json` / `settings.json`、GitHub: `gh auth login`(いずれも config に書かない) |
|
|
129
142
|
| tmux 内で Issue リンクを短縮表示 | `~/.ensemble/config.yaml` に `tui.forceHyperlink: on`(または env `FORCE_HYPERLINK=1`) |
|
|
130
143
|
| worker ごとの ACP / cwd | `profile.yaml` |
|
|
131
144
|
| conductor の MCP | `mcp.json` |
|
|
@@ -144,7 +157,7 @@ TUI 設定は `loadEnsembleConfig` 結果を `createIssueSessionTuiHost` へ渡
|
|
|
144
157
|
| `TERM` / `TERM_PROGRAM` / `CI` 等 | TTY / CI の実行環境を検出する値 |
|
|
145
158
|
| `CURSOR_RIPGREP_PATH` | SDK 起動時に利用する内部ツールの明示指定 |
|
|
146
159
|
|
|
147
|
-
`profile.default`、`conductor.model`、`acp.defaultPreset`、`session.*`、`github.monitor.*`、`tui.*` のように config キーがある設定は、上の env-only 表ではなく本書の設定一覧と [config.md](config.md) に記載しています。env は invocation 単位の上書きとして残る場合があります。
|
|
160
|
+
`profile.default`、`conductor.model`、`conductor.backend`、`acp.defaultPreset`、`session.*`、`github.monitor.*`、`tui.*` のように config キーがある設定は、上の env-only 表ではなく本書の設定一覧と [config.md](config.md) に記載しています。env は invocation 単位の上書きとして残る場合があります。
|
|
148
161
|
|
|
149
162
|
## 既知のギャップ
|
|
150
163
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agents-ensemble/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "ensemble CLI — Issue-based agent orchestration",
|
|
6
6
|
"bin": {
|
|
@@ -17,7 +17,7 @@
|
|
|
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.
|
|
20
|
+
"@agents-ensemble/core": "0.7.0"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@types/js-yaml": "4.0.9",
|