Agent finish line
Skill mrcha033/skills/plugins/agent-finish-line/skills/agent-finish-line
MrCha Skills — portable Agent Skills for ChatGPT, Codex, and compatible agents
npx -y skills add mrcha033/skills --skill agent-finish-lineAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- 16 days oldThe repository was created 16 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Drive an implementation, experiment, migration, release, or debugging task to a bounded terminal outcome. Use when agent work keeps expanding, repeating tests, adding optional improvements, or stopping at an intermediate artifact instead of shipping the requested deliverable or naming one concrete blocker.
SKILL.md
2.8 KB, as published. Nobody here has run it
Agent Finish Line
Turn the user's objective into a small finish contract, execute only its required gates, and end with a shipped artifact or one evidence-backed blocker. Do not use this as a post-hoc quality audit.
Start the finish contract
Create the contract before doing more implementation:
python3 "$SKILL_DIR/scripts/finish_contract.py" init \
--contract .agent-finish.json \
--objective "..." \
--deliverable "..." \
--gate "build:requested behavior exists" \
--gate "test:decisive test passes" \
--gate "ship:requested endpoint is delivered"
Use one to three gates. Put desirable but nonessential ideas in --backlog, not in a gate. If the user supplied a terminal condition, preserve it exactly.
Execute
-
Read
references/finish-contract.md. -
Choose the earliest unmet gate.
-
Run the smallest decisive action that can pass or falsify it.
-
Record the result immediately:
python3 "$SKILL_DIR/scripts/finish_contract.py" record \ --contract .agent-finish.json \ --gate build \ --result pass \ --evidence "path or concise observed result" -
On failure, provide a state signature. Never repeat an identical failed state without a named strategy change:
python3 "$SKILL_DIR/scripts/finish_contract.py" record \ --contract .agent-finish.json \ --gate test \ --result fail \ --state-signature "test-name:error-class:relevant-state" \ --evidence "failure evidence" -
Route every newly discovered improvement to the backlog unless it is necessary to pass a declared gate.
-
Do not add another verification layer after the final gate passes.
Inspect the next required action at any time:
python3 "$SKILL_DIR/scripts/finish_contract.py" status \
--contract .agent-finish.json
Finish
Complete only after all required gates pass:
python3 "$SKILL_DIR/scripts/finish_contract.py" complete \
--contract .agent-finish.json \
--terminal-evidence "commit, PR, output path, deployed endpoint, or experiment result"
If an external permission, credential, unavailable device, or user choice is the sole remaining obstacle, record that gate as blocked with the exact missing condition. Report the smallest action that unblocks it. Do not relabel hard or unfinished work as blocked.
End the response with:
- what finished;
- the terminal evidence;
- any deferred backlog, without starting it.
Run python3 "$SKILL_DIR/scripts/self_test.py" after modifying the contract script.