From 53eefc9a20e2d93bbae44aaa49d7c35b3412f47f Mon Sep 17 00:00:00 2001 From: Garry Tan Date: Sun, 22 Mar 2026 22:53:47 -0700 Subject: [PATCH] chore: regenerate SKILL.md (Claude + Codex) after wave 3 merges Regenerated from merged templates + auto-trigger fix. All generated files now include explicit trigger criteria. Co-Authored-By: Claude Opus 4.6 (1M context) --- SKILL.md | 4 +++- autoplan/SKILL.md | 4 +++- benchmark/SKILL.md | 4 +++- browse/SKILL.md | 2 ++ canary/SKILL.md | 4 +++- careful/SKILL.md | 2 ++ codex/SKILL.md | 2 ++ cso/SKILL.md | 4 +++- design-consultation/SKILL.md | 2 ++ design-review/SKILL.md | 2 ++ document-release/SKILL.md | 2 ++ freeze/SKILL.md | 2 ++ gstack-upgrade/SKILL.md | 2 ++ guard/SKILL.md | 2 ++ investigate/SKILL.md | 2 ++ land-and-deploy/SKILL.md | 4 +++- office-hours/SKILL.md | 14 +++++++++++++- plan-ceo-review/SKILL.md | 2 ++ plan-design-review/SKILL.md | 2 ++ plan-eng-review/SKILL.md | 9 +++++++++ qa-only/SKILL.md | 2 ++ qa/SKILL.md | 2 ++ retro/SKILL.md | 2 ++ review/SKILL.md | 2 ++ setup-browser-cookies/SKILL.md | 2 ++ setup-deploy/SKILL.md | 4 +++- ship/SKILL.md | 29 +++++++++++++++++++++++++++++ unfreeze/SKILL.md | 2 ++ 28 files changed, 108 insertions(+), 8 deletions(-) diff --git a/SKILL.md b/SKILL.md index 526004d0..ad1abb98 100644 --- a/SKILL.md +++ b/SKILL.md @@ -2,6 +2,8 @@ name: gstack version: 1.1.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /gstack in their message. + Do not auto-trigger this skill from semantic similarity alone. Fast headless browser for QA testing and site dogfooding. Navigate pages, interact with elements, verify state, diff before/after, take annotated screenshots, test responsive layouts, forms, uploads, dialogs, and capture bug evidence. Use when asked to open or @@ -590,7 +592,7 @@ Refs are invalidated on navigation — run `snapshot` again after `goto`. | `click ` | Click element | | `cookie =` | Set cookie on current page domain | | `cookie-import ` | Import cookies from JSON file | -| `cookie-import-browser [browser] [--domain d]` | Import cookies from Comet, Chrome, Arc, Brave, or Edge (opens picker, or use --domain for direct import) | +| `cookie-import-browser [browser] [--domain d]` | Import cookies from installed Chromium browsers (opens picker, or use --domain for direct import) | | `dialog-accept [text]` | Auto-accept next alert/confirm/prompt. Optional text is sent as the prompt response | | `dialog-dismiss` | Auto-dismiss next dialog | | `fill ` | Fill input | diff --git a/autoplan/SKILL.md b/autoplan/SKILL.md index 7dcb9d17..c03bd26d 100644 --- a/autoplan/SKILL.md +++ b/autoplan/SKILL.md @@ -2,6 +2,8 @@ name: autoplan version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /autoplan in their message. + Do not auto-trigger this skill from semantic similarity alone. Auto-review pipeline — reads the full CEO, design, and eng review skills from disk and runs them sequentially with auto-decisions using 6 decision principles. Surfaces taste decisions (close approaches, borderline scope, codex disagreements) at a final @@ -51,7 +53,7 @@ echo "TELEMETRY: ${_TEL:-off}" echo "TEL_PROMPTED: $_TEL_PROMPTED" mkdir -p ~/.gstack/analytics echo '{"skill":"autoplan","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true -for _PF in ~/.gstack/analytics/.pending-*; do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done +for _PF in $(ls ~/.gstack/analytics/.pending-* 2>/dev/null); do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done ``` If `PROACTIVE` is `"false"`, do not proactively suggest gstack skills — only invoke diff --git a/benchmark/SKILL.md b/benchmark/SKILL.md index 9e1a6bc3..a7f0c7f6 100644 --- a/benchmark/SKILL.md +++ b/benchmark/SKILL.md @@ -2,6 +2,8 @@ name: benchmark version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /benchmark in their message. + Do not auto-trigger this skill from semantic similarity alone. Performance regression detection using the browse daemon. Establishes baselines for page load times, Core Web Vitals, and resource sizes. Compares before/after on every PR. Tracks performance trends over time. @@ -44,7 +46,7 @@ echo "TELEMETRY: ${_TEL:-off}" echo "TEL_PROMPTED: $_TEL_PROMPTED" mkdir -p ~/.gstack/analytics echo '{"skill":"benchmark","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true -for _PF in ~/.gstack/analytics/.pending-*; do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done +for _PF in $(ls ~/.gstack/analytics/.pending-* 2>/dev/null); do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done ``` If `PROACTIVE` is `"false"`, do not proactively suggest gstack skills — only invoke diff --git a/browse/SKILL.md b/browse/SKILL.md index f3ab9572..ca7db3e9 100644 --- a/browse/SKILL.md +++ b/browse/SKILL.md @@ -2,6 +2,8 @@ name: browse version: 1.1.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /browse in their message. + Do not auto-trigger this skill from semantic similarity alone. Fast headless browser for QA testing and site dogfooding. Navigate any URL, interact with elements, verify page state, diff before/after actions, take annotated screenshots, check responsive layouts, test forms and uploads, handle dialogs, and assert element states. diff --git a/canary/SKILL.md b/canary/SKILL.md index 2b2bb403..9fa166de 100644 --- a/canary/SKILL.md +++ b/canary/SKILL.md @@ -2,6 +2,8 @@ name: canary version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /canary in their message. + Do not auto-trigger this skill from semantic similarity alone. Post-deploy canary monitoring. Watches the live app for console errors, performance regressions, and page failures using the browse daemon. Takes periodic screenshots, compares against pre-deploy baselines, and alerts @@ -44,7 +46,7 @@ echo "TELEMETRY: ${_TEL:-off}" echo "TEL_PROMPTED: $_TEL_PROMPTED" mkdir -p ~/.gstack/analytics echo '{"skill":"canary","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true -for _PF in ~/.gstack/analytics/.pending-*; do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done +for _PF in $(ls ~/.gstack/analytics/.pending-* 2>/dev/null); do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done ``` If `PROACTIVE` is `"false"`, do not proactively suggest gstack skills — only invoke diff --git a/careful/SKILL.md b/careful/SKILL.md index 7513b293..b5442fdc 100644 --- a/careful/SKILL.md +++ b/careful/SKILL.md @@ -2,6 +2,8 @@ name: careful version: 0.1.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /careful in their message. + Do not auto-trigger this skill from semantic similarity alone. Safety guardrails for destructive commands. Warns before rm -rf, DROP TABLE, force-push, git reset --hard, kubectl delete, and similar destructive operations. User can override each warning. Use when touching prod, debugging live systems, diff --git a/codex/SKILL.md b/codex/SKILL.md index 647253c5..e8a011f7 100644 --- a/codex/SKILL.md +++ b/codex/SKILL.md @@ -2,6 +2,8 @@ name: codex version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /codex in their message. + Do not auto-trigger this skill from semantic similarity alone. OpenAI Codex CLI wrapper — three modes. Code review: independent diff review via codex review with pass/fail gate. Challenge: adversarial mode that tries to break your code. Consult: ask codex anything with session continuity for follow-ups. diff --git a/cso/SKILL.md b/cso/SKILL.md index 741a8f8f..195c6b15 100644 --- a/cso/SKILL.md +++ b/cso/SKILL.md @@ -2,6 +2,8 @@ name: cso version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /cso in their message. + Do not auto-trigger this skill from semantic similarity alone. Chief Security Officer mode. Performs OWASP Top 10 audit, STRIDE threat modeling, attack surface analysis, auth flow verification, secret detection, dependency CVE scanning, supply chain risk assessment, and data classification review. @@ -44,7 +46,7 @@ echo "TELEMETRY: ${_TEL:-off}" echo "TEL_PROMPTED: $_TEL_PROMPTED" mkdir -p ~/.gstack/analytics echo '{"skill":"cso","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true -for _PF in ~/.gstack/analytics/.pending-*; do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done +for _PF in $(ls ~/.gstack/analytics/.pending-* 2>/dev/null); do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done ``` If `PROACTIVE` is `"false"`, do not proactively suggest gstack skills — only invoke diff --git a/design-consultation/SKILL.md b/design-consultation/SKILL.md index 65aeffc6..f8057028 100644 --- a/design-consultation/SKILL.md +++ b/design-consultation/SKILL.md @@ -2,6 +2,8 @@ name: design-consultation version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /design-consultation in their message. + Do not auto-trigger this skill from semantic similarity alone. Design consultation: understands your product, researches the landscape, proposes a complete design system (aesthetic, typography, color, layout, spacing, motion), and generates font+color preview pages. Creates DESIGN.md as your project's design source diff --git a/design-review/SKILL.md b/design-review/SKILL.md index 6fa38a98..fa8a3a46 100644 --- a/design-review/SKILL.md +++ b/design-review/SKILL.md @@ -2,6 +2,8 @@ name: design-review version: 2.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /design-review in their message. + Do not auto-trigger this skill from semantic similarity alone. Designer's eye QA: finds visual inconsistency, spacing issues, hierarchy problems, AI slop patterns, and slow interactions — then fixes them. Iteratively fixes issues in source code, committing each fix atomically and re-verifying with before/after diff --git a/document-release/SKILL.md b/document-release/SKILL.md index 89b57ed6..4cdfe977 100644 --- a/document-release/SKILL.md +++ b/document-release/SKILL.md @@ -2,6 +2,8 @@ name: document-release version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /document-release in their message. + Do not auto-trigger this skill from semantic similarity alone. Post-ship documentation update. Reads all project docs, cross-references the diff, updates README/ARCHITECTURE/CONTRIBUTING/CLAUDE.md to match what shipped, polishes CHANGELOG voice, cleans up TODOS, and optionally bumps VERSION. Use when diff --git a/freeze/SKILL.md b/freeze/SKILL.md index 00aaef61..1a49816b 100644 --- a/freeze/SKILL.md +++ b/freeze/SKILL.md @@ -2,6 +2,8 @@ name: freeze version: 0.1.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /freeze in their message. + Do not auto-trigger this skill from semantic similarity alone. Restrict file edits to a specific directory for the session. Blocks Edit and Write outside the allowed path. Use when debugging to prevent accidentally "fixing" unrelated code, or when you want to scope changes to one module. diff --git a/gstack-upgrade/SKILL.md b/gstack-upgrade/SKILL.md index f97f11fb..4bf1b6db 100644 --- a/gstack-upgrade/SKILL.md +++ b/gstack-upgrade/SKILL.md @@ -2,6 +2,8 @@ name: gstack-upgrade version: 1.1.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /gstack-upgrade in their message. + Do not auto-trigger this skill from semantic similarity alone. Upgrade gstack to the latest version. Detects global vs vendored install, runs the upgrade, and shows what's new. Use when asked to "upgrade gstack", "update gstack", or "get latest version". diff --git a/guard/SKILL.md b/guard/SKILL.md index f846d38a..ce038a87 100644 --- a/guard/SKILL.md +++ b/guard/SKILL.md @@ -2,6 +2,8 @@ name: guard version: 0.1.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /guard in their message. + Do not auto-trigger this skill from semantic similarity alone. Full safety mode: destructive command warnings + directory-scoped edits. Combines /careful (warns before rm -rf, DROP TABLE, force-push, etc.) with /freeze (blocks edits outside a specified directory). Use for maximum safety diff --git a/investigate/SKILL.md b/investigate/SKILL.md index da15c846..c54e7be4 100644 --- a/investigate/SKILL.md +++ b/investigate/SKILL.md @@ -2,6 +2,8 @@ name: investigate version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /investigate in their message. + Do not auto-trigger this skill from semantic similarity alone. Systematic debugging with root cause investigation. Four phases: investigate, analyze, hypothesize, implement. Iron Law: no fixes without root cause. Use when asked to "debug this", "fix this bug", "why is this broken", diff --git a/land-and-deploy/SKILL.md b/land-and-deploy/SKILL.md index c89e2de0..456bd784 100644 --- a/land-and-deploy/SKILL.md +++ b/land-and-deploy/SKILL.md @@ -2,6 +2,8 @@ name: land-and-deploy version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /land-and-deploy in their message. + Do not auto-trigger this skill from semantic similarity alone. Land and deploy workflow. Merges the PR, waits for CI and deploy, verifies production health via canary checks. Takes over after /ship creates the PR. Use when: "merge", "land", "deploy", "merge and verify", @@ -43,7 +45,7 @@ echo "TELEMETRY: ${_TEL:-off}" echo "TEL_PROMPTED: $_TEL_PROMPTED" mkdir -p ~/.gstack/analytics echo '{"skill":"land-and-deploy","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true -for _PF in ~/.gstack/analytics/.pending-*; do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done +for _PF in $(ls ~/.gstack/analytics/.pending-* 2>/dev/null); do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done ``` If `PROACTIVE` is `"false"`, do not proactively suggest gstack skills — only invoke diff --git a/office-hours/SKILL.md b/office-hours/SKILL.md index 2ad59439..acb5b5ef 100644 --- a/office-hours/SKILL.md +++ b/office-hours/SKILL.md @@ -2,6 +2,8 @@ name: office-hours version: 2.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /office-hours in their message. + Do not auto-trigger this skill from semantic similarity alone. YC Office Hours — two modes. Startup mode: six forcing questions that expose demand reality, status quo, desperate specificity, narrowest wedge, observation, and future-fit. Builder mode: design thinking brainstorming for side projects, @@ -626,7 +628,8 @@ Before proposing solutions, challenge the premises: 1. **Is this the right problem?** Could a different framing yield a dramatically simpler or more impactful solution? 2. **What happens if we do nothing?** Real pain point or hypothetical one? 3. **What existing code already partially solves this?** Map existing patterns, utilities, and flows that could be reused. -4. **Startup mode only:** Synthesize the diagnostic evidence from Phase 2A. Does it support this direction? Where are the gaps? +4. **If the deliverable is a new artifact** (CLI binary, library, package, container image, mobile app): **how will users get it?** Code without distribution is code nobody can use. The design must include a distribution channel (GitHub Releases, package manager, container registry, app store) and CI/CD pipeline — or explicitly defer it. +5. **Startup mode only:** Synthesize the diagnostic evidence from Phase 2A. Does it support this direction? Where are the gaps? Output premises as clear statements the user must agree with before proceeding: ``` @@ -931,6 +934,11 @@ Supersedes: {prior filename — omit this line if first design on this branch} ## Success Criteria {measurable criteria from Phase 2A} +## Distribution Plan +{how users get the deliverable — binary download, package manager, container image, web service, etc.} +{CI/CD pipeline for building and publishing — GitHub Actions, manual release, auto-deploy on merge?} +{omit this section if the deliverable is a web service with existing deployment pipeline} + ## Dependencies {blockers, prerequisites, related work} @@ -983,6 +991,10 @@ Supersedes: {prior filename — omit this line if first design on this branch} ## Success Criteria {what "done" looks like} +## Distribution Plan +{how users get the deliverable — binary download, package manager, container image, web service, etc.} +{CI/CD pipeline for building and publishing — or "existing deployment pipeline covers this"} + ## Next Steps {concrete build tasks — what to implement first, second, third} diff --git a/plan-ceo-review/SKILL.md b/plan-ceo-review/SKILL.md index 472bdfbd..c359cfef 100644 --- a/plan-ceo-review/SKILL.md +++ b/plan-ceo-review/SKILL.md @@ -2,6 +2,8 @@ name: plan-ceo-review version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /plan-ceo-review in their message. + Do not auto-trigger this skill from semantic similarity alone. CEO/founder-mode plan review. Rethink the problem, find the 10-star product, challenge premises, expand scope when it creates a better product. Four modes: SCOPE EXPANSION (dream big), SELECTIVE EXPANSION (hold scope + cherry-pick diff --git a/plan-design-review/SKILL.md b/plan-design-review/SKILL.md index 299613e3..14ebac63 100644 --- a/plan-design-review/SKILL.md +++ b/plan-design-review/SKILL.md @@ -2,6 +2,8 @@ name: plan-design-review version: 2.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /plan-design-review in their message. + Do not auto-trigger this skill from semantic similarity alone. Designer's eye plan review — interactive, like CEO and Eng review. Rates each design dimension 0-10, explains what would make it a 10, then fixes the plan to get there. Works in plan mode. For live site diff --git a/plan-eng-review/SKILL.md b/plan-eng-review/SKILL.md index 0c5ad277..d42a2cbd 100644 --- a/plan-eng-review/SKILL.md +++ b/plan-eng-review/SKILL.md @@ -2,6 +2,8 @@ name: plan-eng-review version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /plan-eng-review in their message. + Do not auto-trigger this skill from semantic similarity alone. Eng manager-mode plan review. Lock in the execution plan — architecture, data flow, diagrams, edge cases, test coverage, performance. Walks through issues interactively with opinionated recommendations. Use when asked to @@ -418,6 +420,12 @@ Before reviewing anything, answer these questions: 5. **Completeness check:** Is the plan doing the complete version or a shortcut? With AI-assisted coding, the cost of completeness (100% test coverage, full edge case handling, complete error paths) is 10-100x cheaper than with a human team. If the plan proposes a shortcut that saves human-hours but only saves minutes with CC+gstack, recommend the complete version. Boil the lake. +6. **Distribution check:** If the plan introduces a new artifact type (CLI binary, library package, container image, mobile app), does it include the build/publish pipeline? Code without distribution is code nobody can use. Check: + - Is there a CI/CD workflow for building and publishing the artifact? + - Are target platforms defined (linux/darwin/windows, amd64/arm64)? + - How will users download or install it (GitHub Releases, package manager, container registry)? + If the plan defers distribution, flag it explicitly in the "NOT in scope" section — don't let it silently drop. + If the complexity check triggers (8+ files or 2+ new classes/services), proactively recommend scope reduction via AskUserQuestion — explain what's overbuilt, propose a minimal version that achieves the core goal, and ask whether to reduce or proceed as-is. If the complexity check does not trigger, present your Step 0 findings and proceed directly to Section 1. Always work through the full interactive review: one section at a time (Architecture → Code Quality → Tests → Performance) with at most 8 top issues per section. @@ -435,6 +443,7 @@ Evaluate: * Security architecture (auth, data access, API boundaries). * Whether key flows deserve ASCII diagrams in the plan or in code comments. * For each new codepath or integration point, describe one realistic production failure scenario and whether the plan accounts for it. +* **Distribution architecture:** If this introduces a new artifact (binary, package, container), how does it get built, published, and updated? Is the CI/CD pipeline part of the plan or deferred? **STOP.** For each issue found in this section, call AskUserQuestion individually. One issue per call. Present options, state your recommendation, explain WHY. Do NOT batch multiple issues into one AskUserQuestion. Only proceed to the next section after ALL issues in this section are resolved. diff --git a/qa-only/SKILL.md b/qa-only/SKILL.md index 1e30c525..9276e25c 100644 --- a/qa-only/SKILL.md +++ b/qa-only/SKILL.md @@ -2,6 +2,8 @@ name: qa-only version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /qa-only in their message. + Do not auto-trigger this skill from semantic similarity alone. Report-only QA testing. Systematically tests a web application and produces a structured report with health score, screenshots, and repro steps — but never fixes anything. Use when asked to "just report bugs", "qa report only", or diff --git a/qa/SKILL.md b/qa/SKILL.md index 49eaace8..c1eef63f 100644 --- a/qa/SKILL.md +++ b/qa/SKILL.md @@ -2,6 +2,8 @@ name: qa version: 2.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /qa in their message. + Do not auto-trigger this skill from semantic similarity alone. Systematically QA test a web application and fix bugs found. Runs QA testing, then iteratively fixes bugs in source code, committing each fix atomically and re-verifying. Use when asked to "qa", "QA", "test this site", "find bugs", diff --git a/retro/SKILL.md b/retro/SKILL.md index aa0fcf7a..47e110e8 100644 --- a/retro/SKILL.md +++ b/retro/SKILL.md @@ -2,6 +2,8 @@ name: retro version: 2.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /retro in their message. + Do not auto-trigger this skill from semantic similarity alone. Weekly engineering retrospective. Analyzes commit history, work patterns, and code quality metrics with persistent history and trend tracking. Team-aware: breaks down per-person contributions with praise and growth areas. diff --git a/review/SKILL.md b/review/SKILL.md index 23e249b1..566f6278 100644 --- a/review/SKILL.md +++ b/review/SKILL.md @@ -2,6 +2,8 @@ name: review version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /review in their message. + Do not auto-trigger this skill from semantic similarity alone. Pre-landing PR review. Analyzes diff against the base branch for SQL safety, LLM trust boundary violations, conditional side effects, and other structural issues. Use when asked to "review this PR", "code review", "pre-landing review", or "check my diff". diff --git a/setup-browser-cookies/SKILL.md b/setup-browser-cookies/SKILL.md index 3b7d1e64..df03f9d8 100644 --- a/setup-browser-cookies/SKILL.md +++ b/setup-browser-cookies/SKILL.md @@ -2,6 +2,8 @@ name: setup-browser-cookies version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /setup-browser-cookies in their message. + Do not auto-trigger this skill from semantic similarity alone. Import cookies from your real Chromium browser into the headless browse session. Opens an interactive picker UI where you select which cookie domains to import. Use before QA testing authenticated pages. Use when asked to "import cookies", diff --git a/setup-deploy/SKILL.md b/setup-deploy/SKILL.md index 33da1add..c55f0e2b 100644 --- a/setup-deploy/SKILL.md +++ b/setup-deploy/SKILL.md @@ -2,6 +2,8 @@ name: setup-deploy version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /setup-deploy in their message. + Do not auto-trigger this skill from semantic similarity alone. Configure deployment settings for /land-and-deploy. Detects your deploy platform (Fly.io, Render, Vercel, Netlify, Heroku, GitHub Actions, custom), production URL, health check endpoints, and deploy status commands. Writes @@ -47,7 +49,7 @@ echo "TELEMETRY: ${_TEL:-off}" echo "TEL_PROMPTED: $_TEL_PROMPTED" mkdir -p ~/.gstack/analytics echo '{"skill":"setup-deploy","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true -for _PF in ~/.gstack/analytics/.pending-*; do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done +for _PF in $(ls ~/.gstack/analytics/.pending-* 2>/dev/null); do [ -f "$_PF" ] && ~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true; break; done ``` If `PROACTIVE` is `"false"`, do not proactively suggest gstack skills — only invoke diff --git a/ship/SKILL.md b/ship/SKILL.md index c574ca75..85a4f4b6 100644 --- a/ship/SKILL.md +++ b/ship/SKILL.md @@ -2,6 +2,8 @@ name: ship version: 1.0.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /ship in their message. + Do not auto-trigger this skill from semantic similarity alone. Ship workflow: detect + merge base branch, run tests, review diff, bump VERSION, update CHANGELOG, commit, push, create PR. Use when asked to "ship", "deploy", "push to main", "create a PR", or "merge and push". Proactively suggest when the user says code is ready or asks about deploying. allowed-tools: @@ -418,6 +420,33 @@ If the Eng Review is NOT "CLEAR": --- +## Step 1.5: Distribution Pipeline Check + +If the diff introduces a new standalone artifact (CLI binary, library package, tool) — not a web +service with existing deployment — verify that a distribution pipeline exists. + +1. Check if the diff adds a new `cmd/` directory, `main.go`, or `bin/` entry point: + ```bash + git diff origin/ --name-only | grep -E '(cmd/.*/main\.go|bin/|Cargo\.toml|setup\.py|package\.json)' | head -5 + ``` + +2. If new artifact detected, check for a release workflow: + ```bash + ls .github/workflows/ 2>/dev/null | grep -iE 'release|publish|dist' + ``` + +3. **If no release pipeline exists and a new artifact was added:** Use AskUserQuestion: + - "This PR adds a new binary/tool but there's no CI/CD pipeline to build and publish it. + Users won't be able to download the artifact after merge." + - A) Add a release workflow now (GitHub Actions cross-platform build + GitHub Releases) + - B) Defer — add to TODOS.md + - C) Not needed — this is internal/web-only, existing deployment covers it + +4. **If release pipeline exists:** Continue silently. +5. **If no new artifact detected:** Skip silently. + +--- + ## Step 2: Merge the base branch (BEFORE tests) Fetch and merge the base branch into the feature branch so tests run against the merged state: diff --git a/unfreeze/SKILL.md b/unfreeze/SKILL.md index d4ad37e2..2d032a5e 100644 --- a/unfreeze/SKILL.md +++ b/unfreeze/SKILL.md @@ -2,6 +2,8 @@ name: unfreeze version: 0.1.0 description: | + MANUAL TRIGGER ONLY: only run this skill when the user explicitly types /unfreeze in their message. + Do not auto-trigger this skill from semantic similarity alone. Clear the freeze boundary set by /freeze, allowing edits to all directories again. Use when you want to widen edit scope without ending the session. Use when asked to "unfreeze", "unlock edits", "remove freeze", or