The October round covered tags through October 23. Since then: 105 releases across nine products.

This round was about questions that can reach a person (MCP elicitation), sessions that keep their place, and edits that can prove they still target the right lines. We also launched Unsame, a hosted playbook service for repeated writing, alongside mcp-variety, its free local option.


The count

Repo Range Releases
octolib 0.45.2 → 0.52.3 30
octomind 0.61.0 → 0.70.1 25
octohub 0.13.1 → 0.16.9 21
octofs 0.20.0 → 0.23.3 13
octocode 0.28.0 → 0.29.2 5
octobrain 0.14.9 → 0.15.2 5
synx 0.1.8 → 0.1.10 3
octoweb 0.20.0 → 0.21.0 2
yoda 2.6.0 1
Total 105

Sixteen tags contain only dependency, maintenance or tooling changes. OctoHub has no 0.14.4 tag. Every new tag of Octomind, Octofs, Octolib, Octocode, Octobrain and Synx reached crates.io.

Before you upgrade

Version What breaks What to do
Octomind 0.61 Config advances from v22 to v24. The migration adds commit_attribution, whose default appends the Octomind co-author trailer, and the repeated-round stop. /context system is no longer accepted. A WebSocket disconnect no longer cancels the running turn. Review the new trailer default; set commit_attribution = "" to disable it. Use /context all, /context assistant, /context user, /context tool or /context large. Send cancel to stop a turn from a WebSocket client.
Octomind 0.63 Claude 3.5 Haiku, Opus 4, Opus 4.1, Sonnet 4 and Sonnet 4.5 are refused, and a config that names one fails. Change the model before you upgrade.
Octomind 0.64 recite_note in the Rust API now takes the resolved request conditions as an argument. Update custom Rust callers; ordinary CLI use needs no code change.
Octomind 0.66 / Octofs 0.21 Rendered source lines use N:hh IDs. Append positions accept only 0, -1 or a verified line ID; batch-edit range ends require an ID. Copy IDs from view output instead of reusing a bare line number for an edit target.
Octomind 0.67 Config advances to v26 and adds per-model request_transport, defaulting to WebSocket for OctoHub and ChatGPT calls. If your OctoHub is older than 0.15.0, upgrade it or set request_transport = "http" in the model profile.
Octomind 0.67.2 WebSocket replay got size limits. A resume replays only if its frames are still held (2 MiB and 4,096 frames per stream) and fit 8 MiB and 4,096 frames. Observer replay has the same 8 MiB and 4,096-frame limit and can report a gap. Treat "resumed": false as no replay and reload from your own session state. For observers, record the reported gap and continue from the latest sequence.
Octomind 0.67.3 Cache keepalive, a small request that keeps reusable prompt data warm during waits, has new budgeting and lifecycle rules; cache_keepalive_max_idle_seconds is gone. Pings are billed usage. Remove the old idle-limit key. Keepalive is off by default; enable it only if cache-read charges during waits make sense for your workload.
Octomind 0.70 Config advances from v27 to v29. Migration adds idle compaction and removes the old unsettled-confidence threshold. Completion conditions are now checked against evidence. Let the config migration run; remove any manually copied threshold setting and make sure completion conditions have checkable evidence. There was no config-version change in 0.69.
Octolib 0.45.4 Legacy Anthropic model aliases were removed, and Anthropic sampling parameters changed. Replace old aliases with current model IDs; do not rely on temperature, top_p or top_k being sent to Anthropic.
Octolib 0.48.0 ChatGPT defaults to HTTP streaming; WebSocket support moved behind the opt-in websockets feature. Enable that Cargo feature and select WebSocket per request if your integration depends on it.
Octolib 0.51.0 ProviderExchange.cache_lifetime was removed; OctoHub cache lifetime now comes from marker TTL. Update code that reads the removed field and use the provider cache-lifetime API.
OctoHub 0.13.2 media_model_tasks is no longer a supported config field. Remove it from the server config.
OctoHub 0.15.0 FunctionCallOutput::output changed from String to ContentValue so tool results can carry images. Update Rust callers to handle text or typed content parts.
OctoHub 0.16.0 Storage chain methods now use ChainLink records and fail on missing links or invalid replay JSON. If you maintain a source fork, update its chain handling to use ChainLink.
OctoHub 0.16.9 Request fields temperature, top_p and speech speed changed from f32 to f64. Convert explicitly typed f32 values in Rust callers.
Octocode 0.28.0 LlmClient construction now requires a ModelPurpose. Pass the purpose from custom Rust integrations; the CLI also accepts repeatable --co-author values.
Octofs 0.20 / 0.23 Remote HTTP binds require authentication. The old patch engine was replaced by atomic edits. Add a bearer token to every non-loopback HTTP bind and move patch clients to text_editor or batch_edit.

Unsame and the local option

Unsame launched November 5. Unsame is a hosted playbook engine: before your model writes, it selects an approach and format from a playbook for the input at hand. Your model writes the text with your own key; Unsame returns instructions and does not write the output. A playbook holds your goal, voice, rules and approaches. You can report how a result worked, then use that feedback to weight future choices.

For a no-account local setup, mcp-variety picks an approach and form, remembers recent combinations per project or account, and checks drafts against plain writing rules. It uses no model and makes no network calls. It is not on PyPI yet, so with uv installed add the free local server to Claude Code from the pinned source commit:

claude mcp add variety -- uvx --from git+https://github.com/muvon/mcp-variety@fefd684340927eaddf6db0b2707f4208a6094cae mcp-variety

The README reports a small comparison using Claude Sonnet (claude -p --model sonnet, no tools): six texts per input across eight inputs, four posts and four replies, 96 texts total. The share of text pairs starting with the same three words was 58.3% without mcp-variety and 2.5% with it. That measures repeated openings in this setup; it is not a general writing-quality result, and we have no comparable lift number to report for hosted Unsame.

Octoweb 0.20 → 0.21 — calendar, tasks and AI chat history

github.com/muvon/octoweb · 2 releases · 0.21 notes

0.20 added AI assistant calendar and task tools. Subscribe to an ICS feed, import an .ics invitation file, list calendar events and draft an event for review. The assistant can also add tasks to the workspace notes.

0.21 keeps AI chat history as a list of closed chats. Open Past sessions in the sidebar, search by title or agent, and reopen a conversation with its history. The sidebar shows the model and running cost; each answer gets its own token, cache, reasoning, cost and duration line. Old chats from before 0.21 have no saved usage totals.

An MCP server can now ask you a question in the middle of a call. MCP elicitation is that request for a value, choice or sign-in; Octoweb shows a form with fields, Submit and Decline, or a link and Done button for sign-in. On macOS, ⌃P and ⌃N walk tabs in most-recently-used order. Update Octomind too with brew upgrade octomind for the sidebar features.

Octomind 0.61 → 0.70.1 — agents that stop, ask and show their work

github.com/muvon/octomind · 25 releases · full changelog

The supervisor can stop a loop. The supervisor is the part of Octomind that checks an agent’s progress. Before we added this, one of our agents asked 101 times in a single turn whether the same file existed. Since 0.61, Octomind ends the turn after 10 consecutive rounds of identical calls with identical results; raise supervisor.max_identical_rounds if your agent polls on purpose, or set it to 0 to turn the stop off. 0.66.1 also catches runs that cycle through the same rounds. In 0.68, [supervisor.advise] can have the supervisor cite the tool result the agent missed. That advice is off by default and does not replace the stop.

MCP OAuth sign-in and elicitation questions can happen mid-call. Since 0.62, you can add an OAuth-protected MCP server with no Authorization header: Octomind reads the server’s 401 challenge, finds its sign-in metadata and opens your browser. Since 0.63, an MCP server can pause a tool call and put a question to you, such as confirming a refund. This is called MCP elicitation. The terminal, WebSocket clients and editors connected over the Agent Client Protocol can answer; when nobody can, as in piped runs and subagents, Octomind declines the question.

The verify-gate asks for evidence. The verify-gate is Octomind’s AI agent verification step: a final check on whether a finished turn did what you asked. Since 0.63, the verifier has to back each passed condition with a quote of 12 characters or more that appears word for word in the recorded evidence, and failure lines such as FAIL and panicked at survive when long tool output gets condensed. 0.70 also checks unsettled conditions against evidence.

One WebSocket, two timeouts. In 0.67, OctoHub and ChatGPT model calls go over one persistent WebSocket per session by default; request_transport = "http" opts out per model. A broken WebSocket shows up as an error on that call; Octomind does not switch to HTTP on its own. request_timeout_seconds (default 300) limits a whole request attempt, and stream_timeout_seconds (default 0, off) limits how long a response can go silent. A self-hosted OctoHub needs 0.15.0 or later.

A tool call can run on a schedule, and a specialist can take a queue. A specialist is a delegated agent working on one part of the task. Since 0.67 the agent can schedule a tool call instead of a message, and queue up to 32 follow-up prompts for a specialist that is still running. /status agents lists saved runs, and /info splits cost into the total and what the main model spent.

Waiting costs cache-read tokens. A cache keepalive is a small request that tries to keep reusable prompt data warm while a session waits. Since 0.67.3, Octomind estimates whether another ping is worth its cache-read cost, includes pings in session cost, and stops after a cache miss. It is off by default (cache_keepalive_enabled = false), and through OctoHub it needs 0.16.3 or later.

Read-only WebSocket observers can watch sessions without taking control. Session log appends are crash-safe since 0.64.1, and install.sh checks each archive’s SHA-256 since 0.65.1.

0.70 changes setup, compression and learning. The provider wizard shows where a key comes from and lets you move back or skip a provider. Compression can fold in a detached process and compact after the prompt cache expires. Learning carries verified user rules forward with their user-rule authority. The 0.70 config migration moves version 27 to 29, enables idle compaction by default, and removes the obsolete unsettled-confidence threshold.

Install the current 0.70.1 release on macOS or Linux:

curl -fsSL https://octomind.run/install.sh | bash -s -- --version 0.70.1
octomind --version

On Windows:

scoop bucket add muvon https://github.com/Muvon/scoop-bucket
scoop install muvon/octomind

Octofs 0.20 → 0.23.3 — MCP authentication for remote access, edit by verified lines

github.com/muvon/octofs · 13 releases · README

Remote HTTP now requires a token. Loopback use can stay local; when you bind to another address, Octofs refuses to start without MCP server authentication:

OCTOFS_AUTH_TOKEN="$(openssl rand -hex 32)" octofs mcp --bind 0.0.0.0:12345

HTTP is not encrypted, so put a remote token behind TLS or an SSH tunnel. Do not put the token in a command-line argument if other local users can inspect processes.

Edits use line IDs. A line ID combines the line’s position with a short hash of its contents, such as 12:a3. Octofs checks that the content still matches before changing it, so a stale view fails with current context instead of editing a different line. Append now accepts only 0 for the start, -1 for the end, or a verified line ID. The old patch engine is gone: batch_edit applies several operations to one file atomically, and text_editor can apply edits across several files in one atomic step. File reads have a 5 MB cap.

cargo install octofs --version 0.23.3

Octolib and OctoHub — transports, cache lifetime and routing

octolib 0.52.3 · 30 releases · octohub 0.16.9 · 21 releases

Octolib 0.48 added streaming responses with separate request and stream timeouts, then made HTTP streaming the ChatGPT default. WebSocket transport remains available when you enable the websockets feature. OctoHub 0.14.0 lets each model alias rotate across providers or try them in a configured order. OctoHub 0.15 added sequential WebSocket completions and preserves image parts returned by tools; 0.16.3 added cache prewarming through the proxy.

Cache lifetime reporting is now based on evidence: Octolib exposes provider cache lifetimes and examples that probe how long caches remain usable, stopping after repeated misses. OctoHub’s cache lifetime follows the TTL on the cache marker it passes through. New providers in the range: Xiaomi MiMo, Reflection AI and Isoquant. Octolib 0.52.3 adds Claude Fable 5.2, Mythos 5.2 and Meta Muse Ember with pricing, and since 0.52.2 sampling and speech-speed values are sent as exact decimals.

Octocode, Octobrain, Synx and Yoda

  • Octocode 0.28.0 → 0.29.2 (release): model-purpose routing lets OctoHub select a model by the job; octocode commit and octocode release accept repeatable --co-author trailers. Later tags add remote LanceDB support and structural searches outside the repository.
  • Octobrain 0.14.9 → 0.15.2 (release): MCP knowledge-box synchronization and goal / closes relationships for memories. Install with cargo install octobrain --version 0.15.2.
  • Synx 0.1.8 → 0.1.10 (release): stale peer copies are rejected and Git locks are respected during synchronization. Install with cargo install synx --version 0.1.10; run it on both machines.
  • Yoda 2.6.0 (release): semantic-versioned upgrades and fixes to container management and deployment. On macOS, install with brew install muvon/tap/yoda.
cargo install octocode --version 0.29.2

No tag, but moved

The Octomind plugin now has shared skills for Claude Code and Codex: one for the open-source CLI and one for Octomind Cloud. The public Octomind Tap registry of agents, skills and workflows continued to change without a release tag. On Octomind Cloud, the $5 starter credit ended November 2, and hub use now runs on credits you top up.

Holding

Vext 1.7.0, Timex 1.7.0 and TypeTab 1.2.0 had no newer tags. Pulsora and Vanga had no tags.

How the stack fits together today

  • Octoweb 0.21.0 — browser with mail, calendar, tasks and resumable AI chat history.
  • Octomind 0.70.1 — agent runtime with MCP questions, evidence checks and scheduled tools.
  • Octolib 0.52.3 — Rust provider library with streaming transports and cache-lifetime reporting.
  • OctoHub 0.16.9 — model proxy with sequential WebSocket completions and cache prewarming.
  • Octofs 0.23.3 — MCP filesystem tools with verified line IDs and atomic edits.
  • Octocode 0.29.2 — semantic code search with model-purpose routing.
  • Octobrain 0.15.2 — MCP memory with knowledge-box synchronization.
  • Synx 0.1.10 — file synchronization over SSH.
  • Yoda 2.6.0 — container development and deployment from a project repository.
  • Unsame — hosted playbooks for recurring writing; mcp-variety is the free local option.

The last round covered tags through October 23; this one followed 105 releases through November 10. If an upgrade changes a command or config you depend on, the table above is the place to start, then check that product’s release notes before changing a shared integration.

— Don