Skip to content
Agentmart
Submit a tool

floop

Iteratively review-and-resolve the current changes using parallel subagent reviewers across multiple lenses (bugs, quality, completion), looping until every…

Skill by kirinnee

IndexedMIT★ 4
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/kirinnee-floop

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Iteratively review-and-resolve the current changes using parallel subagent reviewers across multiple lenses (bugs, quality, completion), looping until every reviewer is satisfied. Use when running /floop, or when asked to deeply review and harden a diff until all critiques are addressed.

Use cases: agent-building

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 26, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/floop

What's inside

Skill name
floop
Description
Iteratively review-and-resolve the current changes using parallel subagent reviewers across multiple lenses (bugs, quality, completion), looping until every reviewer is satisfied. Use when running /floop, or when asked to deeply review and harden a diff until all critiques are addressed.
License
MIT
Instructions
174 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Floop — Feedback Loop Review

Drive the current changes to a clean bill of health by repeatedly:

1. Spawning **parallel subagent reviewers**, each looking through a different **lens**.
2. Having the **main agent resolve** every actionable finding (edit the code).
3. Spawning **fresh reviewers** on the updated changes.

Repeat until **all reviewers are happy** (no actionable findings) or the round cap is hit.

The main agent (you) is the orchestrator. Reviewers only review — they never edit. You own all the fixes.

## When to Use

- Running `/floop`
- "Review my changes and keep fixing until it's clean"
- Hardening a diff before opening a PR
- Any review-resolve-rereview loop on the working tree or a branch diff

## Core Loop

```
┌─> spawn N reviewers (parallel, read-only, one per lens)
│      │
│      ▼
│   collect findings
│      │
│      ├─ all reviewers happy? ──> DONE ✅
│      │
│      ▼ (findings exist)
│   main agent resolves each actionable finding (edits code)
│      │
└──────┘  loop with fresh reviewers on the updated diff
```

## Step 0: Parse Arguments & Scope

The user invokes: `/floop [scope] [--max-rounds N]`

- **scope** (optional): what to review and against what. Examples: `vs main`, `the working tree`, `"the kautopilot inversion changes"`. Default: **uncommitted working-tree changes** (staged + unstaged).
- **--max-rounds N** (optional): hard cap on iterations. Default: **5**.

Determine the diff to review:

```bash
# Always: surface untracked (new) files first — they're in scope too
git status --porcelain

# Default: working tree vs HEAD
git diff HEAD

# If scope names a base branch (e.g. "vs main"):
git diff main...HEAD
```

**Untracked files are part of the scope.** `git diff HEAD` never shows them, so either
`git add -N <path>` each one (makes them appear in the diff) or list them explicitly in
the reviewer prompts so reviewers read them directly.

State the scope and base back to the user in one line before starting.

## Step 1: Define the Lenses

Spawn **one reviewer per lens**, in parallel. The three default lenses:

| Lens           | Reviewer's job                                                                                                                            |
| -------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| **Bugs**       | Correctness: logic errors, edge cases, race conditions, null/None, off-by-one, broken error handling, regressions, security holes.        |
| **Quality**    | Readability, naming, structure, duplication, dead code, missing tests, style consistency with the surrounding code, over-engineering.     |
| **Completion** | Does the change actually fulfil its stated intent? Missing pieces, half-done TODOs, unhandled cases, docs/config not updated, loose ends. |

If the user's scope implies extra concerns (e.g. "perf", "API compat"), add a lens for it. Keep it to 3–5 lenses.

## Step 2: Spawn Reviewers (one round)

**Spawning a fresh-context reviewer — harness-specific:**

- **Claude Code:** spawn all lens reviewers **in a single message** (parallel) using the `Agent` tool with `subagent_type: "Explore"` (read-only — reviewers must not edit).
- **Codex:** spawn one **subagent per lens via explicit delegation** (codex's native subagents — say which agents to spawn, how to split the work, and the output shape); codex fans them out in parallel and collects results. Equivalently, run one **`codex exec "<reviewer prompt>"`** subprocess per lens as parallel background jobs (`… &` then `wait`). Either is a fresh read-only context = the codex analog of an Explore subagent.

Either way, each reviewer gets the same prompt + strict output contract below, and only the orchestrator (you) edits.

Each reviewer prompt must include:

- The **scope** and how to get the diff (the exact `git diff` command).
- The **lens** and exactly what to look for (from the table above).
- This **strict output contract** so you can parse "happy vs not":

```
You are the {LENS} reviewer for a change under review.

SCOPE: {scope description}
Get the diff with: {exact git diff command}
Read surrounding files as needed for context. You are READ-ONLY — do not edit anything.

REVIEW THROUGH THE {LENS} LENS ONLY:
{lens-specific instructions}

Report ONLY real, actionable problems. Do not invent nitpicks to seem thorough.
If the change is clean through your lens, say so.

OUTPUT FORMAT (exactly this):
VERDICT: PASS   (if no actionable findings)
   or
VERDICT: CHANGES_REQUESTED
FINDINGS:
1. [severity: high|med|low] file:line — problem — suggested fix
2. ...
```

## Step 3: Collect & Decide

Gather every reviewer's verdict.

- **All `PASS`** → the loop is done. Go to Step 5.
- **Any `CHANGES_REQUESTED`** → collect all findings, de-duplicate overlapping ones across lenses, and continue to Step 4.

Show the user a tight round summary: round number, each lens's verdict, and the count of findings.

From kirinnee/home-manager, MIT.

More from kirinnee/home-manager

Signals

Stars
4
Forks
0
Open issues
0
Last commit (this folder)
Oct 20, 2026 (8 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from kirinnee

Cite this page

floop skill. Agent Mart. https://agentmart.dev/skills/kirinnee-floop (last updated 2026-10-24)