Guide · Agent skill
How to use the Goal Drafting Assistant agent skill (goal-draft)
Updated · written with AI from the project's own documentation and checked against our catalogue data
The Goal Drafting Assistant (skill name goal-draft) is an agent skill that turns a fuzzy intention into a precise objective for the /goal command. It is for people who run long, autonomous coding-agent tasks and find the agent looping because nobody can tell when the work is finished. After this guide you will know what the skill produces, how to install it, how to trigger it with a request or the /goal-draft command, and what to check before you approve the result.
Quick start
- 1Download and unzip. Download the goal-draft ZIP from this page and unzip it into ~/.claude/skills/ or the project's .claude/skills/ folder.
- 2Or upload in the Claude apps. If you use the Claude apps, upload the ZIP under Settings → Capabilities → Skills.
- 3Describe the outcome. State what you want done in plain words, or pass an existing goal you want tightened.
- 4Run /goal-draft. Invoke /goal-draft with your request. The skill checks the workspace and may ask one batch of questions.
- 5Review the objective. Check that the Outcome is single, each Done-when item is binary with a named check, and Must not covers risky actions.
- 6Start the Goal yourself. Approve the text and run the /goal command it provides. The skill never starts the work.
What the goal-draft skill makes the agent do
An agent skill is a folder of instructions that an AI agent loads when a task matches it. The goal-draft skill's job is narrow: it writes the text of a goal, not the work itself. A goal is a standing objective that the agent keeps working toward, and it is judged by a separate verifier that only sees evidence in the transcript.
The skill produces an objective with fixed labels: Outcome (one sentence describing what is true when done), Done when (numbered, binary checks, each leaving evidence such as command output or a file assertion), Must not (things to leave alone), Budget (a stopping agreement), On block (what to do if stuck), and Context (facts the agent cannot work out itself).
- It does not edit files, run the checks, or start the task.
- If a request is a simple one-off task or needs a design or product judgement, the skill says so and offers to just do the work or write a plan instead.
- If a goal cannot be checked from the agent's own output, the skill treats it as a prompt rather than a goal.
Install the goal-draft skill
Download the ZIP from the skill's page on this directory. The package contains SKILL.md and SKILL.test.ts. Unzip it so the skill folder ends up in one of two places: ~/.claude/skills/ for all your projects, or .claude/skills/ inside a specific project for that project only.
If you use the Claude apps instead, upload the ZIP there under Settings → Capabilities → Skills.
- Personal install: unzip into ~/.claude/skills/.
- Project install: unzip into the project's .claude/skills/ folder.
- Claude apps: upload the ZIP under Settings → Capabilities → Skills.
Requirements for goal-draft
The skill needs the Qwen Code agent runtime, with its /goal feature and goal tools, including get_goal. The skill also lists read_file, glob and grep_search, which it uses to check the workspace before drafting. It runs no scripts and makes no network calls.
- Qwen Code agent runtime with /goal support and the get_goal tool.
- Access to read_file, glob and grep_search in the workspace.
How to trigger the skill with natural requests
You can invoke the skill with the slash command, passing what you want done or an existing goal to tighten. The skill also loads when you ask to set or define a goal, ask whether a goal is good enough, or say something like keep going until X.
Describe the outcome in plain words. The skill will check the workspace for real file names and test commands, then ask at most one batch of questions if it needs something only you can answer, such as what counts as done or what is off limits.
- Set a goal: say you want to set or define a goal for a task.
- Check a goal: ask whether an existing goal is good enough.
- Tighten a goal: pass the existing goal to /goal-draft.
/goal-draft <what you want done>
/goal-draft <existing goal> to tighten itExamples of good requests
Vague requests get questions back. Specific requests produce checks the verifier can judge. The skill's own example pattern is a Done-when item that runs a named command, requires its exit code, and asks the agent to paste the decisive output line.
Once you have the draft, approve it or ask for changes, then run the /goal command the skill gives you. Read the Must not and Budget lines before you approve, because those are where the loop is most likely to go wrong.
- Vague: make the login better. The skill will ask what the check is.
- Checkable: fix the failing test in the payments package without changing the test's expectations. Done when the named test command exits 0 and its output line is pasted.
- Tighten: /goal-draft keep the API stable and make tests pass, to turn an existing goal into one with numbered checks.
Safety notes: scripts, network and approval
The skill runs no scripts and uses no network. Its drafts are text only. Nothing runs until you approve the objective and start the goal yourself.
Be careful with goals that involve pushing, deleting or publishing. The skill only drafts the wording, so you must write explicit limits in Must not and approve them before the goal runs.
- No scripts, no network access.
- Review Must not for files, tests and irreversible actions to protect.
- Budget is an agreement the model follows, not an enforced timer.
Set an enforced limit on a Goal
The Budget line in a draft is advisory. If you need a real ceiling, set model.goalMaxTurns or model.goalMaxActiveMinutes in your settings. Do not write these settings into the objective, because the Goal's model cannot act on them. Either setting takes effect after a restart and applies only to Goals created afterwards, so it will not stop a Goal that is already running.
- Use model.goalMaxTurns or model.goalMaxActiveMinutes for enforced limits.
- Restart after changing them; they apply only to new Goals.
What people use it for
- Turning a long refactor into a goal that must pass a named test command before completion is proposed.
- Writing a goal for an audit with bounded coverage, where each conclusion needs evidence.
- Tightening an existing goal that keeps looping because the verifier cannot tell when it is done.
- Deciding early that a simple task should not be a goal and doing it as a normal request instead.
Frequently asked questions
How do I install the goal-draft skill?
Download the ZIP from this page and unzip it into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder. In the Claude apps, upload the ZIP under Settings → Capabilities → Skills.
What do I need to run goal-draft?
You need the Qwen Code agent runtime with its /goal feature and goal tools such as get_goal. The skill also uses read_file, glob and grep_search. It runs no scripts and uses no network.
Is goal-draft free and what is its licence?
The item is licensed under Apache-2.0. The source does not describe pricing, so check the licence and the page for any terms before you use it.
Does goal-draft write or run code for me?
No. It only writes the objective text for /goal. It does not edit files, run checks or start the task. You approve the draft and run the goal yourself.
What if the skill keeps asking questions or the goal is still vague?
The skill asks at most one batch of questions. If it cannot find a concrete way to verify the outcome, it asks you to choose from candidate checks. Give it real test commands or file names so it can confirm them in the workspace.
How is this different from writing a goal by hand?
You can write a goal by hand using the same labels, but the skill checks the workspace for real file names and test commands, and enforces the rules that each Done-when item be binary and leave evidence. The source does not name other skills for comparison.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use goal-draft if you run long autonomous coding goals in Qwen Code and need the agent to finish with verifiable evidence instead of looping. Skip it for simple one-off tasks or for design and product decisions that cannot be checked from the agent's own output, where a plain request works better.
Download the skill