Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add martinffx/atelier --skill spec-finishgit clone --depth 1 https://github.com/martinffx/atelierWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/martinffx/atelier/spec-finish)<a href="https://agentmods.dev/skills/martinffx/atelier/spec-finish"><img src="https://agentmods.dev/badge/skills/martinffx/atelier/spec-finish.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00073 | $0.00997 |
| Opus 5 | $0.00036 | $0.00498 |
| Sonnet 5 | $0.00015 | $0.00199 |
| Haiku 4.5 | $0.00007 | $0.00100 |
Grade A, and why
spec-finish scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 167 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Spec Finish
Post-implementation workflow: simplify → synchronize docs → validate → review → prepare PR.
Prerequisites
Before starting, verify:
- All Spec-backed Plan tasks are complete
- Working directory has no unresolved staged or unstaged changes
- Tests pass
If not complete, go back to spec-implement.
Step 1: Compare Scope and Simplify
Compare the implementation with the original behavior and user goal before documentation or validation. Remove unrequested scope, duplicate concepts, one-consumer abstractions, and custom machinery that replaces sufficient platform behavior.
If the implementation faithfully follows an unnecessarily large design, stop and return to
spec-plan. Get approval for the smaller plan before continuing.
Update the finished SDD to describe the smaller result. Replace rejected architecture in the normative design and plan instead of preserving it as precedent; mention it only as a rejected alternative when that history remains useful.
Step 2: Update Documentation
Check whether README, API documentation, or changelog updates are needed. Make and commit any necessary documentation changes through code-commit before final validation.
Step 3: Validate
Run validation checks.
Test Suite
npm test
# or
pytest
# or
cargo test
Type Check
npm run typecheck
# or
python -m mypy
# or
cargo check
Lint
npm run lint
# or
ruff check .
# or
cargo clippy
Build
npm run build
# or
go build ./...
If any fail: Return to spec-implement to fix.
If all pass: Proceed.
Step 4: Review
Invoke the installed code-review skill through the harness's skill mechanism for one comprehensive review of the final change.
What to Review
- All changed files since the intended base branch's merge base
- Test coverage
- Documentation updates
- No debug code left
If code-review finds issues
- Minor fixes may be made here, then re-validated and reviewed.
- Blocking or scope-changing fixes return to
spec-implement.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 167 lines · 73 tokens per session scan A a6bd8f7d634d
spec-finish is a skill published in the GitHub repository martinffx/atelier (45 stars, last pushed 29d ago), licensed MIT. It adds 73 tokens to every session and 997 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
validate-changes
Evaluate staged changes using LLM-as-a-Judge before committing.
writing-pull-requests
Generate conventional-commit PR titles, commit messages, and concise PR descriptions from staged changes or a branch diff. Use when the user asks to create a PR, write a PR title, generate a commit message, or draft a PR description. Output goes directly to the chat — never to a file.
miucr
Review code/diffs/PRs with the owned miucr CLI (miu-cr, a pure-Go AI code reviewer). Use when asked to review staged changes, a commit, a ref range, or a GitHub PR; to run/parse a gated review; compare reviewer quality with eval; to drive reviews over MCP; to run the serve webhook/poll daemon or GitHub Action; or to…
pre-publish-review
Nuclear-grade 12-agent pre-publish release gate. Runs /get-unpublished-changes to detect all changes since last npm release, spawns up to 10 ultrabrain agents for deep per-change analysis, invokes /review-work (orchestrator manual QA plus one gate reviewer) for holistic review, and 1 oracle for overall release…
work-with-pr
Full PR lifecycle in a fresh task-owned git worktree: implement via the ulw-loop skill with mandatory evidence-bound manual QA → reviewer-readable English PR → verification loop (CI + Cubic, where Cubic is skipped only when its quota is exhausted) → merge by default → worktree cleanup. Decomposes one task into the…
pr-review
Address feedback left on a GitHub pull request: fetch unresolved review threads, make agreed Elixir/Phoenix code fixes, reply, and resolve. Use for a PR URL/number or reviewer comments. NOT for pre-PR review, findings triage, or CI monitoring.