autonomous-run
Skill173 starsChanged 17 days agoMITView on GitHub
Prepare, start, inspect, resume, or stop a finite local overnight coding run after a human has accepted a Wayfinder terminal spec; coordinates a declared Claude/Codex maker and independent checker without pushing, merging, or writing to external systems.
3 other projects use a version of this.
Adopted by
Most recently taken up by
- anis-dr/skillstheir own version, first seen Oct 15, 2026
- Mozurok/fhorja.devtheir own version, first seen Oct 8, 2026
- ziffan/auto-continue-cli-agenttheir own version, first seen Jul 19, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- Mozurok/fhorja.dev★ 10same name
- anis-dr/skills★ 3same name
- ziffan/auto-continue-cli-agent★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository11 other files it gives its agents.
- AGENTS.mdAGENTS.md
- example-skillSkill
- grill-with-docsSkill
- handoffSkill
- harness-doctorSkill
- harness-helpSkill
- new-feedbackSkill
- new-researchSkill
- verifySkill
- wayfinderSkill
- writing-rulesSkill
The file
We split this skill into the rules it gives an agent
6 rules. About 0 are common, 2 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Do not begin implementation unless all of these are true:
- Very specific: line 28
Use .agentsmith/autonomous-run.py in an installed project.
- Very specific: line 46
Before any Git metadata write in this repository (git worktree remove or prune, a branch delete, a history rewrite), run the read-only …
- Distinctive: line 60
Only after explicit operator authorization:
- Very specific: line 84
Before start creates local Git or state artifacts, and before resume restarts work, the controller serializes a repository-local collision …
- Very specific: line 92
Use status <id>, stop <id>, or resume <id>.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Autonomous run — bounded overnight execution
This skill is for a finite approved implementation, not a recurring watcher. For recurring work use the autonomous-loops profile. For unresolved product or architecture decisions, run Wayfinder first.
Hard gate
Do not begin implementation unless all of these are true:
- The terminal spec is committed under
docs/specs/withstatus: accepted,accepted_by, andaccepted_at. An agent may author onlystatus: draft. - A separate implementation-ticket ID is named. The decision ticket is not executable work.
- The operator explicitly invokes or authorizes
start. Producing or checking a spec never self-authorizes implementation.
Linear and every other external system still follow the installed write-consent rule. The v1 controller has no external-write adapter at all.
Prepare the contract
Use .agentsmith/autonomous-run.py in an installed project; the source checkout uses
scripts/autonomous-run.py. The installed template is
.harness/templates/autonomous-run.json (the harness source checkout uses
templates/autonomous-run.json):
python3 .agentsmith/autonomous-run.py prepare --run-id <short-id> --spec docs/specs/<name>.md --ticket <implementation-ticket> --maker codex --checker claude --maker-model <model> --checker-model <model> --template .harness/templates/autonomous-run.jsonprepare refuses blank or placeholder models and efforts and names the fields to fill. Ask the
operator which models to use; never invent one. Review the manifest's exact allowed/denied
paths, verifier, models, attempt cap, wall-clock limit, budgets, and optional scope.resources keys such as port:3000 or
db:local/test. Resource keys coordinate cooperating local runs; they do not replace operating-
system port binding or database isolation. Commit the manifest before execution; the controller
refuses an uncommitted contract. Concurrent worktrees share writable Git metadata needed for local
commits, so this guard prevents accidental collisions between cooperating runs; it is not a
security boundary for mutually untrusted makers.
Before any Git metadata write in this repository (git worktree remove or prune, a branch
delete, a history rewrite), run the read-only guard and continue only on exit 0:
python3 .agentsmith/autonomous-run.py status --all-terminal && <git command>. Exit 1 names the
live or unfinished run; exit 2 means it cannot tell, which you treat as live.
Size budgets per run. Class the work by the lines it should change (S up to about 350, M up to
about 800, L up to about 2,500; split anything larger), cap at the highest usage measured for an
accepted run of that class plus at least 20% headroom, and write the class, the measurement and
who set it in limits.budget_rationale. A run stops at the first report over a cap, even by 1%; a
finished maker's candidate is checkpointed first, so resume can verify and check it.
Keep max_attempts at 3.
Start and supervise
Only after explicit operator authorization:
python3 .agentsmith/autonomous-run.py start .harness/runs/<short-id>.jsonThe controller creates an isolated local branch/worktree, launches a fresh maker, validates its
receipt, scope and Git transition, then creates a disposable detached worktree for the sandboxed
deterministic verifier and a fresh checker. A rejection becomes the next maker's input. Three
failed attempts, invalid state, denied scope, immutable-deadline or reported-budget exhaustion,
Git metadata drift, protected verification edits, or checker mutation escalates instead of widening authority. Verification
fails closed unless macOS sandbox-exec or Linux bubblewrap is available. Before creating
anything, start runs one trivial sandboxed command per role and one through the verifier
sandbox; if the host cannot run them, it refuses and names the role and reason.
Existing baseline tests, the accepted spec, runtime launchers, and verification policy are protected
even with broad maker scope, and moving or renaming one of them counts as changing it. A moved
file counts as two changed paths, the old one and the new one; both must be inside the allowed
scope. Add custom acceptance inputs via verify.protected_paths; changing
protected inputs requires separate operator review outside this run. New regression tests remain
allowed. Both roles receive trusted-path write restrictions through their native policies; Codex uses a
strict named filesystem profile, and Claude combines Bash denyWrite with file-tool Edit denials.
Native clients and the host remain trusted. Checkers inspect the controller verifier evidence.
Before start creates local Git or state artifacts, and before resume restarts work, the
controller serializes a repository-local collision scan. Ancestor/descendant fixed prefixes from
scope.allowed_paths conflict; a glob with no fixed prefix reserves the repository; identical
resource keys conflict. Live malformed state fails closed, while stopped or demonstrably dead
controllers no longer reserve their scopes.
While .harness/AUTONOMY_PAUSED exists, prepare, start and resume refuse; live runs keep
running until stop <id>. Never create or delete that file on your own; it is the operator's.
Use status <id>, stop <id>, or resume <id>. Stop/resume retains the worktree and audit state.
Resume revalidates a checkpointed candidate and reruns verification/checking in the same attempt.
Dirty or unreceipted maker commits require operator review. Raw logs survive controller crashes;
earlier invocations are archived. Report usage_accounting_incomplete when a crash leaves
unreported spend unknown. A surviving role process group must be stopped before recovery.
An accepted run ends at a local commit for human review: never push, open a PR, merge, deploy,
rewrite history, or write to Linear from this workflow.
Report
Give the run ID, status, attempt count, branch/worktree, accepted commit or escalation reason, and the actual verification evidence. State explicitly that external actions were not taken.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

