Finance Toolkit
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
作者提供的说明(英文原文)
Read-only MCP access to a local append-only evidence ledger for AI agent sessions.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
链接指向作者自己的文件;我们不托管也不重新打包它。打开文件后,Claude Desktop 会进行安装。
在终端中运行这条命令
浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 Liyuan1992 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.7.1)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 MCPB。
同一分类中有:Finance Toolkit, SolidInvoice, Korea Tax Calculator
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.
Korean tax calculation and tax-audit judgment MCP: 96 tools with statutory citations.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
English | 简体中文
rawmem is a tiny local-first evidence ledger for AI and human workflows.
The idea is deliberately small:
Store now, understand later.
AI memory systems often start by summarizing. rawmem starts one layer lower: append-only raw evidence. A chat turn, a 2px UI tweak, a bug fix, a command run, a git snapshot, a browser clip, or a coding-agent completion can all become the same kind of local event.
The hard boundary is simple: capture is not recall. The ledger is a source layer. Review, filtering, MemoryDSL conversion, preference mining, and project rules can be derived later.
Small facts look noisy alone. Repeated across time and projects, they become patterns:
Disk is cheap. Missing history is expensive.
New to programming? Choose the Windows app (EXE). An EXE is a Windows program you open by double-clicking. Running it requires no Python installation or terminal commands.
| Who it is for | Choose | Requirements |
|---|---|---|
| Windows users who want a graphical app | Windows EXE preview | A built rawmem.exe; no Python required |
| Developers who want commands or integrations | Python CLI | Python 3.10+ and Git for the source installation below |
Choose one approach; you do not need both. There is currently no downloadable release of the new EXE preview. A developer must build it from source first. Users unfamiliar with programming can wait for an EXE release instead of following the Python commands below.
Once you have a built rawmem.exe, double-click it, choose a storage folder, decide whether to start at logon, and click to begin recording. Browser saving requires the optional extension. See Windows recorder for setup and build instructions. This preview is unsigned and the extension still requires manual developer-mode installation.
EXE users can skip this section. With Python 3.10+ and Git installed, run these commands in PowerShell:
git clone https://github.com/Liyuan1992/rawmem.git
cd rawmem python -m pip install --user -e .
The core runtime has no third-party dependencies. DeepSeek Harness compressed session capture and the MCP server are optional extras:
python -m pip install --user -e ".[deepseek-harness,mcp]"
To install the published v0.7.1 wheel without cloning the repository:
python -m pip install "rawmem[deepseek-harness,mcp] @ https://github.com/Liyuan1992/rawmem/releases/download/v0.7.1/rawmem-0.7.1-py3-none-any.whl"
Make sure the user Scripts directory (e.g. %APPDATA%\Python\Python312\Scripts) is on PATH so rawmem works from any directory.
rawmem setup --global --install-startup --dry-run # inspect first; writes nothing
rawmem setup --global --yes # global config + git hooks for all repos rawmem setup --install-startup --yes # run the daemon headless at every logon rawmem setup --start-daemon # start it right now rawmem config --show-browser-token # paste into the browser extension options rawmem doctor # verify the complete installation
After this the daemon passively tails Claude Code, Codex, and Cursor sessions, tails PowerShell history, watches configured directories, and serves the browser-capture endpoint — with zero per-event action from you. Clipboard polling is available but disabled by default; enable it explicitly in config or with rawmem config --include-clipboard. The guiding principle is passive over self-report: evidence is pulled from logs other tools already write, not pushed by agents remembering to report back.
See docs/SETUP.md for the full setup matrix and the browser extension.
For DeepSeek Harness capture plus bounded read-only MCP access, see docs/DEEPSEEK_HARNESS.md.
Background capture (the primary path):
rawmem daemon # run all background surfaces in one process
rawmem daemon --status # task counters, errors, last run times rawmem doctor # config, storage, daemon, token, startup, hooks, events rawmem doctor --strict # warnings also produce a nonzero exit code rawmem sync # one manual tailer pass rawmem sync --backfill # first run: also ingest existing history rawmem config --disable-clipboard rawmem config --rotate-browser-token
Preview or remove integrations:
rawmem setup --global --install-startup --dry-run
rawmem uninstall --dry-run rawmem uninstall # disables integrations; keeps ~/.rawmem rawmem uninstall --remove-home --yes # also deletes the ledger and local state
Inspect the ledger:
rawmem tail --limit 10
rawmem tail --source claude-code --limit 5 rawmem tail --project rawmem --type agent_user_turn --json rawmem verify --json rawmem export --cursor-file .rawmem\consumer-cursor.json --limit 100 rawmem seal --yes --json # unchanged read-only archive + linked active ledger rawmem archives --json # metadata-only derived archive registry rawmem export --archive .rawmem\archives\old.jsonl # explicit; metadata-only default
rawmem export uses the stable rawmem.cursor.v1 contract and never needs to load the whole ledger. Cursors bind to a ledger identity plus a byte offset and boundary hash, so truncation, replacement, or rotation is reported explicitly instead of silently skipping or duplicating evidence. See docs/LEDGER_PROTOCOL.md.
rawmem verify is strictly read-only: it never creates or refreshes lock/state sidecars. rawmem seal keeps historical bytes unchanged, records the full verification report and every accepted previous_hash_mismatch, marks the old ledger ReadOnly on Windows, and creates a chain-complete active ledger at the same configured path. Archive reads require --archive; they hash the complete archive before returning results, default to a body-free metadata projection, and surface recorded integrity warnings.
Manual and scripted capture:
rawmem capture --source manual --type note --text "First rawmem event"
"The button should be 2px larger." | rawmem capture --source clipboard --type ui_feedback --stdin rawmem ingest --file event.json "Selected page text" | rawmem clip --stdin --url "https://example.com" rawmem run --source terminal -- python --version rawmem git-snapshot
Capture preserves complete supported text without a character cap, including when old configurations still contain max_chars. Source batch sizes are processing budgets and never split complete records. Browser capture saves only the loaded document on an explicit click; it does not fetch hidden history.
| Surface | How | What lands in the ledger |
|---|---|---|
| Claude Code sessions | daemon tailer (zero friction) | user/assistant turns, project, session, branch |
| Codex sessions | daemon tailer (zero friction) | user/assistant turns, project, session |
| Cursor agent transcripts | daemon tailer (zero friction) | user/assistant turns, workspace, session |
| DeepSeek Harness sessions | opt-in daemon tailer (zero friction after setup) | direct user/model turns; tool name/id/status metadata only |
| WorkBuddy local history | opt-in daemon tailer (desktop setup enables it) | 5.1-style JSONL message text and source identity |
| OpenClaw local history | opt-in daemon tailer (desktop setup enables it) | legacy JSONL and new SQLite transcript messages; shared identity dedupe |
| Shell commands | daemon tailer of PSReadLine history | every completed command line |
| Clipboard | daemon poller (deduped, opt-in) | clipboard text changes |
| Git lifecycle, all repos | setup --global --yes core.hooksPath hooks | commit/checkout/merge/rewrite/push snapshots |
| File changes | daemon watcher | batched created/modified/deleted paths |
| Browser pages | MV3 extension (extension/) + token-protected localhost endpoint | selection or page text, title, URL |
| Any adapter/tool | ingest / POST /capture | JSON event payloads |
| Manual notes | capture / clip / run | raw text, tags, artifacts, command results |
By default, events are written to:
~/.rawmem/events.jsonl
Use --local to write to the current project's private ledger:
.rawmem/events.jsonl
Use --ledger or RAWMEM_LEDGER for an explicit ledger path.
Capture policy is configured under privacy in ~/.rawmem/config.json. Optional project/path allowlists fail closed, common secret shapes are redacted before append, and artifacts default to metadata references rather than embedded content. Daemon status and rawmem doctor expose source coverage, skipped events, redactions, and cursor health without printing captured text.
.rawmem/ is ignored by Git because raw evidence can contain private text, paths, command output, and local work context.
Each line is JSON:
{
"schema": "rawmem.event.v1", "event_id": "evt_...", "ts": "2026-07-09T00:00:00Z", "source": "codex", "event_type": "task_note", "project": "rawmem", "cwd": "/workspace/fictional-rawmem", "summary": "User asked for a local-first raw evidence ledger.", "raw_text": "User asked for a local-first raw evidence ledger.", "tags": [], "artifacts": [], "payload": {}, "privacy": { "scope": "local_only", "review_required": true }, "previous_hash": null, "content_hash": "..." }
The previous_hash / content_hash chain is a lightweight tamper-evidence mechanism. It is not a security boundary, but it makes accidental rewrites more visible.
rawmem should not chase every AI tool with one giant integration. The stable piece is the ledger. Capture adapters can be small and optional:
All adapters should emit the same event schema.
MCP is a query adapter, not a promotion path. rawmem-mcp exposes only path-free status, bounded recent events, and archive metadata. Summary access is the default; raw bodies require an explicit read:full scope.
~/.rawmem/config.json.--yes.rawmem uninstall preserves captured data unless --remove-home --yes is explicit.See PRIVACY.md and SECURITY.md before enabling background capture on a daily driver machine.
$env:PYTHONPATH = "src"
python -m unittest discover -s tests python scripts/open_source_audit.py