What's new
Added
- Memory provider contract (
scripts/lib/memory.sh) — unified façade over claude-mem and mcp-memory-service backends. Callers usememory_search,memory_observe,memory_context,memory_available. Auto-detectsmcp-memory-serviceby scanningmcpServersconfig — detection never spawnsuvxspeculatively (avoids accidental Torch/CUDA pull). Env overrides:OCTOPUS_MEMORY_BACKEND,OCTOPUS_MEMORY_SCOPE,OCTOPUS_MEMORY_SEARCH_MERGE. Closes #220 discussion. - Gemini in-band model fallback (
scripts/helpers/gemini-exec.sh) — on404 / ModelNotFoundError, retries with next entry inOCTOPUS_GEMINI_FALLBACK_MODELS(default:gemini-2.5-flash). Transient errors (429, 5xx) are not retried. Stdin cached to tempfile so replay works across attempts. Configurable viaOCTOPUS_GEMINI_FALLBACK_QUIET. - Agent output cap —
run_agent_synctruncates atOCTOPUS_AGENT_MAX_OUTPUT_BYTES(default 256 KiB, set to 0 to disable). Tail-biased: preserves first 4 KiB + last ~252 KiB so Codex-style deliverable summaries survive. - Partial-writes diagnostic on timeout — when dispatch exits 124/143, surfaces files written before SIGTERM so users know completed work exists. Skips silently on macOS BSD find.
Fixed
doctor smokesilently aborting — five converging defects resolved:((var++))underset -eo pipefail— changed to((++var))- Double
shiftinorchestrate.shdiscarded thesmokecategory arg - Codex 0.120.0 rejects prompt as positional arg — now piped via stdin
- Gemini cold-start exceeded hardcoded 10s timeout —
OCTOPUS_GEMINI_SMOKE_TIMEOUT(default 30s) - Concurrent-write race corrupted
/tmp/octo-model-cache-*.json— self-heals viajq -cse
- Scheduler version hardcoded to
v8.16.0— 7 major versions stale. Newoctopus_plugin_version()reads fromplugin.jsonat runtime.validate-release.shwarns when no git tag matches current version.
Changed
session.shroutes phase-completion observations throughmemory_observeinstead of callingclaude-mem-bridge.shdirectly — existing claude-mem deployments unaffected.- README update/reinstall steps include
marketplace update/marketplace removeto prevent stale cache. - CI:
actions/github-scriptv8 → v9.
Upgrading
claude plugin marketplace update https://github.com/nyldn/claude-octopus.git
claude plugin update octo