skill-debrief
Skill451 starsChanged 7 months agoMITView on GitHub
Debrief an AI agent skill (SKILL.md) after using it — capture session feedback or a retrospective and fold it back into the skill. Use whenever the user says: "debrief the X skill", "let's debrief X", "retrospective on X", "feedback on X skill", "improve the X skill", "update the X skill", "let's revise X based on what we just did", "the X skill should also handle Y", "X didn't trigger when it should have", or otherwise wants to capture lessons from a session back into the skill that drove it. Handles in-repo skills (under skills/) by editing the source, committing, and re-installing via `agr upgrade`. Handles remote/upstream skills by offering to fork them in-repo or to file a GitHub issue via `gh`. Do NOT use for greenfield skill authoring (a separate concern — see `anthropics/skills/skill-creator`) or for installing / syncing / removing skills (use the `agr` CLI directly).
2 other projects use a version of this.
Adopted by
Most recently taken up by
- kasperjunge/agent-resources-projectword for word, first seen Oct 8, 2026
- bytesofbree/skills-labtheir own version, first seen Jul 17, 2026
Other versions2 projects use a version of this.
Word for word · 1
- kasperjunge/agent-resources-project★ 451100% same
Edited · 0
None found.
Wrote their own version · 1
- bytesofbree/skills-lab★ 6same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository4 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- agr-cliSkill
- agr-releaseSkill
The file
We split this skill into the rules it gives an agent
12 rules. About 0 are common, 11 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈11
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 35
Do NOT use this skill for:
- Very specific: line 37
Greenfield skill authoring: Use agr init to scaffold a SKILL.md and defer the body content to the user — or to a dedicated authoring skill …
- Distinctive: line 46
Ask which skill is being improved if it isn't obvious from context.
- Distinctive: line 62
If the skill isn't installed at all but the user wants to improve it, ask whether to add it first (and which case applies).
- Distinctive: line 71
Only ask a clarifying question if you genuinely cannot proceed without one (e.g.
- Distinctive: line 123
Do not push: Stop after the commit and let the user push when ready.
- Distinctive: line 127
Use a conventional-commits-style scope:
- Distinctive: line 141
If the repo's commit style differs (check git log --oneline -20), match it.
- Distinctive: line 154
If the skill is a remote dep, the change cannot be applied directly.
- Distinctive: line 192
If the user has push access and a local clone, also offer to open a PR instead of (or alongside) the issue.
- Distinctive: line 228
After re-installing (in-repo case):
- Distinctive: line 244
Don't push: Commit only; the user pushes when ready.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Skill Debrief
Capture lessons from a session into the skill that drove it. The default shape is listen → propose → align → apply → re-install.
When to use
Trigger when the user wants to debrief an existing SKILL.md based on what happened in the session. Examples:
- "debrief the X skill" / "let's debrief X"
- "retrospective on X" / "feedback on X"
- "improve the X skill" / "let's update X based on what we learned"
- "X skill should also handle …"
- "X didn't trigger when it should have"
Do NOT use this skill for:
- Greenfield skill authoring. Use
agr initto scaffold a SKILL.md and defer the body content to the user — or to a dedicated authoring skill such asanthropics/skills/skill-creator(agr add anthropics/skills/skill-creator). - Installing / syncing / removing skills. That's plain
agrCLI work (agr add,agr sync,agr upgrade,agr remove).
Step 1: Identify the skill
Ask which skill is being improved if it isn't obvious from context. Then locate the source:
agr list # see installed deps and short names
ls skills/ # in-repo source if present
cat agr.toml # see whether the dep is local-path or remoteTwo cases — they have different update paths:
| Case | Source location | Update path |
In-repo ({path = "./skills/<name>", type = "skill"} in agr.toml) | skills/<name>/ | Edit source → commit → agr upgrade <name> |
Remote ({handle = "user/repo/<name>", …}) | Upstream GitHub repo | Cannot edit directly — see Step 5 |
If the skill isn't installed at all but the user wants to improve it, ask whether to add it first (and which case applies).
Step 2: Receive feedback
Listen. The user invoked this skill because they have something to say — let them say it. Do not interrogate. Do not run a checklist of questions at them. Take in whatever they offer, in whatever shape they offer it.
Only ask a clarifying question if you genuinely cannot proceed without one (e.g. the user named a skill that doesn't exist, or two skills share the name and you need to disambiguate). Even then, ask the minimum.
Be dynamic. The user may surface things in any shape — a single
sentence ("the description should also fire on X"), a structured list, or a
ramble that you need to distill. They may also surface things outside the
standard buckets below (rename a section, restructure references/, change
output format, drop a deprecated workflow, fix a typo). Apply whatever the
user actually says.
The buckets below are a mental map for you when distilling what you heard, not a checklist to recite at the user:
description/ triggers — under-fired or over-fired- Gotchas / boundaries — a foot-gun the skill didn't warn about
- Workflow steps — missing, wrong, or out of order
- References — a topic kept needing more depth → new
references/<topic>.md - Examples / output format — vague where it should be concrete
- Pruning — outdated content that misled
Step 3: Propose changes
Summarize what you heard, then propose specific edits. Format:
Proposed changes to
skills/<name>/SKILL.md(and any references):
- Description — add trigger phrase "…" (because: …)
- Boundaries — add: never X (because: discovered this in session)
- New section "Y" — describes the workflow that was missing
Want me to apply these, revise, or add more?
For small edits, show the exact diff inline. For larger changes, summarize first and apply section by section.
Wait for explicit user approval before editing. "yes" / "go ahead" / similar. If the user revises, loop back to Step 2 or 3.
Step 4: Apply (in-repo case)
Edit the source file(s) under skills/<name>/. Then:
git status # confirm only the intended files changed
git add skills/<name>/
git commit -m "skill(<name>): <one-line summary>"
agr upgrade <name> # re-installs into all configured tools, refreshes agr.lock
git add agr.lock
git commit --amend --no-edit # or commit separately; match the repo's styleDo not push. Stop after the commit and let the user push when ready.
Commit message style
Use a conventional-commits-style scope:
skill(<name>): <imperative summary>Examples:
skill(agr-cli): clarify upgrade vs sync for local paths
skill(agr-cli): add gotcha for same-repo siblings
skill(code-review): drop outdated linter pre-checkIf the repo's commit style differs (check git log --oneline -20), match it.
Why agr upgrade and not agr sync?
agr sync only installs missing deps — it does NOT re-copy a local-path
skill that's already installed. agr upgrade <name> re-copies it and
refreshes agr.lock. Use agr upgrade.
(Equivalent: agr add ./skills/<name> --overwrite. Pick upgrade for
consistency — it's the same verb used to refresh remote skills.)
Step 5: Apply (remote case)
If the skill is a remote dep, the change cannot be applied directly. Ask the user which path they want:
Option A — File an issue upstream via gh
Best when the change benefits everyone (a real bug or universal improvement in someone else's published skill).
Resolve the upstream repo from the handle:
anthropics/skills/pdf→--repo anthropics/skillsuser/myrepo/skill→--repo user/myrepo
Confirm the title and body with the user, then:
gh issue create \
--repo <owner>/<repo> \
--title "[<skill-name>] <short summary>" \
--body "$(cat <<'EOF'
## What I observed
<concrete scenario from the session>
## Suggested change
<proposed wording or workflow>
## Why
<reasoning>
EOF
)"gh issue create posts publicly — treat it the same as any other shared-
state action. Always confirm before running.
If the user has push access and a local clone, also offer to open a PR instead of (or alongside) the issue.
Option B — Fork to in-repo
Best when the change is project-specific or unlikely to be accepted
upstream. Copies the skill into skills/<name>/ so future retros work the
in-repo way.
Suggested flow:
# 1. Find the upstream commit (agr.lock has it)
agr list
# 2. Sparse-checkout or full clone, then copy the folder:
mkdir -p skills
cp -r /tmp/upstream-clone/<skill-folder> skills/<name>
# 3. Swap the dep
agr remove anthropics/skills/<name>
agr add ./skills/<name>Tell the user this forks the skill — they're now responsible for keeping it current with upstream. Then continue from Step 3 with the in-repo flow.
Both A and B
Offer Option A first when the change is generally useful. Offer Option B when upstream is unlikely to accept, or when the user wants the change now without waiting on upstream.
Step 6: Verify
After re-installing (in-repo case):
agr list # status should be `installed`
diff skills/<name>/SKILL.md .claude/skills/<name>/SKILL.md # should be emptyFor remote case (issue filed): confirm the issue URL with the user.
Tell the user what's done and what's pending (commit done, push pending; or issue filed, awaiting response).
Boundaries
- Don't edit a skill without explicit user approval of the proposed changes. Skills are user-owned content — never silently revise.
- Don't push. Commit only; the user pushes when ready.
- Don't open issues or PRs without confirming the title and body with
the user first.
gh issue createis publicly visible — treat it as shared-state. - Don't edit
agr.lockby hand —agr upgraderegenerates it. - Don't broaden the scope of the edit beyond what was discussed. If the user asked to fix one gotcha, don't also restructure the file.
- Don't write a skill from scratch — that's a separate workflow.
See also
anthropics/skills/skill-creator— canonical greenfield skill authoring (install withagr add anthropics/skills/skill-creatorif needed)
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

