cocoindex
Frameworkcocoindex-io/cocoindex
Incremental engine for long horizon AI agents with fresh context.
Overview
CocoIndex enables AI agents to access continuously fresh data from codebases, meeting notes, Slack, PDFs, and videos. It processes only changes incrementally, ensuring minimal overhead. Built for production RAG and knowledge graph applications.
README Preview
\n \n \n \n \n \n\nYour agents deserve fresh context.\n\n\n Star us ❤️ → · \n · \n · \n \n\n\n\nCocoIndex turns codebases, meeting notes, inboxes, Slack, PDFs, and videos into live, continuously fresh context for your AI agents and LLM apps to reason over effectively — with minimal incremental processing. Get your production AI agent ready in 10 minutes with reliable, continuously fresh data — no stale batches, no context gap\n\n\n Incremental · only the delta · Any scale · parallel by default · Declarative · Python, 5 min\n\n\n\n\n\n[](https://github.com/cocoindex-io/cocoindex)\n[](https://pepy.tech/projects/cocoindex)\n[](https://pypi.org/project/cocoindex/)\n[](https://www.python.org/)\n[](https://www.rust-lang.org/)\n[](https://opensource.org/licenses/Apache-2.0)\n[](https://discord.com/invite/zpA9S2DR7s)\n\n[](https://github.com/cocoindex-io/cocoindex/actions/workflows/CI.yml)\n[](https://github.com/cocoindex-io/cocoindex/actions/workflows/release.yml)\n[](https://github.com/cocoindex-io/cocoindex/actions/workflows/links.yml)\n\n\n\n\n\n\n\n\n\n[Deutsch](https://readme-i18n.com/cocoindex-io/cocoindex?lang=de) |\n[English](https://readme-i18n.com/cocoindex-io/cocoindex?lang=en) |\n[Español](https://readme-i18n.com/cocoindex-io/cocoindex?lang=es) |\n[français](https://readme-i18n.com/cocoindex-io/cocoindex?lang=fr) |\n[日本語](https://readme-i18n.com/cocoindex-io/cocoindex?lang=ja) |\n[한국어](https://readme-i18n.com/cocoindex-io/cocoindex?lang=ko) |\n[Português](https://readme-i18n.com/cocoindex-io/cocoindex?lang=pt) |\n[Русский](https://readme-i18n.com/cocoindex-io/cocoindex?lang=ru) |\n[中文](https://readme-i18n.com/cocoindex-io/cocoindex?lang=zh)\n\n\n\n\n\n\nBuilt with CocoIndex ❤️\n\n\n\n \n\n\nSee all 20+ examples · updated every week →\n\n\n\nGet started\n\n```sh\npip install -U cocoindex\n```\n\nDeclare *what* should be in your target — CocoIndex keeps it in sync forever
FAQ (2)
TroubleshootingWhy does incremental reindex fail with 'Forbidden global during unpickling: numpy.core.numeric._frombuffer' in cocoindex?
This is a known bug in cocoindex 1.0.6 when using numpy 1.x (e.g., on Intel Mac). The serde allowlist only registers the numpy 2.x path for _frombuffer. To fix, update python/cocoindex/_internal/serde.py to register _frombuffer under both ('numpy.core.numeric', '_frombuffer') and ('numpy._core.numeric', '_frombuffer'). See issue #2011 for the exact patch or apply PR #2012.
How-toHow to exclude all hidden directories except .github/workflows in CocoIndex?
List every hidden directory explicitly in excluded_patterns. This is the current workaround until negation syntax (e.g., !) is supported. Example: excluded_patterns=["**/.git","**/.vscode","**/.idea","**/.ruff_cache","**/.pytest_cache","... add all other known dot-directories"]. Note that this list grows with new tools. Track issue #1778 for official negation support.