ICM Integrations

June 20, 2026 · View on GitHub

ICM integrates with 16 AI tools across 4 integration modes: MCP server, CLI instructions, skills/rules, and hooks.

Quick Setup

# Install everything for all detected tools
icm init --mode all

# Or pick a specific mode
icm init --mode mcp      # MCP server configs (default)
icm init --mode cli      # Inject instructions into CLAUDE.md, AGENTS.md, etc.
icm init --mode skill    # Slash commands & rules
icm init --mode hook     # Claude Code hooks + OpenCode plugin

Supported Tools

Editors & IDEs

Claude Code

# Option 1: MCP (recommended)
claude mcp add icm -- icm serve

# Option 2: Full setup (MCP + hooks + skills)
icm init --mode all

Config: ~/.claude.jsonmcpServers.icm

Hooks (optional):

HookEventWhat it does
icm hook prePreToolUseAuto-allow icm commands
icm hook postPostToolUseExtract facts every 15 calls
icm hook compactPreCompactExtract before context compression
icm hook promptUserPromptSubmitInject recalled context

Skills: /recall, /remember slash commands.


Claude Desktop

icm init --mode mcp

Config: ~/Library/Application Support/Claude/claude_desktop_config.jsonmcpServers.icm


Cursor

icm init --mode mcp
icm init --mode skill   # Installs ~/.cursor/rules/icm.mdc

MCP Config: ~/.cursor/mcp.jsonmcpServers.icm

Rule file: ~/.cursor/rules/icm.mdc — Always-on rule that instructs Cursor to use ICM for persistent memory.


Windsurf

icm init --mode mcp     # MCP server
icm init --mode cli     # Injects instructions into .windsurfrules

MCP Config: ~/.codeium/windsurf/mcp_config.jsonmcpServers.icm

Rules: .windsurfrules in project root — project-scoped instructions.


VS Code / GitHub Copilot

icm init --mode mcp     # MCP server for VS Code
icm init --mode cli     # Injects instructions into .github/copilot-instructions.md

MCP Config: ~/Library/Application Support/Code/User/mcp.jsonservers.icm

Note: VS Code uses "servers" as the JSON key, not "mcpServers".

Copilot instructions: .github/copilot-instructions.md — automatically loaded by GitHub Copilot at session start. Contains ICM recall/store instructions.


Zed

icm init --mode mcp

Config: ~/.zed/settings.jsoncontext_servers.icm

Zed uses a nested format:

{
  "context_servers": {
    "icm": {
      "command": { "path": "/path/to/icm", "args": ["serve"] }
    }
  }
}

Terminal Tools

Amp

icm init --mode mcp
icm init --mode skill   # Installs /icm-recall and /icm-remember

Config: ~/.config/amp/settings.jsonamp.mcpServers.icm

Skills: ~/.config/amp/skills/icm-recall.md, icm-remember.md


Amazon Q

icm init --mode mcp

Config: ~/.aws/amazonq/mcp.jsonmcpServers.icm


OpenAI Codex CLI

icm init --mode mcp     # TOML config
icm init --mode cli     # Injects into AGENTS.md
icm init --mode hook    # SessionStart + PreToolUse + UserPromptSubmit
                        # (PostToolUse opt-in, see below)

Config: ~/.codex/config.toml

[mcp_servers.icm]
command = "/path/to/icm"
args = ["serve"]

Hooks: ~/.codex/hooks.json — the hook mode installs three hooks by default: SessionStart, PreToolUse (auto-allow icm commands), and UserPromptSubmit (recall injection).

PostToolUse is opt-in (issue #288): Codex fires PostToolUse on every shell command, which generates ~14k events / 24h and floods the store with tool-output bloat (paths, patch fragments, help text, generic note entries). MCP + AGENTS.md alone are enough for icm_memory_store to land curated facts via the model. If you want PostToolUse extraction on Codex anyway, opt in with:

icm init --mode hook --with-codex-post-hook

…and tune [extraction] first (extract_every, min_score, store_raw = false) so the auto-extracted memories stay useful.

Instructions: AGENTS.md in project root.


Gemini Code Assist

icm init --mode mcp
icm init --mode cli     # Injects into ~/.gemini/GEMINI.md

Config: ~/.gemini/settings.jsonmcpServers.icm

Instructions: ~/.gemini/GEMINI.md


OpenCode

icm init --mode mcp     # MCP server config
icm init --mode hook    # Installs JS plugin with hooks

MCP Config: ~/.config/opencode/opencode.jsonmcp.icm

Plugin: ~/.config/opencode/plugins/icm.js

EventWhat it does
tool.execute.afterExtract facts from tool output
experimental.session.compactingExtract before context compression
session.createdRecall context at session start

VS Code Extensions

Cline

icm init --mode mcp

Config: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json


Roo Code

icm init --mode mcp
icm init --mode skill   # Installs ~/.roo/rules/icm.md

Config: ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/mcp_settings.json

Rule: ~/.roo/rules/icm.md


Kilo Code

icm init --mode mcp

Config: ~/Library/Application Support/Code/User/globalStorage/kilocode.kilo-code/settings/mcp_settings.json


Integration Modes Summary

ModeWhat it doesTools
mcpConfigures MCP server in each tool's configAll 14 tools
cliInjects ICM instructions into instruction filesClaude Code, Codex, Gemini, Copilot, Windsurf
skillCreates slash commands and rule filesClaude Code, Cursor, Roo Code, Amp
hookInstalls hooks/plugins for automatic extractionClaude Code (5 hooks), Gemini CLI (5 hooks), Codex CLI (3 hooks; PostToolUse opt-in, #288), Copilot CLI (4 hooks), OpenCode (TS plugin)

Manual Setup

For any MCP-compatible tool not listed above:

{
  "command": "icm",
  "args": ["serve"],
  "env": {}
}

Or with compact mode (shorter responses, fewer tokens):

{
  "command": "icm",
  "args": ["serve", "--compact"],
  "env": {}
}

MCP Tools Available

When connected via MCP, these 18 tools are available:

ToolDescription
icm_memory_storeStore a memory
icm_memory_recallSearch memories (hybrid: FTS + vector)
icm_memory_updateUpdate an existing memory
icm_memory_forgetDelete a memory
icm_memory_consolidateMerge topic memories into one
icm_memory_healthTopic hygiene audit
icm_memory_embed_allGenerate embeddings for all memories
icm_memory_extract_patternsDetect recurring patterns
icm_memory_list_topicsList all topics with stats
icm_memory_statsGlobal statistics
icm_memoir_createCreate a knowledge graph
icm_memoir_showDisplay memoir structure
icm_memoir_add_conceptAdd concept to memoir
icm_memoir_linkLink concepts
icm_memoir_searchSearch within a memoir
icm_memoir_search_allSearch across all memoirs
icm_feedback_recordRecord a correction
icm_feedback_searchSearch past corrections