with one click
self-review
Reviews code quality before staging. Triggers ONLY when: implementation of a feature or fix is complete and code is ready to stage. Do NOT trigger after every small edit — only when a logical unit of work is done.
Menu
Reviews code quality before staging. Triggers ONLY when: implementation of a feature or fix is complete and code is ready to stage. Do NOT trigger after every small edit — only when a logical unit of work is done.
| name | self-review |
| description | Reviews code quality before staging. Triggers ONLY when: implementation of a feature or fix is complete and code is ready to stage. Do NOT trigger after every small edit — only when a logical unit of work is done. |
When this triggers: implementation complete, code written/modified, about to git add, or sub-agent returns code changes.
Non-negotiable: Never skip. Never assume correctness. Every line could contain a bug.
Before reviewing code quality, verify the process was followed:
pre-code invoked (via Skill tool) before implementation started?dev?Run git diff and git diff --staged — read EVERY line.
await, shared mutable state, async operations that assume orderingcatch {}, .catch(() => {}), ignored rejections — every error must be logged or re-thrownany in TypeScript unless truly unavoidable, no overly broad typesexec(), eval(), child_process, or shell commandsgit diff --stat — are ALL changed files within the scope identified in pre-code?If ANY issue was found and fixed during this self-review, extract a REUSABLE PRINCIPLE — not a log entry.
Process:
memory/principles.md — does a similar principle already exist? If yes → strengthen the wording. If no → add it.memory/principles.md:
- [Category] [Universal principle]- [Auth] Any third-party auth integration must verify redirect URLs for ALL deployment environments in pre-code scope- [Testing] Never trust "build passes" — run the full user journey manually or with Playwright after every deploy- [2026-04-05] Forgot OAuth redirect for staging (this is an event log, not a principle)- Fixed the Supabase Site URL issue (this is project-specific, not reusable)retro skill, review memory/principles.md. Remove principles that haven't been relevant in 3+ months. Merge overlapping principles.The goal: memory/principles.md is a CONCISE list of 10-30 universal principles that improve every future project — not a growing log of past incidents.
If ANY issue was found:
When clean, report:
If uncertain about correctness:
Report to user: "Self-review [PASSED/FAILED]. Issues found: [N]. Fixed: [N]. Remaining: [N]"
Suggested next steps (user decides):
Evaluates business viability for a new product idea. Triggers ONLY when: the user asks to evaluate a business idea, asks what product to build, or says to run biz-think. Do NOT trigger when: discussing business concepts in passing, talking about existing product improvements, or during development work.
Prints the complete SOP flowchart. Triggers when: user asks to see the SOP, asks 'where are we?', asks 'what's next?', or says '/sop'. Always available.
Runs iterative hypothesis validation loop. Triggers ONLY when: biz-think acid test fails, user explicitly asks to validate a business assumption, or user says to pivot. Do NOT trigger when: discussing business strategy casually or during product development.
Develops brand positioning and Build in Public strategy. Triggers ONLY when: user asks to define brand, plan Build in Public content, or establish positioning. Do NOT trigger during development or content creation for specific pieces.
Manages community presence and engagement strategy. Triggers ONLY when: user asks to find communities, plan community engagement, or draft community responses. Do NOT trigger when: creating content (use content-create) or distributing content (use content-distribute).
Creates VALUE content: blog posts, tutorials, articles, educational material, onboarding/lifecycle emails. Goal = build trust and attract audience. Triggers ONLY when: user asks to create content, write an article, or prepare educational material. Do NOT trigger when: writing code documentation, README files, landing page copy, or ad copy.