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 richfrem/agent-plugins-skills --skill obsidian-graph-traversalgit clone --depth 1 https://github.com/richfrem/agent-plugins-skillsWrote 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/richfrem/agent-plugins-skills/obsidian-graph-traversal)<a href="https://agentmods.dev/skills/richfrem/agent-plugins-skills/obsidian-graph-traversal"><img src="https://agentmods.dev/badge/skills/richfrem/agent-plugins-skills/obsidian-graph-traversal/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/richfrem/agent-plugins-skills/obsidian-graph-traversal"><img src="https://agentmods.dev/badge/skills/richfrem/agent-plugins-skills/obsidian-graph-traversal.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.00053 | $0.00596 |
| Opus 5 | $0.00026 | $0.00298 |
| Sonnet 5 | $0.00011 | $0.00119 |
| Haiku 4.5 | $0.00005 | $0.00060 |
Grade A, and why
obsidian-graph-traversal 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 9d 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.
How it starts
The opening of the file, as written. The whole thing — 77 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Dependencies
This skill requires Python 3.8+ and standard library only. No external packages needed.
To install this skill's dependencies:
pip-compile ./requirements.in
pip install -r ./requirements.txt
See ./requirements.txt for the dependency lockfile (currently empty — standard library only).
Obsidian Graph Traversal
Status: Active
Author: Richard Fremmerlid
Domain: Obsidian Integration
Depends On: obsidian-markdown-mastery (WP05, obsidian-parser)
Purpose
This skill transforms static vault notes into a queryable semantic graph. It answers questions like "What connects to Note X?" and "What are the 2nd-degree connections of Concept A?" — instantly, without rescanning the vault.
Performance Target: < 2 seconds for deep queries across 1000+ notes.
Available Commands
Build the Graph Index
python ./graph_ops.py build --vault-root <path>
Get Forward Links (outbound)
python ./graph_ops.py forward --note "Note Name"
Get Backlinks (inbound)
python ./graph_ops.py backlinks --note "Note Name"
Get N-Degree Connections
python ./graph_ops.py connections --note "Note Name" --depth 2
Find Orphaned Notes
python ./graph_ops.py orphans --vault-root <path>
Architecture
In-Memory Graph Index
- On
build, every.mdfile in the vault is parsed using theobsidian-parser - Wikilinks are extracted; embeds (
![[...]]) are filtered out - A bidirectional adjacency map is built:
{source: [targets], ...}and{target: [sources], ...} - The index is cached as
.graph-index.jsonat the vault root - Invalidation uses file
mtime— if a file changed since last build, only that file is re-indexed
The Primary Agent as Librarian
The graph index enables the agent to:
- Detect blind spots: Orphaned notes indicate areas where agents act without historical context
- Resolve conflicts: If two agents update the same note, the graph shows the impact radius
- Enforce schema: Frontmatter metadata (status, trust_score) tracked across linked notes
What ships with it
12 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- acceptance-criteria.md 690 B
- assets/resources/architecture-background.md 55 B
- assets/resources/kepano-analysis-summary.md 55 B
- assets/resources/safety-learnings.md 48 B
- evals/evals.json 706 B
- evals/results.tsv 301 B
- fallback-tree.md 877 B
- references/acceptance-criteria.md 25 B
- references/fallback-tree.md 19 B
- requirements.txt 22 B
- scripts/graph_ops.py 29 B runs code
- scripts/parser.py 42 B runs code
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.
- 9d ago First seen · 77 lines · 53 tokens per session scan A d3f934f7d934
obsidian-graph-traversal is a skill published in the GitHub repository richfrem/agent-plugins-skills (6 stars, last pushed today), licensed MIT. It adds 53 tokens to every session and 596 once invoked, about $0.0003 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-09-03.
Other skills, from other repositories
mem0-integration
Mem0 memory layer integration for AI agents. Implement persistent, semantic memory for long-term context retention and personalization.
install-openviking-memory
Install and configure the OpenViking long-term memory plugin for OpenClaw via natural conversation. Once installed, the plugin automatically captures facts from chats and recalls relevant context before each reply (auto-capture + auto-recall, cross-session). Covers prerequisites, install through OpenClaw's plugin…
vector-memory
HNSW vector search for pattern similarity retrieval and knowledge graph maintenance with PageRank scoring, community detection, and 3-tier memory management.
chroma-integration
Chroma local vector database setup and operations for development and production.
haystack-pipeline
Haystack NLP pipeline configuration for document processing and QA.
langchain-retriever
LangChain retriever implementation with various retrieval strategies for RAG applications.