Agent skill

Done Blocked

by avelikiy in avelikiy/great_cto

Reusable reporting contract for any agent that hands work back to the pipeline.

MITAuto-check: notes

Install Done Blocked

skills CLI
$ npx skills add avelikiy/great_cto --skill done-blocked -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install avelikiy/great_cto done-blocked --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/avelikiy/great_cto.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/done-blocked .claude/skills/done-blocked && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
done-blocked
GitHub stars
102
Token cost
~1.3k tokens
SKILL.md length
389 words
Files
1
Skills in repo
27
Repo updated
First seen
Licence
MIT

At a glance

Reusable reporting contract for any agent that hands work back to the pipeline.

  • Works in 5 steps: No third state. "Mostly done", "done… → BLOCKED requires three fields. tried +… → Silence is not DONE. If the agent stops… → …
  • SKILL.md covers The contract, Hard rules, Where the verdict goes and Examples, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Done Blocked is an agent skill from avelikiy/great_cto. Reusable reporting contract for any agent that hands work back to the pipeline. Forces ONE of two terminal statuses (DONE or BLOCKED) with a specific evidence shape. Stops vague "probably finished" and "kind of stuck" verdicts.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: You already have the agent. This is everything around it. greatcto runs Claude Code as a pipeline of 70 specialist agents — an independent model checks each stage before the next… The licence is MIT.

Example prompts

  • “probably finished”
  • “kind of stuck”
  • “/done-blocked”

Requirements

  • Pre-approved tools (allowed-tools): Read, Write, Bash

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. No third state. "Mostly done", "done with caveats", "almost there" → choose. If caveats exist, the caveat itself decides
  2. BLOCKED requires three fields. tried + failed_because + need. Missing any field → the verdict is rejected and the agent must re-report. No…
  3. Silence is not DONE. If the agent stops producing output without a terminal line, the parent / next stage treats it as BLOCKED with…
  4. failed_because must be concrete. These are rejected
  5. need names a specific unblock. These are rejected

What it can do on your machine

Read from SKILL.md and the folder at commit 97dd037. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Bash

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Done Blocked loads about 1.3k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 389 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~60
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Write, Bash

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from avelikiy/great_cto at commit 97dd037, republished under its MIT licence (© avelikiy). 389 words, ~1,283 tokens.

Download SKILL.mdSave it as .claude/skills/done-blocked/SKILL.md (or your agent's skills folder).
name
done-blocked
description
Reusable reporting contract for any agent that hands work back to the pipeline. Forces ONE of two terminal statuses (DONE or BLOCKED) with a specific evidence shape. Stops vague "probably finished" and "kind of stuck" verdicts.
allowed-tools
Read, Write, Bash
when_to_use
Apply to every terminal verdict an agent writes — the last line of a spawned agent run, the top of a report file, or the summary appended to a Beads task…
effort
low
paths
.great_cto/verdicts/**, docs/**

DONE / BLOCKED Reporting Contract

Terminal status is exactly two states, and BLOCKED requires specific evidence — not vague obstruction reports.

The contract

Every agent's final handoff line is one of:

DONE: <one-sentence summary of what shipped>
  artifact: <path to report/PR/commit>
  next: <who picks this up — pipeline stage, gate, or "pipeline continues">
BLOCKED: <one-sentence summary of the obstacle>
  tried: <what was attempted — file paths, commands, error signatures>
  failed_because: <concrete reason — not "unclear", not "complex">
  need: <specific unblock — file access, missing config, CTO decision, another agent>

Hard rules

  1. No third state. "Mostly done", "done with caveats", "almost there" → choose. If caveats exist, the caveat itself decides:

    • Caveat is cosmetic / P2+ → DONE (file a Beads bug, move on)
    • Caveat blocks the next pipeline stage → BLOCKED (do not pretend)
  2. BLOCKED requires three fields. tried + failed_because + need. Missing any field → the verdict is rejected and the agent must re-report. No exceptions for "obvious" cases.

  3. Silence is not DONE. If the agent stops producing output without a terminal line, the parent / next stage treats it as BLOCKED with failed_because: silent — no terminal verdict written.

  4. failed_because must be concrete. These are rejected:

    • "environment issue" → say which command failed with what error
    • "tests failing" → say which tests and the actual assertion message
    • "unclear requirements" → say which decision is needed and the two options
    • "not enough context" → say which file / doc / config you tried to read
  5. need names a specific unblock. These are rejected:

    • "more information" → ask one specific question
    • "help from another agent" → name the agent (architect / security-officer / …)
    • "CTO approval" → state the exact choice (approve gate X, pick option A vs B, waive check)

Where the verdict goes

Every agent writes the verdict to two places:

  1. Last line of agent output (visible to the orchestrator that spawned it).
  2. .great_cto/verdicts/<agent>-<YYYY-MM-DD-HHMMSS>.log — append-only audit trail.
bash
mkdir -p .great_cto/verdicts
VERDICT_FILE=".great_cto/verdicts/<agent>-$(date -u +%Y-%m-%d-%H%M%S).log"
printf '%s\n' "$VERDICT_LINE" > "$VERDICT_FILE"
Show full SKILL.md (143 more words)Show less

Examples

Good — DONE:

DONE: CSO audit passed — 0 P0, 2 P1 findings filed as Beads tasks.
  artifact: docs/security/CSO-2026-04-19.md
  next: gate:ship ready for CTO approval

Good — BLOCKED:

BLOCKED: senior-dev cannot claim task BD-42 — circular dependency with BD-38.
  tried: bd ready → BD-42 did not appear; bd dep tree BD-42 → shows BD-38 blocks BD-42, BD-42 blocks BD-38
  failed_because: both tasks depend on each other transitively (BD-42 → BD-38 → BD-39 → BD-42)
  need: architect to split BD-39 into two tasks so the cycle breaks

Rejected — vague BLOCKED:

BLOCKED: couldn't finish QA — environment problems.
  tried: ran tests
  failed_because: stuff broken
  need: help

Why rejected: tried lacks command/path; failed_because is tautological; need is not actionable.

Measuring the contract

.great_cto/verdicts/*.log is machine-readable. Weekly digest can compute:

  • DONE:BLOCKED ratio per agent — too many BLOCKED from one agent = that role is under-resourced or prompt is unclear
  • failed_because clustering — if the same reason appears 3+ times, that's a recurring obstruction worth a meta-fix (tooling, doc, skill)
  • Silence rate (agents with no terminal verdict written) — should trend to zero

Anti-patterns

  • Writing both DONE and BLOCKED in the same report ("DONE but blocked on X"). Pick one. If you're blocked, the work isn't done.
  • Using DONE as a politeness signal when the gate still fails. The verdict is for the machine, not the CTO's feelings.
  • Writing the verdict only to stdout without persisting to .great_cto/verdicts/. The audit trail is what makes the contract measurable.

© avelikiy, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/done-blocked of avelikiy/great_cto.

Open the folder on GitHubat commit 97dd037

Compare with similar skills

Done Blocked next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Done Blocked compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Done Blocked this skillavelikiy/great_cto102—~1.3kAutomated safety check: NotesMIT
Reportmicrosoft/data-formulator18k—~1.5kAutomated safety check: PassMIT
Reportalirezarezvani/claude-skills28k1 repos~727Automated safety check: PassMIT
Bugcrowd Reportingsickn33/agentic-awesome-skills47k1 repos~5.9kAutomated safety check: PassMIT
Reportsgarrytan/gbrain31k—~1.6kAutomated safety check: PassMIT
Report Writingsickn33/agentic-awesome-skills47k1 repos~3.2kAutomated safety check: PassMIT

Similar skills

  • Report

    microsoft/data-formulator

    Official

    Turn an exploration (threads, findings, charts) into a single Markdown report — note, blog post, executive summary, KPI dashboard, slide brief, or multi-section analytical report, with embedded…

    18k GitHub stars~1.5k tokensUpdated 3 days ago
    Writing & ContentAuto-check passed
  • Report

    alirezarezvani/claude-skills

    Generate test report. An agent skill from alirezarezvani/claude-skills.

    28k GitHub starsUsed in 1 repo~727 tokens
    Testing & QAAuto-check passed
  • Bugcrowd Reporting

    sickn33/agentic-awesome-skills

    Bugcrowd-specific reporting tactics complementing report-writing

    47k GitHub starsUsed in 1 repo~5.9k tokens
    SecurityAuto-check passed
  • Reports

    garrytan/gbrain

    Save and load timestamped reports. An agent skill from garrytan/gbrain.

    31k GitHub stars~1.6k tokensUpdated yesterday
    Research & ScienceAuto-check passed
  • Report Writing

    sickn33/agentic-awesome-skills

    Bug bounty report writing for H1/Bugcrowd/Intigriti/Immunefi

    47k GitHub starsUsed in 1 repo~3.2k tokens
    SecurityAuto-check passed
  • Block Kit

    openclaw/openclaw

    Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON.

    392k GitHub stars~624 tokensUpdated today
    Auto-check passed

More from avelikiy/great_cto

All 27 skills in this repo
  • AnyDesign Design Analyzer

    avelikiy/great_cto

    Analyzes a screenshot, website or Figma file and writes a `design.md` with its token system, component inventory and reconstruction notes, or an `element.md` for one element.

    103 GitHub starsUsed in 1 repo~3.2k tokens
    Auto-check passed
  • Opportunity Solution Tree

    avelikiy/great_cto

    Builds an Opportunity Solution Tree that links one measurable outcome to customer opportunities, candidate solutions and experiments.

    103 GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Rewrites a feature-list roadmap into outcome statements that name the customer segment, the result they get and the business impact, grouped into themes.

    103 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Exposed Secret Rotation

    avelikiy/great_cto

    Turns a leaked key, token or password into one tracked rotation task the moment it's spotted, instead of a reminder repeated every session.

    103 GitHub stars~884 tokensUpdated today
    Auto-check: notes
  • Skeptical Triage

    avelikiy/great_cto

    Runs a three-round self-challenge plus an arbiter over high-stakes findings, so false positives from reviews, audits and flaky-test verdicts do not become blockers.

    103 GitHub stars~2.1k tokensUpdated today
    Auto-check: notes
  • Aesthetic Instrument

    avelikiy/great_cto

    greatcto's own committed aesthetic — the instrument panel. An agent skill from avelikiy/great_cto.

    103 GitHub stars~1.9k tokensUpdated today
    Auto-check passed

Questions about Done Blocked

What does Done Blocked do?

Reusable reporting contract for any agent that hands work back to the pipeline. Done Blocked is an agent skill from avelikiy/great_cto. Reusable reporting contract for any agent that hands work back to the pipeline.

How do I install Done Blocked in Claude Code?

Run `npx skills add avelikiy/great_cto --skill done-blocked -a claude-code`. Or copy the skill folder (skills/done-blocked in avelikiy/great_cto) into .claude/skills/done-blocked in your project. Claude Code loads it when a task matches its description.

How do I install Done Blocked in Codex?

Run `npx skills add avelikiy/great_cto --skill done-blocked -a codex`. Or copy the skill folder (skills/done-blocked in avelikiy/great_cto) into .agents/skills/done-blocked in your project. Codex loads it when a task matches its description.

Can I use Done Blocked in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add avelikiy/great_cto --skill done-blocked -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/done-blocked, .gemini/skills/done-blocked, .github/skills/done-blocked and .opencode/skills/done-blocked in your project.

What does Done Blocked need to run?

SKILL.md names no scripts, command-line tools or credentials: Done Blocked is instructions for the agent only. Its frontmatter pre-approves these tools: Read, Write, Bash.

Does Done Blocked access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Done Blocked safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Done Blocked use?

Done Blocked is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Done Blocked use?

About 1.3k tokens (SKILL.md is roughly 5.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Done Blocked?

Skills that share tags, products or a category with Done Blocked: Report (microsoft/data-formulator, 18k stars), Report (alirezarezvani/claude-skills, 28k stars), Bugcrowd Reporting (sickn33/agentic-awesome-skills, 47k stars) and Reports (garrytan/gbrain, 31k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Done Blocked?

avelikiy (a GitHub user) maintains it in avelikiy/great_cto, which has 102 GitHub stars. The repository holds 27 skills in this directory. The repository was last updated on October 9, 2026.

Source: avelikiy/great_cto on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.