Claude是多利,Urme是尼莫?

#Tech

Claude是多利,Urme是尼莫?

文章探讨了大型语言模型(LLM)在软件开发中的应用,并指出目前像Claude这样的模型存在记忆丢失的问题。

Urme应运而生,它是一个外部记忆系统,为Claude提供历史记录搜索界面,记录对话、代码变更、工具使用等信息,并与Git历史同步。

Urme使用MCP协议,允许Claude直接查询历史记录,解释代码变更的原因,甚至区分人类修改和Claude生成的代码,有效保留了项目决策过程中的思考和原因。

该工具通过单个二进制文件提供,支持图形界面和JSON-RPC接口,旨在打造机构记忆,方便代码迁移和远程协作。

查看原文开头(英文 · 仅前 3 段)

4 min read3 days ago--Software development cannot be completely separated from agentic LLMs anymore.Users come in more shapes than ever before: happy weekend vibecoders on NeoMacBooks, grim hackers connecting their Dvorak mechanical keyboard to a solar powered laptop in an organic farm in Vermont and anyone in between. Some people trust their software gremlins with full coding power and others barely ask arcane APL syntax questions to a sandboxed version via 42 different hops on Tor.Whoever you are I salute you!What happens to conversations though? How do you handle compressed context? Does Claude retain the memory and would you reminisce together in your old age about wiping the company database?No. And that’s the problem.Claude forgets everything the moment the session ends. Each new conversation starts almost blank. Context windows aren’t infinite, and what gets quietly dropped might matter. Urme (Romanian for traces) is the external memory Claude doesn’t have.A search interface to your history with Claude. Every frustrating conversation, every code change accepted, modified or refused, every tool use, every “thinking” section. All summarised, connected to your git history and ready for consumption by you and your collaborators including the rezident information gremlin.Have today’s Claude interrogate its ephemeral cousin from 2 months ago when you pulled an all-nighter that you have no memory of. Or review a PR by looking at the conversation your colleague graciously and perhaps unwisely shared with you.Press enter or click to view image in full sizeThe refusals matter as much as the acceptances. The approaches that didn’t ship are part of the record too – the rejected architecture, the library you tried and abandoned at 1am, the three rewrites before the one that stuck. Git has none of that. Urme does.Press enter or click to view image in full sizeGit tells you what changed. Urme tells you why – and specifically what you and Claude were thinking when it happened. Urme speaks MCP, which means Claude can query it directly mid-session without you lifting a finger. Ask “using urme, why did we replace ChromaDB with SQLite?” and Claude calls `search_history`, pulls the relevant turns, and synthesises an answer while the TUI pane scrolls to the exact conversation that drove the change. The commit is there. The reasoning behind it is there. The 2am uncertainty that almost sent you back to Postgres is there too.Press enter or click to view image in full sizeOne detail worth mentioning: urme can tell the difference between what Claude wrote and what you quietly changed afterward. The index is an honest record, not a Claude-flattering one. Human edits – content in a commit that no Claude edit explains – are detected and attributed separately. Your fingerprints stay visible.The index gets richer the more you use it. Claude can write syntheses back into it via `push_synthesis`, so the accumulated reasoning compounds over time rather than evaporating at the end of every session.It ships as a single binary. With a TTY it opens the TUI – three modes, cyclewith `g`, `h`, `s`: git log with Claude/human attribution per file, full session and turn history, and search with Claude-synthesised answers. Without a TTY it speaks JSON-RPC and becomes an MCP server for Claude Code. Same binary, no subcommand, no configuration ceremony. The split-pane workflow follows naturally: urme in one pane, Claude Code in the other, questions prefixed with “using urme” push results across so you can watch the reasoning surface in real time.A colleague can clone the repo, run `urme import` on a shared db, and have Claude brief itself on decisions made three sprints ago by someone who has since left. That’s not a toy feature. That’s institutional memory. If you’re moving repos, onboarding someone remotely, or just want a backup before you do something inadvisable, urme exports the entire index to a standard SQLite file anyone can open.urme export [--branch=BRANCH] [--project-dir=DIR] [--out=PATH]urme import [--project-dir=DIR] [OPTION] PATHNo proprietary format, no sync service, no account. A file you own.brew tap corneliuhoffman/urmebrew install urmecd ~/your-repourme init -j 8urme

※ 出于版权考虑,仅引用前 3 段。完整内容请阅读原文。

阅读原文 ↗