Install any skill in seconds. Free to start, no credit card required.
Get Started Free →notque/objective-loop
Loop /do cycles until done-criteria verify or budget stops.
Passed 15 of 21 test cases with the skill, and 7 of 21 without it.
and 8 more in the full report
11 fixed6 passed either way5 still failing2 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 11 test cases the skill fixed. Same model, same prompt, with and without the skill.
For long agent tasks or extended idle periods where paying a cache miss is acceptable, what minimum delay should be passed to `ScheduleWakeup`?
| Checked | Without skill | With skill |
|---|---|---|
| Sets wakeup delay to 1200 seconds or greater. | Missed | Passed |
The instructions your model reads when the skill loads.
The toolkit's iterate-until-verified-done loop. A user states an objective with verifiable done-criteria; each iteration routes one /do cycle, verifies the criteria by executing them, and reschedules itself via ScheduleWakeup until verified-done or budget-stop. This skill is a planner/verifier wrapped around the /do router — it executes no work inline. Objectives over tasks: describe what done looks like and how to verify it; the loop finds the path.
Gather the objective spec from the request. Interview only for missing fields.
| Field | Required | Default |
|---|---|---|
| Objective statement | yes | — |
| DONE-CRITERIA | yes | — |
| Iteration budget | no | 5 |
| Token-budget note | no | orchestration.token_budget from .claude/settings.json (500000 when absent) |
| NOT-DONE-YET guardrails | no | empty |
DONE-CRITERIA are verifiable checks. Each criterion has a type: command (default, preferred) or rubric.
command — a deterministic command with an expected exit code/output: pytest -q exits 0; gh pr view N --json state -q .state prints MERGED; validate-doc-counts.py reports zero drifts. A criterion the model reasons about is not a criterion; each needs a command plus an expected observable.rubric — allowed only where no mechanical check exists, per the PHILOSOPHY.md verification ranking (exit code > fresh-context grader > self-critique). Store the rubric verbatim in the state file at SPEC time: pass conditions plus the evidence the grader must cite. Frozen once the loop starts — changes require the user, same as a guardrail.NOT-DONE-YET guardrails name what may never be done to satisfy a criterion (e.g. "never weaken a gate to make it pass"). They bind every iteration: inject them verbatim into each /do dispatch.
Gate: spec complete. Proceed to Phase 2.
Write .objective/<slug>/state.md from the template in references/state-file.md: objective, criteria table, guardrails, per-iteration log, next planned step.
.objective/ mirrors .feature/'s ephemerality but stays separate: .feature/ is feature-lifecycle's phase machine, managed only by feature-state.py, and its presence reroutes /do into feature phases. Objectives are arbitrary goals..objective/ unstaged; stage repo files by name only.Gate: state file written. Proceed to Phase 3.
Plan the smallest next step toward the unmet criteria, then route it through the /do phases: classify → route → dispatch agents → evaluate. The loop dispatches work exclusively through /do — catching yourself editing or analyzing inline means stop and route. Multi-part objectives may dispatch parallel agents per /do's rules.
Learning capture is automatic. Every iteration dispatches through /do, so routing rows and outcomes record via the /do learning hooks. Add no manual capture.
test cases passed, vs 7 / 21 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.