Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Retro

ASecurity

Retrospective on the tasqx tasks completed in this session — review the decisions and rework that got them done, record the lessons on each task, and decide whether a procedure earns a skill. Use at the end of a session, or when the user says retro, retrospective, post-mortem, lessons learned, or asks what we learned. Never triggered by completing a task.

2 stars
0 votes
0 copies
0 views
Added 9/22/2026
ai-agentsgo

Security Analysis

A100/100

Scanned 9/22/2026

Install to Claude Code

$npx -y skills add dimitritholen/tasqx --skill retro --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Retro?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Retro
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/dimitritholen-retro/badge)](https://www.skillsdirectory.com/skills/dimitritholen-retro)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: retro
description: Retrospective on the tasqx tasks completed in this session — review the decisions and rework that got them done, record the lessons on each task, and decide whether a procedure earns a skill. Use at the end of a session, or when the user says retro, retrospective, post-mortem, lessons learned, or asks what we learned. Never triggered by completing a task.
---

This skill runs once per session, on request (`/retro`), over every task the
session completed — not after each `tasqx_complete_task`. Until 2026-09-16 a
PostToolUse hook nudged a retro per completion; each run cost ~56k tokens, 14
completions in 36 h cost ~800k, and a measurement (memory doc
01a0a754-e116) found the docs those retros wrote were never read back. Decided
in claude-config #675: one run, one agent, one bundle per task that earned it,
and nothing written on a task that went straight through. Its evidence is an
evidence bundle the main session assembles from tasqx and the executors'
reports (Step 0); the session transcript is not read. Its outputs are an
annotation on each reviewed task, and optionally a memory entry, a hookify
recommendation, or a skill candidate. A skill is promoted only on the second
sighting of the same procedure — retros overrate their own novelty.

## Step 0: Pick the tasks, then delegate to a fresh agent on an evidence bundle

**Which tasks.** With a ref (`/retro 123`), that task. With none, every task
whose `tasqx_complete_task` this session made; if unsure, `tasqx list
status:done` newest first and take the ones completed since the session began.

**Which of those earn a bundle.** Only a task whose work had rework (a
reverted edit, a re-run command, a wrong assumption), a discovery written down
nowhere, a blocked or refused step, or an executor that came back wrong. The
main session judges this from what it watched. A task that went straight
through gets no bundle and no annotation; name it in one line of the verdict.
If no task qualifies, say so and spawn nothing.

**Why a fresh agent, not a fork.** A fork inherits the whole session
transcript and its cost grows with the session (measured at 247k, 494k and
559k tokens for three runs, the last for a single task), while the evidence a
retro needs is a few thousand tokens per task.

Assemble one bundle per qualifying task:

1. The task read whole: `tasqx_get_task` with `include_json: false` and
   `annotations_limit` set to the task's `annotations_total`. That asks for
   every annotation (approach, decisions, blockers, delivery) and every check
   with its evidence; a long history is still cut to the response budget
   (D148), and the answer says so with a non-null `annotations_next_offset`,
   so page from there until it is null (or raise `max_body_bytes` when one
   long body was the cut) before calling the bundle complete.
2. The executor's final hand-back report for that task, pasted verbatim, with
   the token count and wall time from its task notification.
3. The `tasqx_outcomes` result for the task's project (calibration, rework,
   unproven, cost), once per project.
4. Anything the planner itself reworked or reverted for this task, in two or
   three lines. The fresh agent cannot see the transcript, so rework that was
   never annotated is invisible unless it is written here; the habit to keep
   is to annotate such rework on the task as it happens.

Then call the `Agent` tool once with `subagent_type: "general-purpose"` and
the prompt "Run the retro skill for tasks #N, #M" followed by all the bundles.
Relay the agent's verdict in one or two sentences per task.

You are the fresh agent when the prompt you were given starts with "Run the
retro skill for task". In that case run steps 1-5 directly on each bundle,
citing the annotation, check or report line that supports each answer, and
end your final message with the verdicts from Step 5.

## Step 1: Answer five questions from the evidence bundle

Cite what actually happened for each answer — the file, the command, the
reverted edit, the annotation, check or report line where an assumption
broke. Answer only the questions with evidence to cite.

1. **Goal vs delivered**: what was asked, what shipped, the gap if any.
2. **Rework**: every edit reverted, every command re-run, every wrong
   assumption. This is the only honest signal of a hard step.
3. **Discovery**: what was learned that is written nowhere — a convention, a
   gotcha, a reason behind a choice.
4. **Redo**: which steps would be skipped, which reordered.
5. **Procedure**: is any part a repeatable sequence with a verifiable end that
   someone else would need.

## Step 2: Scope gate

If questions 2 and 3 produced no evidence for a task, write nothing on it:
report it as "straight through" in the verdict and move to the next bundle.

## Step 3: Route each finding

- A fact, convention, or gotcha from Q3: search `tasqx_search_memory` first
  with two or three keywords. If it is not already there, call
  `tasqx_add_memory` with a title, a body (the ruling on the first line, the
  reasoning under it), and `source` naming the repo path.
- A mistake worth preventing mechanically (a "never run X against Y" rule):
  name the pattern to the user as a hookify candidate. Hooks are the user's
  call to create.
- A procedure from Q5: run it through the skill-worthiness test in Step 4.

## Step 4: The skill-worthiness test

Gates 1 and 2 must both pass:

1. **Procedural** — a sequence of steps with a verifiable end. A fact belongs
   in memory instead; a prohibition belongs in a hook instead.
2. **Non-obvious** — it cost at least one wrong attempt or a discovery to get
   right. Getting it right first time from general knowledge means a skill
   would add nothing.

Then search for a prior sighting: `tasqx_search_memory` with the procedure's
key terms, two or three words, in two different wordings. A hit whose
`source` is `task:#N` on a task titled `skill candidate: …` is a prior
sighting.

**A gate fails**: record which gate and why in the retro annotation (Step 5)
and stop.

**No prior sighting**: create the candidate.
- `tasqx_add_task` titled `skill candidate: <short name>`, same project as the
  completed task, priority L, tag `skill-candidate`.
- `tasqx_annotate_task` on it with the procedure as numbered steps, the
  trigger phrase a user would say, and `sighting 1: task #N`.

Completion criterion: the candidate task exists with that annotation.

**Prior sighting, candidate open**: promote it, in this order.
- `tasqx_annotate_task` on the candidate with `sighting 2: task #N` and
  whatever this run added to the procedure.
- Draft the skill with the `skill-creator` skill (invoke it via the `Skill`
  tool), using the candidate's annotation as the spec.
- `tasqx_annotate_task` on the candidate with the path to the new SKILL.md.
- `tasqx_cancel_task` the candidate.

Completion criterion: the SKILL.md file exists and the candidate task is
cancelled.

**Prior sighting, candidate already cancelled with a SKILL.md path in its
annotation**: the skill exists. Record the path in the retro annotation and
stop.

## Step 5: Write the retro annotation

`tasqx_annotate_task` on each reviewed task. Body starts with `retro:`,
followed by the five answers (only those with evidence) and the routing
outcome — the memory id, the hookify recommendation, the candidate task ref,
or the skill path. The verdict relayed by the fresh agent names any hookify
pattern verbatim, since that recommendation reaches the user only through the
verdict.

Completion criterion: the annotation is stored, and if this run is the fresh
agent, its first lines are the verdicts relayed to the main agent.

Attribution

dimitritholendimitritholen
View sourceMore from dimitritholen →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1066601 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

686011 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

651 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →