projectmem
Local per-repo memory for coding agents that flags files where earlier fixes failed
Lets an assistant pack a local or GitHub codebase into one AI-readable file, then read and search it.
By Kazuki Yamada (individual) TypeScript Local · stdio Developer toolsKnowledge and memory
104 popularity score ★ 29k ↓ 109k/wk
Opens the app, which asks before it adds the server.
claude mcp add repomix -- npx -y repomix --mcp{
"mcpServers": {
"repomix": {
"command": "npx",
"args": [
"-y",
"repomix",
"--mcp"
]
}
}
}{
"mcpServers": {
"repomix": {
"command": "npx",
"args": [
"-y",
"repomix",
"--mcp"
]
}
}
}{
"servers": {
"repomix": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"repomix",
"--mcp"
]
}
}
}[mcp_servers.repomix]
command = "npx"
args = ["-y", "repomix", "--mcp"]gemini mcp add --scope user repomix npx -- -y repomix --mcpRepomix packs a whole repository into a single AI-friendly file. Run as an MCP server (repomix --mcp), it lets an assistant package a local directory or a remote GitHub repository on request, instead of the user preparing the file by hand, and then read the output in line ranges or search it with regular expressions so large codebases can be explored a piece at a time.
Packing respects .gitignore and takes include and ignore glob patterns; optional Tree-sitter compression keeps code signatures and structure and drops implementation details, which the README puts at about 70% fewer tokens. Packed output also runs through a Secretlint check for sensitive information. A generate_skill tool turns a local codebase into a Claude Agent Skill package with SKILL.md and reference files.
It runs with npx -y repomix --mcp (Node.js), or from the Docker image ghcr.io/yamadashy/repomix with the --mcp argument. With --sandbox the file tools are confined to one workspace directory and only read-only tools are registered. Repomix is also a command-line tool and has a hosted web version at repomix.com.
pack_codebasepack_remote_repositoryattach_packed_outputread_repomix_outputgrep_repomix_outputgenerate_skillfile_system_read_filefile_system_read_directory