memsearch: Instructions file for Claude Code

CLAUDE.md

memsearch CLAUDE.md is an instructions file for Claude Code from zilliztech/memsearch. It costs 2,454 tokens per session, scanned A, original, MIT.

Project instructions for MemSearch, a Python search engine for Markdown notes that stores searchable content in Milvus. It covers setup, architecture, tests, documentation, and command-line usage.

In plain words
What is it for?
Installing and testing MemSearch, understanding its indexing and search pipeline, running the command-line tool, and serving its documentation.
Why use it?
It gives coding agents the commands and project structure needed to change the repository safely. It also specifies how to run the full test suite, individual tests, and the local documentation server.

Instructions file for Claude Code

Written for Claude Code: SessionStart hook event. Also seen: mentions .claude-plugin; mentions CLAUDE.md; mentions subagents.

This is zilliztech/memsearch's own configuration. It tells Claude Code how to work on memsearch itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything memsearch configures →

About the project

MemSearch is a cross-platform semantic memory layer for AI coding agents that stores human-readable Markdown memories and indexes them with Milvus for searchable retrieval. It is used by agent users who want persistent context and by developers building memory features into agents across tools such as Claude Code, Codex, DeepSeek Harness, OpenClaw, and OpenCode. Catalogue add-ons provide the hooks, skills, and plugin workflows that capture, retrieve, and maintain this memory.

zilliztech/memsearch · 2,796 stars · on GitHub · zilliztech.github.io

Reuse

Borrowing it

Nothing to install: this file belongs to zilliztech/memsearch. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/zilliztech/memsearch/main/CLAUDE.md
Clone the repo
git clone --depth 1 https://github.com/zilliztech/memsearch

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for memsearch CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/zilliztech/memsearch/claude-md/github.svg)](https://agentmods.dev/instructions/zilliztech/memsearch/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/zilliztech/memsearch/claude-md"><img src="https://agentmods.dev/badge/instructions/zilliztech/memsearch/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for memsearch CLAUDE.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/zilliztech/memsearch/claude-md"><img src="https://agentmods.dev/badge/instructions/zilliztech/memsearch/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 2,454 This file is loaded in full into every session.
When invoked 2,454 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.02454 $0.02454
Opus 5.5 $0.00982 $0.00982
Sonnet 5.5 $0.00491 $0.00491
Haiku 4.5 $0.00245 $0.00245

Measured 4d ago against content hash 84ab37699803, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

memsearch CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 133 lines

How it starts

The opening of the file, as written. The whole thing — 133 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Build & Test Commands

# Install in development mode
uv sync --all-extras

# Run all tests (use python -m pytest to avoid system pytest conflicts)
uv run python -m pytest

# Run a single test file
uv run python -m pytest tests/test_chunker.py

# Run a specific test
uv run python -m pytest tests/test_store.py::test_upsert_and_search -v

# Serve docs locally
uv run mkdocs serve

# Run the CLI
uv run memsearch --help

Architecture

memsearch is a semantic memory search engine for markdown knowledge bases, built on Milvus.

Data Flow

Markdown files → Scanner → Chunker → Embedder → MilvusStore
                                                      ↓
                               User query → Embedder → Hybrid Search (dense + BM25 + RRF) → Results

Core Library (src/memsearch/)

  • core.py — MemSearch class: the public Python API that orchestrates everything. Entry point for index(), search(), compact(), watch().
  • store.py — MilvusStore: Milvus wrapper handling collection creation, upsert, hybrid search (dense cosine + BM25 sparse + RRF reranking), and cleanup. The chunk_hash (composite ID of source+lines+content+model) is the VARCHAR primary key.
  • chunker.py — Splits markdown by headings into Chunk dataclasses. SHA-256 content hash enables dedup. compute_chunk_id() generates composite IDs matching OpenClaw's format.
  • embeddings/__init__.py — EmbeddingProvider protocol + lazy-loading factory (get_provider()). Providers: openai (default), google, voyage, jina, mistral, ollama, local, onnx.
  • scanner.py — Walks directories to find .md/.markdown files, returns ScannedFile list.
  • config.py — Layered TOML config: dataclass defaults → ~/.memsearch/config.toml → .memsearch.toml → CLI flags.
  • cli.py — Click CLI wrapping the Python API. All commands resolve config via resolve_config() then instantiate MemSearch.
  • watcher.py — watchdog-based file watcher with debounce, used by memsearch watch and the Claude Code plugin.
  • compact.py — LLM-powered chunk summarization (OpenAI/Anthropic/Gemini).
  • reranker.py — Optional cross-encoder reranking (ONNX or PyTorch backend). Disabled by default; enable via reranker.model config.

Read the full file on GitHub · 133 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago Changed · +43 tokens per session 84ab37699803
  2. 1mo ago Changed · +1 lines · +63 tokens per session b7ad1c4c3257
  3. 1mo ago Changed · -1 tokens per session 14a207df2f70
  4. 1mo ago Changed · +1 lines · +17 tokens per session 5de05fc6e987
  5. 1mo ago First seen · 131 lines · 2,332 tokens per session scan A 6ec9071495a9

Subscribe to this mod's changes

memsearch CLAUDE.md is an instructions file published in the GitHub repository zilliztech/memsearch (2,796 stars, last pushed yesterday), licensed MIT. It adds 2,454 tokens to every session, about $0.0098 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other instructions, from other repositories

vscode buildNext.instructions.md

Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).

microsoft/vscode · 9,715 tokens

next.js AGENTS.md

AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.

vercel/next.js · 7,786 tokens

vscode oss-third-party-notices.instructions.md

Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).

microsoft/vscode · 5,262 tokens

langchain AGENTS.md

AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.

langchain-ai/langchain · 4,680 tokens

vscode copilot-instructions.md

Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).

microsoft/vscode · 2,731 tokens

deno copilot-instructions.md

Copilot instructions for denoland/deno, covering deno development guide for github copilot, network access, high level overview, key directories and key files to understand first.

denoland/deno · 3,077 tokens