Help us improve
Share bugs, ideas, or general feedback.
From sweeper
Orchestrates sweeper CLI to dispatch parallel AI sub-agents for lint fixes, test repairs, migrations, refactoring, and code improvements. Supports VM isolation, tapes learning, Claude/OpenAI/Ollama.
npx claudepluginhub pcc-labs/sweeper --plugin sweeperHow this skill is triggered — by the user, by Claude, or both
Slash command
/sweeper:sweeperThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You orchestrate the **sweeper** CLI to run parallel AI sub-agents against a codebase with optional VM isolation and swappable providers (Claude, Codex, Ollama/local models). While lint fixing is the default, the same loop handles test repairs, dependency migrations, refactoring, and any task where you can run a command, parse issues, and dispatch agents to fix them. Tapes records every sub-agen...
Provides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.
Share bugs, ideas, or general feedback.
You orchestrate the sweeper CLI to run parallel AI sub-agents against a codebase with optional VM isolation and swappable providers (Claude, Codex, Ollama/local models). While lint fixing is the default, the same loop handles test repairs, dependency migrations, refactoring, and any task where you can run a command, parse issues, and dispatch agents to fix them. Tapes records every sub-agent session, enabling you to learn from past runs and optimize token spend.
The sweeper binary must be in PATH. Build it if needed:
cd /path/to/sweeper && go build -o sweeper . && export PATH="$PWD:$PATH"
If no sweeper.md exists in the working directory, gather this information:
.)golangci-lint run --out-format=line-number ./...)3)3)Then create a session document:
sweeper.md - Living Session Document# Sweeper Session
**Started:** <ISO timestamp>
**Objective:** Fix all lint issues in `<target>`
**Linter:** `<command>`
**Concurrency:** <n> sub-agents
**Max rounds:** <n>
**VM:** <yes/no>
**Constraints:** <constraints>
## Status
- Round: 0
- Issues found: (pending first run)
- Issues fixed: 0
- Token spend: (pending — check tapes after first run)
## What's Been Tried
(Updated after each round)
## Token Budget
(Updated via `sweeper observe` after each run)
Commit on a new branch: sweeper/<goal>-<date>
Use the CLI to orchestrate the full loop. The CLI handles linting, parsing, parallel sub-agent dispatch, retry escalation, telemetry, and tapes integration.
# Default: golangci-lint with claude (default provider)
sweeper run
# Custom linter
sweeper run -- npm run lint
# Multi-round with escalation
sweeper run --max-rounds 3
# High concurrency in VM isolation
sweeper run --vm -c 5 --max-rounds 3 -- npx eslint --quiet .
# Preview what would be fixed
sweeper run --dry-run
# Use OpenAI Codex CLI instead of Claude
sweeper run --provider codex -- npm run lint
# Use a local Ollama model (no API key needed)
sweeper run --provider ollama --model qwen2.5-coder:7b
# Ollama with custom API base
sweeper run --provider ollama --model codellama --api-base http://gpu-server:11434
Available providers: claude (default, CLI), codex (CLI), ollama (API). CLI providers have built-in file tools. API providers include file content in the prompt and apply returned diffs. VM isolation (--vm) only works with CLI providers.
# Ephemeral VM — boots before sweep, tears down after
sweeper run --vm -- npx eslint --quiet .
# Reuse existing VM
sweeper run --vm-name my-vm -- cargo clippy 2>&1
Use --vm when:
Each sweeper run executes this loop:
standard — straightforward fixretry — different approachexploration — refactor surrounding code--concurrency).sweeper/telemetry/ JSONL + tapes captures token usageTapes is the backbone for self-learning. Every sub-agent session is recorded in tapes, giving you token usage, session transcripts, and outcome data.
sweeper observe
This shows:
Before starting a sweep, check historical performance:
sweeper observe --target /path/to/project
Use the insights to tune your run:
--max-rounds 1 saves tokens--stale-threshold to skip stagnant files fasterAfter each run, update sweeper.md with token spend from tapes:
## Token Budget
- Run 1: 45,230 prompt + 12,100 completion = 57,330 total
- Run 2: 31,000 prompt + 8,200 completion = 39,200 total (31% reduction)
- Trend: improving — retry prompts getting more targeted
The goal is to fix more issues with fewer tokens over time. Tapes makes this measurable.
If sweeper.md already exists when you start:
sweeper observe to check recent success patterns--max-rounds and --concurrency based on tapes insightsAfter each sweeper run completes, update the session document:
sweeper observe and record token spendsweeper.md