【文章标题】:Show HN: Engrim – A universal, local-first SQLite memory engine for AI CLIs 【文章标题】:技术展示:Engrim —— 面向AI命令行工具的通用本地优先SQLite记忆引擎

【文章正文】: The Universal Cross-Model & Cross-Agent Episodic Memory Store. 【正文】通用跨模型&跨代理的情景记忆存储库

A local-first, project-scoped SQLite memory engine that allows developers to freely switch between models and environments (Google Antigravity, Claude Code, Cursor MCP, Windsurf) on the SAME project without losing architectural decisions, user constraints, or project state. 一个采用本地优先策略、项目级SQLite记忆引擎,允许开发者在同一项目中自由切换模型和环境(Google Antigravity/Claude Code/Cursor MCP/Windsurf),且不会丢失架构决策、用户约束或项目状态。

“Why pay for 200,000 tokens of forgotten noise on every turn? The models are disposable utilities; your project’s decisions are not.” “为何要为每轮对话中20万token的遗忘噪音付费?模型只是可替换工具,而项目决策才是永恒资产”

As context windows scale to 1M+ tokens, developers face attention dilution: reasoning degrades, cost multiplies with every conversational turn, and clearing context causes total amnesia. 当上下文窗口突破百万token时,开发者面临注意力稀释:推理能力下降、对话轮次成本倍增,清除上下文会导致全面失忆。

engrim replaces attention dilution with 4,000 characters of curated episodic working memory: engrim通过4000字符的精选情景工作记忆解决注意力稀释问题:

  • Switzerland of AI Memory: Decouples project intelligence from any single AI vendor or proprietary cloud silo. Switch from Gemini 3.8 in Antigravity to Claude 3.7 Sonnet in Claude Code to GPT-4o in Cursor mid-project — your agents pick up right where the others left off.

  • AI记忆领域的瑞士:将项目智能与任何单一AI供应商解耦。在项目中途从Antigravity的Gemini 3.8切换到Claude Code的Claude 3.7 Sonnet再到Cursor的GPT-4o时,代理能无缝继承先前状态。

  • Save Button for Autonomous Coding: Externalize decisions, constraints, and state as you work. Clear your agent session freely (/clear ) and watch context reload intact.

  • 自主编程的保存按钮:实时外化决策/约束/状态。自由清除代理会话(/clear)后仍可完整重载上下文。

  • Smart, Hot Context Loading: Combines SQLite FTS5 (bm25 keyword search) with static vector embeddings (model2vec ) in a zero-latency hybrid reciprocal-rank fusion engine.

  • 智能热加载:在零延迟混合互逆排序融合引擎中,整合SQLite FTS5(bm25关键词搜索)与静态向量嵌入(model2vec)。

Tested across 105 continuous sessions on a 50,000-line algorithmic trading system. Zero regressions across 186 unit tests, zero context amnesia across model switches. 在5万行算法交易系统上完成105次连续会话测试:186个单元测试零回归,模型切换零上下文遗忘。

In production testing on an active algorithmic trading codebase running real capital: 在真实资金运作的算法交易代码库中实测:

  • Over 153,000 tokens of work across days of architecture, parameter tuning, and debugging was consolidated into an active memory pack under 1,000 tokens (<1% of the context window).

  • 数日架构设计/参数调优/调试产生的153,000+ token工作记忆,被压缩为不足1000token的活跃记忆包(<1%上下文窗口)

  • That is a 99%+ cut in reloaded context cost on every session restart.

  • 每次会话重启可减少99%+的上下文重载成本

  • Seamlessly switched between Google Antigravity CLI, Claude Code, and Cursor MCP on identical repos with zero model drift or architectural regression.

  • 在相同代码库上无缝切换Google Antigravity CLI/Claude Code/Cursor MCP,零模型漂移或架构退化

graph TD subgraph Agents [“Supported Agent Environments”] AGY[“Google Antigravity
(PreInvocation & Stop Hooks)”] CLAUDE[“Claude Code
(SessionStart & Stop Hooks)”] CURSOR[“Cursor / Windsurf
(Model Context Protocol stdio)”] end subgraph CoreEngine [“engrim Core Engine (v1.3.0)”] ADAPTERS[“Adapters & Hooks
(agy, claude, mcp)”] PROVENANCE[“Agent Provenance Engine
(origin_agent tracking)”] ROUTER[“Hybrid Retrieval & Minder
(bm25 lexical + vector cosine)”] end subgraph Storage [“Local-First SQLite Store (~/.engrim/memory.db)”] MEMORIES[(“Curated Memories
(decisions, facts, feedback)”)] FTS5[“FTS5 Full-Text Search
(porter stemmer, triggers)”] VEC[“Vector Embeddings
(model2vec static embeddings)”] LOG[“Flight Recorder Log
(turns + action lines)”] end AGY <—>|“hook / CLI”| ADAPTERS CLAUDE <—>|“hook / CLI”| ADAPTERS CURSOR <—>|“JSON-RPC (stdio)”| ADAPTERS ADAPTERS —> PROVENANCE PROVENANCE —> ROUTER ROUTER —> MEMORIES MEMORIES --- FTS5 MEMORIES --- VEC ADAPTERS —> LOG 流程图(此处保留原文技术图表结构)

pip install engrim Run engrim setup without arguments. It automatically detects installed environments on your machine and configures them all: engrim setup

  • If ~/.gemini exists wires Antigravity lifecycle hooks, skill, and MCP server.
  • If ~/.claude exists wires Claude Code SessionStart, Stop, status line, and CLAUDE.md.
  • If ~/.cursor exists generates and merges Cursor MCP configuration.

安装与配置说明(此处保留原文命令行格式)

When multiple agents collaborate on a single codebase, provenance matters. engrim records the origin of every memory entry with the origin_agent field:

  • Allowed values: antigravity ,claude-code ,cursor ,cli , oruser .
  • Automatically populated based on the active hook, 当多代理协同开发时,溯源至关重要。engrim通过origin_agent字段记录每条记忆来源:
  • 可选值:antigravity/claude-code/cursor/cli/user
  • 根据活跃钩子自动填充