Blog
Engineering notes, platform updates, and thinking out loud.
Open the closed: why vendor lock-in is a design choice, not a given
Every platform dependency is a bet. We explain why we think the only safe bet is a typed contract — and how that shapes every architectural decision we make.
Read more →How we redesigned the plugin system to eliminate circular dependencies
Plugin runtimes that depend on the core they extend are a reliability time bomb. Here's how we broke the cycle using dynamic imports and a factory pattern.
Read more →Adaptive search weights in Mind RAG: moving from static to intent-aware retrieval
BM25 + vector hybrid search works well on average. But "on average" hides a lot of variance. We added per-query adaptive weights to fix the tail cases.
Read more →Two-tier memory for long-running agents: working memory vs persistent facts
As agent sessions get longer, context windows fill up. We built a two-tier memory system that keeps the important stuff and lets the noise fade.
Read more →Going from 10-minute builds to 15-second incremental rebuilds in a 125-package monorepo
Full rebuilds were killing developer flow. Here's the layer-based incremental build system we built into DevKit — and the unexpected edge cases we hit.
Read more →