Agent skill

goal

Quest objectives that drive narrative — the WANTS of adventure

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/goal

SKILL.md

Goal

"A goal is not always meant to be reached. Often it serves simply as something to aim at." — Bruce Lee


What Is It?

A Goal is a quest objective that drives the adventure forward. It defines what the player is trying to achieve and when they've succeeded (or failed).

Goals create narrative tension — the gap between current state and desired state.


Schema Mechanism Connection

From Gary Drescher's theory:

Context → Action → Result

Goals define the desired Result that motivates Action. The adventure is a laboratory for learning causal chains that achieve goals.


Goal Properties

Property Purpose
id Unique identifier
name Short display name
description What you're trying to achieve
status pending, active, complete, failed
complete_when Natural language condition
fail_when When goal becomes impossible
reward What you get on completion
progress Partial completion tracking

Completion Conditions

Natural language conditions that compile to JS/PY:

yaml
complete_when: "player has the treasure"
complete_when_js: "(ctx) => ctx.player.inventory.includes('treasure')"

Rewards

Goals can grant various rewards:

yaml
reward:
  buff: "Hero's Glory"           # Temporary effect
  item: "champion-medal"         # Object
  unlock: "secret-room"          # New access
  narrative: "The kingdom celebrates!"  # Story beat

Progress Tracking

For multi-step goals:

yaml
progress:
  collected: 3
  needed: 5

Goal Hierarchies

Goals can nest:

yaml
parent: defeat-dragon
children:
  - find-magic-sword
  - learn-dragon-weakness
  - reach-dragon-lair

Complete all children to complete the parent.


Failure Conditions

Goals can fail:

yaml
fail_when: "time reaches midnight AND prisoner is not freed"
fail_message: "You were too late."

Examples

Simple Quest

yaml
goal:
  id: find-treasure
  name: "Find the Treasure"
  complete_when: "player has the treasure"

Timed Challenge

yaml
goal:
  id: rescue-mission
  name: "Save the Prisoner"
  complete_when: "prisoner is freed"
  fail_when: "10 turns pass without rescue"
  priority: urgent

Collection Quest

yaml
goal:
  id: gather-keys
  name: "Collect All Keys"
  complete_when: "player has 5 enchanted keys"
  progress:
    collected: 2
    needed: 5

Related Skills


Protocol Symbol

SCHEMA-MECHANISM — Goals drive causal learning

Didn't find tool you were looking for?

Be as detailed as possible for better results