It's release time again.
A month ago, the June round-up was about zero-config — Octolib deriving project identity once, Octocode and Octobrain reading it. Since then the stack has been loud enough that two releases got their own posts: Octocode 0.17.1 brought local embedding providers and 0.18.0 shipped a reproducible retrieval benchmark, while Octobrain 0.9.0 took the knowledge layer multiplayer. This post catches everything that happened around those headlines — and it's more than you'd think.
The thread this time is distribution. Octocode 0.18.1, Octobrain 0.9.1, and Octofs 0.5.1 all automated their publishing to the MCP registry — every MCP tool in the stack now ships itself there on release, so your client can discover and install them without a trip to GitHub. And underneath, Octolib spent the month wiring in every model of the summer — Claude Fable 5, Sonnet 5, GPT-5.6, Qwen 3.5/3.7, GLM-5.2, Kimi K2.7, Gemini 3.5 Flash — mostly within days of each launch.
Let's start with the tool that finally moved.
Octofs 0.4.3 → 0.5.2 — it moved, on purpose
github.com/muvon/octofs · 0.4.3 → 0.5.2
Last month we wrote that Octofs was holding at 0.4.3 on purpose — the filesystem layer should be boring, and it would move again "when the runtime above it changes how it touches files." That happened. 0.5.0, cut June 28, is the first minor since May, and it's a real one.
Unified line targeting — the breaking change. Octofs used to accept line ranges in structured forms that varied by command. 0.5.0 unifies all of it: line targeting is now expressed as string specs, one format across the toolset, and file access got simpler along with it. Agents stop tripping over which shape of range argument this particular command wants — but if you've built against the old parameter forms, this is the part you'll need to update on upgrade.
Heads up: the line-targeting and file-access simplification is 0.5.0's breaking change. Everything else — the atomic-write contract, gitignore-aware walking, batch conflict detection — carries over untouched.
delete is a first-class command. It arrived inside text_editor in 0.4.3; 0.5.0 promotes it to a proper command with the enhanced line targeting behind it. Same atomic contract: the file is either there or it isn't, never in between.
Richer file listings and an updated config schema. Listings carry more of what an agent actually needs to decide its next move, and the MCP config schema was brought up to date with it.
0.5.1 and 0.5.2 are the distribution pass on top: automated MCP registry publishing and config cleanup. Nothing in them changes behavior.
cargo install octofs --version 0.5.2
# or grab a binary at https://github.com/muvon/octofs/releases
Octocode 0.16.0 → 0.18.1 — two loud minors, then a stability pass
github.com/muvon/octocode · 0.16.0 → 0.18.1 · latest cut today, July 11
The two big stories already have their own posts, so in short: 0.17.1 lets you index with a local embedding provider — point it at any OpenAI-compatible server like Ollama or vLLM and it auto-detects the model dimension — and 0.18.0 shipped a reproducible retrieval benchmark plus GraphRAG file-level expansion, so search quality is now a number you can check instead of a vibe.
What didn't get a post:
- Structural and symbol search over MCP (0.16.1). The MCP server picked up structural pattern and symbol search right after the June round-up — the grep-by-structure that was already in the CLI, now first-class for connected agents.
- Indexer stability (0.18.1, today). Three rounds of fixes to indexer stability and data handling. If you hit indexing hiccups on large or fast-moving repos, this release is the reason to upgrade.
- C++ module extensions (0.18.1). The indexer now covers C++ module file extensions, so modern C++ codebases index completely.
- MCP registry and MCPB bundle publishing (0.18.1). Releases now push to the MCP registry and publish MCPB bundles automatically — part of the distribution thread above.
cargo install octocode --version 0.18.1
# or grab a binary at https://github.com/muvon/octocode/releases
Octobrain 0.9.1 — a quiet release on top of a loud one
github.com/muvon/octobrain · 0.9.0 → 0.9.1 · July 6
0.9.0 was the loud one — git-backed knowledge boxes a whole team can share, human-readable memory scopes instead of opaque project hashes, RRF multi-query fusion, and temporal filters on recall. 0.9.1 is the same kind of follow-up 0.6.1 was in May: automated MCP registry publishing, an updated registry identifier and config schema, and a round of dependency upgrades across the Rust core.
Nothing in 0.9.1 changes the API — if 0.9.0 is already in your stack, this is a drop-in upgrade. If it isn't, the 0.9.0 post walks through why your team's curated knowledge should live in a repo and sync itself.
cargo install octobrain --version 0.9.1
# or grab a binary at https://github.com/muvon/octobrain/releases
Octolib 0.23.0 → 0.25.0 — every model of the summer, and a local option for every stage
github.com/muvon/octolib · 0.23.0 → 0.25.0 · latest cut today, July 11
Octolib is the engine behind every LLM call we make, and it shipped ten releases in five weeks. The highlights:
- A local provider for embeddings and reranking (0.23.3), with dimension probing (0.23.4). Self-hosted embeddings and reranking behind the same trait as the cloud providers, and Octolib probes the model's dimension instead of making you look it up. This is the plumbing Octocode 0.17.1's local embedding support rides on — one layer learned it, the tool above got it.
- Response schema enforcement (0.24.0). Octolib now enforces that a model's output matches an expected response schema, on top of the JSON schema normalization for strict mode that landed in 0.23.6. Anywhere you parse structured output back out of an LLM, the contract is now checked for you — with enforcement sensibly disabled for Ollama, which can't honor it.
- GPT-5.6, with prompt cache breakpoints (0.25.0, today). The newest GPT is wired in, including its prompt cache breakpoint mechanics, alongside token and cost usage tracking for embedding models — so embedding spend shows up in your budget numbers, not just completion spend.
- The model roster kept pace all month. Claude Fable 5 (0.23.1), GLM-5.2 and Moonshot Kimi K2.7 (0.23.3), Qwen 3.5 and 3.7, Gemini 3.5 Flash, and Kimi K2.7-code-highspeed (0.23.7), plus pricing for Claude Sonnet 5 (0.23.8). If it launched this summer, Octolib speaks it.
- More caching, fewer cold prompts. Cache control extended to tool and assistant messages (0.23.5), prompt cache key support for OpenAI, and prompt caching plus reasoning support for the Together provider (0.23.7 and 0.23.2).
If you build anything that calls LLMs from Rust, this is still the layer to standardize on: every provider behind one trait, same retry logic, same cost accounting — now including your embeddings.
The Mac apps moved too
The stack tools weren't alone this round — two of the three Mac apps shipped minors.
Timex 1.2.0 (June 15) is the biggest Timex release since 1.0. Activity tracking gets configurable categories with website rules, and a Focus Score now sits in the Today view and the menu-bar header, with a category breakdown behind it. Miscategorized app? Right-click it in Today and recategorize on the spot. Under the hood, browser URL tracking moved from AppleScript to the Accessibility API — noticeably more reliable — Settings got a tabbed redesign, and Mac App Store in-app purchases are now supported. 1.1.0 brought export and five languages; 1.2.0 is about knowing where the time actually went.
TypeTab 1.1.0 (June 12) is the first minor since launch. A launch-at-login toggle finally landed, training data quality got a real pass — with a training-log viewer so you can see what it learned from — and three inference fixes make ghost text calmer: no more crashes from programmatic text changes, no stale suggestions reappearing, no suggestions firing on focus changes.
Vext is holding at 1.2.0 — the two-pass diarization release from late May is still current, and it's doing its job.
Octomind 0.31.0 → 0.36.0 — covered on octomind.run
The runtime that ties the stack together shipped six minors in five weeks, with Octomind 0.36.0 cut today — AGENTS.md adopted as the standard for agent instructions, control over MCP tool usage in completions, and WebSocket reliability work. Octomind releases get their full write-ups on its own site, so we'll just point you there: the Octomind 0.36.0 release notes on octomind.run.
How they fit together
The stack is the same five pieces. What changed is how you get them and what they can reach. Every MCP tool — Octocode, Octobrain, Octofs — now publishes itself to the MCP registry on release, so installing the stack is discovery, not documentation-spelunking. Octolib gave every stage of retrieval a local option and wired in every model of the summer. Octofs proved that "holding on purpose" and "frozen" are different things.
- Octolib 0.25.0 — every LLM call, now with local embeddings and schema-enforced output
- Octobrain 0.9.1 — persistent memory, knowledge a team can share
- Octofs 0.5.2 — safe filesystem access, one line-targeting format everywhere
- Octocode 0.18.1 — code search you can benchmark, indexer you can trust
- Octomind 0.36.0 — the runtime orchestrating all of it
Single binaries, Apache-2.0, all of them. And all of them moved.
We've already started the next one. If something here unblocks a thing you've been wanting to build, open an issue — features requested in July tend to ship in August.
— Don



