skills/self-critic/SKILL.md
Autonomous adversarial critic agent that spawns in the background to challenge, question, and find flaws in the builder agent's work. Use when: (1) working on complex tasks where correctness matters, (2) building features that need a second opinion, (3) writing code that could have hidden assumptions, (4) any task where you want an independent devil's advocate reviewing your reasoning and output in real-time. Spawns a background critic with configurable harshness levels (paranoid/reasonable/chill) that injects non-blocking feedback.
npx skillsauth add hangsiahong/koompi-agent-bundle self-criticInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
An autonomous critic agent that watches your work and challenges it from every angle. Inspired by adversarial red-teaming and self-reflection patterns from AI research.
The pattern: Builder works → Critic reviews → Critic injects feedback → Builder improves
spawn_agent with a different model for perspective diversityControl critique intensity with the SELF_CRITIC_LEVEL environment variable or pass it in the spawn instruction:
paranoid (Maximum Scrutiny)reasonable (Balanced Review) — DEFAULTchill (Light Check)After completing a significant piece of work, spawn a critic for a single review pass:
Use spawn_agent with:
- model: gemini-3-flash-preview (different model for diversity)
- role: default
- message: |
You are an adversarial code critic (harshness: reasonable).
Review the following work and respond with structured critique:
## Context
[Paste the task description and what was done]
## Output to Critique
[Paste the code/output produced]
## Your Critique Format
1. **Wrong**: Things that are factually incorrect or broken
2. **Risky**: Things that might work but are dangerous or fragile
3. **Smelly**: Things that work but are bad practice or over-engineered
4. **Missing**: Important things that were overlooked
5. **Better Way**: Alternative approaches worth considering
Spawn at the start of a task and feed it updates:
# Step 1: Spawn the critic at task start
critic_id = spawn_agent(
model: "gemini-3-flash-preview",
message: "You are a persistent adversarial critic (harshness: {level}).
Wait for work samples to review. For each sample, provide
structured critique using the format in references/critic-prompts.md"
)
# Step 2: After each significant action, send work to critic
send_input(target=critic_id, message="Review this: [latest output]")
# Step 3: Check critic feedback before finalizing
wait_agent(targets=[critic_id])
Spawn two critics with different models for maximum diversity:
# Critic 1: Fast model, catches obvious issues
spawn_agent(model="gemini-3-flash-preview", message=critic_prompt_fast)
# Critic 2: Reasoning model, catches deep issues
spawn_agent(model="glm-5.1", message=critic_prompt_deep)
The critic always responds with this structure:
## Critique [harshness-level] | [timestamp]
### 🔴 Wrong
- [Things that are factually incorrect, broken, or will fail]
### 🟡 Risky
- [Things that might work but are dangerous or fragile]
### 🟠 Smelly
- [Things that work but are bad practice or over-engineered]
### 🔵 Missing
- [Important things that were overlooked]
### 🟢 Better Way
- [Alternative approaches worth considering]
### Summary
[1-2 sentence overall assessment: sound / concerning / broken]
close_agent(target=critic_id)testing
Use when creating new skills, editing existing skills, or verifying skills work before deployment
development
Use when you have a spec or requirements for a multi-step task, before touching code
data-ai
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
tools
Use when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions