obsidian-wiki is a framework that helps AI agents build and maintain an interconnected knowledge base from text-based material in an Obsidian vault. It is for people who want their agents to remember discoveries, connect related information, and answer questions with wiki-link citations. Catalogue add-ons provide the agent skills, instructions, agents, and configuration used to create and maintain these wikis.
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/ar9av/obsidian-wiki/wiki-setupnpx skills add Ar9av/obsidian-wiki --skill wiki-setupgit clone --depth 1 https://github.com/Ar9av/obsidian-wikiWrote 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/ar9av/obsidian-wiki/wiki-setup)<a href="https://agentmods.dev/skills/ar9av/obsidian-wiki/wiki-setup"><img src="https://agentmods.dev/badge/skills/ar9av/obsidian-wiki/wiki-setup.svg" alt="Measured on agentmods" 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 | $0.00096 | $0.03896 |
| Opus 5 | $0.00048 | $0.01948 |
| Sonnet 5 | $0.00019 | $0.00779 |
| Haiku 4.5 | $0.00010 | $0.00390 |
Grade B, and why
wiki-setup scanned grade B 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 5d 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
3. Merge the hook entry into `~/.claude/settings.json`: Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -fsSL https://raw.githubusercontent.com/Ar9av/obsidian-wiki/main/.claude/hooks/wiki-stop-capture.sh \ How it starts
The opening of the file, as written. The whole thing — 360 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Obsidian Setup — Vault Initialization
You are setting up a new Obsidian wiki vault (or repairing an existing one).
Step 1: Create .env
If .env doesn't exist, create it from .env.example. Ask the user for:
-
Where should the vault live? →
OBSIDIAN_VAULT_PATH- Default:
~/Documents/obsidian-wiki-vault - Must be an absolute path (after expansion)
- Default:
-
Where are your source documents? →
OBSIDIAN_SOURCES_DIR- Can be multiple paths, comma-separated
- Default:
~/Documents - Local git repo clones (public or private, any host) can be listed here too — clone
the repo locally first, then add its path. See "Ingesting Git Repositories" in
wiki-ingest/SKILL.mdfor how repo sources are handled.
-
Want to import Claude history? →
CLAUDE_HISTORY_PATH- Default: auto-discovers from
~/.claude - Set explicitly if Claude data is elsewhere
- Default: auto-discovers from
-
Have QMD installed? →
QMD_WIKI_COLLECTION/QMD_PAPERS_COLLECTION/QMD_TRANSPORT- Optional. Enables semantic search in
wiki-queryand source discovery inwiki-ingest. - Default to
QMD_TRANSPORT=mcpunless the user wants the agent to call the localqmdCLI directly. - If using CLI mode, set
QMD_CLI_SEARCH_MODE=qualityby default; suggestbalancedif reranking is too slow. - If unsure, skip for now — both skills fall back to
Grepautomatically. - Install instructions: see
.env.example(QMD section). - If
QMD_WIKI_COLLECTIONis set, verify the collection excludes_raw/. The wiki collection and papers collection must stay disjoint —wiki-querycites them as separate layers (compiled knowledge vs. raw staging), andOBSIDIAN_VAULT_PATHcontains_raw/, so a plainqmd collection add <vault>silently merges the two. Read~/.config/qmd/index.yml, find the entry for$QMD_WIKI_COLLECTION, and check itsignorelist includes_raw/**(and ideallylog.md, which has no semantic value). If the collection doesn't exist yet, create it (qmd collection add "$OBSIDIAN_VAULT_PATH" --name <collection-name>), then add theignoreblock toindex.ymlby hand —qmdhas no--ignoreflag and refuses a secondcollection addon a path that already has one, so editing the YAML is the only way to scope it. Runqmd updateafter editing. If the collection already exists without theignoreblock, tell the user their wiki collection is indexing_raw/(including_raw/_archived/drafts left behind bywiki-ingest) and offer to add theignoreblock and re-runqmd update.
- Optional. Enables semantic search in
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.
- 5d ago First seen · 360 lines · 96 tokens per session scan B c4ba17e190fe
wiki-setup is a skill published in the GitHub repository Ar9av/obsidian-wiki (3,348 stars, last pushed 2d ago), licensed MIT. It adds 96 tokens to every session and 3,896 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it B with 2 findings (reads agent configuration directories, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
knowledge-base-management
Obsidian 知识库全生命周期管理:三层架构、素材入库(ABC分级)、健康检查、GBrain/GraphRAG/LLM Wiki 三件套集成、目录整理.
llm-wiki
Maintain a personal team knowledge base using the LLM Wiki pattern — incremental ingest, query, and lint operations on a layered wiki architecture.
llm-wiki
Build and maintain a persistent, interlinked Obsidian-compatible markdown wiki using Karpathy's LLM Wiki pattern. Extension-backed with auto-generated metadata, guardrails, and 14 custom tools (+3 opt-in agent-trajectory tools).
link-memory
Use after important user-approved decisions, when durable context should be proposed or reviewed, and for explicit Link memory lifecycle work: remember, recall, review, update, archive, restore, forget, or explain local memories through the CLI without requiring MCP.
link-retrieve
Use before answering work that may depend on user memory, project history, source-backed notes, or prior decisions; retrieve compact Link context through the CLI without loading the whole wiki or requiring MCP.
link-ingest
Use when raw files are present, source pages look stale, or a user asks to ingest notes into Link; refresh source-backed wiki pages, propose memories, and validate updates through the CLI without MCP.