Context7
Up-to-date docs for AI agents
作者提供的说明(英文原文)
Long-term memory for AI coding agents, stored as a tree of plain local files.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
IHMT_HOME你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"ihmt-memory": {
"command": "uvx",
"args": [
"ihmt-memory"
],
"env": {
"IHMT_HOME": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add ihmt-memory --env IHMT_HOME=your-value -- uvx ihmt-memory运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"ihmt-memory": {
"command": "uvx",
"args": [
"ihmt-memory"
],
"env": {
"IHMT_HOME": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"ihmt-memory": {
"type": "stdio",
"command": "uvx",
"args": [
"ihmt-memory"
],
"env": {
"IHMT_HOME": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
IHMT_HOME env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 gonzaroman 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.2.1)于23天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Context7, Codebase Memory, Exa
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Long-term memory for your AI coding agents. Tell your agent something once — a decision, how your setup works, a correction — and it remembers it in every future session, in any project, with any of your agents.
OUTDATED, and searches answer with the current one first. Where you live, where you work and your stack are tracked automatically; any other correction is linked when the agent saves it with replaces. When a question is ambiguous ("Luis" — which one?), it asks instead of guessing.Compatibility. Officially supported: Claude Code. Also tested: Codex (CLI and the
ChatGPT desktop app — setup) and opencode
(setup). IHMT is a standard stdio MCP server, so any
agent that supports local MCP servers should work — GitHub Copilot, Antigravity, Cursor, Windsurf,
Gemini CLI, Claude Desktop… — and
INSTALL.mdknows how to configure them, but we have
not tested those yet. All of them can share one memory.
| You need | Why |
|---|---|
| Python 3.10 or newer | IHMT is written in Python |
| git | to download IHMT and keep it updated |
| An AI agent that can run commands (Claude Code, Codex, opencode, Copilot in agent mode…) | it installs IHMT and then uses the memory |
| Internet, during the installation | to download the code and the MCP package; not needed afterwards |
Missing Python or git? Your AI agent installs them for you (it is instructed to ask you first). Python goes in your user folder, with no administrator password, so nothing system-wide changes. On a brand-new Mac, git may need one click: Apple shows a window asking to install its command-line tools.
On a Mac, note that the python3 that comes with macOS is version 3.9, which is too old — that is why your agent may say Python is missing even though python3 exists.
You do not need administrator rights, a database, an account, or any paid service beyond your agent. Tested on macOS and Linux (Ubuntu); on Windows the instructions are included but not tested yet. Details: GUIDE.md §3.
Paste this into the AI agent you want to give a memory to — Claude Code, Codex and opencode are tested; GitHub Copilot, Antigravity, Cursor, Windsurf, Gemini CLI, Claude Desktop and other MCP clients should work too:
Install the IHMT memory MCP server for me from https://github.com/gonzaroman/IHMT-MEMORY — follow the instructions in its INSTALL.md.
The agent follows INSTALL.md: it downloads IHMT to ~/IHMT-MEMORY, keeps your memory in ~/.ihmt, registers the server with itself only, adds the usage instructions, and tells you what it did. Then start a new session so the memory tools load.
Using several agents? Paste the same prompt in each one, whenever you want. If IHMT is already installed — say you have used it with Claude for months and now want it in Codex — the agent finds that installation, updates it if it safely can, and connects to the same memory, so it knows what you told the others from day one.
It needs an agent that can run terminal commands or edit files; chat-only assistants in a browser cannot install anything.
Manual install
Requirements: Python 3.10+, git, and your agent's CLI.
git clone https://github.com/gonzaroman/IHMT-MEMORY.git ~/IHMT-MEMORY
cd ~/IHMT-MEMORY python3 -m venv .venv .venv/bin/pip install -r requirements-mcp.txt mkdir -p ~/.ihmt
Claude Code
claude mcp add ihmt-memory -s user -e IHMT_HOME="$HOME/.ihmt" -- "$PWD/.venv/bin/python" "$PWD/mcp_server.py"
claude mcp list # ihmt-memory … ✔ Connected
The server name must come before -e. Then append templates/memory-instructions.md to ~/.claude/CLAUDE.md.
Codex — codex mcp add ihmt-memory --env IHMT_HOME="$HOME/.ihmt" -- "$PWD/.venv/bin/python" "$PWD/mcp_server.py", then add default_tools_approval_mode = "approve" to the [mcp_servers.ihmt-memory] table in ~/.codex/config.toml (above its env table) and append the template to ~/.codex/AGENTS.md. Details.
opencode — add an "ihmt-memory" entry ("type": "local", "command": [ , ], "environment": {"IHMT_HOME": }) to the "mcp" object of ~/.config/opencode/opencode.json, and append the template to ~/.config/opencode/AGENTS.md. Details.
Windows, the project scope, the graphical setup and troubleshooting are all in the guide.
Install from PyPI (uvx)
No clone and no venv: uv downloads and runs the ihmt-memory package. The memory goes to ~/.ihmt; set IHMT_HOME to use another folder (for example, a memory you already have).
Claude Code
claude mcp add ihmt-memory -s user -- uvx ihmt-memory
claude mcp list # ihmt-memory … ✔ Connected uvx ihmt-memory --instructions >> ~/.claude/CLAUDE.md
Codex — codex mcp add ihmt-memory -- uvx ihmt-memory, add default_tools_approval_mode = "approve" to the [mcp_servers.ihmt-memory] table in ~/.codex/config.toml, and run uvx ihmt-memory --instructions >> ~/.codex/AGENTS.md.
opencode — add an "ihmt-memory" entry ("type": "local", "command": ["uvx", "ihmt-memory"]) to the "mcp" object of ~/.config/opencode/opencode.json, and run uvx ihmt-memory --instructions >> ~/.config/opencode/AGENTS.md.
The last step matters with any install: the instructions are what make the agent search before answering and save corrections. pipx install ihmt-memory works too, with ihmt-memory in place of uvx ihmt-memory.
New here? Read [`GUIDE.md`](GUIDE.md) — everyday use, step by step, with real outputs. The rest of this README is the technical reference.
A universal, domain-agnostic long-term memory for LLMs, stored as a recursive tree of plain files on the local disk. No vector database, no server, no third-party dependencies — Python 3.10+ and the standard library.
Instead of embedding everything into one flat index and scanning it, IHMT organizes knowledge into a tree: raw text leaves at the bottom, recursive JSON summaries above them, and a single root.json trunk at the top. A query walks that tree — root → branch → branch → leaf — so the number of files opened grows with the *depth* of the tree (≈ beam × log_B(n)), not with the amount stored.
| Flat RAG | IHMT | |
|---|---|---|
| Retrieval cost | scan / ANN over all *n* chunks | beam × log_B(n) file reads |
| Structure | none — a bag of vectors | explicit hierarchy, inspectable |
| Chunking | fixed character windows | syntax-, scene- and date-aware |
| Stale facts | served silently | superseded, dated, and flagged |
| Ambiguity | returns a plausible guess | asks you for a clue |
| Storage | binary index | UTF-8 .txt + JSON you can read |
python3 gui.py # graphical interface: set up, browse, inspect
python3 init_ihmt.py # or from the terminal: create ./ihmt_memory python3 main.py demo # full walkthrough in ./demo_workspace python3 -m unittest discover -v # stdlib only; MCP tests skip without the SDK
Then use it on your own material:
python3 main.py ingest ~/notes ~/project/src/Main.java
python3 main.py consolidate --force python3 main.py search "how did we handle stock reservations" python3 main.py ask "Luis" # interactive clue loop python3 main.py conflicts # what changed over time
As a library:
from ihmt import IHMT
memory = IHMT.initialize("./workspace") memory.ingest_file("examples/InventoryService.java") memory.ingest_file("examples/journal_personal.txt") memory.flush() # close the tree up to the root
answer = memory.search("reserveStock soft hold") print(answer.best.content) # the leaf print(answer.best.path) # ['root', 'N1-software.java-…', 'L-software.java-…'] print(answer.node_reads) # how many branch files were opened
for notice in memory.notices(): print(notice) # "On 2024-03-11 you said user location = 'Madrid', but on 2026-02-03 you updated to 'Valencia'."
python3 gui.py # opens a browser at 127.0.0.1
python3 gui.py --path ~/my-memory --port 8765 --no-browser
Still zero dependencies — the server is http.server from the standard library, it listens only on the loopback interface, and every /api/* call needs the random token carried in the URL it opens.
Four screens: Set up (pick the memory folder with the system dialog, create the store, choose between per-project and global registration, preview the exact command or JSON before anything is written), Explore (collapsible tree down to the stored text, with supersession notices), Diagnose (a search that reports confidence, files opened vs. total, and the descent path), and Timeline (active vs. historical values and the detected contradictions). The interface is bilingual (ES/EN) and read-only over the memory: it never deletes or edits a leaf.
mcp_server.py exposes the tree to Claude Code as nine tools in three families: long-term memory, project indexes and session scratch memory. The core stays dependency-free; the SDK is an optional extra:
python3 -m venv .venv
.venv/bin/pip install -r requirements-mcp.txt # mcp[cli]>=2.0
For a single project, copy .mcp.json.example to that project's .mcp.json and fill in the absolute p
只显示了开头部分;其余内容请在仓库中阅读