goal-tracking
$
npx mdskill add ballred/obsidian-claude-pkm/goal-trackingTrack and manage the cascading goal system from long-term vision to daily tasks.
SKILL.md
.github/skills/goal-trackingView on GitHub ↗
---
name: goal-tracking
description: Track progress toward 3-year, yearly, monthly, and weekly goals. Calculate completion percentages, surface stalled goals, connect daily tasks to objectives. Use for goal reviews and progress tracking.
allowed-tools: Read, Grep, Glob, Edit, TaskCreate, TaskUpdate, TaskList, TaskGet
model: sonnet
---
# Goal Tracking Skill
Track and manage the cascading goal system from long-term vision to daily tasks.
## Goal Hierarchy
```
Goals/0. Three Year Goals.md <- Vision (Life areas)
↓
Goals/1. Yearly Goals.md <- Annual objectives
↓
Projects/*/CLAUDE.md <- Active projects (bridge layer)
↓
Goals/2. Monthly Goals.md <- Current month focus
↓
Goals/3. Weekly Review.md <- Weekly planning
↓
Daily Notes/*.md <- Daily tasks and actions
```
## Goal File Formats
### Three Year Goals
```markdown
## Life Areas
- Career: [Vision statement]
- Health: [Vision statement]
- Relationships: [Vision statement]
- Financial: [Vision statement]
- Learning: [Vision statement]
- Personal: [Vision statement]
```
### Yearly Goals
```markdown
## 2024 Goals
- [ ] Goal 1 (XX% complete)
- [ ] Goal 2 (XX% complete)
- [x] Goal 3 (100% complete)
```
### Monthly Goals
```markdown
## This Month's Focus
1. **Primary:** [Main focus]
2. **Secondary:** [Supporting goal]
3. **Stretch:** [If time permits]
### Key Results
- [ ] Measurable outcome 1
- [ ] Measurable outcome 2
```
## Progress Calculation
### Checklist-Based Goals
```
Progress = (Completed checkboxes / Total checkboxes) * 100
```
### Metric-Based Goals
```
Progress = (Current value / Target value) * 100
```
### Time-Based Goals
```
Progress = (Days elapsed / Total days) * 100
```
## Common Operations
### View Goal Progress
1. Read all goal files
2. Parse checkbox completion rates
3. Calculate overall and per-goal progress
4. Identify stalled or at-risk goals
### Update Goal Status
1. Find goal in appropriate file
2. Update checkbox or percentage
3. Add date stamp for significant milestones
4. Update related weekly review
### Connect Task to Goal
When adding tasks to daily notes:
1. Identify which goal the task supports
2. Add goal reference: `Supports: [[1. Yearly Goals#Goal Name]]`
3. Use appropriate priority tag
### Surface Stalled Goals
1. Check last activity date for each goal
2. Flag goals with no progress in 14+ days
3. Suggest actions to restart momentum
## Project-Aware Progress
### Project Integration
When calculating goal progress, include project data:
1. Scan `Projects/*/CLAUDE.md` for all active projects
2. Match projects to goals via their "Goal Link" / "Supports" field
3. Include project completion % in goal progress calculations
4. Surface which projects support each goal
### Orphan Goal Detection
Flag goals that have no active project supporting them:
- A goal with 0 linked projects may need a project created (`/project new`)
- A goal with only completed/archived projects may need a new initiative
## Progress Report Format
```markdown
## Goal Progress Report
### Overall: XX%
### By Goal
| Goal | Progress | Projects | Last Activity | Status |
|------|----------|----------|---------------|--------|
| Goal 1 | 75% | [[ProjectA]] (80%), [[ProjectB]] (60%) | 2 days ago | On Track |
| Goal 2 | 30% | (none) | 14 days ago | Stalled |
### Project Status
| Project | Goal | Progress | Phase |
|---------|------|----------|-------|
| [[ProjectA]] | Goal 1 | 80% | Active |
| [[ProjectB]] | Goal 1 | 60% | Active |
### Orphan Goals (no active project)
- Goal 2 — Consider `/project new` to create a supporting project
### This Week's Contributions
- [Task] -> [[Goal 1]] via [[ProjectA]]
- [Task] -> [[Goal 2]]
### Recommended Focus
1. [Stalled goal needs attention]
2. [Nearly complete goal - finish it]
3. [Orphan goal needs a project]
```
## Task-Based Progress Tracking
The goal tracking skill uses session tasks when generating comprehensive progress reports.
### Progress Report Tasks
Create tasks at skill start:
```
TaskCreate:
subject: "Read three-year goals"
description: "Load vision statements from Goals/0. Three Year Goals.md"
activeForm: "Reading three-year goals..."
TaskCreate:
subject: "Read yearly goals"
description: "Load annual objectives from Goals/1. Yearly Goals.md"
activeForm: "Reading yearly goals..."
TaskCreate:
subject: "Read monthly goals"
description: "Load current month focus from Goals/2. Monthly Goals.md"
activeForm: "Reading monthly goals..."
TaskCreate:
subject: "Scan recent daily notes"
description: "Find task completions and goal contributions from past week"
activeForm: "Scanning recent daily notes..."
TaskCreate:
subject: "Calculate completion percentages"
description: "Compute progress for each goal based on checkboxes and metrics"
activeForm: "Calculating completion percentages..."
TaskCreate:
subject: "Identify stalled goals"
description: "Flag goals with no progress in 14+ days"
activeForm: "Identifying stalled goals..."
```
### Dependencies
Goal file reads can run in parallel, but analysis depends on having all data:
```
TaskUpdate: "Scan recent daily notes", addBlockedBy: [read-monthly-goals-id]
TaskUpdate: "Calculate completion percentages", addBlockedBy: [scan-recent-daily-notes-id]
TaskUpdate: "Identify stalled goals", addBlockedBy: [calculate-completion-percentages-id]
```
Mark each task `in_progress` when starting, `completed` when done using TaskUpdate.
Task tools are session-scoped and don't persist—your actual goal progress is tracked through markdown checkboxes and percentages in your goal files.
## Integration Points
- `/weekly` review: Full progress assessment with project rollup
- `/daily` planning: Surface relevant goals and project next-actions
- `/monthly` review: Adjust goals as needed, check quarterly milestones
- `/project status`: Project completion feeds goal calculations
- Quarterly review: Cascade from 3-year vision
More from ballred/obsidian-claude-pkm
- adoptScaffold the PKM system onto an existing Obsidian vault. Scans your vault structure, maps folders interactively, and generates configuration — no template required.
- check-linksFind broken wiki-links in the vault. Read-only analysis — scans for [[links]] and verifies target files exist. No writes, no dependencies.
- dailyCreate 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.
- monthlyMonthly 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.
- obsidian-vault-opsRead and write Obsidian vault files, manage wiki-links, process markdown with YAML frontmatter. Use when working with vault file operations, creating notes, or managing links.
- projectCreate, track, and archive projects linked to goals. The bridge between goals and daily tasks. Use for project creation, status dashboards, and archiving completed work.
- pushCommit and push vault changes to Git with smart commit messages. Auto-stages files, creates meaningful commits, and syncs with remote. Use after making vault changes or at end of day.
- searchSearch vault content by keyword using Grep. Zero dependencies — works in any vault without indexes or plugins. Groups results by directory for easy scanning.
- upgradeUpdate vault to the latest version of obsidian-claude-pkm. Creates backup, shows diffs, preserves your content. Use when a new version is available.
- weeklyFacilitate weekly review process with reflection, goal alignment, and planning. Create review notes, analyze past week, plan next week. Use on Sundays or whenever doing weekly planning.