darwin-memo
概览
作者提供的说明(英文原文)
Self-curating agent memory kept honest by survival-based selection over measured outcomes.
PopNx MCP 的三大支柱
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
- 用户评价i暂无评价评价功能将在后续阶段与账户功能一起开放
- 我们的基础检查i2 项中通过 2 项依据公开信息检查;尚未扫描代码
- 使用情况i非常新↓ 27/周 · ★ 0
它能帮你做什么
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
- 连接方式: 在你的电脑上运行
- 传输方式: stdio
- 分类: 搜索与 AI 记忆
安装
选择你使用的 AI 应用,然后复制设置。
安装之前
- 基础检查:2 项中通过 2 项
- 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
- 需要你自己填写:
DARWIN_MEMO_PATH
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"darwin-memo": {
"command": "uvx",
"args": [
"darwin-memo",
"mcp"
],
"env": {
"DARWIN_MEMO_PATH": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add darwin-memo --env DARWIN_MEMO_PATH=your-value -- uvx darwin-memo mcp运行前请先填写空着的值。
或者自己复制设置
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"darwin-memo": {
"command": "uvx",
"args": [
"darwin-memo",
"mcp"
],
"env": {
"DARWIN_MEMO_PATH": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
或者自己复制设置
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"darwin-memo": {
"type": "stdio",
"command": "uvx",
"args": [
"darwin-memo",
"mcp"
],
"env": {
"DARWIN_MEMO_PATH": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
需要你填写的值
DARWIN_MEMO_PATHenvPath to the persistent memory file (default ~/.darwin-memo/memory.json)
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
哪些应用可以使用它
依据这个服务器的连接方式和各应用自己的文档,检查于 2026年11月10日。
在你的电脑上运行,适用于
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
它能做什么
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
基础检查i
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月10日
- ✓ 通过
作者与仓库一致
注册名称已通过 GitHub 账户 rogermsc 验证,该账户拥有此仓库
- ✓ 通过
仍在维护
代码最后更新于2个月前
- … 尚未检查
有许可证
我们还没有从 GitHub 读取这个仓库
- – 不适用
端点有响应
它在你的电脑上运行,没有互联网端点
- – 不适用
使用 OAuth 登录
在你的电脑上运行,改用本地设置
- … 尚未检查
工具描述中没有隐藏指令
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与“搜索与 AI 记忆”中的其他服务器比较i
- 星标数多于此分类中其他 5861 个服务器的 0%
- 发布到注册中心的时间比此分类中其他 5861 个服务器的 37% 更新
- 基础检查结果等于或优于此分类中其他 5861 个服务器的 100%
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
常见问题
darwin-memo 安全吗?
它在 2 项适用的基础检查中通过了 2 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
它需要哪些密钥或代码?
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在我的电脑上运行还是在云端?
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
它还在维护吗?
GitHub 仓库最后更新于2个月前,最新版本(0.7.1)于2个月前进入注册中心。
哪些应用可以使用它?
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
有什么可以替代它?
同一分类中有:Ruflo, Context7, Metabase
替代选择
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
作者的 README
打开 README
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
darwin-memo
Measured memory for coding agents. Keep repository lessons, connect them to reported task outcomes, and inspect why each lesson stays or is removed.
Start with Python projects using pytest, GitHub Actions, and an MCP client. The core uses only the Python standard library. MCP support is an optional extra.
The product goal is lower total operating cost while preserving task success. That benefit is not established by the committed experiments. A smaller memory store or a larger energy balance is not a savings measurement.
See the mechanism in 60 seconds
From this reviewed checkout:
python -m pip install -e .
darwin-memo demo --out /tmp/darwin-demo.json darwin-memo ui /tmp/darwin-demo.json
The demo uses a filesystem-backed simulation: file deletion uses file size, and protected-file recreation incurs a modeled penalty of three times that size. It does not measure restoration scratch space, I/O cost, or money. Open a lesson in the dashboard to inspect its settlements and removal reason.
To try the coding workflow with a real failing evaluation, use the fixed pytest example. Its authentication-retry defect changes one fixed case from failure to success. The example demonstrates settlement; it does not establish that memory caused the fix.
Install the development workflow
The init and task commands in this checkout are unreleased. Install them from the reviewed checkout on Python 3.10 or later:
python -m pip install -e '.[mcp]'
Build the dashboard from this checkout before packaging it:
npm ci --prefix ui
npm run build --prefix ui
Persistence requires POSIX advisory locks on a local filesystem. Windows and shared network stores are unsupported; the package refuses lockless persistence.
Connect one repository
- Run
darwin-memo init --profile github-pytestat your repository root. - Configure your MCP client using
.darwin-memo/mcp.example.json. - Add a repository lesson and query memory before a task.
- Bind the returned ticket to the repository, task, base commit, and fixed evaluation.
- Complete the task and commit the bound store with your changes.
- Run the generated GitHub Actions workflow against that task commit.
- Download its outcome artifact and carry the accepted store forward.
- Open the dashboard to inspect the reported outcome and retained lesson.
The GitHub pytest guide includes setup requirements and the generated operating instructions. init refuses overwrites and changes no global agent settings. The recommended MCP configuration exposes query, add, and inspection while reserving settlement and retention mutations for the host. It reduces accidental self-awarded credit; it does not protect against a malicious actor with write access to the store, evaluation, or workflow.
The workflow compares the same base evaluation at both commits. Added passing tests earn no credit. Green-to-green results earn zero. Missing observations or infrastructure failures abstain and leave the ticket pending. Bound settlements record repository, task, commit, run, evaluation fingerprint, and report hashes. Process one task at a time: independent Git snapshots do not merge.
Understand retention
A query retrieves lessons and opens a ticket. A later outcome moves the consulted lessons' bounded energy balances. Ticks charge upkeep; entries that reach the floor are removed, and similar entries can merge. Pinning exempts a lesson from removal and consolidation. The glossary explains the terms.
Settlement associates outcomes with consulted lessons. It does not establish causation. Passing tests are observable outcomes, not physically conserved resources. ci, operator, and agent identify reporting paths. Historical measured labels are caller claims; absent provenance is unknown. None of these labels authenticates a report by itself.
CLI, dashboard, and MCP mutations lock the full load–modify–save operation. MCP reloads on each call, cached embeddings survive unrelated writes, and stale Python writers are rejected. Retry the whole operation after contention. See the store format and API reference.
Inspect the evidence
| Question | Evidence | What it supports |
|---|---|---|
| What happens under corrupted feedback? | Central attack-table reconstruction, committed observations | A controlled simulated comparison with a modeled restoration penalty, including failure boundaries |
| Does a tuned counter compete? | Counter sweep, paper | Negative findings for universal superiority; tuned forgiveness can retain useful memory under small attack budgets |
| Does memory reduce total coding cost while preserving success? | Prospective protocol | An unanswered question; historical results lack the required complete cost comparison and noninferiority evidence |
| Can users complete and retain the workflow? | Pilot and release record | Pending external observation; no fabricated adoption counts |
Reconstruct the paper's central table without an installation or network:
python tools/reconstruct_paper.py
The paper, *Attacking the Curator*, focuses on the feedback-corruption threat model, curator comparisons, and a reusable reproduction artifact. Historical replays remain replays. Read the claim audit, reproduction paths, and submission status.
Limitations and participation
Memory can be harmful, useful lessons can starve, and an attacker who controls enough outcome reports can control retention. A fixed evaluation can still be incomplete or gameable. The threat model defines the boundary. If no memory performs best in the cost study, the release will report that result.
Other integrations remain available; the GitHub pytest profile is the supported first-release path. Report setup failures with the diagnostic issue template, or choose a bounded contributor task. Release promotion, participant contact, paid experiments, and submission remain separate authorized actions.