by Ar9av
Framework for AI agents to build and maintain a digital brain through Obsidian wiki | Memory System for Agents
# Add to your Claude Code skills
git clone https://github.com/Ar9av/obsidian-wikiGuides for using ai agents skills like obsidian-wiki.
Last scanned: 10/3/2026
{
"issues": [
{
"file": ".skills/claude-history-ingest/SKILL.md",
"line": 155,
"type": "dangerous-command",
"message": "Dangerous command (writes to Claude config): \">/ # Same path-encoding as ~/.claude/\"",
"severity": "medium"
}
],
"status": "PASSED",
"scannedAt": "2026-10-03T09:41:14.330Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how obsidian-wiki compares with popular alternatives.
obsidian-wiki is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by Ar9av. Framework for AI agents to build and maintain a digital brain through Obsidian wiki | Memory System for Agents. It has 3,515 GitHub stars.
Yes. obsidian-wiki passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/Ar9av/obsidian-wiki" and add it to your Claude Code skills directory (see the Installation section above).
obsidian-wiki is primarily written in Python. It is open-source under Ar9av on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh obsidian-wiki against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
You solve a hard problem on a Tuesday. Three months later, in a different repo, you solve it again from scratch — because the answer lived in a chat log you'll never find.
This fixes that. Point it at a folder, tell your agent what to remember, and it compiles what you learn into interconnected markdown you own. The pattern comes from Andrej Karpathy's LLM Wiki gist: compile knowledge once and keep it current, instead of asking an LLM the same questions forever or re-running RAG every time.
Your second brain. Your AI agent is how you grow it.
Every skill here is a markdown file that any agent — Claude Code, Cursor, Codex, Windsurf, Gemini CLI, and a dozen more — reads and runs. No runtime, no API keys, no vendor.
pip install obsidian-wiki
obsidian-wiki setup --vault ~/brain
That also registers the two session hooks, so every new session starts with who you are and what's open, and ends by capturing anything reusable. Pass --no-hooks to skip them.
Using uv or pipx? uv tool install obsidian-wiki and pipx install obsidian-wiki work the same way. (Not uvx — see Installation.)
Then open any project in your agent and say "set up my wiki".
Prefer not to touch a terminal? Give your agent this and it'll do the whole thing:
https://github.com/Ar9av/obsidian-wiki — set up my wiki
Using Claude Code? Install it as a plugin instead — no Python needed:
/plugin marketplace add Ar9av/obsidian-wiki
/plugin install obsidian-wiki@obsidian-wiki
Plugin skills are namespaced (/obsidian-wiki:wiki-ingest), and the plugin ships the skills only — not the session hooks or the obsidian-wiki CLI.
Other paths — git clone, Claude Code plugin, Skills CLI, multiple vaults → Installation
Feed it. Anything text-shaped: docs, PDFs, chat exports, meeting transcripts, screenshots, URLs.
/wiki-ingest ~/research
/wiki-update # distill the repo you're standing in (code-graph aware)
/wiki-capture # save this conversation
/wiki-history-ingest claude # mine everything you've ever asked Claude
Ask it. Answers come back with [[wikilink]] citations, not vibes.
/wiki-query what do I know about rate limiting?
/wiki-narrate MCP security # a cited briefing on a topic
/wiki-digest week # what did I learn this week?
Find that session you can't name.
obsidian-wiki sessions-build
obsidian-wiki sessions-query "the auth bug with the weird retry loop"
Keep it honest. The vault gets messy on its own; these clean it.
/wiki-lint # broken links, orphans, contradictions
/wiki-dedup # "RSC" and "React Server Components" are one page now
/cross-linker # weave new pages into the graph
/wiki-status # what's ingested, what's pending, where the hubs are
All 39 skills → Skills Reference
Open the vault in Obsidian and hit the graph view (Cmd/Ctrl+P → "Open graph view"). Say "color my graph" and it tints nodes by tag, category, or visibility.
Want to look before you build? examples/demo-vault/ is an 18-page sample vault on building reliable LLM agents, already colored by folder. Clone the repo, choose Open folder as vault in Obsidian, and pick that folder.
Or export the whole graph to graph.json, GraphML (Gephi/yEd), Neo4j Cypher, Postgres SQL, or a self-contained interactive graph.html.
from obsidian_wiki import Memory
memory = Memory("~/brain")
memory.remember("stack", "Python, FastAPI", confidence=0.9)
memory.add("Postgres was chosen over MySQL for partial indexes.")
memory.search("postgres")
memory.recap() # inject at session start
No API key, no embedding model, no vector store, no network — the vault is markdown on disk, so everything your agent remembers is readable, greppable and diffable. user_id scopes per-person memory while knowledge stays shared.
More → Python API
A session starts with the vault's memory already in context — who you are, what threads are open, what changed recently — and ends by capturing anything reusable before the context closes.
index.md, log.md, hot.md, and the owner profile and todo index under _meta/ all go through one writer that takes a lock and writes atomically, so parallel agents can't drop each other's updates.
More → Memory Surface
extracted, ^[inferred], or ^[ambiguous], and lint flags pages drifting into speculation..skills/ directory, symlinked into every agent you use.More → Architecture
| obsidian-wiki | Desktop LLM-wiki apps | MCP memory servers | Single-skill LLM wikis | |
|---|---|---|---|---|
| Where knowledge lives | Markdown in your Obsidian vault | A folder the app manages | A database or event log | A markdown folder |
| Works with | Claude Code, Codex, Cursor, Gemini CLI, and a dozen more | The app itself | Any MCP client | Usually one agent |
| What you install | Markdown skills; the Python CLI is optional | A desktop app plus an LLM API key | A server process | One skill |
| Mines past agent sessions | Claude, Codex, Copilot, Hermes, OpenClaw, Pi | No | Captures new sessions only | No |
| Keeps itself clean | Lint, dedup, cross-linking, tag taxonomy | Varies | Not applicable | Lint, if anything |
Structural questions — "how is X connected to Y", "which pages hold my vault together", "what breaks if I delete this" — are the ones a plain agent is worst at. It has to grep every file and reconstruct the link graph by hand, every single time.
Same model, same vault, same questions. The only difference is whether obsidian-wiki
was installed:
| Plain agent | With obsidian-wiki | |
|---|---|---|
| Time to answer | 81s | 19s — 4.4× faster |
| Correct answers | 44% | 83% |
| Tool calls used | 9.9 | 4.6 |
| API cost | $0.202 | $0.208 — unchanged |
| Question | Plain agent | With obsidian-wiki |
|---|---|---|
| "How is X connected to Y?" | 122s | 18s |
| "What topic clusters do I have?" | 117s | 21s |
| "Which pages hold my vault together?" | 61s | 12s |
| "What breaks if I delete X?" | 26s | 24s |
The accuracy gap is not a rounding error. Asked to trace a connection, the plain agent
routed through index.md — which links to every page, so it "found" a short path that
means nothing. It made the same mistake in both runs, and named index as one of the
most important pages in the vault. The graph the skills query excludes bookkeeping files,
so that answer isn't reachable.
Claude Sonnet, headless, on a real 38-page vault. Que