Your RAG pipeline is probably batch-processing like it's 2019
CocoIndex is an incremental sync engine that keeps vector indexes and knowledge graphs fresh without re-embedding everything on every run.
What it does CocoIndex is a Python framework with a Rust core that builds live data pipelines for AI agents. You declare sources (codebases, Slack, PDFs, Postgres), define transformations, and specify targets like vector indexes or knowledge graphs. The engine then keeps targets in sync forever, recomputing only the delta on each change. It is pitched as “React for data engineering” — declarative, incremental, and parallel by default.
The interesting bit
The memoization is the quiet killer feature. Functions decorated with @coco.fn(memo=True) cache by hash of inputs plus hash of code, so unchanged files skip re-embedding entirely. For long-horizon agents that need to reason over evolving enterprise context, this turns “rebuild the world every night” into “update what moved.”
Key highlights
- Incremental by design: only changed data flows through, not full backfills
- Declarative Python API:
declare_row,declare_vector_index,mount_each— the runtime handles the graph - Rust core for performance, Python surface for ergonomics
- Built-in connectors for local files, Postgres, and more; 20+ examples maintained weekly
- Ships with a dedicated MCP server (CocoIndex-code) for AST-aware, semantic code indexing in Claude Code and Cursor
Caveats
- The “10 minutes to production” claim is aspirational; real complexity lives in connector auth, schema drift, and embedding model selection
- README is heavy on marketing SVGs and light on operational details like failure modes, exactly-once guarantees, or backpressure behavior
- The Rust core is a black box from the README — no visibility into the incremental engine’s internals without reading source
Verdict Worth a look if you’re running RAG or agent memory at scale and tired of paying embedding costs for unchanged data. Skip it if you need a battle-tested, fully-documented streaming platform today — this is promising framework code, not infrastructure you blindly trust in production.