@hummer98/cmux-team 3.0.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/.claude-plugin/marketplace.json +21 -0
- package/.claude-plugin/plugin.json +15 -0
- package/CHANGELOG.md +279 -0
- package/LICENSE +21 -0
- package/README.ja.md +238 -0
- package/README.md +158 -0
- package/bin/cmux-team.js +29 -0
- package/bin/postinstall.js +26 -0
- package/commands/master.md +8 -0
- package/commands/start.md +42 -0
- package/commands/team-archive.md +63 -0
- package/commands/team-design.md +199 -0
- package/commands/team-disband.md +79 -0
- package/commands/team-impl.md +201 -0
- package/commands/team-research.md +182 -0
- package/commands/team-review.md +222 -0
- package/commands/team-spec.md +133 -0
- package/commands/team-status.md +24 -0
- package/commands/team-sync-docs.md +127 -0
- package/commands/team-task.md +158 -0
- package/commands/team-test.md +230 -0
- package/package.json +51 -0
- package/skills/cmux-agent-role/SKILL.md +166 -0
- package/skills/cmux-team/SKILL.md +568 -0
- package/skills/cmux-team/manager/bun.lock +118 -0
- package/skills/cmux-team/manager/cmux.ts +134 -0
- package/skills/cmux-team/manager/conductor.ts +347 -0
- package/skills/cmux-team/manager/daemon.ts +373 -0
- package/skills/cmux-team/manager/e2e.ts +550 -0
- package/skills/cmux-team/manager/logger.ts +13 -0
- package/skills/cmux-team/manager/main.ts +756 -0
- package/skills/cmux-team/manager/master.ts +51 -0
- package/skills/cmux-team/manager/package.json +18 -0
- package/skills/cmux-team/manager/proxy.ts +219 -0
- package/skills/cmux-team/manager/queue.ts +73 -0
- package/skills/cmux-team/manager/schema.ts +84 -0
- package/skills/cmux-team/manager/task.ts +160 -0
- package/skills/cmux-team/manager/template.ts +92 -0
- package/skills/cmux-team/templates/architect.md +25 -0
- package/skills/cmux-team/templates/common-header.md +12 -0
- package/skills/cmux-team/templates/conductor-role.md +244 -0
- package/skills/cmux-team/templates/conductor-task.md +37 -0
- package/skills/cmux-team/templates/conductor.md +275 -0
- package/skills/cmux-team/templates/dockeeper.md +23 -0
- package/skills/cmux-team/templates/implementer.md +24 -0
- package/skills/cmux-team/templates/manager.md +199 -0
- package/skills/cmux-team/templates/master.md +94 -0
- package/skills/cmux-team/templates/researcher.md +24 -0
- package/skills/cmux-team/templates/reviewer.md +28 -0
- package/skills/cmux-team/templates/task-manager.md +22 -0
- package/skills/cmux-team/templates/tester.md +27 -0
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@hummer98/cmux-team",
|
|
3
|
+
"version": "3.0.0",
|
|
4
|
+
"description": "Multi-agent development orchestration with Claude Code + cmux. Spawn, monitor, and integrate parallel sub-agents visually in terminal panes.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"bin": {
|
|
7
|
+
"cmux-team": "bin/cmux-team.js"
|
|
8
|
+
},
|
|
9
|
+
"scripts": {
|
|
10
|
+
"postinstall": "node bin/postinstall.js",
|
|
11
|
+
"prepublishOnly": "cd skills/cmux-team/manager && bun test"
|
|
12
|
+
},
|
|
13
|
+
"files": [
|
|
14
|
+
"bin/",
|
|
15
|
+
"skills/cmux-team/SKILL.md",
|
|
16
|
+
"skills/cmux-team/templates/",
|
|
17
|
+
"skills/cmux-team/manager/**/*.ts",
|
|
18
|
+
"!skills/cmux-team/manager/**/*.test.ts",
|
|
19
|
+
"skills/cmux-team/manager/package.json",
|
|
20
|
+
"skills/cmux-team/manager/bun.lock",
|
|
21
|
+
"skills/cmux-agent-role/",
|
|
22
|
+
"commands/",
|
|
23
|
+
".claude-plugin/",
|
|
24
|
+
"README.md",
|
|
25
|
+
"README.ja.md",
|
|
26
|
+
"LICENSE",
|
|
27
|
+
"CHANGELOG.md"
|
|
28
|
+
],
|
|
29
|
+
"engines": {
|
|
30
|
+
"node": ">=18"
|
|
31
|
+
},
|
|
32
|
+
"repository": {
|
|
33
|
+
"type": "git",
|
|
34
|
+
"url": "git+https://github.com/hummer98/cmux-team.git"
|
|
35
|
+
},
|
|
36
|
+
"homepage": "https://github.com/hummer98/cmux-team",
|
|
37
|
+
"author": {
|
|
38
|
+
"name": "hummer98",
|
|
39
|
+
"url": "https://github.com/hummer98"
|
|
40
|
+
},
|
|
41
|
+
"license": "MIT",
|
|
42
|
+
"keywords": [
|
|
43
|
+
"cmux",
|
|
44
|
+
"multi-agent",
|
|
45
|
+
"orchestration",
|
|
46
|
+
"parallel",
|
|
47
|
+
"team",
|
|
48
|
+
"claude-code",
|
|
49
|
+
"cli"
|
|
50
|
+
]
|
|
51
|
+
}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cmux-agent-role
|
|
3
|
+
description: >
|
|
4
|
+
Activated when running as a cmux-team sub-agent.
|
|
5
|
+
Triggers: .team/team.json exists AND current session was spawned by Conductor
|
|
6
|
+
(detect via: initial prompt contains "[CMUX-TEAM-AGENT]" marker).
|
|
7
|
+
Provides: output protocol, task creation, inter-agent coordination.
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# cmux-team サブエージェント行動規範
|
|
11
|
+
|
|
12
|
+
あなたは cmux-team の Conductor によって起動されたサブエージェントです。
|
|
13
|
+
このドキュメントに従い、タスクを遂行してください。
|
|
14
|
+
|
|
15
|
+
**完了したら停止するだけ。報告は不要。上位が監視する。**
|
|
16
|
+
|
|
17
|
+
## 1. エージェント識別
|
|
18
|
+
|
|
19
|
+
起動時に以下のマーカー付きプロンプトを受け取ります:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
[CMUX-TEAM-AGENT]
|
|
23
|
+
Role: <role-id>
|
|
24
|
+
Task: <タスク内容>
|
|
25
|
+
Output: .team/output/<role-id>.md
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**必ず**:
|
|
29
|
+
- Role と Task を認識する
|
|
30
|
+
- 出力ファイルパスを記憶する
|
|
31
|
+
|
|
32
|
+
## 2. 出力プロトコル
|
|
33
|
+
|
|
34
|
+
すべての成果物は指定された出力ファイルに書き込みます:
|
|
35
|
+
|
|
36
|
+
```markdown
|
|
37
|
+
# Output: <role-id>
|
|
38
|
+
|
|
39
|
+
## Task
|
|
40
|
+
<元のタスク内容>
|
|
41
|
+
|
|
42
|
+
## Findings
|
|
43
|
+
<構造化された結果>
|
|
44
|
+
|
|
45
|
+
## Recommendations
|
|
46
|
+
<該当する場合>
|
|
47
|
+
|
|
48
|
+
## Tasks Raised
|
|
49
|
+
- See .team/tasks/NNN-*.md
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**ルール**:
|
|
53
|
+
- インクリメンタルに書き込む(作業の進行に合わせてセクションを追加)
|
|
54
|
+
- 明確な Markdown 構造を使用する
|
|
55
|
+
- 読んだファイル、実行したコマンドへの参照を含める
|
|
56
|
+
- 明示的な指示がない限り、プロジェクト外のファイルに書き込まない
|
|
57
|
+
|
|
58
|
+
## 3. 作業境界
|
|
59
|
+
|
|
60
|
+
- 割り当てられた git worktree の範囲内で作業すること
|
|
61
|
+
- worktree 外のファイルを直接変更しない
|
|
62
|
+
- 共有データは `.team/` ディレクトリを通じてやり取りする
|
|
63
|
+
|
|
64
|
+
## 4. タスク作成
|
|
65
|
+
|
|
66
|
+
判断が必要な事項、ブロッカー、発見事項がある場合にタスクを作成:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
# タスク作成は CLI で行う(ID 自動採番・task-state.json 更新を一括実行)
|
|
70
|
+
bun run .team/manager/main.ts create-task --title "タイトル" --body "詳細"
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
タスク形式:
|
|
74
|
+
|
|
75
|
+
```markdown
|
|
76
|
+
---
|
|
77
|
+
id: NNN
|
|
78
|
+
title: <簡潔なタイトル>
|
|
79
|
+
type: decision|blocker|finding|question
|
|
80
|
+
raised_by: <role-id>
|
|
81
|
+
created_at: <ISO タイムスタンプ>
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## Context
|
|
85
|
+
<このタスクに至った経緯>
|
|
86
|
+
|
|
87
|
+
## Options
|
|
88
|
+
1. <選択肢 A> — 長所/短所
|
|
89
|
+
2. <選択肢 B> — 長所/短所
|
|
90
|
+
|
|
91
|
+
## Recommendation
|
|
92
|
+
<エージェントの推奨案(あれば)>
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## 5. 他エージェントとの連携
|
|
96
|
+
|
|
97
|
+
サブエージェント同士は**直接通信しない**。
|
|
98
|
+
すべての連携は以下を通じて行う:
|
|
99
|
+
- `.team/` 内の共有ファイル
|
|
100
|
+
- Conductor(cmux 経由)
|
|
101
|
+
|
|
102
|
+
他エージェントの成果が必要な場合:
|
|
103
|
+
- `.team/output/<other-role>.md` が存在すれば読む
|
|
104
|
+
- 存在しない場合は `blocker` タイプのタスクを作成する
|
|
105
|
+
|
|
106
|
+
## 6. ロール別ガイドライン
|
|
107
|
+
|
|
108
|
+
### Researcher(リサーチャー)
|
|
109
|
+
- 事実の収集に集中し、設計判断はしない
|
|
110
|
+
- ソースを引用する(URL、ファイルパス、ドキュメント参照)
|
|
111
|
+
- 構造: Context → Facts → Analysis → Recommendations
|
|
112
|
+
|
|
113
|
+
### Architect(アーキテクト)
|
|
114
|
+
- すべてのリサーチャー出力を読んでから設計する
|
|
115
|
+
- `.team/specs/requirements.md` の要件を参照する
|
|
116
|
+
- 根拠付きの設計判断を生成する
|
|
117
|
+
- アーキテクチャには Mermaid ダイアグラムを使用する
|
|
118
|
+
|
|
119
|
+
### Reviewer(レビュアー)
|
|
120
|
+
- レビュー対象のアーティファクトを読む
|
|
121
|
+
- 要件と設計に照らし合わせてチェックする
|
|
122
|
+
- 出力: Approved/Changes Requested + 具体的なフィードバック
|
|
123
|
+
- 重要な懸念事項はタスクとして起票する
|
|
124
|
+
|
|
125
|
+
### Implementer(実装者)
|
|
126
|
+
- `.team/specs/design.md` に厳密に従う
|
|
127
|
+
- `.team/specs/tasks.md` のアサインされたタスクを読む
|
|
128
|
+
- コードを書いたら、変更ファイルを出力に記録する
|
|
129
|
+
- 関係のないコードをリファクタリングしない
|
|
130
|
+
|
|
131
|
+
### Tester(テスター)
|
|
132
|
+
- 実装出力を読み、何が作られたかを理解する
|
|
133
|
+
- 要件を検証するテストを書く
|
|
134
|
+
- テストを実行し結果を報告する
|
|
135
|
+
- テスト失敗はタスクとして起票する
|
|
136
|
+
|
|
137
|
+
### DocKeeper(ドキュメント管理者)
|
|
138
|
+
- すべての出力と仕様を読む
|
|
139
|
+
- `docs/` を現在の状態に反映させる
|
|
140
|
+
- ドキュメントは簡潔かつ正確に
|
|
141
|
+
|
|
142
|
+
### TaskManager(タスク管理者)
|
|
143
|
+
- `.team/tasks/` と `task-state.json` で新しいタスクを監視する
|
|
144
|
+
- カテゴリ分類、関連タスクのリンク
|
|
145
|
+
- Conductor のリクエストに応じてオープンタスクを要約する
|
|
146
|
+
|
|
147
|
+
## 7. daemon ステータス取得
|
|
148
|
+
|
|
149
|
+
Manager daemon の状態を確認するには CLI を使う:
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
# ダッシュボード表示(Master / Conductors / Tasks / Log)
|
|
153
|
+
bun run .team/manager/main.ts status
|
|
154
|
+
|
|
155
|
+
# ログ末尾を多めに表示
|
|
156
|
+
bun run .team/manager/main.ts status --log 20
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**出力内容**: daemon の稼働状態、Master surface、稼働中 Conductor 一覧(タスクタイトル付き)、open/closed タスク数、manager.log 末尾。
|
|
160
|
+
|
|
161
|
+
`cmux read-screen` でダッシュボードの TUI を読む必要はない。`status` コマンドが同じ情報を返す。
|
|
162
|
+
|
|
163
|
+
## 8. 言語ルール
|
|
164
|
+
|
|
165
|
+
- ドキュメント・コメント: 日本語
|
|
166
|
+
- コード: 英語
|