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.
npx skills add stevepridemore/graph-memory --skill graph-bootstrapgit clone --depth 1 https://github.com/stevepridemore/graph-memoryWrote 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.
[](https://agentmods.dev/skills/stevepridemore/graph-memory/graph-bootstrap)<a href="https://agentmods.dev/skills/stevepridemore/graph-memory/graph-bootstrap"><img src="https://agentmods.dev/badge/skills/stevepridemore/graph-memory/graph-bootstrap/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/stevepridemore/graph-memory/graph-bootstrap"><img src="https://agentmods.dev/badge/skills/stevepridemore/graph-memory/graph-bootstrap.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.00689 |
| Opus 5.5 | $0.00000 | $0.00276 |
| Sonnet 5.5 | $0.00000 | $0.00138 |
| Haiku 4.5 | $0.00000 | $0.00069 |
Grade D, and why
graph-bootstrap scanned grade D with 2 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 1mo 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.
Harvests environment variableshighData exfiltration
Enumerating or grepping the environment for keys collects credentials unrelated to what the mod says it does.
IMPORTANT: NEVER extract API keys, passwords, tokens, secrets, or credentials into graph entities. Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
a. Read manifest.json, find unprocessed JSONL files in ~/.claude/projects/ What it actually says
The user wants to run the graph memory bootstrap process. This is a one-time bulk import of existing knowledge into the graph. You ARE the bootstrap process -- run it inline.
Arguments: $ARGUMENTS
Parse the arguments:
--memory-onlyoptional: only process memory .md files, skip transcripts--transcripts-onlyoptional: only process conversation transcripts, skip memory files--dry-runoptional: describe what you would extract without calling graph write tools
Steps:
-
Check for lock file at ~/graph-memory/processed/dream.lock
- If it exists and was created less than 2 hours ago, report "Dream/bootstrap process already running" and exit
- Otherwise, create the lock file with: {"pid": 0, "timestamp": "", "source": "manual-bootstrap"}
-
Read ~/graph-memory/config.json for parameters (defaults: chunk_size_lines=500, max_transcripts_per_run=10)
-
Process memory files (unless --transcripts-only): a. Find all .md files in ~/.claude/projects/*/memory/ (skip MEMORY.md index files) b. Read each file, parse YAML frontmatter (name, description, type) c. Extract entities and relationships based on content d. Check existing entities via graph_entities before creating (boost if exists) e. Call graph_relate in batch mode with source_type: "memory-file" f. Use specific relationship types (WORKS_ON, USES_TECH, KNOWS_ABOUT, PREFERS, etc.)
-
Process conversation transcripts (unless --memory-only): a. Read manifest.json, find unprocessed JSONL files in ~/.claude/projects/ b. For each transcript (oldest first, up to max_transcripts_per_run):
- Validate format (check first 5 lines for expected fields)
- Read content (chunk large files at 500 lines)
- Extract entities from user and assistant text blocks only
- Call graph_relate in batch mode with source_type: "conversation"
- Update manifest.json immediately after each transcript c. If max_transcripts_per_run reached, note remaining count
-
Call graph_decay to apply time-based maintenance
-
Write changelog to ~/graph-memory/logs/bootstrap-YYYY-MM-DD.md
-
Delete the lock file at ~/graph-memory/processed/dream.lock
-
Report summary: memory files processed, transcripts processed, entities created/updated, edges created
If --dry-run, describe what you would extract but do NOT call any graph write tools. Skip the lock.
IMPORTANT: Never merge entities unless highly confident. Flag suspected duplicates in the changelog. IMPORTANT: Always delete the lock file when done, even if you encountered errors. IMPORTANT: NEVER extract API keys, passwords, tokens, secrets, or credentials into graph entities. IMPORTANT: Use specific relationship types -- not just RELATED_TO for everything. IMPORTANT: Memory files are higher signal than transcripts -- process them first.
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.
- 1mo ago First seen · 56 lines · 0 tokens per session scan D f8585664aa75
graph-bootstrap is a skill published in the GitHub repository stevepridemore/graph-memory (2 stars, last pushed 7d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 689 tokens. A static security scan graded it D with 2 findings (harvests environment variables, reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
ori-memory
Persistent agent memory with learning retrieval. Knowledge graph on markdown files — capture insights, decisions, research, and learnings during work, then retrieve them weeks or months later. Use when knowledge is too valuable to lose but too much to inject into every prompt.
goodmem:mcp
Workflow guide for GoodMem MCP server tools. Use when an agent needs to understand what GoodMem MCP tools are available and how to use them. Parameter signatures are provided by the MCP protocol itself — do not hardcode them here.
goodmem:help
Overview of all available GoodMem skills and what a user needs to get started. Invoke when a user asks what GoodMem skills are available, how to get started, or what they need to set up.
goodmem:java
Use when the user wants to write Java code that interacts with GoodMem - creating embedders, spaces, memories, retrieval, pagination, streaming, or async workflows with the goodmem-java SDK.
goodmem:python
Use when the user wants to write Python code that interacts with GoodMem — creating embedders, spaces, memories, retrieval, managing API keys, etc. Provides the complete SDK reference for the goodmem Python package.
capture-knowledge
A guide for saving useful, reusable knowledge from conversations and documents into a structured personal knowledge base. It separates original source material from concise pages about individual concepts.