Obsidian update agentmd
Scan the Obsidian vault's current folder/file structure and regenerate CLAUDE.md to reflect it accurately. Use when the user says "update CLAUDE.md", "sync the vault structure", "I've added new notes/folders", "update the agent context", or "run obsidian-update-agentmd". Also run after any bulk note reorganisation.From its SKILL.md
npx -y skills add tejask0/agent-skills --skill obsidian-update-agentmdAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.3 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it
Obsidian Update CLAUDE.md
Scan the live vault, diff against the current CLAUDE.md, and rewrite it to be
accurate. The goal is a tight, agent-useful document — not a changelog. Be surgical.
Vault root path
Look up "obsidian_vault_path" in ~/.claude/skills-user-config.json.
- If present, use it directly.
- If missing, ask the user for their vault root path once (it may be a local
folder, a Google Drive / cloud-synced folder, or — under OpenClaw / Claude Code
on a remote host — the current working directory of a synced checkout), then
write it to
~/.claude/skills-user-config.jsonunder that key so future runs don't need to ask.
Step 1 — Map the vault structure
Run a recursive directory listing (max depth 4, exclude .obsidian/, .git/,
.stfolder, plugin dirs). Collect:
- All folders — note new ones not in current CLAUDE.md.
- All top-level
.mdfiles in each folder — note additions and deletions. - Total file count per top-level section (whatever top-level folders the vault uses).
Use Bash with find (if your agent exposes Bash under a different tool name, use that):
find <vault_root> -maxdepth 4 \
-not -path "*/.obsidian/*" \
-not -path "*/.git/*" \
-not -path "*/.stfolder/*" \
| sort
Step 2 — Read key state files
Read these files to extract the current "active projects" snapshot (adapt the names to the vault's own):
- a status note (e.g.
Now.md) — active/paused projects table - a priorities note (e.g.
Priorities.md) — current focus areas - a project index note (e.g. a top-level project list) — project index
Do NOT read every project file. Extract project names and statuses from Now.md only.
Step 3 — Diff against current CLAUDE.md
Read CLAUDE.md (same vault root). Compare:
- New folders/files not listed → add to the structure diagram.
- Removed folders/files still listed → remove them.
- Renamed sections — update names.
- Active projects table — replace entirely from Now.md data.
- Last updated date — always update to today's date.
Things to NOT change unless clearly wrong:
- The "What this is" intro paragraph.
- The "Note on Play" callout.
- Conventions section (unless a new convention is observed).
- Agent key file descriptions (unless a file was renamed/removed).
Step 4 — Rewrite CLAUDE.md
Edit CLAUDE.md in place using the Edit tool. Maintain this structure:
# CLAUDE.md
This file provides guidance to AI agents (Claude, etc.) working in this vault.
> **Last updated:** YYYY-MM-DD
## What this is
...
## Vault Structure
\`\`\`
obsidian/
├── <accurate tree>
\`\`\`
## Active Projects (as of last sync)
| Project | Status | Notes |
|---|---|---|
| <from Now.md> | ... | ... |
## Key Files for Agents
- <list of critical files with one-line descriptions>
## Conventions
...
Rules for the structure tree:
- Use
←annotation comments for important files/folders. - List files inside folders only when individually notable (e.g. specific project files in a projects folder).
- Keep the tree at max 3 levels deep unless a subfolder is particularly rich.
- Don't enumerate every file in
Reference/,Clippings/, orTemplates/— just note the folder.
Step 5 — Report what changed
After editing, output a short summary (under 10 lines):
CLAUDE.md updated (YYYY-MM-DD)
Added: <new folders/files>
Removed: <stale entries>
Updated: Active projects table from Now.md; Last updated date
Don't narrate the process. Just the delta.
Guardrails
- Never delete
## Conventionsor## Key Files for Agentsunless explicitly told to. - Never commit to Git as part of this skill — that's a separate step.
- Never expose secrets — if you spot API keys, passwords, or tokens while reading files, do not include them in CLAUDE.md. Flag them in the summary.
- If CLAUDE.md doesn't exist yet, create it from scratch using the structure above.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.