Use case 11 of 12 · Hands off
Keep it going until it is done
Give a task a standing goal, so it keeps working across turns, and set it up for a run nobody is watching.
Teaches: /goalApprovals
/goal Upgrade the dependencies in acme-api one at a time, running the tests after each. Leave any upgrade that breaks the tests out, and list those separately with the error.
Paste it into the instruction line of an open task.
When to use it
A long job made of many similar steps, where you would otherwise keep typing “carry on”: upgrades one at a time, a migration file by file, getting a test suite from red to green.
Type the command on the New task page, or in the instruction line of a task you already have open. /goal followed by an objective makes it the task’s goal straight away.
What you will see
A “Goal” bar sits above the instruction line with the objective, and “Pause” and “Mark complete” buttons. When a turn ends, the task continues on its own until the agent marks the goal complete. After 25 automatic continues without finishing it pauses, and the navigator shows “Goal paused” until you click “Resume”. The limits, and what happens after a restart, are in Goals and loops.
What to check
- A goal does not approve anything. While you are away, every edit and command that asks is denied if nobody answers within 15 minutes. Decide before you leave what may run without asking: Approvals covers “Always allow”, setting “Ask before” to “Nothing”, and “Approve low-risk tools on their own”, which still asks before edits, commands and commits.
- A question from the agent waits for your answer unless “When the agent asks a question” is set to “Skip the question”.
- Review the result the next morning like any other task: the record shows every step it took.