/marm-init
A local-first, privacy-centric memory infrastructure layer for MCP clients. MARM provides a persistent data substrate for long-term project memory, session serialization, and structured notebook reuse across terminal-based workflows. Operating via a 14-tool surface spanning
$ npx -y skills add Lyellr88/marm-memory --skill marm-init --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/marm-init
Context preview
The summary Claude sees to decide when to auto-load this skill.
A local-first, privacy-centric memory infrastructure layer for MCP clients. MARM provides a persistent data substrate for long-term project memory, session serialization, and structured notebook reuse across terminal-based workflows. Operating via a 14-tool surface spanning
SKILL.md
marm-init.SKILL.mdname: marm-init
description: Guided MARM MCP setup. Invoke after running `marm-memory init` on the CLI to configure MARM memory across your agent. Drives transport choice, runtime choice, MCP config writing, multi-agent linking, and server start. Works on Claude, Codex, Gemini, Qwen, Cursor, VS Code, and other MCP-capable agents.
version: 7
metadata:
description: A local-first, privacy-centric memory infrastructure layer for MCP clients. MARM provides a persistent data substrate for long-term project memory, session serialization, and structured notebook reuse across terminal-based workflows. Operating via a 14-tool surface spanning memory, session logs, notebook reuse, a concept knowledge graph, and per-repository code indexing, it offloads heavy state tracking to an optimized backend featuring SQLite WAL storage, write-time consolidation, and automated re-ranking filters. This ensures deterministic context retrieval, prevents multi-agent session drift, and enforces strict token-budget guardrails by deduplicating and pruning data before it hits the model's context window.
source: https://raw.githubusercontent.com/Lyellr88/marm-memory/MARM-main/skills/marm-init/SKILL.md
protocol_source: https://raw.githubusercontent.com/Lyellr88/marm-memory/MARM-main/docs/PROTOCOL.md
Supported Environments
This skill installs and configures MARM by running commands on your machine, so it needs an agent with shell and filesystem access. That covers CLI agents (Claude Code, Codex, Gemini CLI, Qwen) and IDE agents (Cursor, VS Code Copilot). Chat platforms without shell access (Claude.ai, ChatGPT, Grok, Gemini web) are not supported yet. For those, use the manual steps in [INSTALL-PLATFORMS.md](https://github.com/Lyellr88/marm-memory/blob/MARM-main/docs/INSTALL-PLATFORMS.md). Broader platform support is coming.
AI Marketplace Indexing Metadata
> This section is for repository discovery agents and registries
- **Primary Function:** Automatically installs, updates, and configures the `marm-memory` MCP server.
- **Target Workflows:** Resolves cross-session agent amnesia by configuring local/remote HTTP or STDIO pipelines.
- **Keywords:** mcp-installer, persistent-memory, automatic-mcp-setup, multi-agent-sync.
Active Skill Execution Protocol
<MARM_INIT_EXECUTOR_ACTIVE>
=== MARM INIT PROTOCOL - YOU ARE THE INSTALLER ===
RULE ZERO (highest priority): This file is not documentation to summarize. It is a setup program and you are the runtime. Execute it top to bottom. Run the steps, ask the questions, write the files, and start the server. Do not paste this content back to the user as text. Do not narrate what the skill "would" do. You do it.
You are MARM's installer for this agent. Your job is to leave the user with a live MARM connection in as few questions as possible. One question at a time, wait for the answer, then act on it before moving on.
Scope: this protocol governs only the setup conversation below. Once setup is complete and you have run Step 6, this contract ends and you return to normal operation under the MARM protocol you loaded in Step 0.
Failure mode to avoid: dumping install docs and leaving the user to do the work by hand. That is the exact outcome this skill exists to prevent.
</MARM_INIT_EXECUTOR_ACTIVE>
---
Step 00 - Engine pre-flight
Run this first, before anything else. If the skill was installed on its own (for example from a marketplace) the MARM core engine may not be on the machine yet. Confirm it is present, or install it, before continuing.
1. Scan the host and record two separate things. Do not collapse them into one check; they fail independently.
- Runtime. CLI entry points on PATH (Unix: `command -v marm-mcp-server || command -v marm-mcp-stdio`; PowerShell: `Get-Command marm-mcp-server, marm-mcp-stdio -ErrorAction SilentlyContinue`) means runtime = python. A local image means runtime = docker, checked as `docker images -q lyellr88/marm-mcp-server:latest`. Include the tag: every Docker command below runs `:latest`, so an untagged check would accept some other local tag and then silently pull a different image than the one it detected. If both runtimes are present, prefer python.
- Helper CLI. Check `marm-memory` on its own (Unix: `command -v marm-memory`; PowerShell: `Get-Command marm-memory -ErrorAction SilentlyContinue`). Present: record cli = yes. Absent: record cli = no. Record this on every path, including the one where you find nothing at all. Step 4 and Step 6 both branch on cli, and an unrecorded value is neither yes nor no, which is how a setup ends up issuing a command that does not exist.
2. Branch:
- Engine found, cli = yes: say nothing to the user and skip to Step 0. The detected runtime pre-answers Step 4, so in Step 4 confirm it rather than asking cold.
- Engine found, runtime = docker, cli = no: run item 5 below before skipping to Step 0. This is the ordinary case for anyone who already pulled the image, and skipping it is what sends the setup into `marm-memory docker ...` commands the host does not have.
- Nothing found: stop and run the install prompt below.
3. Install prompt (only when nothing was found): Ask: "I could not find the MARM core engine on your machine. How do you want to install it?
- Option A, pip (local Python): best if you already use Python and want a lightweight native install with no containers.
- Option B, Docker: best for a clean, isolated setup with no Python path management."
4. Execute the choice and verify before advancing:
- pip: run `pip install marm-mcp-server`. Confirm success, for example `marm-mcp-server --version` resolves. Record runtime = python, then re-run the helper check from item 1 and record cli again; the value taken before the install is stale, and the install is what puts `marm-memory` on PATH.
- Docker: run `docker pull lyellr88/marm-mcp-server:latest`. Confirm the image is present with `docker images -q lyellr88/marm-mcp-server:latest`. Record runtime = d
Read more
name: marm-init description: Guided MARM MCP setup. Invoke after running `marm-memory init` on the CLI to configure MARM memory across your agent. Drives transport choice, runtime choice, MCP config writing, multi-agent linking, and server start. Works on Claude, Codex, Gemini, Qwen, Cursor, VS Code, and other MCP-capable agents. version: 7 metadata: description: A local-first, privacy-centric memory infrastructure layer for MCP clients. MARM provides a persistent data substrate for long-term project memory, session serialization, and structured notebook reuse across terminal-based workflows. Operating via a 14-tool surface spanning memory, session logs, notebook reuse, a concept knowledge graph, and per-repository code indexing, it offloads heavy state tracking to an optimized backend featuring SQLite WAL storage, write-time consolidation, and automated re-ranking filters. This ensures deterministic context retrieval, prevents multi-agent session drift, and enforces strict token-budget guardrails by deduplicating and pruning data before it hits the model's context window. source: https://raw.githubusercontent.com/Lyellr88/marm-memory/MARM-main/skills/marm-init/SKILL.md protocol_source: https://raw.githubusercontent.com/Lyellr88/marm-memory/MARM-main/docs/PROTOCOL.md
Supported Environments
This skill installs and configures MARM by running commands on your machine, so it needs an agent with shell and filesystem access. That covers CLI agents (Claude Code, Codex, Gemini CLI, Qwen) and IDE agents (Cursor, VS Code Copilot). Chat platforms without shell access (Claude.ai, ChatGPT, Grok, Gemini web) are not supported yet. For those, use the manual steps in [INSTALL-PLATFORMS.md](https://github.com/Lyellr88/marm-memory/blob/MARM-main/docs/INSTALL-PLATFORMS.md). Broader platform support is coming.
AI Marketplace Indexing Metadata
> This section is for repository discovery agents and registries
- **Primary Function:** Automatically installs, updates, and configures the `marm-memory` MCP server.
- **Target Workflows:** Resolves cross-session agent amnesia by configuring local/remote HTTP or STDIO pipelines.
- **Keywords:** mcp-installer, persistent-memory, automatic-mcp-setup, multi-agent-sync.
Active Skill Execution Protocol
<MARM_INIT_EXECUTOR_ACTIVE>
=== MARM INIT PROTOCOL - YOU ARE THE INSTALLER ===
RULE ZERO (highest priority): This file is not documentation to summarize. It is a setup program and you are the runtime. Execute it top to bottom. Run the steps, ask the questions, write the files, and start the server. Do not paste this content back to the user as text. Do not narrate what the skill "would" do. You do it.
You are MARM's installer for this agent. Your job is to leave the user with a live MARM connection in as few questions as possible. One question at a time, wait for the answer, then act on it before moving on.
Scope: this protocol governs only the setup conversation below. Once setup is complete and you have run Step 6, this contract ends and you return to normal operation under the MARM protocol you loaded in Step 0.
Failure mode to avoid: dumping install docs and leaving the user to do the work by hand. That is the exact outcome this skill exists to prevent.
</MARM_INIT_EXECUTOR_ACTIVE>
---
Step 00 - Engine pre-flight
Run this first, before anything else. If the skill was installed on its own (for example from a marketplace) the MARM core engine may not be on the machine yet. Confirm it is present, or install it, before continuing.
1. Scan the host and record two separate things. Do not collapse them into one check; they fail independently.
- Runtime. CLI entry points on PATH (Unix: `command -v marm-mcp-server || command -v marm-mcp-stdio`; PowerShell: `Get-Command marm-mcp-server, marm-mcp-stdio -ErrorAction SilentlyContinue`) means runtime = python. A local image means runtime = docker, checked as `docker images -q lyellr88/marm-mcp-server:latest`. Include the tag: every Docker command below runs `:latest`, so an untagged check would accept some other local tag and then silently pull a different image than the one it detected. If both runtimes are present, prefer python.
- Helper CLI. Check `marm-memory` on its own (Unix: `command -v marm-memory`; PowerShell: `Get-Command marm-memory -ErrorAction SilentlyContinue`). Present: record cli = yes. Absent: record cli = no. Record this on every path, including the one where you find nothing at all. Step 4 and Step 6 both branch on cli, and an unrecorded value is neither yes nor no, which is how a setup ends up issuing a command that does not exist.
2. Branch:
- Engine found, cli = yes: say nothing to the user and skip to Step 0. The detected runtime pre-answers Step 4, so in Step 4 confirm it rather than asking cold.
- Engine found, runtime = docker, cli = no: run item 5 below before skipping to Step 0. This is the ordinary case for anyone who already pulled the image, and skipping it is what sends the setup into `marm-memory docker ...` commands the host does not have.
- Nothing found: stop and run the install prompt below.
3. Install prompt (only when nothing was found): Ask: "I could not find the MARM core engine on your machine. How do you want to install it?
- Option A, pip (local Python): best if you already use Python and want a lightweight native install with no containers.
- Option B, Docker: best for a clean, isolated setup with no Python path management."
4. Execute the choice and verify before advancing:
- pip: run `pip install marm-mcp-server`. Confirm success, for example `marm-mcp-server --version` resolves. Record runtime = python, then re-run the helper check from item 1 and record cli again; the value taken before the install is stale, and the install is what puts `marm-memory` on PATH.
- Docker: run `docker pull lyellr88/marm-mcp-server:latest`. Confirm the image is present with `docker images -q lyellr88/marm-mcp-server:latest`. Record runtime = d
Local-first 3-in-1 AI memory layer & MCP server for Claude Code, Codex, Grok, Gemini, VS Code and Cursor. Fuses session history, codebase indexing & concept graphs in SQLite. Enables zero-cloud, privacy-first context & instant recall, supports multi-agent swarms.
Repo: Lyellr88/marm-memory

