Obsidian + Claude Code PKM skill
An Obsidian vault template for Claude Code: /daily, /weekly, /monthly and /project commands link three-year goals to today's tasks
- 1,883 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- A PostToolUse hook makes a git commit after every file write in the vault
- The permissions in settings.json let the agent write and edit vault folders and run git, cp and mv
Install
- Works in
Manual install
git clone https://github.com/ballred/obsidian-claude-pkm.git && cd obsidian-claude-pkm && chmod +x scripts/setup.sh && ./scripts/setup.shAfter setup open the vault in Obsidian, start claude in its folder and run /onboard. On Windows use scripts\setup.bat.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- A PostToolUse hook makes a git commit after every file write in the vault
- The permissions in settings.json let the agent write and edit vault folders and run git, cp and mv
This is third-party code. Review the repository files before installing.
What it does
The template sets up a ready Obsidian vault configured for Claude Code. The structure is a cascade: three-year goals, yearly goals, projects, monthly goals, a weekly review and daily notes. Each level lives in its own file, and the commands read the neighboring levels. For example, /daily creates today's note and pulls in the week's ONE Big Thing and the next actions of active projects. The .claude folder holds ten skills, four agents (goal-aligner, weekly-reviewer, note-organizer and inbox-processor), hooks, path-specific rules and a coach output style. A PostToolUse hook makes a git commit after every file write. The agents remember your habits across sessions through memory: project. Already have a vault? The /adopt command detects your note-taking method (PARA, Zettelkasten, LYT), maps your folders and generates a config for them without changing the structure. /upgrade updates the template with a backup and leaves your notes alone.
Who it is for. For people who keep personal notes and plans in Obsidian and want Claude Code to remind them of goals, process the inbox and help with the weekly review.
Good fit when
- You want a morning routine: /daily creates the note, carries over yesterday's open tasks and shows the week's ONE Big Thing
- You want a 30-minute Sunday review: /weekly reads the daily notes, scans project status and calculates goal progress
- You have goals but no projects behind them: /goal-tracking lists goals with no active project and /project new creates a project linked to a goal
- Notes pile up in the inbox: the inbox-processor agent sorts them GTD-style and note-organizer fixes broken links
- You already have a vault: /adopt adapts to your structure and leaves the folders where they are
Not a fit when
- You need agent memory for work projects and code: the template is built around personal goals and reviews
- You do not use Git: auto-commit and the /push command assume the vault is a repository
- You want a plugin installed with one marketplace command: here you clone the repo and configure it with setup.sh
- You do not want to keep notes in a goals-and-reviews system: the ten skills and four agents are tied to the Goals, Daily Notes and Projects folders
Example request
/dailyLimitations
- Obsidian, Claude Code and Git are required.
- The template targets Claude Code: the commands and hooks in the .claude folder will not work in other agents.
- The folder structure is fixed: Daily Notes, Goals, Projects, Templates, Archives and Inbox. For an existing vault the /adopt command adapts the config to your folder names.
- The permissions in settings.json allow writes to these folders and permit git, cp and mv commands, while editing the .claude folder is denied.
- Windows uses a separate scripts\setup.bat script.
How to disable. Delete the .claude folder and CLAUDE.md from the vault, or set GIT_AUTO_COMMIT=false in settings.json to switch off only the auto-commits. The notes are plain Markdown files and stay as they are.
FAQ
How do I connect Claude Code to Obsidian with this template?
Clone the repository and run scripts/setup.sh (scripts\setup.bat on Windows). Then open the vault in Obsidian, start claude in its folder and run /onboard: it asks your name, review day and goal areas and configures the files.
Can I add the template to an existing Obsidian vault?
Yes. Start claude at the root of your vault and run /adopt. The skill detects your organization method, such as PARA, Zettelkasten or LYT, maps your folders and generates a config for their names. The vault structure stays the same.
Which commands does Obsidian + Claude Code PKM include?
/daily, /weekly, /monthly, /project, /review, /push, /onboard, /adopt and /upgrade. The goal-tracking and obsidian-vault-ops skills trigger automatically. /review works out by itself which review you need: morning, Sunday or end of month.
How do I update the template without losing notes?
/upgrade check shows what changed, and /upgrade creates a timestamped backup, shows diffs for each file and leaves Daily Notes, Goals and Projects untouched.
Which agents come with the template and what do they do?
Four: goal-aligner checks your activity against goals, weekly-reviewer runs the weekly review, note-organizer fixes links and duplicates, inbox-processor sorts the inbox GTD-style. A call looks like claude "Use the goal-aligner agent to analyze my last 2 weeks".
Discussion
No questions or reviews yet.
Related
SkillsAn Obsidian vault template with hooks, commands and skills that gives Claude Code, Codex and Gemini CLI persistent memory across sessions
A build script and templates that turn an Obsidian vault into an AI's working memory: markdown notes, no vector database
A plugin and skill set that turns an Obsidian vault into a knowledge base with sources, links and grounded answers
A skill set that lets an agent run a personal Obsidian wiki: it compiles knowledge from documents and past sessions and answers with citations
An Obsidian vault template with 18 skills, 72 commands and 6 subagents for Claude Code: the agent turns sources into linked pages and answers from them
Obsidian skills
Obsidian Skills
Skills for agents working with Obsidian: Markdown with wikilinks, Bases, JSON Canvas, Obsidian CLI, Defuddle and Knap
Comparison with similar tools
Entries that share the main search query, and how they differ.
| Entry | Official | Repository stars | Main difference |
|---|---|---|---|
| Obsidian + Claude Code PKM (this entry) | no | 1,883 | |
| Obsidian Mind | no | 5,444 | a vault with persistent agent memory across sessions, while this one centers on goals, reviews and daily planning |
| obsidian-second-brain | no | 5,025 | agent memory and background upkeep of a knowledge base, while this entry is about personal planning |
| Obsidian skills | no | 50,333 | skills for Obsidian formats, with no ready planning system included |
README in short
The README presents the template as an execution system that carries three-year goals down to daily tasks. It describes the cascade of files and the commands that serve it, then walks through a typical day, the Sunday review and month end. It goes on to quick start, the list of skills and agents, the coach style, the bash-based automation and the folder structure. The last part covers upgrading from versions 1.x and 2.1 and links to the docs.
README badge
Original SKILL.md
---
name: daily
description: Create daily notes and manage morning, midday, and evening routines. Structure daily planning, task review, and end-of-day reflection. Use for daily productivity routines or when asked to create today's note.
allowed-tools: Read, Write, Edit, Glob, Grep, TaskCreate, TaskUpdate, TaskList, TaskGet
user-invocable: true
---
# Daily Workflow Skill
Creates daily notes and provides structured workflows for morning planning, midday check-ins, and evening shutdowns.
## Usage
Invoke with `/daily` or ask Claude to create today's note or help with daily routines.
### Create Today's Note
```
/daily
```
Or simply ask:
- "Create today's daily note"
- "Start my morning routine"
- "Help me with evening shutdown"
## Daily Note Creation
### What Happens
1. **Checks if today's note exists**
- If yes: Opens the existing note
- If no: Creates new note from template
2. **Template Processing**
- Replaces `{{date}}` with today's date
- Replaces `{{date:format}}` with formatted dates
- Handles date arithmetic (e.g., `{{date-1}}` for yesterday)
3. **Automatic Organization**
- Places note in `Daily Notes/` folder
- Names file with today's date (YYYY-MM-DD.md)
- Preserves template structure
### Template Variables
Your daily template can use:
- `{{date}}` - Today's date in default format
- `{{date:dddd}}` - Day name (e.g., Monday)
- `{{date:MMMM DD, YYYY}}` - Formatted date
- `{{date-1:YYYY-MM-DD}}` - Yesterday's date
- `{{date+1:YYYY-MM-DD}}` - Tomorrow's date
- `{{time}}` - Current time