Goals
Projects say what they are; a goal says what they are for. Manage goal notes in the user's Obsidian second brain and the goal: link that projects carry back to them. Use second-brain for shared vault conventions, project-tracking for project state, and task-tracking for action items.
Data Source
- Goal note:
Goals/[Goal Name].md— named after the goal so[[Goal Name]]wikilinks resolve. Created withobsidian__note_create type="goal"; the path is derived, never hand-constructed. - A project's
goal:frontmatter field holds one quoted wikilink to the goal it serves. The goal note's own## Projectssection lists every project pointed at it — the two are kept in sync by one tool call, not two.
Goal Note Template
---
type: goal
status: active
created: YYYY-MM-DD
horizon: 2026-Q4
---
# [Goal Name]
## Why
## What done looks like
## Projects
- [[Project Name]]
## Log
### YYYY-MM-DD
- What happened
status is active, achieved, or dropped — your judgment; the tool does not enforce the enum. horizon is optional free text like 2026-Q4 or H1; omit it when the user gave no timeframe.
Workflow
Creating a goal
obsidian__note_create type="goal" name="Ship the Handheld". Pass a horizon when the user gave one:fields={"horizon":"2026-Q4"}.- Fill
## Whyand## What done looks likewithobsidian__section_append note="Ship the Handheld" section="Why" content="…"— use the user's own words; do not invent a rationale or a definition of done they did not give. - If the user already named a project this goal covers, link it in the same turn (below).
- If the note already exists,
note_createreturnscreated=false— add to the existing note instead of recreating it.
Linking a project to a goal
- The goal note must exist first — create it above if it does not.
obsidian__note_set_field note="Example Project" field="goal" value="Ship the Handheld". This sets the project'sgoal:property to a quoted wikilink and lists the project under the goal's own## Projectssection in the same call — the edge is visible from both sides without a second write to remember.- If the goal note does not exist yet, the property is still set as an unresolved wikilink (the tool reports this) — create the goal note and re-run the call to pick up the back-link.
- Repeat once per project when several projects serve one goal.
Marking a goal achieved or dropped
obsidian__note_set_field note="Ship the Handheld" field="status" value="achieved"(orvalue="dropped"). Only when the user says so explicitly — never infer this from a project finishing.- Record why with a dated entry:
obsidian__log_append note="Ship the Handheld" section="Log" content="Marked achieved — shipped to the first 50 users".
"How is <goal> going"
obsidian__vault_read note="Ship the Handheld"for## Why,## What done looks like, and its## Log.obsidian__vault_list type="project" goal="Ship the Handheld"for every project linked to it.- Read each linked project for its
statusand most recent dated activity, then report project-by-project: name, status, and the latest dated evidence of movement. No dated evidence for a project is not "stalled" — say it looks quiet rather than guessing.
Relationship to Projects
- A project holds one
goal:value at a time. Pointing it at a new goal overwrites the old value in frontmatter, but nothing here removes the old bullet from the previous goal's## Projectssection — mention that to the user if it would otherwise look stale. - Do not create a goal for a single one-off task; a goal is for a purpose worth tracking across projects or across a stretch of time.
- Project state itself — status, decisions, blockers — stays in
project-tracking. This skill only writes the goal note and its## Log, plus the onenote_set_fieldcall that links a project to a goal.
Safety
- Do not invent a goal's rationale or its "done" definition — use the user's own words, or ask.
- Do not mark a goal achieved or dropped unless the user says so explicitly.
- Do not infer a goal is achieved just because every project linked to it is marked Done.