agent-composer 0.2.1 → 0.2.2
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 +32 -15
- package/dist/providers/AnthropicCompatibleProvider.js +3 -0
- package/dist/providers/AnthropicCompatibleProvider.js.map +1 -1
- package/dist/providers/CLIProvider.d.ts +1 -0
- package/dist/providers/CLIProvider.js +28 -2
- package/dist/providers/CLIProvider.js.map +1 -1
- package/dist/server.js +12 -10
- package/dist/server.js.map +1 -1
- package/package.json +2 -2
- package/plugin/composer-mastermind/README.md +8 -5
- package/plugin/composer-mastermind/agents/coder.md +14 -4
- package/plugin/composer-mastermind/agents/researcher.md +5 -4
- package/plugin/composer-mastermind/agents/reviewer-claude.md +9 -8
- package/plugin/composer-mastermind/agents/reviewer.md +8 -8
- package/plugin/composer-mastermind/plugin.json +1 -1
- package/plugin/composer-mastermind/skills/composer-mastermind/SKILL.md +37 -33
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Composer — multi-agent orchestration for Claude Code
|
|
2
2
|
|
|
3
|
-
[](#install) [](#install) [](#contributing) [](#license)
|
|
4
4
|
|
|
5
5
|
> **Claude orchestrates. GLM, Codex, and `agy` execute — and *apply* — off your Claude quota.** Composer is an MCP server + Claude Code plugin that lets the most-capable model hold the plan while worker models generate *and write* the code in their own context. Because the executors apply files themselves (instead of returning text the main session must re-ingest), composer keeps the orchestrator's context lean and every change reviewable.
|
|
6
6
|
|
|
@@ -22,11 +22,11 @@ Seven MCP tools, all routing work off the main Claude session:
|
|
|
22
22
|
| Tool | Executor | What it does |
|
|
23
23
|
|---|---|---|
|
|
24
24
|
| `composer_handoff_create` | Composer server | Writes a compact shared packet under `.composer/handoffs/`; pass `handoffPath` to Codex, GLM, agy, researcher, and reviewer calls so every worker shares the same objective and constraints. |
|
|
25
|
-
| `composer_code_cli` | Codex CLI or agy | **Default for
|
|
25
|
+
| `composer_code_cli` | Codex CLI or agy | **Default for code edits.** The configured CLI executor generates **and applies** files itself off-CC, from the MCP server root, then returns a bounded summary. Use Codex here for complex coding work. |
|
|
26
26
|
| `composer_code_chain` | GLM authors → server applies | GLM fallback. GLM writes the complete files off-CC (`FILE: <path>` + fenced blocks); the MCP server applies them deterministically off-CC; the orchestrator only relays a summary. ~71% fewer total-CC tokens on multi-file tasks. |
|
|
27
|
-
| `composer_code` | GLM |
|
|
28
|
-
| `composer_research` | Codex CLI search |
|
|
29
|
-
| `composer_review` | agy |
|
|
27
|
+
| `composer_code` | GLM | Legacy patch-only lane. Use only when you explicitly need GLM diff/text output instead of an apply-capable lane. |
|
|
28
|
+
| `composer_research` | Codex CLI search | Direct docs/web/current-context lane → bounded structured summary. Runs Codex with live web search and a read-only sandbox. |
|
|
29
|
+
| `composer_review` | agy | Direct diff-review lane. Ask it to run repo-appropriate targeted checks off-CC; use a reviewer model different from the author for cross-model rigor (e.g. GLM writes → agy reviews). |
|
|
30
30
|
| `composer_review_claude` | Claude Code CLI | Premium second-opinion review for high-risk/security-sensitive diffs or explicit user requests. Default config runs bounded `claude -p --model opus` with read/test tools only and `--max-budget-usd 0.50`. |
|
|
31
31
|
|
|
32
32
|
**Why "off-CC" matters:** GLM (z.ai), Codex, and agy run on *separate* quotas. Generating and *applying* code in their own context — not returning text the main Claude session must re-ingest — is what actually preserves your Max5 quota. The eval harness scores on **total-CC tokens** (every Claude model in a run = real Max5 burn), with a correctness gate (tsc/tests) and N-run averaging.
|
|
@@ -108,6 +108,24 @@ refuses explicit `codex exec --sandbox danger-full-access` and
|
|
|
108
108
|
Keep `reviewer` as the default gate. Use `reviewerClaude` only when the user
|
|
109
109
|
asks for Claude review or when a risky diff needs an expensive second opinion.
|
|
110
110
|
|
|
111
|
+
### Fast direct-tool mode
|
|
112
|
+
|
|
113
|
+
Composer keeps the CLI executor path, but the plugin now treats it more like a
|
|
114
|
+
small SDK harness:
|
|
115
|
+
|
|
116
|
+
- `composer_code_cli` is the default edit lane; the legacy `coder` subagent is
|
|
117
|
+
only for rare patch-only GLM fallback.
|
|
118
|
+
- `composer_research`, `composer_review`, and `composer_review_claude` can be
|
|
119
|
+
called directly because their providers already run off the main Claude Code
|
|
120
|
+
context and return bounded summaries.
|
|
121
|
+
- The `researcher`, `reviewer`, and `reviewer-claude` subagents remain available
|
|
122
|
+
when raw upstream output is expected to be large enough to need an isolated
|
|
123
|
+
wrapper context.
|
|
124
|
+
- CLI calls append best-effort timing records to
|
|
125
|
+
`/tmp/composer-cli-usage.jsonl`; GLM calls append timing/cache records to
|
|
126
|
+
`/tmp/composer-glm-usage.jsonl`. These files contain durations and character
|
|
127
|
+
counts, not prompts.
|
|
128
|
+
|
|
111
129
|
**`.env.json`** (NEVER commit) — credentials only:
|
|
112
130
|
|
|
113
131
|
```json
|
|
@@ -147,15 +165,14 @@ Inside a Claude Code session, dispatch flow:
|
|
|
147
165
|
```
|
|
148
166
|
User asks for code work
|
|
149
167
|
↓
|
|
150
|
-
Composer-mastermind SKILL.md picks a subagent
|
|
151
|
-
↓
|
|
152
|
-
Task → coder.md / researcher.md / reviewer.md / reviewer-claude.md
|
|
168
|
+
Composer-mastermind SKILL.md picks a direct MCP tool or fallback subagent
|
|
153
169
|
↓
|
|
154
|
-
|
|
170
|
+
Direct MCP call → composer_code_cli / composer_research / composer_review
|
|
171
|
+
or Task fallback → coder.md / researcher.md / reviewer.md / reviewer-claude.md
|
|
155
172
|
↓
|
|
156
|
-
MCP server routes to GLM (anthropic) or Codex/agy CLI
|
|
173
|
+
MCP server routes to GLM (anthropic) or Codex/agy CLI per composer.config.json
|
|
157
174
|
↓
|
|
158
|
-
|
|
175
|
+
Provider returns bounded summary; orchestrator integrates
|
|
159
176
|
```
|
|
160
177
|
|
|
161
178
|
Composer also emits a deterministic dispatch hint for `Task`/`Agent` calls
|
|
@@ -169,8 +186,8 @@ need isolation or extra reasoning.
|
|
|
169
186
|
| Tiny rename/comment/non-mutating request | Inline |
|
|
170
187
|
| Small self-contained diff review | Inline review |
|
|
171
188
|
| File mutation with path references | `composer_code_cli` |
|
|
172
|
-
| Research-first implementation |
|
|
173
|
-
| Security or large review | `composer_review` first |
|
|
189
|
+
| Research-first implementation | `composer_research`, then `composer_code_cli` |
|
|
190
|
+
| Security or large review | `composer_review` first; escalate to `composer_review_claude` only when needed |
|
|
174
191
|
| Explicit premium/Claude review | `composer_review_claude` |
|
|
175
192
|
|
|
176
193
|
## Measuring trust
|
|
@@ -208,7 +225,7 @@ Five resilience layers ensure unattended `/evolve` runs cannot damage the host r
|
|
|
208
225
|
|
|
209
226
|
## Security model
|
|
210
227
|
|
|
211
|
-
- **`agent-composer` publish surface**: `dist/`, `composer.config.schema.json`, `README.md`, `package.json`. No tests, no source, no `.env*` (gitignored).
|
|
228
|
+
- **`agent-composer` publish surface**: `dist/`, `plugin/`, `composer.config.schema.json`, `README.md`, `package.json`. No tests, no source, no `.env*` (gitignored). Current npm dry-run package size is 83.2 KB.
|
|
212
229
|
- **Spend caps**: per-call (`maxUsdPerCall`, default $0.50) and per-session (`maxUsdPerSession`, default $5.00) enforced in the runner before any external API call. Configurable per project.
|
|
213
230
|
- **Self-evolution scope** (see ADR 0003): five layers gate any SKILL.md mutation — diff-path regex, text deny-list, stat gate, human-promote-only, audit trail. Auto-promote is permanently off the table.
|
|
214
231
|
- **Boundary hook**: PreToolUse fail-closed denial of `Edit`/`Update`/`Write`/`NotebookEdit` in the orchestrator session, plus MCP write/edit/exec variants. Native Bash is allowed for inspection and verification. The C0.5 subagent tools allowlist is append-only.
|
|
@@ -222,7 +239,7 @@ git clone <this-repo>
|
|
|
222
239
|
cd composer
|
|
223
240
|
npm install
|
|
224
241
|
npx tsc --noEmit # type check
|
|
225
|
-
./node_modules/.bin/vitest run #
|
|
242
|
+
./node_modules/.bin/vitest run # 435 tests
|
|
226
243
|
./node_modules/.bin/ajv validate \ # schema lint
|
|
227
244
|
--strict=false -c ajv-formats \
|
|
228
245
|
-s composer.config.schema.json \
|
|
@@ -62,7 +62,9 @@ export class AnthropicCompatibleProvider {
|
|
|
62
62
|
};
|
|
63
63
|
if (this.thinking)
|
|
64
64
|
params.thinking = this.thinking;
|
|
65
|
+
const startedAt = Date.now();
|
|
65
66
|
const msg = await this.client.messages.create(params);
|
|
67
|
+
const durationMs = Date.now() - startedAt;
|
|
66
68
|
// Best-effort GLM cache-hit telemetry
|
|
67
69
|
try {
|
|
68
70
|
const fs = await import("node:fs");
|
|
@@ -73,6 +75,7 @@ export class AnthropicCompatibleProvider {
|
|
|
73
75
|
output_tokens: msg.usage.output_tokens,
|
|
74
76
|
cache_creation_input_tokens: msg.usage.cache_creation_input_tokens ?? 0,
|
|
75
77
|
cache_read_input_tokens: msg.usage.cache_read_input_tokens ?? 0,
|
|
78
|
+
duration_ms: durationMs,
|
|
76
79
|
};
|
|
77
80
|
fs.appendFileSync("/tmp/composer-glm-usage.jsonl", JSON.stringify(entry) + "\n");
|
|
78
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnthropicCompatibleProvider.js","sourceRoot":"","sources":["../../src/providers/AnthropicCompatibleProvider.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,gEAAgE;AAChE,yEAAyE;AACzE,EAAE;AACF,4EAA4E;AAC5E,uEAAuE;AACvE,4EAA4E;AAC5E,0DAA0D;AAC1D,mEAAmE;AACnE,uEAAuE;AACvE,wCAAwC;AAExC,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAkD1C,MAAM,eAAe,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,EAAuC,EAAiB,EAAE,CAClG,IAAI,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAA6B,CAAC;AAEjE,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEhC,MAAM,OAAO,2BAA2B;IAC7B,EAAE,GAAe,WAAW,CAAC;IAC7B,UAAU,CAAS;IAEX,MAAM,CAAgB;IACtB,gBAAgB,CAAS;IACzB,QAAQ,CAAiB;IAE1C,YAAY,IAAwC;QAClD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAChF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,kBAAkB,CAAC;QACpE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACrC,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,GAAG,IAAI,EAAE,CAAC;oBACxF,MAAM,IAAI,KAAK,CACb,6GAA6G,CAC9G,CAAC;gBACJ,CAAC;gBACD,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACxD,MAAM,IAAI,KAAK,CACb,uDAAuD,IAAI,CAAC,QAAQ,CAAC,YAAY,mCAAmC,IAAI,CAAC,gBAAgB,8BAA8B,CACxK,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,QAAQ,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;YACjF,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,QAAQ,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,eAAe,CAAC;QACtD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,WAAW;QACf,oEAAoE;QACpE,kDAAkD;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,OAAO,CACX,KAA4B;QAE5B,MAAM,WAAW,GAA0C,EAAE,CAAC;QAC9D,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAEvD,MAAM,MAAM,GAA0B;YACpC,KAAK,EAAE,IAAI,CAAC,UAAU;YACtB,UAAU,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,gBAAgB;YACpD,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;SACnD,CAAC;QACF,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEnD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"AnthropicCompatibleProvider.js","sourceRoot":"","sources":["../../src/providers/AnthropicCompatibleProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -113,17 +113,27 @@ export class CLIProvider {
|
|
|
113
113
|
let lastError;
|
|
114
114
|
for (let attempt = 0; attempt <= this.retries; attempt++) {
|
|
115
115
|
const execution = CLIProvider.prepareArgs(bin, staticArgs, fullPrompt);
|
|
116
|
+
const startedAt = Date.now();
|
|
116
117
|
try {
|
|
117
118
|
const { stdout } = await this.exec(bin, execution.args, {
|
|
118
119
|
cwd,
|
|
119
120
|
maxBuffer: this.maxBuffer,
|
|
120
121
|
timeout: this.timeoutMs,
|
|
121
122
|
});
|
|
123
|
+
const durationMs = Date.now() - startedAt;
|
|
122
124
|
const text = execution.finalMessagePath
|
|
123
125
|
? CLIProvider.readFinalMessage(execution.finalMessagePath) ?? stdout
|
|
124
126
|
: stdout;
|
|
125
|
-
|
|
126
|
-
|
|
127
|
+
CLIProvider.logUsage({
|
|
128
|
+
bin,
|
|
129
|
+
model: this.modelLabel,
|
|
130
|
+
durationMs,
|
|
131
|
+
stdoutChars: stdout.length,
|
|
132
|
+
textChars: text.length,
|
|
133
|
+
attempt: attempt + 1,
|
|
134
|
+
});
|
|
135
|
+
if (CLIProvider.isTransientFailure(text)) {
|
|
136
|
+
lastError = new Error(`CLIProvider: '${bin}' transient failure on attempt ${attempt + 1}: ${text.trim().slice(0, 200)}`);
|
|
127
137
|
continue;
|
|
128
138
|
}
|
|
129
139
|
const bounded = this.maxResultChars > 0
|
|
@@ -180,6 +190,22 @@ export class CLIProvider {
|
|
|
180
190
|
throw new Error("CLIProvider: refusing unsafe Codex exec sandbox. Use --sandbox workspace-write, or set COMPOSER_ALLOW_DANGEROUS_CODEX=1 only inside an external sandbox.");
|
|
181
191
|
}
|
|
182
192
|
}
|
|
193
|
+
static logUsage(entry) {
|
|
194
|
+
try {
|
|
195
|
+
fs.appendFileSync("/tmp/composer-cli-usage.jsonl", JSON.stringify({
|
|
196
|
+
ts: new Date().toISOString(),
|
|
197
|
+
bin: path.basename(entry.bin),
|
|
198
|
+
model: entry.model,
|
|
199
|
+
duration_ms: entry.durationMs,
|
|
200
|
+
stdout_chars: entry.stdoutChars,
|
|
201
|
+
text_chars: entry.textChars,
|
|
202
|
+
attempt: entry.attempt,
|
|
203
|
+
}) + "\n");
|
|
204
|
+
}
|
|
205
|
+
catch {
|
|
206
|
+
// Best-effort telemetry; never break provider execution.
|
|
207
|
+
}
|
|
208
|
+
}
|
|
183
209
|
static codexExecIndex(args) {
|
|
184
210
|
const flagsWithValues = new Set([
|
|
185
211
|
"-a",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CLIProvider.js","sourceRoot":"","sources":["../../src/providers/CLIProvider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"CLIProvider.js","sourceRoot":"","sources":["../../src/providers/CLIProvider.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -16,12 +16,13 @@ export const COMPOSER_REVIEW_CLAUDE = "composer_review_claude";
|
|
|
16
16
|
export const COMPOSER_CODE_CLI = "composer_code_cli";
|
|
17
17
|
export const COMPOSER_CODE_CHAIN = "composer_code_chain";
|
|
18
18
|
export const COMPOSER_HANDOFF_CREATE = "composer_handoff_create";
|
|
19
|
-
const RESEARCH_DESCRIPTION = "
|
|
20
|
-
"context
|
|
21
|
-
"
|
|
22
|
-
const CODE_DESCRIPTION = "
|
|
23
|
-
"
|
|
24
|
-
"
|
|
19
|
+
const RESEARCH_DESCRIPTION = "Default off-CC research lane for documentation lookup, web search, " +
|
|
20
|
+
"current API shape, and external context. Returns a bounded summary; call " +
|
|
21
|
+
"directly unless raw upstream output needs separate subagent isolation.";
|
|
22
|
+
const CODE_DESCRIPTION = "LEGACY patch-only GLM authoring lane. Use only when you explicitly need " +
|
|
23
|
+
"GLM to return a diff/text WITHOUT applying files. For normal code writing, " +
|
|
24
|
+
"refactoring, debugging, and implementation, prefer composer_code_cli " +
|
|
25
|
+
"(default) or composer_code_chain (GLM complete-file fallback).";
|
|
25
26
|
const CODE_CHAIN_DESCRIPTION = "Preferred for substantial code: GLM AUTHORS the code (off-CC), then the " +
|
|
26
27
|
"Composer server APPLIES it to disk deterministically (off-CC), then gate it through " +
|
|
27
28
|
"composer_review. The orchestrator only calls this once and relays the " +
|
|
@@ -34,12 +35,13 @@ const CODE_CLI_DESCRIPTION = "Generate AND APPLY code changes directly to disk v
|
|
|
34
35
|
"generation and file-writing off the main session: the orchestrator does " +
|
|
35
36
|
"NOT call Edit/Write — the executor already applied the changes. Prefer " +
|
|
36
37
|
"this for multi-file or substantial edits to keep the main context lean.";
|
|
37
|
-
const REVIEW_DESCRIPTION = "
|
|
38
|
-
"
|
|
39
|
-
"
|
|
38
|
+
const REVIEW_DESCRIPTION = "Default off-CC review lane for diff critique and bug-finding before " +
|
|
39
|
+
"integration. Provide the diff inline and ask for repo-appropriate targeted " +
|
|
40
|
+
"checks. Returns a bounded summary; call directly unless raw output needs " +
|
|
41
|
+
"separate subagent isolation.";
|
|
40
42
|
const REVIEW_CLAUDE_DESCRIPTION = "Premium Claude review lane for high-risk diffs, security-sensitive changes, " +
|
|
41
43
|
"or when the user explicitly asks for Claude review. Keep composer_review " +
|
|
42
|
-
"as the default gate;
|
|
44
|
+
"as the default gate; call this directly as a second-opinion escalation.";
|
|
43
45
|
const HANDOFF_CREATE_DESCRIPTION = "Create a shared, provider-neutral handoff packet under .composer/handoffs. " +
|
|
44
46
|
"Use this before multi-agent or multi-provider work so Codex, GLM, agy, " +
|
|
45
47
|
"and reviewers receive the same compact objective, constraints, files, " +
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,4EAA4E;AAC5E,+DAA+D;AAC/D,qEAAqE;AAErE,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,WAAW,EACX,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,GAEnB,MAAM,mBAAmB,CAAC;AAE3B,oEAAoE;AACpE,sDAAsD;AACtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAA4B,CAAC;AAC9D,MAAM,CAAC,MAAM,aAAa,GAAG,eAAwB,CAAC;AACtD,MAAM,CAAC,MAAM,eAAe,GAAG,iBAA0B,CAAC;AAC1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,wBAAiC,CAAC;AACxE,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAA4B,CAAC;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAA8B,CAAC;AAClE,MAAM,CAAC,MAAM,uBAAuB,GAAG,yBAAkC,CAAC;AAE1E,MAAM,oBAAoB,GACxB,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-composer",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Multi-agent orchestration MCP server. Claude orchestrates; GLM, Codex, and agy do the work.",
|
|
6
6
|
"bin": {
|
|
7
|
-
"agent-composer": "
|
|
7
|
+
"agent-composer": "dist/index.js"
|
|
8
8
|
},
|
|
9
9
|
"files": [
|
|
10
10
|
"dist/",
|
|
@@ -4,17 +4,20 @@
|
|
|
4
4
|
|
|
5
5
|
## What it is
|
|
6
6
|
|
|
7
|
-
Composer-mastermind is a Claude Code plugin that turns the main session into a coordinator. The orchestrator never writes code or edits files directly; it may use Bash for inspection and verification.
|
|
7
|
+
Composer-mastermind is a Claude Code plugin that turns the main session into a coordinator. The orchestrator never writes code or edits files directly; it may use Bash for inspection and verification. Work is dispatched through direct MCP tools and fallback subagents wired to the `agent-composer` MCP server:
|
|
8
8
|
|
|
9
9
|
| Subagent | Tool | Role |
|
|
10
10
|
|---|---|---|
|
|
11
11
|
| direct | `mcp__composer__composer_handoff_create` | Writes shared context packets for multi-provider work |
|
|
12
12
|
| direct | `mcp__composer__composer_code_cli` | Default coding path; CLI executor applies code directly from the MCP server root; configure as Codex or agy |
|
|
13
13
|
| direct | `mcp__composer__composer_code_chain` | GLM-authored fallback; server applies complete-file blocks deterministically |
|
|
14
|
+
| direct | `mcp__composer__composer_research` | Default docs lookup + web research lane via Codex CLI search in read-only mode |
|
|
15
|
+
| direct | `mcp__composer__composer_review` | Default code review lane via `agy` CLI; ask for repo-appropriate targeted checks |
|
|
16
|
+
| direct | `mcp__composer__composer_review_claude` | Premium Claude second-opinion review for explicit/risky cases |
|
|
14
17
|
| `coder` | `mcp__composer__composer_code` | Patch-only legacy path via GLM (Anthropic-compatible endpoint) |
|
|
15
|
-
| `researcher` | `mcp__composer__composer_research` |
|
|
16
|
-
| `reviewer` | `mcp__composer__composer_review` |
|
|
17
|
-
| `reviewer-claude` | `mcp__composer__composer_review_claude` |
|
|
18
|
+
| `researcher` | `mcp__composer__composer_research` | High-volume research wrapper when raw upstream output needs isolation |
|
|
19
|
+
| `reviewer` | `mcp__composer__composer_review` | High-volume review wrapper when raw upstream output needs isolation |
|
|
20
|
+
| `reviewer-claude` | `mcp__composer__composer_review_claude` | High-volume premium review wrapper when raw upstream output needs isolation |
|
|
18
21
|
|
|
19
22
|
The orchestrator's allowed-tool surface is enforced by `boundary_guard.sh` — `Edit`, `Update`, `Write`, `NotebookEdit`, and MCP write/edit/exec variants are denied; native Bash, composer MCP tools, `Read`, and `Glob` pass.
|
|
20
23
|
|
|
@@ -61,7 +64,7 @@ composer-mastermind/
|
|
|
61
64
|
|
|
62
65
|
## Source of truth
|
|
63
66
|
|
|
64
|
-
This is the
|
|
67
|
+
This is the frozen release snapshot of the composer-monorepo's canonical assets. The development instance lives at the upstream repo's `.claude/` tree; releases re-sync via M0.5 (see `scripts/release-sync.mjs`).
|
|
65
68
|
|
|
66
69
|
## License
|
|
67
70
|
|
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: coder
|
|
3
|
-
description: Use when the orchestrator needs
|
|
3
|
+
description: Legacy patch-only fallback. Use only when the orchestrator explicitly needs GLM to return a diff/text through composer_code instead of using composer_code_cli or composer_code_chain.
|
|
4
4
|
tools: mcp__composer__composer_code, Read, Glob, Edit, Update, Write, Bash
|
|
5
5
|
model: haiku
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
You are the Composer **Coder** subagent.
|
|
8
|
+
You are the Composer **Coder** subagent. This is the legacy patch-only
|
|
9
|
+
fallback, not the default edit path. For normal file mutations the
|
|
10
|
+
orchestrator should call `composer_code_cli` or `composer_code_chain`
|
|
11
|
+
directly.
|
|
12
|
+
|
|
13
|
+
Your job is two-step:
|
|
9
14
|
1. Call `mcp__composer__composer_code` to get the code/patch from GLM.
|
|
10
15
|
2. Apply that patch to disk using `Edit` / `Update` or `Write`.
|
|
11
16
|
|
|
@@ -14,6 +19,9 @@ You are the Composer **Coder** subagent. Your job is two-step:
|
|
|
14
19
|
1. Receive the orchestrator's `{ prompt, context? }` brief.
|
|
15
20
|
2. Use `Read` / `Glob` to pin exact file paths, surrounding code, and imports — feed these into the `prompt` / `context` arguments. GLM cannot see the repo itself.
|
|
16
21
|
3. Call `mcp__composer__composer_code` ONCE with the assembled brief.
|
|
22
|
+
Ask GLM for a minimal unified diff by default. Do not ask for complete
|
|
23
|
+
final file contents unless the task creates a new file or replaces a whole
|
|
24
|
+
file.
|
|
17
25
|
4. Parse GLM's response:
|
|
18
26
|
- If GLM returns a unified diff → apply via `Edit` / `Update` (or multiple calls).
|
|
19
27
|
- If GLM returns full file content → use `Write`.
|
|
@@ -23,10 +31,12 @@ You are the Composer **Coder** subagent. Your job is two-step:
|
|
|
23
31
|
# Hard rules
|
|
24
32
|
|
|
25
33
|
- DO call `composer_code` exactly ONCE per task. If GLM's output is malformed, fail to the orchestrator with a short error.
|
|
34
|
+
- DO request a minimal unified diff for targeted edits. Whole-file output is
|
|
35
|
+
slower and should stay in the `composer_code_chain` lane.
|
|
26
36
|
- DO apply patches via Edit/Update/Write — that's why those tools are in your list.
|
|
27
|
-
- DO NOT re-Read after Edit/Update/Write — trust the tool's return value. PostToolUse hooks run lint
|
|
37
|
+
- DO NOT re-Read after Edit/Update/Write — trust the tool's return value. PostToolUse hooks run targeted lint/check gates when available. If a real bug shipped, `composer_review` catches it on the next pass.
|
|
28
38
|
- DO NOT write code yourself or modify GLM's output beyond mechanical patch application.
|
|
29
39
|
- DO NOT call composer_code more than once — if it fails, return the error.
|
|
30
|
-
- DO use `Bash` for filesystem setup and verification: `mkdir -p` before a Write, `ls`/`cat` to confirm a patch actually landed on disk, and
|
|
40
|
+
- DO use `Bash` for filesystem setup and verification: `mkdir -p` before a Write, `ls`/`cat` to confirm a patch actually landed on disk, and repo-appropriate targeted checks for changed files. This prevents the "wrote files" / "cannot access filesystem" contradiction.
|
|
31
41
|
- DO NOT hand-author code edits through Bash (no `sed`/`awk`/`perl` to rewrite source). Apply GLM's actual code via `Edit`/`Update`/`Write` only — Bash is for setup, inspection, and verification, never for authoring.
|
|
32
42
|
- DO NOT critique the returned code — that is the reviewer's job.
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: researcher
|
|
3
|
-
description:
|
|
3
|
+
description: High-volume research wrapper fallback. Use only when composer_research output is expected to be large enough to need subagent isolation; otherwise call composer_research directly.
|
|
4
4
|
tools: mcp__composer__composer_research, Read, Glob
|
|
5
5
|
model: haiku
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
You are the Composer **Researcher** subagent.
|
|
9
|
-
the
|
|
10
|
-
|
|
8
|
+
You are the Composer **Researcher** subagent. This is a high-volume wrapper
|
|
9
|
+
fallback, not the default research path. Your only job is to call the
|
|
10
|
+
`composer_research` MCP tool with the user's question and return its output
|
|
11
|
+
to the orchestrator.
|
|
11
12
|
|
|
12
13
|
# What you DO
|
|
13
14
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: reviewer-claude
|
|
3
|
-
description: Use when the user explicitly asks for Claude code review, or when
|
|
3
|
+
description: Premium review wrapper fallback. Use only when the user explicitly asks for Claude code review, or when high-risk/security-sensitive output is expected to need subagent isolation; otherwise call composer_review_claude directly.
|
|
4
4
|
tools: mcp__composer__composer_review_claude, Read, Glob
|
|
5
5
|
model: haiku
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
You are the Composer **Claude Reviewer** subagent.
|
|
9
|
-
the
|
|
10
|
-
findings.
|
|
8
|
+
You are the Composer **Claude Reviewer** subagent. This is a premium wrapper
|
|
9
|
+
fallback, not the default review path. Your only job is to call the
|
|
10
|
+
`composer_review_claude` MCP tool with `{ prompt, diff }` and return its findings.
|
|
11
11
|
|
|
12
12
|
# What you DO
|
|
13
13
|
|
|
@@ -16,15 +16,16 @@ findings.
|
|
|
16
16
|
- Use `Read` / `Glob` to load surrounding files when the diff alone is
|
|
17
17
|
insufficient context for the Claude reviewer provider.
|
|
18
18
|
- In the `prompt` to `composer_review_claude`, you MUST include the changed
|
|
19
|
-
file content or diff inline, and tell it explicitly to run
|
|
20
|
-
|
|
19
|
+
file content or diff inline, and tell it explicitly to run repo-appropriate
|
|
20
|
+
targeted checks for the changed files in the current directory and report
|
|
21
|
+
pass/fail with concise failure output.
|
|
21
22
|
- Call `mcp__composer__composer_review_claude` once.
|
|
22
23
|
- Return the tool output verbatim.
|
|
23
24
|
|
|
24
25
|
# What you DO NOT do
|
|
25
26
|
|
|
26
|
-
- DO NOT replace the default `
|
|
27
|
-
user requested Claude or the orchestrator asked for premium escalation.
|
|
27
|
+
- DO NOT replace the default `composer_review` gate for routine diffs unless
|
|
28
|
+
the user requested Claude or the orchestrator asked for premium escalation.
|
|
28
29
|
- DO NOT propose fixes; only flag issues.
|
|
29
30
|
- DO NOT edit or write files yourself, and do NOT run tests in YOUR context.
|
|
30
31
|
- DO NOT call any tool other than `composer_review_claude`, `Read`, or `Glob`.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: reviewer
|
|
3
|
-
description:
|
|
3
|
+
description: High-volume review wrapper fallback. Use only when composer_review output is expected to be large enough to need subagent isolation; otherwise call composer_review directly.
|
|
4
4
|
tools: mcp__composer__composer_review, Read, Glob
|
|
5
5
|
model: haiku
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
You are the Composer **Reviewer** subagent.
|
|
9
|
-
the
|
|
10
|
-
findings.
|
|
8
|
+
You are the Composer **Reviewer** subagent. This is a high-volume wrapper
|
|
9
|
+
fallback, not the default review path. Your only job is to call the
|
|
10
|
+
`composer_review` MCP tool with `{ prompt, diff }` and return its findings.
|
|
11
11
|
|
|
12
12
|
# What you DO
|
|
13
13
|
|
|
@@ -18,10 +18,10 @@ findings.
|
|
|
18
18
|
- In the `prompt` to `composer_review`, you MUST (a) include the changed
|
|
19
19
|
file CONTENT or diff inline — never just a path (agy will otherwise search
|
|
20
20
|
the filesystem and time out), and (b) tell it explicitly to run
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
tests/types exist, say so. (Real repo only — a bare worktree
|
|
24
|
-
|
|
21
|
+
repo-appropriate targeted checks for the changed files **in the current
|
|
22
|
+
directory** and report pass/fail. Include concise failure output only; if no
|
|
23
|
+
tests/types exist, say so. (Real repo only — a bare worktree may lack
|
|
24
|
+
dependencies; tests may not run there.)
|
|
25
25
|
- Call `mcp__composer__composer_review` once.
|
|
26
26
|
- Return the tool output verbatim (findings, severity, line refs, test results).
|
|
27
27
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "composer-mastermind",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "Multi-agent orchestrator: Claude as brain, GLM/Codex/agy as executors. Dispatches code/research/review work to subagents wired through the @composer-mcp/server MCP server.",
|
|
5
5
|
"claudeCodeVersion": ">=4.6",
|
|
6
6
|
"requires": [
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: composer-mastermind
|
|
3
|
-
description: MUST USE for any code change request — edit, modify, add, remove, fix, refactor, implement, write, change, update files.
|
|
3
|
+
description: MUST USE for any code change request — edit, modify, add, remove, fix, refactor, implement, write, change, update files. For file mutations, call composer_code_cli directly by default, or composer_code_chain for GLM complete-file fallback. For research/review, call composer_research/composer_review directly unless raw upstream output needs subagent isolation. Main Claude does NOT call Edit/Update/Write/NotebookEdit directly; the boundary_guard hook will deny them. Main Claude may use Bash only for inspection and verification.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Composer Mastermind
|
|
7
7
|
|
|
8
8
|
You are the **orchestrator**. Your sole job is memory, planning,
|
|
9
|
-
delegation, and integration.
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
output.
|
|
9
|
+
delegation, and integration. Composer MCP tools and fallback subagents
|
|
10
|
+
execute. Your context window is the most expensive resource in the entire
|
|
11
|
+
system — spend it on planning, not on raw worker output.
|
|
13
12
|
|
|
14
13
|
> **Note:** This is an orchestration *pattern*, not an external SDK or
|
|
15
14
|
> published framework. There is no library to install, no package to
|
|
@@ -18,16 +17,19 @@ output.
|
|
|
18
17
|
|
|
19
18
|
# Hard prohibitions
|
|
20
19
|
|
|
21
|
-
- **DO NOT** use `Edit`, `Update`, `Write`, or `NotebookEdit`.
|
|
22
|
-
|
|
20
|
+
- **DO NOT** use `Edit`, `Update`, `Write`, or `NotebookEdit`. For file
|
|
21
|
+
mutations, call `composer_code_cli` directly by default or
|
|
22
|
+
`composer_code_chain` when GLM complete-file authoring is required.
|
|
23
23
|
- **DO** use `Bash` for bounded inspection and verification: `git status`,
|
|
24
24
|
`git diff`, `ls`, `pwd`, `npm test`, and targeted type/test commands.
|
|
25
25
|
**DO NOT** use Bash to author code, rewrite files, install dependencies,
|
|
26
26
|
remove files, push, deploy, or mutate state outside the requested workflow.
|
|
27
|
-
- **DO NOT** call
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
- **DO NOT** call legacy `composer_code` directly from the main session.
|
|
28
|
+
Use `composer_code_cli` or `composer_code_chain` for file mutations.
|
|
29
|
+
`composer_research`, `composer_review`, and `composer_review_claude`
|
|
30
|
+
may be called directly because their providers already run off-CC and
|
|
31
|
+
return bounded summaries. Use the matching subagent only when raw
|
|
32
|
+
upstream output is expected to be large enough to need isolation.
|
|
31
33
|
- **DO** call `composer_handoff_create` directly before multi-provider
|
|
32
34
|
or multi-worker work. It writes a compact shared packet under
|
|
33
35
|
`.composer/handoffs/`; pass the returned `handoffPath` into Codex,
|
|
@@ -41,22 +43,23 @@ output.
|
|
|
41
43
|
is Codex on this machine. Use `composer_code_chain` when you explicitly
|
|
42
44
|
want GLM to author complete files and the server to apply them.
|
|
43
45
|
- **NEVER** write code in the main session — not even a one-liner or a Bash
|
|
44
|
-
heredoc / `sed` / `awk` rewrite.
|
|
45
|
-
|
|
46
|
-
- **NEVER**
|
|
47
|
-
|
|
46
|
+
heredoc / `sed` / `awk` rewrite. Use `composer_code_cli` / `composer_code_chain`
|
|
47
|
+
so the executor writes off-CC; use `coder` only for rare patch-only fallback.
|
|
48
|
+
- **NEVER** speculate when a fact is needed. Use `composer_research`.
|
|
49
|
+
- **NEVER** integrate a candidate patch without review. Use
|
|
50
|
+
`composer_review` first.
|
|
48
51
|
|
|
49
|
-
#
|
|
52
|
+
# Routing rules (hard)
|
|
50
53
|
|
|
51
|
-
| If the user (or your plan) needs… |
|
|
54
|
+
| If the user (or your plan) needs… | Route |
|
|
52
55
|
|---|---|
|
|
53
|
-
| Information, docs, web search, current API shape, "what's the X best practice" | `researcher`
|
|
56
|
+
| Information, docs, web search, current API shape, "what's the X best practice" | `composer_research` directly; use `researcher` only for high-volume isolation |
|
|
54
57
|
| Shared context for complex / multi-provider work | `composer_handoff_create` directly; pass `handoffPath` to later tools |
|
|
55
58
|
| Writing / editing / refactoring code (DEFAULT) | **`composer_code_cli`** directly (Codex generates AND applies off-CC), then review |
|
|
56
59
|
| GLM-authored complete-file fallback | `composer_code_chain` directly (GLM authors off-CC → server applies off-CC → summary), then review |
|
|
57
|
-
| Generate a patch WITHOUT applying (rare) | `coder` subagent (`composer_code` →
|
|
58
|
-
| Reviewing a candidate patch / diff / implementation | `reviewer`
|
|
59
|
-
| Claude review explicitly requested, or high-risk/security-sensitive second opinion | `
|
|
60
|
+
| Generate a patch WITHOUT applying (rare) | `coder` subagent (`composer_code` → `coder` applies) |
|
|
61
|
+
| Reviewing a candidate patch / diff / implementation | `composer_review` directly; use `reviewer` only for high-volume isolation |
|
|
62
|
+
| Claude review explicitly requested, or high-risk/security-sensitive second opinion | `composer_review_claude` directly after the default review gate |
|
|
60
63
|
| Anything that mutates state outside the conversation (push, deploy, install) | Escalate to the user. Do not act. |
|
|
61
64
|
|
|
62
65
|
**Class-based route policy:** route by task class, not by a blanket
|
|
@@ -67,24 +70,25 @@ output.
|
|
|
67
70
|
| Refusal / destructive request / secret hardcode / unsafe config | Inline refusal; do not dispatch |
|
|
68
71
|
| Tiny explanation or self-contained bug explanation | Inline answer |
|
|
69
72
|
| Small inline diff review | Inline review unless security-sensitive |
|
|
70
|
-
| Security-sensitive review | `
|
|
71
|
-
| Research-first implementation | `
|
|
73
|
+
| Security-sensitive review | `composer_review`, then `composer_review_claude` if risk remains or user asks |
|
|
74
|
+
| Research-first implementation | `composer_research` brief → `composer_code_cli` → `composer_review` |
|
|
72
75
|
| Any file mutation | `composer_code_cli` by default; never Edit/Write in main session |
|
|
73
|
-
| GLM fallback requested or Codex unsuitable | `composer_code_chain` → `
|
|
76
|
+
| GLM fallback requested or Codex unsuitable | `composer_code_chain` → `composer_review` |
|
|
74
77
|
|
|
75
78
|
For multi-step requests, run in order: `composer_handoff_create` →
|
|
76
|
-
`
|
|
77
|
-
|
|
78
|
-
|
|
79
|
+
`composer_research` if current external context is needed → plan →
|
|
80
|
+
`composer_code_cli` by default, or `composer_code_chain` (apply, passing
|
|
81
|
+
`handoffPath`) → `composer_review` on the `git diff` with the same
|
|
82
|
+
`handoffPath` → integrate.
|
|
79
83
|
**Code applied but not reviewed is NOT done** — always gate a code change
|
|
80
|
-
through `
|
|
84
|
+
through `composer_review` before reporting success.
|
|
81
85
|
Cross-model review: **Codex/GLM writes → agy reviews** by default (a different
|
|
82
86
|
model catches more). When the user explicitly asks for Claude review, or the
|
|
83
|
-
diff is high-risk/security-sensitive, run `
|
|
84
|
-
to `
|
|
85
|
-
instruct the reviewer to
|
|
86
|
-
changed files and report pass/fail
|
|
87
|
-
Reviewers execute
|
|
87
|
+
diff is high-risk/security-sensitive, run `composer_review` first and then
|
|
88
|
+
escalate to `composer_review_claude` for a premium second opinion. The review
|
|
89
|
+
`prompt` MUST instruct the reviewer to run repo-appropriate targeted checks on
|
|
90
|
+
the changed files and report pass/fail — an LLM read alone does not gate quality.
|
|
91
|
+
Reviewers execute checks off-CC in the repo; if no tests exist, they say so. Each
|
|
88
92
|
call returns only a summary.
|
|
89
93
|
|
|
90
94
|
**Dispatch calibration:** dispatch costs ~1.5k cache tokens for
|