cg-devplan
Generate a structured development plan (devplan) for software projects. Use this skill whenever the user wants to plan a new app,…
Perform deep, findings-first senior engineering code reviews of any change in any language or stack. Use when reviewing a phase, feature branch, pull request, commit, or uncommitted changes for correctness bugs, security and abuse risks, regressions to existing behavior,
How it fires
How this command gets triggered: by you, by Claude, or both.
/cg-senior-code-reviewContext preview
What this command does when you run it.
Perform deep, findings-first senior engineering code reviews of any change in any language or stack. Use when reviewing a phase, feature branch, pull request, commit, or uncommitted changes for correctness bugs, security and abuse risks, regressions to existing behavior,
name: cg-senior-code-review description: Perform deep, findings-first senior engineering code reviews of any change in any language or stack. Use when reviewing a phase, feature branch, pull request, commit, or uncommitted changes for correctness bugs, security and abuse risks, regressions to existing behavior, concurrency and lifecycle defects, performance problems and resource leaks, over-engineering and duplication, and scalability or maintainability erosion. Use especially when the user asks for a detailed review without modifying code.
Perform a rigorous senior-level review. Do not modify code unless the user explicitly asks for fixes.
The goal is not to approve the change or summarize what it does. The goal is to find concrete, well-supported problems before they reach production — and to say clearly when there are none.
Adversarial review is unbounded — a determined reviewer can always find "one more thing" in a real codebase. Without discipline, a review of a small change balloons into an audit of the whole system and stops being useful. Apply these guards:
Review the full behavioral surface the change affects, not only the changed lines.
Before judging the change, learn the conventions it must fit:
Check whether the change **fits the system**, not merely whether it works in isolation. Flag a new pattern introduced alongside an existing one.
Code that looks wrong is often a deliberate fix for a bug that is invisible from the diff, and a change that looks harmless sometimes quietly reverts one. Before judging surprising code, find out how it got that way.
Bound this. Blame the lines in the diff, not the whole file, and only dig when the code is surprising or the change is risky. An obvious change does not need an archaeology pass.
For each important workflow, follow the full path: entry → authentication → authorization → input validation → state change → external effects → success response → failure response → cleanup/expiry/cancellation → retry/recovery.
Reason through every meaningful state, not just the happy path. Typical states (adapt to the domain — these are examples, not a fixed list): not-yet-created, pending, active, failed, cancelled, disconnected, expired, completed, **partial failure mid-operation**, and **process restart**.
Do not accept a
A minimal rule system for Claude Code. Gives Claude the structural discipline it lacks by default — phase tracking, decision logging, honest pushback, debug discipline, language-specific best practices, and reusable skills.
Generate a structured development plan (devplan) for software projects. Use this skill whenever the user wants to plan a new app,…
Deploy an application to a single VPS with reverse proxy, automatic TLS, systemd process supervision, firewall, and basic health…
Set up production observability for indie-scale apps — structured logging, uptime monitoring, error tracking, and basic metrics.…
Build, sign, notarize, and publish a macOS app as a GitHub release with a professional DMG
Set up an open source repository for healthy long-term maintenance — branch protection, commit signing, tag immutability, issue…
Harden an indie-scale production app against common attacks — rate limiting, CORS, security headers, input validation, secrets…