@enderfga/claw-orchestrator 7.19.0 → 7.20.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 +2 -0
- package/dist/src/fanout.d.ts +7 -0
- package/dist/src/fanout.js.map +1 -1
- package/dist/src/index.js +19 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/kernel/engine.js +14 -0
- package/dist/src/kernel/engine.js.map +1 -1
- package/dist/src/kernel/nodes/fanout.d.ts +8 -1
- package/dist/src/kernel/nodes/fanout.js +143 -22
- package/dist/src/kernel/nodes/fanout.js.map +1 -1
- package/dist/src/kernel/nodes/index.d.ts +2 -2
- package/dist/src/kernel/nodes/index.js +3 -3
- package/dist/src/kernel/nodes/index.js.map +1 -1
- package/dist/src/kernel/templates/index.d.ts +7 -0
- package/dist/src/kernel/templates/index.js +18 -2
- package/dist/src/kernel/templates/index.js.map +1 -1
- package/dist/src/kernel/types.d.ts +20 -0
- package/dist/src/kernel/types.js.map +1 -1
- package/package.json +1 -1
- package/skills/references/tools.md +11 -11
- package/skills/references/workflow.md +12 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/kernel/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/kernel/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAsbH,MAAM,CAAC,MAAM,mBAAmB,GAAwB,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AAE7F,MAAM,UAAU,kBAAkB,CAAC,CAAW;IAC5C,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@enderfga/claw-orchestrator",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.20.0",
|
|
4
4
|
"description": "Claw Orchestrator — run Claude Code, Codex, Antigravity, Grok Build, OpenCode, any ACP agent and custom coding CLIs as one unified runtime. Drop into Hermes Agent, Claude Desktop, Cursor, Cline, Continue, Zed, Windsurf, Goose or any Model Context Protocol (MCP) host, serve editors as an ACP agent, install as an OpenClaw plugin, or run standalone. Persistent sessions, durable resumable workflows, acceptance checks the runtime runs itself, fan-out, multi-agent council, Codex /goal runs, autoloop, ultraplan, ultrareview, and a per-turn cost ledger with spend caps.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/src/index.js",
|
|
@@ -373,17 +373,17 @@ Run one task across N engine/model agents **in parallel** and collect their answ
|
|
|
373
373
|
|
|
374
374
|
### `fanout_start`
|
|
375
375
|
|
|
376
|
-
| Parameter | Type | Required | Description
|
|
377
|
-
| ------------------------------------ | ------- | -------- |
|
|
378
|
-
| `task` | string | yes | Shared task sent to every agent, optionally after its `persona`.
|
|
379
|
-
| `projectDir` | string | yes | Working directory the agents run in, unless an agent names its own cwd.
|
|
380
|
-
| `agents` | array | yes | Up to 16 specs: `{ name, engine?, model?, effort?, prompt?, persona?, cwd?, baseUrl?, permissionMode?, sandboxMode?, customEngine?, acpAgent? }`. Names must be unique (each forms a session name); `permissionMode` defaults to `bypassPermissions`. `cwd` gives the agent its own working directory, absolute or relative to `projectDir` (the default); each result in `fanout_status` records the `cwd` it ran in. |
|
|
381
|
-
| `synthesize` | boolean | | Run a final synthesis pass over the successful results (needs ≥2).
|
|
382
|
-
| `synthesisModel` / `synthesisEngine` | string | | Model/engine for the synthesis pass (default engine `claude`).
|
|
383
|
-
| `synthesisAcpAgent` | string | | With `synthesisEngine: 'acp'`: the ACP agent preset the synthesis pass starts.
|
|
384
|
-
| `agentTimeoutMs` | number | | Per-agent timeout (default 600000).
|
|
385
|
-
| `maxTurnsPerAgent` | number | | Max agent loop turns (default 30).
|
|
386
|
-
| `maxBudgetUsd` | number | | Per-agent spend cap.
|
|
376
|
+
| Parameter | Type | Required | Description |
|
|
377
|
+
| ------------------------------------ | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
378
|
+
| `task` | string | yes | Shared task sent to every agent, optionally after its `persona`. |
|
|
379
|
+
| `projectDir` | string | yes | Working directory the agents run in, unless an agent names its own cwd. |
|
|
380
|
+
| `agents` | array | yes | Up to 16 specs: `{ name, engine?, model?, effort?, prompt?, persona?, cwd?, objective?, baseUrl?, permissionMode?, sandboxMode?, customEngine?, acpAgent? }`. Names must be unique (each forms a session name); `permissionMode` defaults to `bypassPermissions`. `cwd` gives the agent its own working directory, absolute or relative to `projectDir` (the default); each result in `fanout_status` records the `cwd` it ran in. `objective` runs the agent as a goal (engine `claude` or `codex`, required) with optional `tokenBudget`, `timeoutMs`, `stallMs`, `capacityRetry`; its result adds `goal: { runId, status, tokensUsed, threadId }`. Not with `synthesize`. |
|
|
381
|
+
| `synthesize` | boolean | | Run a final synthesis pass over the successful results (needs ≥2). |
|
|
382
|
+
| `synthesisModel` / `synthesisEngine` | string | | Model/engine for the synthesis pass (default engine `claude`). |
|
|
383
|
+
| `synthesisAcpAgent` | string | | With `synthesisEngine: 'acp'`: the ACP agent preset the synthesis pass starts. |
|
|
384
|
+
| `agentTimeoutMs` | number | | Per-agent timeout (default 600000). |
|
|
385
|
+
| `maxTurnsPerAgent` | number | | Max agent loop turns (default 30). |
|
|
386
|
+
| `maxBudgetUsd` | number | | Per-agent spend cap. |
|
|
387
387
|
|
|
388
388
|
Runs in the background; returns `{ ok, id, status, ... }`. Poll with `fanout_status`.
|
|
389
389
|
Each agent's optional `effort` accepts `low`, `medium`, `high`, `xhigh`, `max`,
|
|
@@ -190,18 +190,18 @@ Every node has an `id` and a `kind`, plus these optional fields:
|
|
|
190
190
|
|
|
191
191
|
The kind-specific fields:
|
|
192
192
|
|
|
193
|
-
| Kind | Fields
|
|
194
|
-
| ----------------------------------- |
|
|
195
|
-
| `agent` | `prompt` (required); `engine`, `model`, `effort`, `acpAgent` (a bundled ACP preset id, for `engine: "acp"`); `cwd` (default: the run's); `sessionName`, to keep one conversation across visits and nodes (each turn's process stops, and the next start under the name resumes the conversation; the name outlives the run, so make it unique to the run); `permissionMode` (default `bypassPermissions`); `appendSystemPrompt`, standing instructions for the session; `disallowedTools`, tools the session may not use (engines `claude` and `grok`; refused at start on the others)
|
|
196
|
-
| `fanout` | `prompt` (required, the shared task) and `agents` (required); `synthesize`, `synthesisEngine` (default `claude`), `synthesisModel`, `synthesisAcpAgent`, `synthesisPermissionMode` (default `bypassPermissions`); `maxTurnsPerAgent` and `maxBudgetUsd`, per agent; `cwd`; `agentTimeoutMs`. An agent's own `cwd` (absolute, or relative to the node's) starts it in a directory of its own, so agents that each write code do not edit the same files; every result records the `cwd` it ran in
|
|
197
|
-
| `council` | `task` (required) and `agents` (required); `projectDir` (default: the run's cwd); `maxRounds` (default 15, as for `council_start`); `maxTurnsPerAgent` and `maxBudgetUsd`, per agent; `defaultPermissionMode`; `agentTimeoutMs`
|
|
198
|
-
| `verifier` | `contract` (required): an inline contract, or `"run"` for the run-level one; `cwd` (default: the run's)
|
|
199
|
-
| `human_gate` | `prompt` (required)
|
|
200
|
-
| `router` | `routes` (required): `[{ "when": <condition>, "to": <node id> }]`, first match wins; `default`, taken when nothing matches (omitted: fall through to the next node)
|
|
201
|
-
| `subflow` | `workflow` (required): an inline `WorkflowSpec`, or the id of an existing run, whose stored spec runs again as a new child run. Template names do not resolve here
|
|
202
|
-
| `goal` | `objective` (required); `engine`, `cwd`, `model`, `effort`, `sandboxMode`, `launcher`, `threadId`, `tokenBudget`, `capacityRetry`, `stallMs`, `disallowedTools` (`claude` only; refused at start on `codex`) — see [Goal](#goal)
|
|
203
|
-
| `autoloop` | `workspace` and `config` (the `autoloop_start` options). Started by `autoloop_start`
|
|
204
|
-
| `ultraapp_synth`, `ultraapp_deploy` | `appRunId`, `runDir`, `slug`; the deploy stage adds `version` and `codebasePath`. Started by UltraApp builds
|
|
193
|
+
| Kind | Fields |
|
|
194
|
+
| ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
195
|
+
| `agent` | `prompt` (required); `engine`, `model`, `effort`, `acpAgent` (a bundled ACP preset id, for `engine: "acp"`); `cwd` (default: the run's); `sessionName`, to keep one conversation across visits and nodes (each turn's process stops, and the next start under the name resumes the conversation; the name outlives the run, so make it unique to the run); `permissionMode` (default `bypassPermissions`); `appendSystemPrompt`, standing instructions for the session; `disallowedTools`, tools the session may not use (engines `claude` and `grok`; refused at start on the others) |
|
|
196
|
+
| `fanout` | `prompt` (required, the shared task) and `agents` (required); `synthesize`, `synthesisEngine` (default `claude`), `synthesisModel`, `synthesisAcpAgent`, `synthesisPermissionMode` (default `bypassPermissions`); `maxTurnsPerAgent` and `maxBudgetUsd`, per agent; `cwd`; `agentTimeoutMs`. An agent's own `cwd` (absolute, or relative to the node's) starts it in a directory of its own, so agents that each write code do not edit the same files; every result records the `cwd` it ran in. An agent with an `objective` runs as a goal instead of one turn (engine `claude` or `codex`, required; `tokenBudget`, `timeoutMs`, `stallMs`, `capacityRetry` as on a goal node): each goal runs in a child run of one `goal` node, checkpointed in `data.goalRuns`, so a resumed parent reattaches to it instead of starting it again, and its result carries `goal: { runId, status, tokensUsed, threadId }`. Goal agents run beside the turn agents; `synthesize` is refused with them, and the node's `timeoutMs` must cover the longest goal (`fanout_start` sizes it so) |
|
|
197
|
+
| `council` | `task` (required) and `agents` (required); `projectDir` (default: the run's cwd); `maxRounds` (default 15, as for `council_start`); `maxTurnsPerAgent` and `maxBudgetUsd`, per agent; `defaultPermissionMode`; `agentTimeoutMs` |
|
|
198
|
+
| `verifier` | `contract` (required): an inline contract, or `"run"` for the run-level one; `cwd` (default: the run's) |
|
|
199
|
+
| `human_gate` | `prompt` (required) |
|
|
200
|
+
| `router` | `routes` (required): `[{ "when": <condition>, "to": <node id> }]`, first match wins; `default`, taken when nothing matches (omitted: fall through to the next node) |
|
|
201
|
+
| `subflow` | `workflow` (required): an inline `WorkflowSpec`, or the id of an existing run, whose stored spec runs again as a new child run. Template names do not resolve here |
|
|
202
|
+
| `goal` | `objective` (required); `engine`, `cwd`, `model`, `effort`, `sandboxMode`, `launcher`, `threadId`, `tokenBudget`, `capacityRetry`, `stallMs`, `disallowedTools` (`claude` only; refused at start on `codex`) — see [Goal](#goal) |
|
|
203
|
+
| `autoloop` | `workspace` and `config` (the `autoloop_start` options). Started by `autoloop_start` |
|
|
204
|
+
| `ultraapp_synth`, `ultraapp_deploy` | `appRunId`, `runDir`, `slug`; the deploy stage adds `version` and `codebasePath`. Started by UltraApp builds |
|
|
205
205
|
|
|
206
206
|
An entry in a fan-out's or council's `agents` takes `name` (required), `engine`,
|
|
207
207
|
`model`, `effort`, `acpAgent`, `persona`, `prompt`, `permissionMode` and `baseUrl`;
|