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 Borda/vision-delivery --skill decision-reportgit clone --depth 1 https://github.com/Borda/vision-deliveryWrote 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/borda/vision-delivery/decision-report)<a href="https://agentmods.dev/skills/borda/vision-delivery/decision-report"><img src="https://agentmods.dev/badge/skills/borda/vision-delivery/decision-report.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.1 | $0.00124 | $0.02092 |
| Opus 5 | $0.00062 | $0.01046 |
| Sonnet 5 | $0.00025 | $0.00418 |
| Haiku 4.5 | $0.00012 | $0.00209 |
Grade A, and why
decision-report 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 — 182 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Emit a portable, decision-grade stakeholder report at ./decision-report-<YYYY-MM-DD>.md.
Exit criterion: a Markdown file the user can hand to their manager. Every material number carries a source URL and as_of date. "Don't deploy / roll your own" is always a reachable recommendation — never omitted.
Read these sources before writing. Do not ask for information the codebase already has.
| Section | Source |
|---|---|
| PoC result + eval data (§4) | Packaged scripts/baseline_map.py output, or .vision-delivery/ledger.jsonl for session history; current Roboflow evidence delegated upstream |
| Frozen proof identity | Acceptance, baseline, handoff, ledger, and economics artifacts validated together with ../../resources/scripts/validate_proof_chain.py |
| Economics + crossover (§6) | Absolute packaged scripts/cost_model.py --streams <N> ... output — run with the user's inputs; never hardcode figures |
| Options analysis (§5) | User-stated constraints + cost_model.py DIY vs managed outputs |
| Sensitivity (§6) | Re-run cost_model.py with --streams / --uptime inputs at ±20%; report delta |
| Eval threshold + model name | .vision-delivery/eval-<session-id>.md if present, else ask one targeted question |
Resolve the plugin root from this loaded skills/decision-report/SKILL.md, then run <plugin-root>/scripts/cost_model.py by absolute path with --acceptance <frozen-acceptance.json>. Never assume the user's project contains the helper. Use its output verbatim for all economic figures — no paraphrasing, no rounding beyond what the script reports. Before writing, run <plugin-root>/resources/scripts/validate_proof_chain.py without --report to obtain the terminal chain_id. A decision-grade report must reject proof.status: unbound, a failed/mismatched baseline, an invalid handoff, missing proof ledger actions, or a ledger/cost record that names a different digest. Rough unbound economics may be reported only as assumptions and cannot end in go.
<output_structure>
Write ./decision-report-<YYYY-MM-DD>.md with these ten sections in order:
1. Header / metadata
Owner: <name, if known>
Version: 1.0
Status: DRAFT
Date: <YYYY-MM-DD>
Decision: <one sentence stating exactly what is being decided>
Acceptance: <acceptance_id> / <acceptance_sha256>
Proof chain: <chain_id>
2. Executive summary (≤1 page, written last) Problem → recommendation → headline cost → value/ROI → top-3 risks → explicit ask (what you need from the reader). Written last; placed first.
3. Problem and why now Business problem + urgency. No urgency = acknowledge indefinite deferral is also a valid outcome.
4. What was built and what it proves PoC/MVP result measured against the user's own eval. Exact numbers — mAP, recall, count-MAE — on the user's own data. No softening.
5. Options analysis (do-nothing mandatory) ≥3 options:
- Option A: Managed deployment (Roboflow endpoint)
- Option B: Self-host / DIY
- Option C: Do nothing / defer
Honest pros/cons for each. Do not favour managed — the report must be able to recommend B or C.
6. Economics — sourced, dated One-time vs run-rate cost. Crossover point. Payback period.
Every material line must carry [source: <URL>, as_of: <YYYY-MM-DD>]. Lines without provenance are report failures.
Structure (copy from cost_model.py output — do not rewrite):
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 · 182 lines · 124 tokens per session scan A d2bb508608e8
decision-report is a skill published in the GitHub repository Borda/vision-delivery (4 stars, last pushed 28d ago), licensed Apache-2.0. It adds 124 tokens to every session and 2,092 once invoked, about $0.0006 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
pipeline
Use when the user wants a feature idea taken end-to-end in one autonomous run — phrases like "run the whole pipeline", "take this feature from idea to finished branch", "brainstorm then build it autonomously", "do everything from idea to merged", "implement all phases without stopping". Triggers when they want…
craft
Use when a product idea is still vague and needs to become a clear definition of what to build — "let's craft an app like X", "help me define what I actually want", "clarify this idea before we plan it". Also use before planning or implementation when requirements, UX, domain behaviour, or technical preferences have…
bug-fix
Use when a bug, regression, or unexpected behaviour is reported and the user wants it fixed end to end — "why is X broken", "this stopped working after Y", "fix this crash". Also use when a symptom is known but its cause is not. Not for building new behaviour, and not for a change whose cause is already proven.
bug-investigate
Use when someone wants to know WHY something is broken and has not asked for it to be fixed — "why is this happening", "what's causing this error", "find out what's wrong", "diagnose this before we decide". Also use before committing to a fix, when the cause is unknown and the decision depends on it. Not for fixing …
setup
Use when superb's skills need their dependencies installed or checked — "set up superb", "install the dependencies", "why does pipeline say superpowers is missing", after a fresh plugin install, or on a new machine. Also use when a skill fails complaining that a superpowers sub-skill cannot be found.
boundedrelay-adaptive-sdd
Coordinate the optional BoundedRelay Spec Kit workflow with strict independent reviews, deterministic effort routing, bounded proposals, convergence, and handoff.