desloplisted
Install: claude install-skill brandhaug/skills
# Deslop
## Quick start
```
/deslop # full codebase
/deslop src/api # directory
/deslop 1234 # PR number (gh)
/deslop feat/new-auth # branch (diff vs default branch)
```
## Workflow
1. **Resolve scope** — turn the argument into a concrete file list:
- Empty → full codebase
- All digits or `#N` → `gh pr view N --json files` → changed files
- Branch name → `git diff --name-only <default>...<branch>`
- Path → use as-is (dir or glob)
2. **Compute excludes** — build an ignore-list and filter the file list through it:
- Every pattern in `.gitignore` and `.git/info/exclude`
- Build output: `dist/`, `build/`, `out/`, `.next/`, `target/`, `__pycache__/`
- Vendored / generated: `node_modules/`, `vendor/`, `.venv/`, `*.generated.*`, `*.gen.go`, `*_pb2.py`, `__snapshots__/`, `*.snap`
- Lockfiles
3. **Size check** — if scope > 500 files (tunable), stop and prompt the user to narrow: by directory, by churn (`git log --since='3 months' --name-only --pretty=format:`), or by largest N files. Agents blow their context on huge scopes — don't push through.
4. **Detect tooling** — read `package.json`, `tsconfig*.json`, `pyproject.toml`, `go.mod`, `Cargo.toml`. Note installed tools (knip, ts-prune, ruff, vulture, staticcheck, clippy). For polyglot repos, bucket files by language; each language gets its own set of 7 agents.
5. **Launch all 7 agents in parallel** — a single message with 7 `Agent` calls, `subagent_type: "general