A stand-alone reproducible lab for
@zilliz/claude-context
against the AI-Code-Intelligence research repo
liatrio/ai-code-intelligence,
tracking issue
#84.
Sibling PoCs (same shape, different tool):
ai-code-intelligence-semgrep,
ai-code-intelligence-codebase-memory,
ai-code-intelligence-socraticode,
ai-code-intelligence-gitnexus,
ai-code-intelligence-graphify,
ai-code-intelligence-repowise.
Indexing. claude-context is a semantic-retrieval MCP server: AST-aware chunks embedded into a vector index, hybrid BM25 + dense-vector search, Merkle-tree incremental sync. Answers "where does the code for concept X live?" and "is there already a helper that does Y?" It does not answer "who calls X?" — that is a structural-graph tool's job.
Six-wave protocol against the fully-local claude-context path (Milvus in
Docker Compose + Ollama for embeddings). The lab deliberately does not
exercise the quickstart-default hosted path (Zilliz Cloud + OpenAI); see
AGENTS.md for why, and the no_default_egress cell on
research/claude-context/data.json
for what the lsof probe covers when the two paths are compared.
- Fixtures:
liatrio/gratibot(public, JS/Node, 195 files) andliatrio-labs/liatrio-knowledge(private, TS/SQL/Gherkin/Docusaurus, 5,370 tracked files). - Harness arms:
baseline(Read/Grep only) vsclaude-context(Read/Grep/Bash plus the pinned MCP server). - Prompts: five semantic-retrieval prompts with pass conditions
frozen in
prompts.mdbefore any run. - Waves: install/index smoke, yes-cell confirmations, no-cell
confirmations, shared/gateway probes, gratibot harness, liatrio-
knowledge harness. Results in
RESULTS.md.
- Node ≥ 20, npm ≥ 10 (claude-context's monorepo engines minimum).
- Docker ≥ 20.10.13 with
docker composev2 (for Milvus standalone). - Ollama ≥ 0.3.0, running on
127.0.0.1:11434. - Claude Code CLI (
claudeorclaude-code) on PATH.
No cloud accounts, no API keys, no login flow. setup.py --check will
refuse to proceed if any hosted-provider env var is set (see
FORBIDDEN_ENV_VARS in versions.env).
| Contract file | Purpose |
|---|---|
setup.py |
--check, --install, --index, --status, --clean |
AGENTS.snippet.md |
Paste-in snippet for a client project's AGENTS.md |
prompts.md |
5 prompts + frozen pass conditions |
RESULTS.md |
Wave-by-wave findings; grows as waves land |
run-prompts.py |
Two-arm Claude Code harness |
Clone a fixture outside this repo:
git clone https://github.com/liatrio/gratibot.git ~/liatrio/repos/gratibotBring up the local stack and index the fixture:
make check # env gate
make install # npm + docker compose + ollama pull
python3 setup.py --index --fixture ~/liatrio/repos/gratibotRun the harness:
python3 run-prompts.py --fixture ~/liatrio/repos/gratibotTear it all down:
make clean- Wave-by-wave rationale and probe details:
RESULTS.md. - Cells settled by the lab:
research/claude-context/data.json. - Cell rationale:
research/claude-context/answers.md.
The lab code in this repository is MIT.
@zilliz/claude-context-mcp
and
@zilliz/claude-context-core
are MIT.
Milvus is Apache-2.0.
Ollama is MIT.
nomic-embed-text (the pinned embedding model) is Apache-2.0.