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 agentmods add skills/stevepridemore/graph-memory/graph-bootstrapnpx skills add stevepridemore/graph-memory --skill graph-bootstrapgit clone --depth 1 https://github.com/stevepridemore/graph-memoryWhat 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 | $0.00036 | $0.00689 |
| Opus 5 | $0.00018 | $0.00345 |
| Sonnet 5 | $0.00007 | $0.00138 |
| Haiku 4.5 | $0.00004 | $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 yesterday.
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.
- yesterday 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 3mo ago), licensed MIT. It adds 36 tokens to every session and 689 once invoked, about $0.0002 per session on Opus 5. 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.
svoboda-profiler
Use when asked to profile someone, unpack a person, build a psychological portrait, run a Svoboda session, or map life state. Triggers on распаковка, профилирование, психопортрет, точка А, колесо баланса, profile someone, unpack, svoboda session.
vault-scaffolder
Use when a completed svoboda profile.yaml exists and a new Personal OS needs to be personalized in the current workspace.
lint
Use weekly or after major ingest sessions to check wiki health.
pos-audit
Use when checking overall Personal OS health or diagnosing system gaps.
start
One-word self-unfolding onboarding. Sets up a fresh, unpersonalized vault end-to-end — installs the memory engine, runs the profile interview, scaffolds the vault, and teaches the user as it goes. The single front door.