Skip to content

icm

Permanent memory for AI agents. Single binary, zero dependencies, MCP native.

Install

$git clone https://github.com/rtk-ai/icm

Install command taken from the project's README or registry entry. Always review code before running it.

English | Français | Español | Deutsch | Italiano | Português | Nederlands | Polski | Русский | 日本語 | 中文 | العربية | 한국어

ICM

Long-term memory for AI coding agents, shared across your tools. One binary, one SQLite file. No LLM call to store or recall a memory.

Tell Claude Code how your project handles auth on Monday, and Tuesday's Gemini CLI session already knows it. ICM keeps what your coding agents learn (decisions, fixes, conventions, preferences) in one SQLite file on your machine, and gives the relevant part back at the start of each session and with each prompt you send. Up to 18 agents and editors share that memory, so you stop re-explaining your project every time you open a session or switch tools.

  • 92.9% on LoCoMo (1,540 questions, mean of three runs), level with Hindsight (92.0%), with a third less context per question. Details and caveats below.
  • No LLM call to store or recall. Hindsight, Mem0, Graphiti (Zep) and claude-mem call an LLM for every memory they store by default. ICM does not. Only its automatic extraction of facts from tool output goes through the LLM command-line tool you already use, when one is installed; provider = "none" keeps that local too (see Quickstart).
  • Useful without an embedding model. Keyword recall alone puts at least one of the right sessions in the top 5 for 88.6% of LoCoMo questions, with a median of 6.8 ms per recall on Linux x86-64.
  • 97.4% on LongMemEval-S, retrieval with no LLM: one of the right sessions in the top 5 for 487 of 500 questions, against 96.6% for MemPalace and 95.2% for agentmemory on the same measure.
  • Not ahead everywhere. On PersonaMem (a user's evolving preferences), Hindsight leads: 86.6% against ICM's 81.7%.

Quickstart

brew tap rtk-ai/tap && brew install icm    # or: curl -fsSL https://raw.githubusercontent.com/rtk-ai/icm/main/install.sh | sh
icm init                                   # instructions, skills and hooks for every agent it detects

That is the whole setup. Open a new session in Claude Code, Codex, Gemini CLI or Copilot CLI: your agent now starts with a short pack of the most important memories of the project it is in (those whose topic carries the repository's name, such as decisions-myapp in a repository called myapp, plus your preferences) and receives the memories relevant to each prompt you send. What it learns from its tool output is queued, and the queue is turned into memories at the end of each Claude Code session; with the other tools, run icm extract-pending (from a cron job, for instance).

Storing and recalling stay on your machine. The automatic extraction hands text to the LLM command-line tool you already use (Claude Code, Codex or Gemini CLI) when one is installed; set provider = "none" under [extraction.summarizer] to keep it entirely local.

To see it work right away, store and recall by hand:

$ icm store -t decisions-myapp -c "Auth uses short-lived JWTs, refreshed through /auth/refresh" -i high
Stored: 01M47YY6CHVZ48BYKQRCRNZTCF

Similar plugs

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype…

Open-source web crawler and scraper for LLMs and AI agents: any website into clean, LLM-ready Markdown. Run it yourself, or use Crawl4AI Cloud with one key.

Explore related