adopt
Scaffold the PKM system onto an existing Obsidian vault. Scans your vault structure, maps folders interactively, and generates configuration — no template…
Create, track, and archive projects linked to goals. The bridge between goals and daily tasks. Use for project creation, status dashboards, and archiving completed work.
$ npx -y skills add ballred/obsidian-claude-pkm --skill project --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/projectContext preview
The summary Claude sees to decide when to auto-load this skill.
Create, track, and archive projects linked to goals. The bridge between goals and daily tasks. Use for project creation, status dashboards, and archiving completed work.
name: project description: Create, track, and archive projects linked to goals. The bridge between goals and daily tasks. Use for project creation, status dashboards, and archiving completed work. allowed-tools: Read, Write, Edit, Glob, Grep, Bash, TaskCreate, TaskUpdate, TaskList, TaskGet model: sonnet user-invocable: true
Create, track, and archive projects that bridge the gap between goals and daily tasks.
/project # Interactive: create new project or view status /project new # Create a new project /project status # Dashboard of all active projects /project archive <name> # Archive a completed project
Creates a new project folder with a CLAUDE.md context file, interactively linked to a goal.
**Steps:** 1. Read `Goals/1. Yearly Goals.md` to list available goals 2. Ask user which goal this project supports (or "none" for standalone) 3. Ask for project name 4. Create `Projects/<ProjectName>/CLAUDE.md` with structure below 5. If linked to a goal, add `[[Projects/<ProjectName>]]` reference in the yearly goals file
**Project CLAUDE.md Template:**
# Project: <Name> ## Overview [Brief description of what this project achieves] ## Goal Link Supports: [[1. Yearly Goals#<Goal Name>]] ## Status - **Phase:** Planning | Active | Review | Complete - **Progress:** 0% - **Started:** <date> - **Target:** <date> ## Key Decisions - [Decision 1] - [Date] - [Rationale] ## Next Actions - [ ] [First concrete step] - [ ] [Second step] ## Notes [Running log of updates, blockers, learnings]
Scans all `Projects/*/CLAUDE.md` files and displays a dashboard.
**Steps:** 1. Glob for `Projects/*/CLAUDE.md` 2. Read each file, extract: name, status/phase, progress%, goal linkage, next action 3. Display dashboard table
**Output Format:**
## Project Dashboard | Project | Phase | Progress | Goal | Next Action | |---------|-------|----------|------|-------------| | ProjectA | Active | 60% | [[Goal 1]] | Review PR | | ProjectB | Planning | 10% | [[Goal 3]] | Draft spec | ### Summary - Active projects: N - Total progress (weighted): X% - Projects without goal link: [list] - Stalled projects (no update in 14+ days): [list]
Moves a completed project to the archives.
**Steps:** 1. Verify `Projects/<name>/` exists 2. Confirm with user before archiving 3. Update project CLAUDE.md status to "Complete" and progress to 100% 4. Move folder: `mv Projects/<name> Archives/Projects/<name>` 5. Create `Archives/Projects/` directory if it doesn't exist 6. Update any goal references to note completion 7. Report what was archived
Projects are the critical middle layer:
Goals/1. Yearly Goals.md <- "What I want to achieve"
|
v
Projects/*/CLAUDE.md <- "How I'll achieve it" (THIS SKILL)
|
v
Daily Notes/*.md <- "What I'm doing today"When creating tasks in daily notes, reference the project:
- [ ] Draft API spec — [[Projects/MyApp/CLAUDE.md|MyApp]]
TaskCreate: subject: "Read yearly goals" description: "Load goals for project linking" activeForm: "Reading yearly goals..." TaskCreate: subject: "Create project structure" description: "Create folder and CLAUDE.md for new project" activeForm: "Creating project structure..." TaskCreate: subject: "Link project to goal" description: "Add project reference to yearly goals file" activeForm: "Linking project to goal..."
TaskCreate: subject: "Scan project files" description: "Glob and read all Projects/*/CLAUDE.md files" activeForm: "Scanning project files..." TaskCreate: subject: "Generate dashboard" description: "Compile status dashboard from project data" activeForm: "Generating project dashboard..."
Mark each task `in_progress` when starting, `completed` when done.
Works with:
Not another PKM starter kit. This is an execution system that connects your 3-year vision to what you do today — and holds you accountable with AI. Every layer connects. /daily surfaces your ONE Big Thing from the weekly review. /weekly shows project progress.
Scaffold the PKM system onto an existing Obsidian vault. Scans your vault structure, maps folders interactively, and generates configuration — no template…
Find broken wiki-links in the vault. Read-only analysis — scans for [[links]] and verifies target files exist. No writes, no dependencies.
Create daily notes and manage morning, midday, and evening routines. Structure daily planning, task review, and end-of-day reflection. Use for daily…
Track progress toward 3-year, yearly, monthly, and weekly goals. Calculate completion percentages, surface stalled goals, connect daily tasks to objectives.…
Monthly review and planning. Roll up weekly reviews, check quarterly milestones, set next month's focus. Use at end of month or start of new month.
Read and write Obsidian vault files, manage wiki-links, process markdown with YAML frontmatter. Use when working with vault file operations, creating notes, or…