goals

$npx mdskill add obra/muse-skills/goals

Your role is to help the user create and accomplish their goals.

SKILL.md

.github/skills/goalsView on GitHub ↗
---
name: goals
metadata: { "includeInPrompt": true }
description: "Guidance for helping users create and accomplish goals. Read it before you create a goal for the user when no goal-creation contract is in context, and whenever you help with an existing goal. A Goals-tab creation turn already carries that contract and does not need this skill."
---

# Goals guidance assets

Your role is to help the user create and accomplish their goals.

You should be aware how the user is making progress, how the goal changes over
time, or if there are other goals
that might conflict with this goal. If a goal has a timeframe and it ends,
check whether the goal is done or should be extended. Upon completion of a
goal, consider whether it deserves reflection.

Record the commitments the user makes toward this goal. Use relevant
information the user has shared or authorized you to access to understand
their progress. Follow the user's stated preferences for support and check-ins.
Ask about progress when the available information leaves something unclear
that would change how you help.

The `/opt/hatch/skills/goals/` directory holds guidance for creating goals and
helping users make progress on them. Create, read, and update goals with
`user_goal.create`, `user_goal.get`, and `user_goal.update`. Guidance reaches
a turn two ways.

On a Goals-tab creation turn the runtime injects the composed creation
contract: that category's complete creation guide, including its safety
section, plus the registry's research tactics. On that turn, do not read any file under `/opt/hatch/skills/goals/`
while the goal stays in the injected contract's category. When the goal turns
out to belong to a different category, read that category's file at
`/opt/hatch/skills/goals/creation/<category>.md`.

A goal-creation turn that starts outside the Goals tab carries no injected
contract. A turn helping with an existing goal also carries no injected
contract. In those two contexts, read the files below yourself.

To create a goal when no goal-creation contract is in context, read one file
before intake: `/opt/hatch/skills/goals/creation/<category>.md`. That one
file holds the whole creation guide for its category: the workflow, the first
conversation, and the setup that follows the created record. Choose the life
area the new goal belongs to from the `category` values `user_goal.create`
accepts, and read that area's file at
`/opt/hatch/skills/goals/creation/<category>.md`. When no life area fits,
read `/opt/hatch/skills/goals/creation/something_else.md`.

To help with an existing goal, follow the shared guidance above and read
`/opt/hatch/skills/goals/guides/<category>/scaffold.md` which holds the
guidance for helping with goals in that category over time. Do not read any file
under `/opt/hatch/skills/goals/creation/` for a goal that already exists. Those
files choreograph the first conversation about a goal, and running that
choreography again restarts intake on a goal the user is already working on.

Confirm the category with `user_goal.get`. When the goal has no category, use
the shared guidance in this skill without reading a category scaffold.

More from obra/muse-skills

SkillDescription
apple_healthkitThe user's synced Apple Health (HealthKit) data: daily metrics (steps, distance, calories, heart rate, HRV, VO2max), sleep sessions (stages, quality, efficiency), and workouts.
artifact_documentCreate, read, edit, or manipulate Word documents (.docx) and Word templates (.dotx). Use whenever a build task's artifact kind is document with the default docx output, or the task mentions a Word doc, .docx, or .dotx, extracts or reorganizes content from one, inserts or replaces images, does find-and-replace in one, or works with tracked changes (redlines) or comments. Covers python-docx generation, raw OOXML editing of existing files, document structure and formatting, and render verification. Not for PDFs, spreadsheets, or Google Docs.
artifact_markdownBuild or revise a plain markdown file (md) deliverable such as notes, a README, meeting minutes, documentation, or text the user will edit or paste elsewhere. Use whenever a build task's artifact kind is markdown. Covers markdown formatting conventions and read-back verification.
artifact_pdfBuild, revise, or manipulate a fixed-layout PDF (report, guide, one-pager, printable document). Use whenever a build task's artifact kind is pdf, a document build's output format is pdf, or the task reads, merges, splits, crops, or fills an existing PDF, including fillable AcroForms. Covers authoring the print-CSS HTML source, rendering, the geometry and validation gates, existing-PDF manipulation and form filling, and delivery under workspace/your_files.
artifact_presentationBuild or revise a slide deck (pptx by default; pdf or html on request). Use whenever a build task's artifact kind is presentation, or the user asks for a deck, slides, or a presentation. Covers per-slide HTML authoring, the StylePlan theme system, font embedding, deck assembly, render gates, and the PPTX export.
artifact_spreadsheetCreate, read, edit, fix, or clean spreadsheet files (.xlsx, .xlsm, .csv, .tsv). Use whenever a build task's artifact kind is spreadsheet, or the task names a spreadsheet file and wants something done to it or produced from it, including restructuring messy tabular data into a proper workbook. Covers openpyxl generation, formulas and recalculation, editing existing workbooks, and the validation gates. Not for tasks whose deliverable is a document, report, or web page that merely contains a table.
artifact_testingVerify an artifact before delivering it - file deliverables (pdf, pptx, docx, xlsx, csv) and web artifacts alike. Use whenever a build is about to return a link, or a build task asks for validation, QA, or a visual check. Covers the per-kind gate scripts, render-and-look verification, and leftover-placeholder scanning.
asana>-
bookingPrimary entry point for direct flight, hotel, restaurant, or event-ticket transactions and for bounded live availability checks delegated by Travel Planning. Always use before provider-specific skills or browser work when the user asks to find live availability or prices, compare bookable options, book, or continue an active booking. Do not use for trip planning itself, broad inspiration, opening hours, schedules, flight status, or other factual questions without transaction intent.
boxSearch, read, upload, download, move, rename, delete, restore, and share Box content; manage comments and metadata.