branch-review-before-pr
Pre-landing diff review against the default branch for structural defects that tests often miss: unsafe queries, race conditions, trust-boundary mistakes, conditional side effects, and similar branch risks. Use as a branch gate before shipping or creating a PR.
What this skill does
<EXTREMELY-IMPORTANT> This skill is review-first and only becomes mutating after explicit user approval. Non-negotiable rules: 1. Read the full diff before reporting any issue. 2. Load and respect `checklist.md`, including suppressions. 3. Stay scoped to the diff against the review base. 4. Stay read-only unless the user explicitly picks "Fix it now" for a blocking issue. 5. Keep findings terse, evidenced, and specific. </EXTREMELY-IMPORTANT> # Branch Review Before PR ## Inputs - `$request`: Optional focus area, branch risk hint, or review scope clarification ## Goal Review the current branch against the default base and: - find structural defects that survive context checks - separate blocking issues from non-blocking issues - ask the user how to handle each blocking issue - optionally apply only the fixes the user explicitly approves ## Step 0: Resolve the review base Determine: - the current branch - the default review base, usually `origin/main` or `origin/master` - whether the user wants full-branch review or a narrower scope If the current branch is already the base branch, or there is no diff, stop and say so clearly. **Success criteria**: There is an explicit diff base and actual branch delta to review. ## Step 1: Load the checklist and diff surface Read: - `checklist.md` - the full diff against the base branch - changed-file list when the diff is large Rules: - do not review from `--stat` alone - do not report checklist items that are suppressed - when the diff is large, read changed files individually with enough surrounding context to verify claims **Success criteria**: The checklist is loaded and every changed file that matters has been read. ## Step 2: Run the two-pass review Pass 1 is blocking-only: - query and data safety - race conditions and concurrency - auth and trust boundaries Pass 2 is non-blocking: - all remaining checklist categories For each candidate issue, verify: - it is actually in scope - it is not already fixed elsewhere in the diff - surrounding code does not already mitigate it **Success criteria**: All meaningful checklist categories were evaluated and false positives were filtered out. ## Step 3: Report all findings Always report the full result set: - blocking issues first - then non-blocking issues - explicit clean result if none were found Use this structure: ```text Branch Review: N issues (X critical, Y informational) CRITICAL (blocking): - [file:line] Problem description Fix: suggested fix Issues (non-blocking): - [file:line] Problem description Fix: suggested fix ``` **Success criteria**: The user can tell immediately whether the branch is blocked and why. ## Step 4: Handle blocking issues one by one For each blocking issue, use a separate `AskUserQuestion` with: - the issue and location - the recommended fix - these options: - `Fix it now` - `Acknowledge` - `False positive` If the user chooses: - `Fix it now`: apply only the approved fix - `Acknowledge`: leave code unchanged and record the acceptance - `False positive`: leave code unchanged and note the dismissal Do not batch multiple blocking issues into one question. **Success criteria**: Each blocking issue has an explicit user decision. ## Step 5: Apply approved fixes only When the user chooses `Fix it now`: - make the smallest correct code change - keep changes scoped to the approved issue - do not commit, push, or create a PR - summarize what changed after the fixes are applied If the user only acknowledges or dismisses issues, make no edits. **Success criteria**: Only explicitly approved fixes were applied. ## When To Load References - `checklist.md` Use for the detailed review matrix, suppressions, and issue categories. ## Guardrails - Do not add `disable-model-invocation`; this skill must remain usable inside PR/ship workflows. - Do not review unchanged files beyond what is needed to verify context. - Do not report style preferences as issues. - Do not fix anything unless the user explicitly approved that issue. - Do not commit, push, or open a PR from this skill. ## Output Contract Report: 1. the review base and branch scope 2. blocking findings 3. non-blocking findings 4. per-blocker user decisions if questions were asked 5. any fixes actually applied
Related in Ads & Marketing
ads
IncludedMulti-platform paid advertising audit and optimization skill. Analyzes Google, Meta, YouTube, LinkedIn, TikTok, Microsoft, and Apple Ads. 250+ checks with scoring, parallel agents, industry templates, and AI creative generation.
banana
IncludedAI image generation Creative Director powered by Google Gemini Nano Banana models. Use this skill for ANY request involving image creation, editing, visual asset production, or creative direction. Triggers on: generate an image, create a photo, edit this picture, design a logo, make a banner, visual for my anything, and all /banana commands. Handles text-to-image, image editing, multi-turn creative sessions, batch workflows, and brand presets.
rpg-migration-analyzer
IncludedAnalyzes legacy RPG (Report Program Generator) programs from AS/400 and IBM i systems for migration to modern Java applications. Extracts business logic from RPG III/IV/ILE source code, identifies data structures (D-specs), file operations (F-specs), program dependencies (CALLB/CALLP), and converts RPG constructs to Java equivalents. Generates migration reports, complexity estimates, and Java implementation strategies with POJO classes, JPA entities, and service methods. Use when modernizing AS/400 or IBM i legacy systems, analyzing RPG source files (.rpg, .rpgle, .RPGLE), converting RPG to Java, mapping data specifications to Java classes, planning legacy system migration, or when user mentions RPG analysis, Report Program Generator, RPG III/IV/ILE, AS/400 modernization, IBM i migration, packed decimal conversion, or mainframe application rewrite.
brand-library-architect
IncludedBuild a complete brand library for a product — visual asset render pipeline, brand documentation set (BRAND, COPY, MANIFESTO, BIOS, FAQ, GLOSSARY, TONE, PRICING), open-source convention files (README, CONTRIBUTING, SECURITY, CODE_OF_CONDUCT), and a self-contained press kit. This skill should be used when the user asks to "build a brand library / brand kit / press kit / brand assets" for a product, "set up a brand library workflow," "create a positioning manifesto plus visual identity," or any combination of brand documentation + visual asset pipeline. Apply phase-by-phase or run end-to-end. Templates are product-agnostic and use {{TOKEN}} placeholders the skill prompts the user to fill.
writing-tech-post
IncludedAuthors engineering blog posts end-to-end: launch deep-dives, incident postmortems, architecture migrations, performance case studies, tutorials, AI/agent system writeups, security disclosures, and research-to-product translations. Picks the correct archetype, plans the abstraction ladder, enforces an evidence cadence (diagrams, benchmarks, profiles, traces, code, ablations), tunes voice against publisher house styles (Datadog, Vercel, GitHub, AWS, Meta, Cloudflare, Jane Street), and runs a pre-publish gate for narrative momentum and disclosure ethics. Use when drafting a new engineering post, restructuring a draft that feels flat, deciding which evidence form belongs where, validating that depth and product context are balanced, or preparing a postmortem, migration, or performance narrative for external publication. Do not use for API reference documentation, README authoring, marketing copy, release notes, generic SEO content, ghost-written executive thought leadership, or non-engineering long-form essays.
blog-google
IncludedGoogle API integration for blog performance: PageSpeed Insights, CrUX Core Web Vitals with 25-week history, Search Console performance, URL Inspection, Indexing API, GA4 organic traffic, NLP entity analysis for E-E-A-T, YouTube video search for embedding, and Google Ads Keyword Planner. Progressive feature availability based on credential tier (API key, OAuth/service account, GA4, Ads). Shares config with claude-seo at ~/.config/claude-seo/google-api.json. Use when user says "google data", "page speed", "core web vitals", "search console", "indexation", "GA4", "keyword research", "nlp entities", "blog performance", "youtube search", "google api setup".