Blog
Building in public. Sharing what we learn.

Lessons From Building a Unified LLM Provider Layer in Rust
What we learned shipping octolib, the Rust LLM library behind our AI stack: how to abstract multiple LLM providers, normalize tool calls and token usage, and survive the day a model's thinking format returned a 400.

Release Round, July 2026: Octofs 0.5.2, Octolib 0.25.0, Octocode 0.18.1, Octobrain 0.9.1
A month since the June round-up, the whole stack moved again. Octofs finally shipped 0.5.0 — simpler line targeting, a first-class delete, one breaking change. Octolib climbed from 0.23.0 to 0.25.0 with local embeddings, response schema enforcement, and GPT-5.6. Octocode and Octobrain cut fresh patches, every MCP tool now publishes itself to the MCP registry — and the Mac apps moved too, with Timex 1.2.0 and TypeTab 1.1.0.

AI Code Review in CI With an Open-Source Agent: The Setup That Actually Held Up
We wanted a second reviewer that never gets tired but also never hallucinates a problem into existence. Here is how we wired Octomind into GitHub Actions for automated code review — the real octomind-action inputs, running the team's actual lint and test commands through .agents/tools/, keeping CI non-interactive and safe, and bounding the cost.

Give an AI Agent a Filesystem Without Giving It Your Whole Filesystem
A security-minded guide to sandboxing AI agent file access with a filesystem MCP server. How Octofs scopes a working root, stays gitignore-aware, enforces non-interactive shell, and removes whole categories of foot-gun that raw bash and rm hand an agent — plus the protections it does not have and how to configure around them.

Running One AI Agent Across Many Models: A Multi-Model Routing Guide for Octomind
One model for everything got expensive and rate-limited. Here is how we route requests between LLMs inside a single Octomind agent — cheap models for the grunt work, a frontier model for the call that matters — with the real config keys, the provider list, and a model-selection cheat sheet.

AI Agent Memory Without the Noise: Scoping and Forgetting with Octobrain
Give an AI agent persistent memory and it will memorize everything until recall drowns in its own notes. Here is how Octobrain's memory scopes, the four-tool MCP surface, and autonomous consolidation turned a noisy junk drawer back into a memory that actually answers — plus a practical setup guide.

Octocode 0.18.0: A Reproducible Retrieval Benchmark and GraphRAG File-Level Expansion
Octocode 0.18.0 ships a reproducible semantic code search benchmark — 127 curated queries with line-range ground truth, plus a Loc-Bench harness over 560 real GitHub issues — and adds GraphRAG file-level expansion that pulls structurally related files into search before reranking. Open source, local-first, Apache-2.0.

Octobrain 0.9.0: Knowledge Goes Multiplayer
Octobrain 0.9.0 turns the knowledge layer into something a whole team can share: git-backed knowledge boxes ship curated rules and docs in a repo, sync in the background, and stay scoped per project or org. Memory scopes get human-readable names instead of opaque hashes. And recall got sharper — RRF multi-query fusion makes query decomposition actually pay off, Supersedes edges let the current fact outrank the stale one, and new temporal filters answer "what did I decide last week." Here is what changed and how to upgrade.

How to Index a Large Codebase for Semantic Code Search Entirely Locally
A hands-on guide to pointing an AI agent at a huge monorepo when grep stops being enough. How Octocode chunks code with tree-sitter, runs local embeddings with no GPU and no cloud, fuses semantic and keyword search, and exposes it all over MCP — plus the gotchas that bit us.

Octocode 0.17.1: Local Embeddings with Ollama, vLLM, and Any OpenAI-Compatible Server
Octocode 0.17.1 indexes your code with a local embedding provider — point it at any OpenAI-compatible server (Ollama, vLLM, LM Studio) and it auto-detects the model dimension, all on your own hardware.

Release Round, June 2026: Octocode 0.16.0, Octobrain 0.8.0, Octolib 0.23.0
Since our last release posts, the whole stack moved again. Octocode 0.16.0 turns one MCP server into a multi-repository server and adds Swift. Octobrain 0.8.0 goes zero-config — point it at a repo and memory binds itself. Underneath, Octolib 0.23.0 adds the shared git project-ID utilities, Claude Opus 4.8, and response schema enforcement.

Octobrain 0.7.0: Your AI's Memory Now Sleeps, Forgets, and Focuses
Octobrain 0.7.0 makes memory self-maintaining: autonomous sleep consolidation folds similar memories into clean insights, half-life decay lets unused ones fade, and goal-anchored consolidation collapses scattered notes around what you were actually trying to do. Plus HyDE recall on by default (+10-30% on vague queries) and a leaner 5-tool MCP surface. Here is what changed and how to upgrade.