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 agentmods add skills/fakoli/fakoli-plugins/finishnpx skills add fakoli/fakoli-plugins --skill finishgit clone --depth 1 https://github.com/fakoli/fakoli-pluginsWrote 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/fakoli/fakoli-plugins/finish)<a href="https://agentmods.dev/skills/fakoli/fakoli-plugins/finish"><img src="https://agentmods.dev/badge/skills/fakoli/fakoli-plugins/finish.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00018 | $0.01644 |
| Opus 5 | $0.00009 | $0.00822 |
| Sonnet 5 | $0.00004 | $0.00329 |
| Haiku 4.5 | $0.00002 | $0.00164 |
Grade A, and why
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 5d 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 — 273 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Finish (/fakoli-flow:finish)
Overview
Ship work only after fresh verification. Present options. Execute the chosen one. Never act without an explicit choice.
Core principle: Verify first, present exactly 4 options, wait for a decision, then execute.
This skill is invoked:
- After
/fakoli-flow:verifyreports all criteria PASS - Manually when the user runs
/fakoli-flow:finish
Never auto-merge or auto-push. The skill presents options and waits. The user decides.
Step 1: Re-Run Tests (Fresh Evidence)
Do not rely on the verify step's results. Re-run now, in this message.
Detect the project language first:
[ -f tsconfig.json ] && echo "TypeScript"
[ -f Cargo.toml ] && echo "Rust"
{ [ -f pyproject.toml ] || [ -f setup.py ]; } && echo "Python"
Then run the appropriate test command:
TypeScript:
npx tsc --noEmit && bun test
Python:
ruff check . && mypy . && pytest
Rust:
cargo check && cargo test
If tests fail — STOP.
Report the failures with their full output:
Tests failing (N failures). Cannot proceed to ship.
[show exact failure output]
Fix the failures and re-run `/fakoli-flow:finish`.
Do not proceed to Step 2. Return control to the user.
If tests pass: Continue.
Step 2: Determine Base Branch
git branch --show-current
git branch --list main master
If main exists, use main as the base branch. If only master exists, use master. If neither main nor master is found, ask the user: "What is the base branch?"
Step 3: Present Exactly 4 Options
Present these options verbatim, substituting <base-branch> with the detected branch name:
Tests pass. What would you like to do with this branch?
1. Merge back to <base-branch> locally
2. Push and create a Pull Request
3. Keep the branch as-is
4. Discard this work
Which option? (1/2/3/4)
Do not add explanations, recommendations, or commentary. Do not suggest an option. Wait for the user's answer.
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.
- 5d ago First seen · 273 lines · 18 tokens per session scan A eaebd53e252d
finish is a skill published in the GitHub repository fakoli/fakoli-plugins (4 stars, last pushed 27d ago), licensed MIT. It adds 18 tokens to every session and 1,644 once invoked, about $0.0001 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-31.
Other skills, from other repositories
better-auth-knowledge-patch
Use this skill when implementing, upgrading, debugging, or reviewing Better Auth applications. Start with the quick references below, then load the topic file that matches the task.
arch-knowledge-patch
Restart the daemon immediately after upgrading openssh to 9.8p1 because the old daemon cannot accept new connections.
axum-knowledge-patch
Axum 0.8 uses return-position impl Trait in FromRequestParts and FromRequest. Implement their methods with native async fn; do not retain the old #[asynctrait] annotation.
caddy-knowledge-patch
Use this patch when writing or reviewing Caddyfile or JSON configuration, upgrading Caddy, building custom binaries, or operating Caddy's HTTP, proxy, certificate, and telemetry features.
clickhouse-knowledge-patch
Use this skill when writing, reviewing, upgrading, or operating ClickHouse SQL and server configurations. Start with the compatibility-sensitive items below, then load the topic reference that matches the task.
dotnet-csharp-knowledge-patch
Use this skill when changing, reviewing, or troubleshooting C# language features, .NET runtime behavior, libraries, SDK commands, packaging, deployment, or servicing.