OpenCode MCP Bridge v0.3.0
Added
- New
worker_waittool (requires v0.3.0 code): bounded server-side
long-poll for one task. Returns on state or message change, or at the
finitetimeout_sdeadline (default 30, clamped 1-120) with
timed_out=trueandnext_action="worker_wait". Read-only with
include_output=falsestate-only waits; no client sleep loops.
Served on/worker-mcp(now six worker tools) and/mcp(now
17 tools); auto-approved alongsideworker_status,worker_catalog,
andworker_verifyin.mcp.json. - Stable additive task contracts:
worker_run,worker_wait,
worker_status,worker_verify,worker_cleanup, and
worker_catalogkeep every existing key and addstate,timed_out,
retryable,next_action,error_code(for exampletask_not_found
for a missing task, elsenull), and a conciseevidenceobject.
Existing clients keep working. Truthfuloutput_schemaon every
worker tool, including the full status field set onworker_verify. - Deterministic MCP conformance smoke tests
(tests/test_mcp_conformance.py): handshake negotiation, exact
6/17 tool surfaces, truthful wire schemas and annotations,
free-first catalog recommendations, dedup, error/scope behavior,
and bounded output. Focusedworker_waittests
(tests/test_worker_wait.py) prove bounded waits, read-only
behavior, and backward-compatible status contracts. - Harness and adoption documentation: coordinator-ergonomics README
section,worker_wait-first workflow indocs/tool-api.md, skills
(delegate-to-opencode,recover-opencode-task,
coordinate-opencode-worker) preferring boundedworker_waitwith
worker_statussnapshots and theworker_verifyevidence gate, and
a six-toolscripts/smoke.sh. - Published plugin versions: Codex
opencode-worker0.3.0
(.codex-plugin/plugin.json, marketplace refv0.3.0) and Claude
opencode-worker0.3.0
(plugins/claude-code/.claude-plugin/plugin.json,
.claude-plugin/marketplace.json). Bridge and registry metadata
(pyproject.toml,server.json) track 0.3.0.
Models: free Muse Spark 1.3 default with paid fallback only when explicitly chosen.
Candidate: 30ea7c43a592677d6651e35fb9c3e45d929a9198
Merge: PR #30 into master
Tag: v0.3.0 on merged master