Are you the author? Sign in to claim
Portable /goal-writer agent skill for Claude Code and OpenAI Codex — drafts goal+rider document pairs (≤4,000-char goal
A portable agent skill that drafts goal+rider document pairs — the
two-file briefing system for autonomous coding agents — fully aligned
with the official /goal best practices of Claude Code and
OpenAI Codex CLI.
Invoke it as /goal-writer in Claude Code, or $goal-writer in Codex.
Documentation site: https://nicholasspisak.github.io/goal-writer/ — a plain-language, accessible walkthrough of the two-file system and the four loop types.
Learn to run agents like this: join the AI Operator Academy community — designing loops, briefing agents, and shipping real work.
One round of agent work gets two committed markdown files in your
project's docs/goals/:
| File | Budget | Carries |
|---|---|---|
<date>-<time>-<project>-<topic>-goal.md | ≤ 4,000 characters | The spine: GOAL line + headline word, read-first paths, posture (what must NOT change), verification commands, stop condition |
<date>-<time>-<project>-<topic>-rider.md | Unbounded (typically 10–35 KB) | The prescriptive detail: data schemas, algorithms, verb signatures, 11 phases with named depth tests, integration matrix, out-of-scope list, invariants |
The 4,000-character cap is not arbitrary: it is Codex CLI's
MAX_THREAD_GOAL_OBJECTIVE_CHARS, matched by Claude Code's /goal
condition limit. The goal file body pastes directly into /goal in
either harness; the rider stays on disk, referenced by absolute path.
The same pair briefs Claude Code, Codex, Cursor, or a human reviewer
without modification.
The pattern is Greg Ceccarelli's goal engineering: "The cap forces decisions. The rider forces precision. The phases force sequencing. The depth tests force testability."
A loop is an agent repeating cycles of work until a stop condition is
met, and /goal is one of four types (turn-based, goal-based,
time-based, proactive). The pair is primitive-agnostic: /goal is
its primary runtime, but the same two files feed a turn-based
verification skill, a scheduled /loop, or a proactive routine without
a rewrite. /loop, /schedule, and dynamic workflows are Claude Code
primitives; Codex does the same recurring work by wrapping headless
codex exec in a scheduler. The skill also recommends encoding "what
good looks like" as a companion verify skill so the agent self-verifies
end-to-end. See
references/harness-goal-commands.md.
When you ask for a goal (/goal-writer add rate limiting to the API),
it:
validate_pair.sh
(size cap, phase count, required sections, mutual citation, shared
timestamp) and commits the pair.Preferred — the Vercel skills CLI (npx skills):
npx skills add NicholasSpisak/goal-writer
That's the whole onboarding. The CLI detects which agents you have
(Claude Code, Codex, and others), then asks where to put the skill —
this project (into each agent's skills dir, e.g. .claude/skills/) or
globally for your local agent — and whether to symlink (auto-updates)
or copy. It reads SKILL.md straight from this repo; nothing to clone.
Skip the prompts for a global, both-harness, non-interactive install:
npx skills add NicholasSpisak/goal-writer -g -a claude-code -a codex -y
Useful flags: -g global (user-level) instead of project · -a <agent>
target a specific agent · --copy copy instead of symlink · -l list
skills without installing · -y skip confirmation prompts. Full syntax:
npx skills add --help.
install.shgit clone https://github.com/NicholasSpisak/goal-writer.git
cd goal-writer
./install.sh # both harnesses, user-level
Options:
./install.sh --claude # Claude Code only → ~/.claude/skills/goal-writer
./install.sh --codex # Codex only → ~/.agents/skills/goal-writer
./install.sh --project # current repo → .claude/skills + .agents/skills
./install.sh --codex-prompt # optional /prompts:goal-writer command for Codex
Manual install: copy skills/goal-writer/ to
~/.claude/skills/goal-writer (Claude Code) and/or
~/.agents/skills/goal-writer (Codex). Restart the harness.
Note: Claude Code and Codex read different skill directories, so the installer copies to both. Codex's older
~/.codex/skillspath is deprecated; this installer uses the current~/.agents/skills.
Claude Code
/goal-writer harden the webhook handler against replay attacks
Codex CLI
$goal-writer harden the webhook handler against replay attacks
(or /skills to browse; or /prompts:goal-writer <topic> if you
installed the prompt shim). Codex also auto-selects the skill when a
request matches its description.
Then start the round in either harness by pasting the drafted goal file's body:
/goal <goal file body>
Claude Code keeps working until its evaluator confirms the condition
from the transcript. Codex re-injects the objective every turn and
runs a completion audit before accepting "done." (Codex: enable once
with codex features enable goals if /goal isn't listed.)
skills/goal-writer/
├── SKILL.md # the skill (agentskills.io standard)
├── references/
│ ├── goal-template.md # goal skeleton + worked example
│ ├── rider-template.md # rider skeleton + depth-test rules
│ └── harness-goal-commands.md # /goal mechanics in both harnesses
└── scripts/
└── validate_pair.sh # 5 mechanical pair checks
codex/goal-writer.md # optional Codex custom-prompt shim
install.sh
A five-line CSS tweak doesn't need eleven phases. Skip the pair for hot-fixes and 15-minute polish; the overhead amortizes only against rounds that would otherwise run hours of agent time. The pattern also wants a real architecture doc, a CHANGELOG, and a fast (~30 s) test lane — the skill offers to bootstrap the missing pieces first.
Goal Writer is one piece of a bigger practice — designing loops, briefing agents, and shipping real work. Come build with the community: Join the AI Operator Academy.
goal-rider-author skill are by
Greg Ceccarelli
/ SpecStory, Inc., published under Apache-2.0. This skill is a
derivative work — restructured for progressive disclosure and
extended with the official Claude Code and Codex /goal
documentation (evaluator constraints, completion-audit alignment,
dual-harness install).Apache-2.0. See NOTICE for attribution.
⚠️ Experimentelle Skill-Sammlung für deutsches Recht (Arbeits-, Gesellschafts-, Insolvenz-, Datenschutz-, Prozessrecht u
191 agents, 155 skills, and 82 plugins cross-compatible with Claude Code, Cursor, and Codex
Manage multiple Claude Code agents from TUI or Web with tmux and git worktrees
Project management using GitHub Issues + Git worktrees for parallel agent execution