@enderfga/claw-orchestrator 7.7.0 → 7.8.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enderfga/claw-orchestrator",
3
- "version": "7.7.0",
3
+ "version": "7.8.0",
4
4
  "description": "Claw Orchestrator \u2014 run Claude Code, Codex, Antigravity, Grok Build, OpenCode 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, install as an OpenClaw plugin, or run standalone. Persistent sessions, multi-agent council, ultraplan, ultrareview, autoloop, tool orchestration.",
5
5
  "type": "module",
6
6
  "main": "./dist/src/index.js",
@@ -114,6 +114,13 @@ Other engines are absent for different reasons:
114
114
  straight through, so there is nothing in the registry to enumerate. An opencode
115
115
  session is reachable by naming the model, just not by picking it from this list.
116
116
 
117
+ ## Generated images
118
+
119
+ When the engine generates an image in a turn (Codex does, when asked for one), the agent names the
120
+ file's path in a text chunk and then sends the image itself as an `image` content block, so a client
121
+ that renders images shows it and one that does not still gets the path. Files over 8 MB are named
122
+ only.
123
+
117
124
  ## Resuming sessions
118
125
 
119
126
  Sessions outlive the agent process. `initialize` advertises
@@ -124,6 +124,8 @@ A genuine per-agent send timeout is recoverable but is never retried
124
124
  automatically: the underlying agent may still complete and cause side effects.
125
125
  The runner pauses with an `awaiting_resume` reason and records the immutable
126
126
  logical dispatch as `pending_dispatch`, including its stable `dispatch_id`.
127
+ Live runner state transitions are checkpointed, so a non-owning
128
+ `autoloop_status` shows both a recoverable send-timeout pause and an operator pause.
127
129
  Resume may supply only a finite, in-range `send_timeout_ms` that is strictly
128
130
  larger than the latest effective value, together with the matching
129
131
  `pending_dispatch_id` when a dispatch is pending. Legacy runs start comparison
@@ -456,7 +458,11 @@ Resume is explicit. `POST /autoloop/<id>/resume` (or
456
458
  `SessionManager.autoloopResume()`) restarts a run from its stored spec.
457
459
  Custom-engine configs are the one thing the spec does not carry (they can hold
458
460
  secrets), so a resume must be given them again. Cancelling a run stops all three
459
- agents, the same as `autoloop_stop`.
461
+ agents, the same as `autoloop_stop`. If the highest committed Coder iteration
462
+ has ledger artifacts and no `verdict.json`, and `HEAD` still names that iter,
463
+ resume delivers one `review_request` for it and the dispatcher persists the
464
+ Reviewer verdict; it does not send a new Coder directive. An in-flight send is
465
+ still not retried, and there is no message outbox.
460
466
 
461
467
  ## Known limitations
462
468
 
@@ -2,12 +2,13 @@
2
2
 
3
3
  This document tracks which Claude Code CLI version Claw Orchestrator is currently synced to, and which features have been integrated. Recent rows also record the other engines' versions checked in the same sync.
4
4
 
5
- ## Currently tracked: **Claude Code CLI 2.1.291** (as of 2026-10-07, plugin v7.7.0)
5
+ ## Currently tracked: **Claude Code CLI 2.1.292** (as of 2026-10-07, plugin v7.8.0)
6
6
 
7
7
  ## Sync history
8
8
 
9
9
  | Plugin Version | Claude CLI Version | Date | Notable integrations |
10
10
  | ------------------- | ------------------ | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
11
+ | v7.8.0 | 2.1.292 | 2026-10-07 | CC 2.1.291→2.1.292, agy 1.3.0→1.3.1, OpenCode 1.18.34→1.18.35; Codex 0.160.1 and grok 1.0.46 unchanged. No flag surface changed. Integrated: Codex image generation surfaced as `images` on the send result (`codex exec` from `$CODEX_HOME/generated_images/<thread>/`, `codex-app` from the `imageGeneration` item). Read, no change needed: CC 2.1.292 negotiates MCP protocol 2026-07-28 with local stdio servers by default — `clawo-mcp` answers with 2025-11-25 and connects with no delay (measured against `MCP_PROTOCOL_NEGOTIATION=legacy`). |
11
12
  | v7.7.0 | 2.1.291 | 2026-10-07 | CC 2.1.289→2.1.291, Codex 0.160.0→0.160.1, agy 1.2.17→1.3.0; grok 1.0.46 and OpenCode 1.18.34 unchanged. No flag surface changed. Integrated: `--chrome` behind a `chrome` session option (2.1.290 stopped project settings from turning Claude in Chrome on, so the flag is the way in); `system/model_refusal_fallback` recorded per turn in the ledger. Read, no change needed: Codex's `computer_use` feature is the ChatGPT desktop app's Computer Use plugin, not a tool in `codex exec`, which reports none; agy 1.3.0 is interactive-view changes. |
12
13
  | v7.6.2 | 2.1.289 | 2026-10-05 | CC 2.1.286→2.1.289, Codex 0.159.3→0.160.0, agy 1.2.14→1.2.17, grok 1.0.44→1.0.46; OpenCode 1.18.34 unchanged. No flag surface changed, no wrapper change. Read, no change needed: CC 2.1.288 limits background-command time only in unattended (`-p`) sessions, which these already are; agy 1.2.16 fixes `-p` runs exiting before the agent answers a finished background command, consistent with the 7.5.6 deadline handling. |
13
14
  | v7.6.1 | 2.1.286 | 2026-10-01 | CC 2.1.284→2.1.286, Codex 0.159.0→0.159.3, agy 1.2.13→1.2.14, OpenCode 1.18.33→1.18.34; grok 1.0.44 unchanged. No flag surface changed. Integrated: `gpt-6.1-sol` registered ($2/$10, cache reads at 5% of input); a Codex session with no model is priced as the model Codex reports it ran rather than `gpt-5.5`. Read, no change needed: CC 2.1.285 starts `-p` sessions on third-party providers or with telemetry off in auto mode when no permission mode is set (this wrapper always passes `--permission-mode`); CC 2.1.286 resume fixes after parallel tool calls. Gemini 4 is not yet released: no API id, price or `agy models` entry. |
@@ -28,7 +28,7 @@ SessionManager
28
28
 
29
29
  ### Claude Code (`engine: 'claude'`)
30
30
 
31
- Default engine. Long-running subprocess with streaming JSON I/O. Tested with Claude Code CLI **2.1.291**.
31
+ Default engine. Long-running subprocess with streaming JSON I/O. Tested with Claude Code CLI **2.1.292**.
32
32
 
33
33
  - Persistent multi-turn conversations
34
34
  - Real-time streaming (text, tool_use, tool_result, system events)
@@ -83,6 +83,11 @@ Wraps the `codex exec` subcommand. Each `send()` spawns a new process. Tested wi
83
83
  - Requires `codex` CLI >= 0.119 (for `exec resume`): `npm install -g @openai/codex`
84
84
  - The prompt is sent on stdin (`codex exec … -`), never on the command line.
85
85
  - **Windows:** the npm `.cmd` shim launches through `src/engine-spawn.ts` (cross-spawn), which escapes the remaining arguments for `cmd.exe`. Because the prompt is on stdin it arrives unchanged, newlines and quotes included. A timed-out turn ends the whole process tree (`taskkill /T /F`), not only `cmd.exe`.
86
+ - **Image generation**: ask for an image and Codex generates it with its built-in tool and saves it under
87
+ `$CODEX_HOME/generated_images/<thread_id>/`. `codex exec --json` reports no event for it, so the
88
+ adapter lists the files the turn added there and returns them as `images` on the send result
89
+ (`codex-app` reads them from the `imageGeneration` item, with the revised prompt). It uses the
90
+ account's image-generation allowance.
86
91
  - **Does not support `/goal`** — for that, use `engine: 'codex-app'` below
87
92
 
88
93
  ```typescript
@@ -128,7 +133,7 @@ await manager.startSession({
128
133
 
129
134
  Wraps Google's **Antigravity CLI** (`agy`) — the successor to Gemini CLI (consumer
130
135
  Gemini CLI tiers stopped serving 2026-06-18). Each `send()` spawns a new process
131
- in print mode. Tested with `agy` **1.3.0**.
136
+ in print mode. Tested with `agy` **1.3.1**.
132
137
 
133
138
  - One-shot execution per message (no persistent subprocess)
134
139
  - **Structured output and real usage** — `--output-format stream-json` emits an
@@ -73,11 +73,13 @@ Send a message and get the response.
73
73
  | `timeout` | number | | Timeout in ms (default 300000) |
74
74
  | `stream` | boolean | | Collect streaming chunks in result |
75
75
 
76
- Returns `{ ok, output, sessionId, error?, permissionDenials? }`. `permissionDenials` lists the tool
76
+ Returns `{ ok, output, sessionId, error?, permissionDenials?, images? }`. `permissionDenials` lists the tool
77
77
  calls the engine refused during the turn — `[{ toolName, toolUseId?, input? }]` — and is present only
78
78
  when there was at least one. Check it even when `error` is absent: a turn whose tool calls were all
79
79
  denied still ends as a success. See [sessions.md](./sessions.md) on what "succeeded" does and does
80
- not mean.
80
+ not mean. `images` lists the images the engine generated in this turn as `{ path, revisedPrompt? }`,
81
+ with `path` a file on the machine running the orchestrator; Codex (`codex` and `codex-app`) generates
82
+ them when asked for an image.
81
83
 
82
84
  ### `session_handoff`
83
85