spm-project-memory

spm-project-memory is a skill for Claude Code from getspm/spm-agent-connectors. It costs 28 tokens per session (1,408 once invoked), scanned A, original, MIT.

A project-memory skill for keeping requirements, decisions, completed work and changing project details available across coding-agent sessions. It also defines how context, evidence and handoffs should be shared.

In plain words
What is it for?
Use it to record project decisions, resume work, support agent handoffs, and manage testing, security or deployment context. It can also handle explicitly requested context shared across projects.
Why use it?
It reduces repeated explanations and helps prevent an agent from using outdated or unauthorized project information.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the spm-claude plugin — 1 skill shipped together

Good fit Use it to record project decisions, resume work, support agent handoffs, and manage testing, security or deployment context. It can also handle explicitly requested context shared across projects.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/getspm/spm-agent-connectors/spm-project-memory
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add getspm/spm-agent-connectors --skill spm-project-memory
Clone the repo
git clone --depth 1 https://github.com/getspm/spm-agent-connectors

Made for: Claude Code.

Or install spm-claude, the plugin that ships this one along with the rest of its 1 skill.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for spm-project-memory

README.md
[![agentmods](https://agentmods.dev/badge/skills/getspm/spm-agent-connectors/spm-project-memory.svg)](https://agentmods.dev/skills/getspm/spm-agent-connectors/spm-project-memory)
Your own site
<a href="https://agentmods.dev/skills/getspm/spm-agent-connectors/spm-project-memory"><img src="https://agentmods.dev/badge/skills/getspm/spm-agent-connectors/spm-project-memory.svg" alt="Measured on agentmods" height="20"></a>
Per session 28 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,408 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00028 $0.01408
Opus 5 $0.00014 $0.00704
Sonnet 5 $0.00006 $0.00282
Haiku 4.5 $0.00003 $0.00141

Measured 6d ago against content hash c407b49cff92, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

spm-project-memory scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/spm-claude/skills/spm-project-memory/SKILL.md · 100 lines

How it starts

The opening of the file, as written. The whole thing — 100 lines — stays where its author put it; the contents beside it link to each section on GitHub.

SPM project memory

Use SPM naturally when project work depends on durable requirements, decisions, completed work, temporal validity, authority, context boundaries, source evidence, agent handoff, testing, security, deployment or governed sharing.

The native lifecycle hooks submit ordinary user and assistant turns to spm_agent_turn_ingest after spm_agent_session_start resumes the SPM session. Do not ask the user to repeat an SPM command for routine capture. Query the active project first. List or compose another authorized project only when the user explicitly requests cross-project context. Use spm_agent_session_context_inject, spm_agent_session_context_revoke, spm_cross_project_context_pack or spm_multi_project_context_pack only for explicit cross-project or shared-context work. Never claim that memory was persisted if SPM reports ambiguity, SPM unavailable state or a failed write. If SPM unavailable status is returned, say so plainly and continue without claiming persistence.

Surface project attention returned at session start before continuing with the first request. Display is not acknowledgement: update recipient state only after an explicit user instruction to acknowledge, defer, resolve or dismiss an item.

For direct project creation, pass the authorization_external_turn_id attested by the lifecycle adapter and the exact full user turn as explicit_user_instruction. Never paraphrase, strengthen or infer authorization from an ambiguous reply.

When SPM returns a project-association user_prompt, ask it naturally in the user's language and interpret the answer semantically. A likely match can be confirmed, replaced or skipped; an ambiguous match can list candidates. For bootstrap_required, ask whether to create a new project, show existing projects or continue without persistent memory in SPM. Confirm, replace or skip a match only through spm_agent_session_association_decide. After the user explicitly chooses creation, call spm_project_bootstrap_execute with the current lifecycle session_id, that instruction, a safe inventory and source-grounded evidence from a bounded inspection. Creation and task association are atomic: never omit session_id or report success unless the returned session has the new project active. The operation is idempotent for the task. If it returns evidence_required, inspect only the requested authorized source, submit it to the same bootstrap and execute again. Never crawl the workspace or use an absolute local path as shared project identity. Continue without another question after created or already_completed. Use the private URL only for review_required or when the user explicitly asks to review first. That optional review-first path uses spm_project_bootstrap_preview, submits requested bounded evidence through spm_project_bootstrap_evidence_submit and completes through spm_project_bootstrap_confirm. Never create project memory without an explicit user instruction.

Use spm_agent_session_receipt_delivery_report to record body-free connector evidence that the receipt instruction was supplied or completion was observed. Use spm_agent_session_receipt_status when the host drops or hides lifecycle status text. Use spm_memory_capture_policy_get before changing capture behavior. Use spm_memory_capture_evidence for a body-free audit of capture state and spm_memory_context_compose for governed task context before consequential work in a confirmed project. Treat the context envelope as a bounded governed projection, not proof that undisplayed memory does not exist. SPM performs at most one automatic deep composition when its LLM declares the interactive projection insufficient and additional authorized evidence exists. If the final sufficiency contract still requires clarification, clarify instead of guessing from local conversational confidence.

When the user wants to continue the same authorized work in another agent or device, use spm_agent_session_continuation_create. The receiving agent uses spm_agent_session_continuation_accept, and an unused handoff can be cancelled with spm_agent_session_continuation_revoke. The one-time token carries only project and injected-context references; SPM rechecks current authorization and never transfers memory bodies or credentials.

Read the full file on GitHub · 100 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 100 lines · 28 tokens per session scan A c407b49cff92

Subscribe to this mod's changes

spm-project-memory is a skill published in the GitHub repository getspm/spm-agent-connectors (0 stars, last pushed 24d ago), licensed MIT. It adds 28 tokens to every session and 1,408 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

media-ingest

Ingest video, audio, PDF, book, screenshot, and GitHub repo content into the brain. Multi-format handling with entity extraction and backlink propagation. Covers video-ingest, youtube-ingest, and book-ingest subtypes.

garrytan/gbrain · 52 tokens

mem0-oss-to-platform

Plan and then execute a migration of a project from the mem0 open-source / self-hosted SDK (the local Memory class) to the mem0 Platform / hosted / managed SDK (the MemoryClient class). Use this whenever a developer wants to move, switch, or migrate their mem0 usage off OSS/self-hosted to the hosted API — e.g.…

mem0ai/mem0 · 273 tokens

Cortex

Operate Cortex, the LifeOS memory system — the typed Knowledge Archive (People, Companies, Ideas, Research with typed related: links) plus recall of prior work sessions, ISAs, and conversations. Search, add, harvest, develop, ingest, distill, graph-navigate, recall. USE WHEN cortex, knowledge, knowledge base, search…

danielmiessler/LifeOS · 196 tokens

memory

Use when the user asks to remember, recall, forget, update, search, or inspect durable OpenSquilla memory, including profile facts in USER.md and long-term notes in MEMORY.md or memory//.md.

opensquilla/opensquilla · 44 tokens

ha-data-stores

Map of Hope Agent's local data stores and safe read-only query workflow. Use when the user asks where Hope Agent stores data, wants to inspect sessions/messages/memory/logs/background jobs/knowledge indexes/settings, asks the model to query local app data, or debugging requires checking persisted state. Trigger…

shiwenwen/hope-agent · 115 tokens

establishing-project-context

Use when the user asks to establish shared project language, or project work exposes a conflicting, renamed, or deprecated domain term that needs active semantic modeling. Routine small tasks stay on the fast path.

GanyuanRan/Aegis · 45 tokens