Agent skill

Cascading Goal Tracker

by ballred in ballred/obsidian-claude-pkm

Tracks three-year, yearly, monthly, and weekly goals in linked Markdown files, calculating completion percentages and flagging stalled goals.

MITAuto-check passedKnowledge Management

Install Cascading Goal Tracker

skills CLI
$ npx skills add ballred/obsidian-claude-pkm --skill goal-tracking -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ballred/obsidian-claude-pkm goal-tracking --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ballred/obsidian-claude-pkm.git skills-src && mkdir -p .claude/skills && cp -r skills-src/vault-template/.claude/skills/goal-tracking .claude/skills/goal-tracking && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
goal-tracking
GitHub stars
1.9k
Token cost
~1.5k tokens
SKILL.md length
339 words
Files
1
Skills in repo
13
Repo updated
First seen
Licence
MIT

At a glance

Tracks three-year, yearly, monthly, and weekly goals in linked Markdown files, calculating completion percentages and flagging stalled goals.

  • Works in 4 steps: Read all goal files → Parse checkbox completion rates → Calculate overall and per-goal progress → …
  • Reviewing progress across three-year, yearly, monthly, and weekly goals
  • SKILL.md covers Goal Hierarchy, Goal File Formats, Progress Calculation and Common Operations, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

This skill reads a fixed hierarchy of goal files, from three-year vision down to weekly goals, and computes progress three ways depending on the goal type: completed-over-total checkboxes, current-over-target for a metric, or days-elapsed-over-total for a time-based goal, then flags any goal with no activity in fourteen or more days.

It links daily tasks back to the goal they support with a Supports reference, and cross-references active projects by their Goal Link field to roll project completion into goal progress and surface orphan goals that have no project, or only archived ones, backing them. Longer progress-report runs use session tasks to track the report itself.

When your agent uses it

  • Reviewing progress across three-year, yearly, monthly, and weekly goals
  • Finding goals that have stalled with no recent activity
  • Connecting a new daily task to the goal it supports

Example prompts

  • “Give me a progress report across all my yearly goals.”
  • “Which of my goals have stalled with no activity in two weeks?”
  • “Which goals have no active project supporting them?”

Requirements

  • An Obsidian vault with the goal-hierarchy file structure
  • Pre-approved tools (allowed-tools): Read, Grep, Glob, Edit, TaskCreate, TaskUpdate, TaskList, TaskGet

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Read all goal files
  2. Parse checkbox completion rates
  3. Calculate overall and per-goal progress
  4. Identify stalled or at-risk goals

What it can do on your machine

Read from SKILL.md and the folder at commit ef1e4da. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Grep
    • Glob
    • Edit
    • TaskCreate
    • TaskUpdate
    • TaskList
    • TaskGet

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Cascading Goal Tracker loads about 1.5k tokens when it runs. Until then it costs about 54 tokens; SKILL.md has 339 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~54
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ballred/obsidian-claude-pkm at commit ef1e4da, republished under its MIT licence (© ballred). 339 words, ~1,493 tokens.

Download SKILL.mdSave it as .claude/skills/goal-tracking/SKILL.md (or your agent's skills folder).
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

© ballred, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in vault-template/.claude/skills/goal-tracking of ballred/obsidian-claude-pkm.

Open the folder on GitHubat commit ef1e4da

Compare with similar skills

Cascading Goal Tracker next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Cascading Goal Tracker compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Cascading Goal Tracker this skillballred/obsidian-claude-pkm1.9k—~1.5kAutomated safety check: PassMIT
Obsidian Canvas BoardsAgriciDaniel/claude-obsidian15k—~1.4kAutomated safety check: PassMIT
Second BrainNicholasSpisak/second-brain737—~1.5kAutomated safety check: NotesNone
Karpathy WikiSherwinQ/karpathy-wiki114—~967Automated safety check: PassMIT
Subscription Videos MetadataEfficientStreet/youtube-subscriptions-ingest178—~7.1kAutomated safety check: NotesMIT
Obsidian Bases EditorAgriciDaniel/claude-obsidian15k—~1.2kAutomated safety check: PassMIT

Similar skills

  • Obsidian Canvas Boards

    AgriciDaniel/claude-obsidian

    Creates, inspects and updates Obsidian JSON Canvas boards in a vault, with text, file, link, group and edge nodes, using safe recoverable edits.

    15k GitHub stars~1.4k tokensUpdated 28 days ago
    Knowledge ManagementAuto-check passed
  • Second Brain

    NicholasSpisak/second-brain

    Set up a new Obsidian knowledge base with the LLM Wiki pattern.

    737 GitHub stars~1.5k tokensUpdated 6 mo ago
    Knowledge ManagementAuto-check: notes
  • Karpathy Wiki

    SherwinQ/karpathy-wiki

    A skill your agent uses when building or maintaining a personal knowledge base with LLM assistance.

    114 GitHub stars~967 tokensUpdated 5 mo ago
    Knowledge ManagementAuto-check passed
  • Subscription Videos Metadata

    EfficientStreet/youtube-subscriptions-ingest

    Pull metadata from YouTube subscription videos into a second-brain vault as a real cross-linked knowledge graph — not just a flat archive.

    178 GitHub stars~7.1k tokensUpdated 1 mo ago
    Knowledge ManagementAuto-check: notes
  • Obsidian Bases Editor

    AgriciDaniel/claude-obsidian

    Explains, drafts and validates Obsidian Bases .base files, building filters, formulas and table, card or list views, and applying edits only through one inspected transaction.

    15k GitHub stars~1.2k tokensUpdated 28 days ago
    Knowledge ManagementAuto-check passed
  • My LLM Wiki

    MartinLwx/dotfiles

    Provides access to the user's personal wiki, including notes, research, project documentation, decisions, and archived knowledge.

    140 GitHub stars~2.7k tokensUpdated today
    Knowledge ManagementAuto-check passed

More from ballred/obsidian-claude-pkm

All 13 skills in this repo
  • Daily Notes Workflow

    ballred/obsidian-claude-pkm

    Creates today's daily note in an Obsidian vault and guides morning, midday and evening routines for planning, task review and reflection.

    1.9k GitHub stars~2k tokensUpdated 7 mo ago
    Auto-check passed
  • Obsidian Vault Operations

    ballred/obsidian-claude-pkm

    Reads, creates and edits notes in an Obsidian vault while preserving wiki-links, YAML frontmatter, tags and template variables.

    1.9k GitHub stars~652 tokensUpdated 7 mo ago
    Auto-check passed
  • Obsidian Project Tracker

    ballred/obsidian-claude-pkm

    Creates, tracks and archives projects linked to yearly goals in an Obsidian vault, with a status dashboard and a CLAUDE.md context file for each project.

    1.9k GitHub stars~1.1k tokensUpdated 7 mo ago
    Auto-check: notes
  • Push

    ballred/obsidian-claude-pkm

    Commit and push vault changes to Git with smart commit messages.

    1.9k GitHub starsUsed in 1 repo~745 tokens
    Auto-check: notes
  • Obsidian PKM Vault Upgrade

    ballred/obsidian-claude-pkm

    Updates an obsidian-claude-pkm vault's system files to the latest version, with a backup, per-file diff review and no changes to your own notes.

    1.9k GitHub stars~1.1k tokensUpdated 7 mo ago
    Auto-check: notes
  • Obsidian Vault Adoption

    ballred/obsidian-claude-pkm

    Scans an existing Obsidian vault, maps its folders to PKM roles with your confirmation and generates configuration for the Claude PKM system without a template.

    1.9k GitHub stars~2.6k tokensUpdated 7 mo ago
    Auto-check: notes

Works with

Questions about Cascading Goal Tracker

What does Cascading Goal Tracker do?

Tracks three-year, yearly, monthly, and weekly goals in linked Markdown files, calculating completion percentages and flagging stalled goals. This skill reads a fixed hierarchy of goal files, from three-year vision down to weekly goals, and computes progress three ways depending on the goal type: completed-over-total checkboxes, current-over-target for a metric, or days-elapsed-over-total for a time-based goal, then flags any goal with no activity in fourteen or more days.

When should I use Cascading Goal Tracker?

Cascading Goal Tracker fits situations like: reviewing progress across three-year, yearly, monthly, and weekly goals; finding goals that have stalled with no recent activity; connecting a new daily task to the goal it supports.

How do I install Cascading Goal Tracker in Claude Code?

Run `npx skills add ballred/obsidian-claude-pkm --skill goal-tracking -a claude-code`. Or copy the skill folder (vault-template/.claude/skills/goal-tracking in ballred/obsidian-claude-pkm) into .claude/skills/goal-tracking in your project. Claude Code loads it when a task matches its description.

How do I install Cascading Goal Tracker in Codex?

Run `npx skills add ballred/obsidian-claude-pkm --skill goal-tracking -a codex`. Or copy the skill folder (vault-template/.claude/skills/goal-tracking in ballred/obsidian-claude-pkm) into .agents/skills/goal-tracking in your project. Codex loads it when a task matches its description.

Can I use Cascading Goal Tracker in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ballred/obsidian-claude-pkm --skill goal-tracking -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/goal-tracking, .gemini/skills/goal-tracking, .github/skills/goal-tracking and .opencode/skills/goal-tracking in your project.

What does Cascading Goal Tracker need to run?

SKILL.md names no scripts, command-line tools or credentials: Cascading Goal Tracker is instructions for the agent only. Our summary lists: An Obsidian vault with the goal-hierarchy file structure. Its frontmatter pre-approves these tools: Read, Grep, Glob, Edit, TaskCreate, TaskUpdate, TaskList, TaskGet.

Does Cascading Goal Tracker access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Cascading Goal Tracker safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Cascading Goal Tracker use?

Cascading Goal Tracker is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Cascading Goal Tracker use?

About 1.5k tokens (SKILL.md is roughly 6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Cascading Goal Tracker?

Skills that share tags, products or a category with Cascading Goal Tracker: Obsidian Canvas Boards (AgriciDaniel/claude-obsidian, 15k stars), Second Brain (NicholasSpisak/second-brain, 737 stars), Karpathy Wiki (SherwinQ/karpathy-wiki, 114 stars) and Subscription Videos Metadata (EfficientStreet/youtube-subscriptions-ingest, 178 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Cascading Goal Tracker?

ballred (a GitHub user) maintains it in ballred/obsidian-claude-pkm, which has 1,877 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on February 18, 2026.

Source: ballred/obsidian-claude-pkm on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.