Skip to main content

cleanup-web

End-of-session cleanup pass for TypeScript, React, and web code. Use this skill whenever the user asks to "clean up", "polish", "tidy", "refactor", or "review" web/frontend work at the end of a coding session, or when they invoke this skill by name. Performs a holistic review of files modified during the session — simplification, type safety, React patterns, CSS modernization, and comment hygiene. Make sure to use this skill anytime the user signals they want to wrap up or finalize TypeScript/React/web work, even if they don't explicitly say "cleanup". Do NOT use for one-off edits, bug fixes, or active feature work.

Ir a la instalación

Datos de origen

Repositorio
caidanw/skills
Última actividad en el origen
25 de junio de 2026 a las 23:41
Idioma detectado de SKILL.md
inglés
Estrellas
8
Forks
1

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
cleanup-web
description
End-of-session cleanup pass for TypeScript, React, and web code. Use this skill whenever the user asks to "clean up", "polish", "tidy", "refactor", or "review" web/frontend work at the end of a coding session, or when they invoke this skill by name. Performs a holistic review of files modified during the session — simplification, type safety, React patterns, CSS modernization, and comment hygiene. Make sure to use this skill anytime the user signals they want to wrap up or finalize TypeScript/React/web work, even if they don't explicitly say "cleanup". Do NOT use for one-off edits, bug fixes, or active feature work.
Evaluate the work done in this session and refactor it to a pristine state. ## Disposition - **Propose, don't apply.** Surface proposed changes with clear reasoning and evidence — show before/after, name the principle that motivates the change, and wait for approval before any edits land. - **No changes is a valid outcome.** If the code is already clean, say so and stop. Do not invent work to justify the pass. ## Scope Operate only on files modified during this session. Use `git status`, `git diff`, your task log, or recent tool calls to identify them. Do not touch unrelated code. If you can't identify the session's modified files with confidence, stop and ask. ## Review skills Each skill below represents a review lens. Every lens gets its own sub-agent. | Lens | Skill | Focus | |------|-------|-------| | Simplification | `simplify` | Dead code, needless abstractions, unused params, over-engineered utilities, and helpers whose names do not add meaning. Do not inline single-use helpers that clarify call sites or hide non-trivial conditions. | | TypeScript | `typescript` | Type soundness, pragmatic generics, discriminated unions over type assertions, `unknown` over `any` | | Type-driven design | `parse-dont-validate` | Push checks into types; make invalid states unrepresentable; branded types where warranted | | React effects | `no-use-effect` | Derived state over effects, event handlers over sync effects, `key`-resets over effect-driven resets, `useSyncExternalStore` over manual subscriptions | | React performance | `vercel-react-best-practices` | Component boundaries, `use client` / `use server` placement, data fetching patterns, bundle impact, memoization | | CSS | `modern-css` | Native CSS over JS workarounds, logical properties, container queries, modern selectors, no legacy hacks | | Comment hygiene | `code-comments` | Strip "what" comments and AI narration; keep "why" comments only | | Correctness | `adversarial-review` | Behavior changes, dropped guards or edge cases, async/effect timing, server/client boundary, stale callers — bugs the session introduced | ## Approach Dispatch one sub-agent per review lens, all in parallel. Each sub-agent: 1. **Loads its skill** via the Skill tool — this is required before any review work 2. **Reads the diff** — use `git diff` (and `git diff --cached` if needed) to get the session's changes 3. **Reviews only through its own lens** — do not duplicate another lens's concerns 4. **Returns structured findings** — for each finding: file + location, the proposed change with before/after, the principle behind it, and the trade-off if any. If nothing warrants changing for this lens, say so and return empty findings. Sub-agent prompt template (adapt the lens name and skill name per row): > You are reviewing TypeScript/React/web code changes from this session through the **{lens}** lens. > > First, load the `{skill}` skill using the Skill tool — read it fully before reviewing. > > Then run `git diff` to see what changed. Review those changes exclusively through your lens. > > For each finding, return: file path + line range, proposed change (before/after), the principle motivating it, and any trade-off. If nothing needs changing for your lens, say so plainly. > > Do not apply changes. Propose only. After all sub-agents return, **aggregate** their findings: ## Output Present the aggregated review as a single batch: - Files reviewed (union of all sub-agent scopes) - Proposed changes, grouped by file, each tagged with its lens and including before/after and reasoning - Conflicts between lenses (e.g., one lens wants to add abstraction, another wants to simplify) — flag these for the user to decide - Anything a sub-agent considered but rejected, with reasoning - If no sub-agent found anything worth changing, say so plainly and stop Wait for the user to approve before applying any edits.
Ver en GitHub