@kensaurus/skills 0.0.0-stage → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +53 -0
- package/.claude-plugin/plugin.json +40 -0
- package/.cursor-plugin/plugin.json +38 -0
- package/.mcp.json +28 -0
- package/CHANGELOG.md +1790 -0
- package/LICENSE +21 -0
- package/LICENSE-APACHE +62 -0
- package/NOTICE +13 -0
- package/README.md +821 -2
- package/SECURITY.md +55 -0
- package/agents/code-reviewer.md +60 -0
- package/agents/completion-judge.md +89 -0
- package/agents/db-migrator.md +125 -0
- package/agents/debugger.md +47 -0
- package/agents/deploy-checker.md +100 -0
- package/agents/perf-monitor.md +74 -0
- package/assets/favicon.png +0 -0
- package/assets/logo-light.png +0 -0
- package/assets/logo.png +0 -0
- package/assets/logo.svg +6 -0
- package/assets/og.png +0 -0
- package/bin/install.mjs +1127 -0
- package/bin/kenji.js +2 -0
- package/commands/adr.md +17 -0
- package/commands/aeo-plan.md +18 -0
- package/commands/arch-boundaries.md +17 -0
- package/commands/aso-plan.md +18 -0
- package/commands/auth-flows.md +19 -0
- package/commands/backup-plan.md +17 -0
- package/commands/burndown-full.md +25 -0
- package/commands/capacitor-plan.md +18 -0
- package/commands/codemod-safety.md +22 -0
- package/commands/commit.md +18 -0
- package/commands/complete-everything.md +40 -0
- package/commands/cost-plan.md +19 -0
- package/commands/deadcode-plan.md +26 -0
- package/commands/deadcode.md +32 -0
- package/commands/debug-issue.md +17 -0
- package/commands/deps-plan.md +18 -0
- package/commands/docs-plan.md +17 -0
- package/commands/doctrine.md +19 -0
- package/commands/error-plan.md +19 -0
- package/commands/feedback-to-closure.md +36 -0
- package/commands/fix-issue.md +76 -0
- package/commands/gate-logic.md +26 -0
- package/commands/green-repo.md +36 -0
- package/commands/grill-me.md +19 -0
- package/commands/gtm-plan.md +21 -0
- package/commands/gtm-weekly.md +17 -0
- package/commands/gtm.md +22 -0
- package/commands/handoff.md +15 -0
- package/commands/housekeep-backlog.md +18 -0
- package/commands/housekeep-files.md +22 -0
- package/commands/housekeep-gates.md +18 -0
- package/commands/instant-nav.md +11 -0
- package/commands/integrity-plan.md +19 -0
- package/commands/launch-kit.md +16 -0
- package/commands/mcp-guide.md +40 -0
- package/commands/mobile-plan.md +19 -0
- package/commands/native-rn-monorepo/README.md +78 -0
- package/commands/native-rn-monorepo/android-build.md +26 -0
- package/commands/native-rn-monorepo/android-install.md +32 -0
- package/commands/native-rn-monorepo/android-logcat.md +37 -0
- package/commands/native-rn-monorepo/ios-ci-logs.md +56 -0
- package/commands/native-rn-monorepo/ios-ci-status.md +52 -0
- package/commands/native-rn-monorepo/ios-ci-trigger.md +59 -0
- package/commands/native-rn-monorepo/rn-reset.md +50 -0
- package/commands/native-rn-monorepo/rn-ship-ios.md +67 -0
- package/commands/native-rn-monorepo/rn-verify.md +53 -0
- package/commands/perf-plan.md +18 -0
- package/commands/plan-mode.md +74 -0
- package/commands/pr.md +16 -0
- package/commands/pricing-plan.md +20 -0
- package/commands/privacy-plan.md +18 -0
- package/commands/readability.md +12 -0
- package/commands/readme.md +15 -0
- package/commands/refactor.md +15 -0
- package/commands/release-prep.md +17 -0
- package/commands/research.md +25 -0
- package/commands/responsive-audit.md +21 -0
- package/commands/review-code.md +18 -0
- package/commands/rls-plan.md +18 -0
- package/commands/secrets-plan.md +18 -0
- package/commands/security-plan.md +19 -0
- package/commands/ship-and-observe.md +36 -0
- package/commands/skill-conflicts.md +19 -0
- package/commands/slop-plan.md +18 -0
- package/commands/stub-plan.md +18 -0
- package/commands/test-mutation.md +16 -0
- package/commands/test-plan.md +17 -0
- package/commands/test.md +29 -0
- package/commands/thirdparty-web-interface-guidelines.md +185 -0
- package/commands/uiux-plan.md +18 -0
- package/commands/uiux.md +45 -0
- package/commands/update-deps.md +21 -0
- package/commands/validation-plan.md +19 -0
- package/commands-portable/fix-issue.md +72 -0
- package/commands-portable/plan-mode.md +92 -0
- package/commands-portable/research.md +91 -0
- package/docs/screenshots/README.md +5 -0
- package/docs/screenshots/audit-dark.png +0 -0
- package/docs/screenshots/build-dark.png +0 -0
- package/docs/screenshots/grill-dark.png +0 -0
- package/docs/screenshots/hero-dark.png +0 -0
- package/docs/screenshots/hero-light.png +0 -0
- package/docs/screenshots/ship-dark.png +0 -0
- package/docs/screenshots/src/showcase.html +320 -0
- package/hooks/completion-gate.mjs +258 -0
- package/hooks/cursor-hooks.json +13 -0
- package/hooks/hooks.json +15 -0
- package/install.sh +21 -0
- package/llms.txt +40 -0
- package/mcp/README.md +266 -0
- package/mcp/VERSIONS.md +41 -0
- package/mcp/mcp-full.json.template +124 -0
- package/mcp/mcp.json.template +29 -0
- package/mcp/pinned-versions.json +27 -0
- package/package.json +94 -4
- package/rules/approved-plan-execution.mdc +65 -0
- package/rules/full-stack-ship-discipline.mdc +37 -0
- package/rules/native-rn-monorepo/README.md +63 -0
- package/rules/native-rn-monorepo/_project.mdc +69 -0
- package/rules/native-rn-monorepo/native-android.mdc +72 -0
- package/rules/native-rn-monorepo/native-ios.mdc +61 -0
- package/rules/native-rn-monorepo/react-native-js.mdc +78 -0
- package/rules/native-rn-monorepo/web.mdc +60 -0
- package/rules/project-starter/components.mdc +54 -0
- package/rules/project-starter/data-fetching.mdc +77 -0
- package/rules/project-starter/git.mdc +41 -0
- package/rules/project-starter/supabase.mdc +37 -0
- package/rules/project-starter/tailwind.mdc +48 -0
- package/rules/project-starter/typescript.mdc +36 -0
- package/rules/project-starter/web-performance.mdc +42 -0
- package/rules/senior-engineer.mdc +30 -0
- package/rules/shell-first-search.mdc +19 -0
- package/rules/skill-workflows.mdc +35 -0
- package/rules/verification-before-completion.mdc +57 -0
- package/skills/audit-accessibility/SKILL.md +441 -0
- package/skills/audit-agent-speed/SKILL.md +181 -0
- package/skills/audit-agent-speed/scripts/stop-typecheck.mjs +151 -0
- package/skills/audit-analytics/SKILL.md +138 -0
- package/skills/audit-auth-flows/SKILL.md +267 -0
- package/skills/audit-backend-architecture/SKILL.md +266 -0
- package/skills/audit-backend-architecture/references/patterns.md +386 -0
- package/skills/audit-bundle-size/SKILL.md +295 -0
- package/skills/audit-cicd/SKILL.md +218 -0
- package/skills/audit-code-quality/SKILL.md +314 -0
- package/skills/audit-code-review/SKILL.md +289 -0
- package/skills/audit-codemod-safety/SKILL.md +159 -0
- package/skills/audit-db-schema/SKILL.md +465 -0
- package/skills/audit-db-schema/references/details.md +110 -0
- package/skills/audit-doctrine/SKILL.md +189 -0
- package/skills/audit-env-parity/SKILL.md +133 -0
- package/skills/audit-fe-api/SKILL.md +458 -0
- package/skills/audit-gate-logic/SKILL.md +219 -0
- package/skills/audit-i18n/SKILL.md +339 -0
- package/skills/audit-infra-cost/SKILL.md +142 -0
- package/skills/audit-langfuse-llm/SKILL.md +468 -0
- package/skills/audit-langfuse-llm/references/details.md +226 -0
- package/skills/audit-llm-security/SKILL.md +147 -0
- package/skills/audit-monetization-iap/SKILL.md +137 -0
- package/skills/audit-payment-system/SKILL.md +268 -0
- package/skills/audit-payment-system/references/checklist.md +283 -0
- package/skills/audit-performance/SKILL.md +383 -0
- package/skills/audit-performance/references/loading-priority-2026.md +81 -0
- package/skills/audit-realworld/SKILL.md +287 -0
- package/skills/audit-registry-listing/SKILL.md +122 -0
- package/skills/audit-resilience/SKILL.md +153 -0
- package/skills/audit-responsive/SKILL.md +221 -0
- package/skills/audit-responsive/references/checklist.md +166 -0
- package/skills/audit-security/SKILL.md +289 -0
- package/skills/audit-skill-conflicts/SKILL.md +178 -0
- package/skills/audit-ui-states/SKILL.md +146 -0
- package/skills/audit-uiux-design-system/SKILL.md +475 -0
- package/skills/audit-uiux-design-system/references/details.md +71 -0
- package/skills/audit-ux/SKILL.md +381 -0
- package/skills/audit-ux/references/details.md +245 -0
- package/skills/audit-ux-journeys/SKILL.md +215 -0
- package/skills/audit-ux-journeys/references/checklist.md +179 -0
- package/skills/backend-db-performance/SKILL.md +441 -0
- package/skills/backend-error-handling/SKILL.md +489 -0
- package/skills/backend-error-handling/references/details.md +58 -0
- package/skills/backend-observability/SKILL.md +88 -0
- package/skills/backend-patterns/SKILL.md +499 -0
- package/skills/backend-patterns/references/architecture-patterns.md +298 -0
- package/skills/backend-realtime/SKILL.md +403 -0
- package/skills/backend-realtime/references/patterns.md +74 -0
- package/skills/burndown-full/SKILL.md +174 -0
- package/skills/complete-everything/SKILL.md +295 -0
- package/skills/data-pipeline/SKILL.md +109 -0
- package/skills/data-visualization/SKILL.md +488 -0
- package/skills/debug-error/SKILL.md +322 -0
- package/skills/debug-fe-be-integration/SKILL.md +459 -0
- package/skills/debug-sentry-monitor/SKILL.md +497 -0
- package/skills/debug-sentry-monitor/references/details.md +165 -0
- package/skills/deploy-npm/SKILL.md +394 -0
- package/skills/deploy-npm/references/example-mushi-mushi.md +52 -0
- package/skills/deploy-verify/SKILL.md +489 -0
- package/skills/design-api/SKILL.md +379 -0
- package/skills/design-canvas/SKILL.md +155 -0
- package/skills/design-email/SKILL.md +370 -0
- package/skills/design-frontend/SKILL.md +143 -0
- package/skills/design-generative-art/SKILL.md +474 -0
- package/skills/design-mobile-first/SKILL.md +506 -0
- package/skills/design-motion/SKILL.md +333 -0
- package/skills/design-motion/references/delight-interactions.md +191 -0
- package/skills/design-prd/SKILL.md +443 -0
- package/skills/design-system/SKILL.md +457 -0
- package/skills/design-theme/SKILL.md +226 -0
- package/skills/design-theme/themes/tsumagoi-ranch.md +150 -0
- package/skills/docs-adr/SKILL.md +168 -0
- package/skills/docs-coauthor/SKILL.md +368 -0
- package/skills/docs-comparison-pages/SKILL.md +117 -0
- package/skills/docs-domain-modeling/SKILL.md +97 -0
- package/skills/docs-launch-kit/SKILL.md +139 -0
- package/skills/docs-writer/SKILL.md +469 -0
- package/skills/enhance-agent-guardrails/SKILL.md +164 -0
- package/skills/enhance-arch-boundaries/SKILL.md +154 -0
- package/skills/enhance-capacitor-ui/SKILL.md +463 -0
- package/skills/enhance-capacitor-ui/references/details.md +750 -0
- package/skills/enhance-email-deliverability/SKILL.md +143 -0
- package/skills/enhance-growth-loops/SKILL.md +122 -0
- package/skills/enhance-lifecycle-email/SKILL.md +130 -0
- package/skills/enhance-motion/SKILL.md +193 -0
- package/skills/enhance-onboarding/SKILL.md +148 -0
- package/skills/enhance-pwa/SKILL.md +303 -0
- package/skills/enhance-readability/SKILL.md +146 -0
- package/skills/enhance-readme/SKILL.md +496 -0
- package/skills/enhance-readme/package-lock.json +187 -0
- package/skills/enhance-readme/package.json +17 -0
- package/skills/enhance-readme/scripts/generate-readme-blocks.mjs +199 -0
- package/skills/enhance-readme/scripts/record-readme-tour.mjs +442 -0
- package/skills/enhance-skill-prompts/SKILL.md +167 -0
- package/skills/enhance-skill-prompts/references/exemplar-audit-auth-flows.md +311 -0
- package/skills/enhance-ux-laws/SKILL.md +409 -0
- package/skills/enhance-web-conversion/SKILL.md +155 -0
- package/skills/enhance-web-forms/SKILL.md +154 -0
- package/skills/enhance-web-instant-nav/SKILL.md +138 -0
- package/skills/enhance-web-instant-nav/references/bfcache-blockers.md +23 -0
- package/skills/enhance-web-instant-nav/references/early-hints.md +33 -0
- package/skills/enhance-web-instant-nav/references/speculation-rules.md +44 -0
- package/skills/enhance-web-landing/SKILL.md +459 -0
- package/skills/enhance-web-landing/references/details.md +773 -0
- package/skills/enhance-web-redesign/SKILL.md +228 -0
- package/skills/enhance-web-seo/SKILL.md +276 -0
- package/skills/enhance-web-ui/SKILL.md +473 -0
- package/skills/enhance-web-ui/references/details.md +674 -0
- package/skills/enhance-web-ux/HEURISTICS.md +248 -0
- package/skills/enhance-web-ux/PATTERNS.md +375 -0
- package/skills/enhance-web-ux/SKILL.md +464 -0
- package/skills/enhance-web-ux/examples.md +222 -0
- package/skills/enhance-web-ux/references/details.md +406 -0
- package/skills/enhance-web-web3d/SKILL.md +397 -0
- package/skills/enhance-web-web3d/references/css-canvas-effects.md +180 -0
- package/skills/handoff/SKILL.md +66 -0
- package/skills/housekeep-backlog/SKILL.md +149 -0
- package/skills/housekeep-dead-code/SKILL.md +387 -0
- package/skills/housekeep-dead-code/references/ratchet-ci.md +205 -0
- package/skills/housekeep-dead-code/references/supabase-hygiene.md +152 -0
- package/skills/housekeep-design/SKILL.md +207 -0
- package/skills/housekeep-files/SKILL.md +220 -0
- package/skills/housekeep-files/references/naming-and-catalog.md +86 -0
- package/skills/housekeep-files/scripts/housekeep-files.ps1 +360 -0
- package/skills/housekeep-files/scripts/housekeep-files.sh +238 -0
- package/skills/housekeep-gates/SKILL.md +174 -0
- package/skills/iterate-agent-harness/SKILL.md +137 -0
- package/skills/iterate-gtm-weekly/SKILL.md +103 -0
- package/skills/iterate-post-launch/SKILL.md +292 -0
- package/skills/meta-mcp-builder/SKILL.md +313 -0
- package/skills/meta-skill-creator/SKILL.md +304 -0
- package/skills/mobile-capacitor-platform/SKILL.md +103 -0
- package/skills/mobile-emulator-start/SKILL.md +296 -0
- package/skills/mobile-emulator-test/SKILL.md +491 -0
- package/skills/mobile-emulator-test/references/details.md +478 -0
- package/skills/mobile-rn-performance/SKILL.md +107 -0
- package/skills/mobile-rn-screen/SKILL.md +476 -0
- package/skills/mobile-rn-screen/references/details.md +785 -0
- package/skills/mushi-health/SKILL.md +206 -0
- package/skills/mushi-integration/SKILL.md +257 -0
- package/skills/plan-aeo-readiness/SKILL.md +166 -0
- package/skills/plan-antislop/SKILL.md +281 -0
- package/skills/plan-aso/SKILL.md +149 -0
- package/skills/plan-backup-dr/SKILL.md +131 -0
- package/skills/plan-capacitor-hardening/SKILL.md +217 -0
- package/skills/plan-data-integrity/SKILL.md +187 -0
- package/skills/plan-dead-code/SKILL.md +386 -0
- package/skills/plan-dead-code/references/knip-config.md +214 -0
- package/skills/plan-dead-code/references/output-templates.md +133 -0
- package/skills/plan-dead-code/references/preservation-contract.md +50 -0
- package/skills/plan-dead-code/references/residue-greps.md +84 -0
- package/skills/plan-dependency-provenance/SKILL.md +200 -0
- package/skills/plan-docs-sync/SKILL.md +143 -0
- package/skills/plan-docs-sync/references/drift-taxonomy.md +43 -0
- package/skills/plan-docs-sync/references/output-templates.md +33 -0
- package/skills/plan-docs-sync/references/preservation-contract.md +17 -0
- package/skills/plan-error-handling/SKILL.md +205 -0
- package/skills/plan-gtm/SKILL.md +276 -0
- package/skills/plan-gtm/references/benchmarks-2026.md +183 -0
- package/skills/plan-input-validation/SKILL.md +179 -0
- package/skills/plan-llm-cost-guardrails/SKILL.md +176 -0
- package/skills/plan-mobile-readiness/SKILL.md +171 -0
- package/skills/plan-perf-audit/SKILL.md +145 -0
- package/skills/plan-perf-audit/references/audit-scope.md +51 -0
- package/skills/plan-perf-audit/references/output-templates.md +33 -0
- package/skills/plan-perf-audit/references/preservation-contract.md +13 -0
- package/skills/plan-pricing/SKILL.md +173 -0
- package/skills/plan-privacy-compliance/SKILL.md +148 -0
- package/skills/plan-rls-audit/SKILL.md +231 -0
- package/skills/plan-secrets-audit/SKILL.md +181 -0
- package/skills/plan-security-audit/SKILL.md +168 -0
- package/skills/plan-security-audit/references/output-templates.md +36 -0
- package/skills/plan-security-audit/references/owasp-supabase-scope.md +55 -0
- package/skills/plan-security-audit/references/preservation-contract.md +18 -0
- package/skills/plan-stub-checker/SKILL.md +216 -0
- package/skills/plan-stub-checker/references/detection-methodology.md +75 -0
- package/skills/plan-stub-checker/references/detection-taxonomy.md +34 -0
- package/skills/plan-stub-checker/references/output-templates.md +63 -0
- package/skills/plan-stub-checker/references/preservation-contract.md +24 -0
- package/skills/plan-test-coverage/SKILL.md +170 -0
- package/skills/plan-test-coverage/references/methodology.md +54 -0
- package/skills/plan-test-coverage/references/output-templates.md +34 -0
- package/skills/plan-test-coverage/references/preservation-contract.md +15 -0
- package/skills/plan-uiux-unification/SKILL.md +230 -0
- package/skills/plan-uiux-unification/references/output-templates.md +67 -0
- package/skills/plan-uiux-unification/references/phase-workbook.md +85 -0
- package/skills/plan-uiux-unification/references/preservation-contract.md +24 -0
- package/skills/protocol-browser-anti-stall/SKILL.md +211 -0
- package/skills/protocol-browser-anti-stall/references/mcp-to-cli-map.md +113 -0
- package/skills/protocol-browser-anti-stall/references/playwright-session-coordination.md +170 -0
- package/skills/research/SKILL.md +422 -0
- package/skills/test-exploratory/SKILL.md +165 -0
- package/skills/test-exploratory/references/charter-template.md +29 -0
- package/skills/test-load/SKILL.md +126 -0
- package/skills/test-mutation/SKILL.md +160 -0
- package/skills/test-playwright/SKILL.md +354 -0
- package/skills/test-qa/SKILL.md +364 -0
- package/skills/test-qa/references/details.md +268 -0
- package/skills/test-red-team/SKILL.md +386 -0
- package/skills/test-red-team/references/owasp-attack-checklist.md +193 -0
- package/skills/test-unit/SKILL.md +259 -0
- package/skills/test-unit/references/details.md +267 -0
- package/skills/test-visual-regression/SKILL.md +132 -0
- package/skills/thirdparty-emil-design-eng/ATTRIBUTION.md +20 -0
- package/skills/thirdparty-emil-design-eng/SKILL.md +21 -0
- package/skills/thirdparty-emil-design-eng/references/emil-design-eng.md +676 -0
- package/skills/thirdparty-ui-ux-pro-max/ATTRIBUTION.md +22 -0
- package/skills/thirdparty-ui-ux-pro-max/SKILL.md +304 -0
- package/skills/thirdparty-ui-ux-pro-max/data/charts.csv +26 -0
- package/skills/thirdparty-ui-ux-pro-max/data/colors.csv +97 -0
- package/skills/thirdparty-ui-ux-pro-max/data/icons.csv +101 -0
- package/skills/thirdparty-ui-ux-pro-max/data/landing.csv +31 -0
- package/skills/thirdparty-ui-ux-pro-max/data/products.csv +97 -0
- package/skills/thirdparty-ui-ux-pro-max/data/react-performance.csv +45 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/astro.csv +54 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/skills/thirdparty-ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/skills/thirdparty-ui-ux-pro-max/data/styles.csv +68 -0
- package/skills/thirdparty-ui-ux-pro-max/data/typography.csv +58 -0
- package/skills/thirdparty-ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/skills/thirdparty-ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/skills/thirdparty-ui-ux-pro-max/data/web-interface.csv +31 -0
- package/skills/thirdparty-ui-ux-pro-max/scripts/core.py +253 -0
- package/skills/thirdparty-ui-ux-pro-max/scripts/design_system.py +1067 -0
- package/skills/thirdparty-ui-ux-pro-max/scripts/search.py +114 -0
- package/skills/thirdparty-web-interface-guidelines/ATTRIBUTION.md +23 -0
- package/skills/thirdparty-web-interface-guidelines/SKILL.md +190 -0
- package/skills/workflow-build-feature/SKILL.md +118 -0
- package/skills/workflow-coding-discipline/SKILL.md +140 -0
- package/skills/workflow-environment-ready/SKILL.md +128 -0
- package/skills/workflow-feature-flag/SKILL.md +262 -0
- package/skills/workflow-feedback-to-closure/SKILL.md +165 -0
- package/skills/workflow-fix-and-ship/SKILL.md +136 -0
- package/skills/workflow-git-commit/SKILL.md +200 -0
- package/skills/workflow-green-repo/SKILL.md +166 -0
- package/skills/workflow-grilling/SKILL.md +73 -0
- package/skills/workflow-gtm/SKILL.md +153 -0
- package/skills/workflow-housekeep/SKILL.md +453 -0
- package/skills/workflow-housekeep/references/templates.md +109 -0
- package/skills/workflow-launch-ready/SKILL.md +145 -0
- package/skills/workflow-merge-conflicts/SKILL.md +62 -0
- package/skills/workflow-onboard/SKILL.md +99 -0
- package/skills/workflow-parallel-agents/SKILL.md +164 -0
- package/skills/workflow-pr/SKILL.md +197 -0
- package/skills/workflow-quality-gate/SKILL.md +147 -0
- package/skills/workflow-refactor/SKILL.md +274 -0
- package/skills/workflow-release-prep/SKILL.md +207 -0
- package/skills/workflow-ship-and-observe/SKILL.md +164 -0
- package/skills/workflow-spec-tdd/SKILL.md +141 -0
- package/skills/workflow-spec-tdd/references/spec-template.md +126 -0
- package/skills/workflow-spec-tdd/references/tdd-patterns.md +167 -0
- package/skills-cursor/babysit/SKILL.md +17 -0
- package/skills-cursor/canvas/SKILL.md +142 -0
- package/skills-cursor/canvas/sdk/canvas-tokens.d.ts +235 -0
- package/skills-cursor/canvas/sdk/chart-primitives.d.ts +200 -0
- package/skills-cursor/canvas/sdk/dag-layout.d.ts +102 -0
- package/skills-cursor/canvas/sdk/diff-view.d.ts +130 -0
- package/skills-cursor/canvas/sdk/form-primitives.d.ts +194 -0
- package/skills-cursor/canvas/sdk/hooks.d.ts +117 -0
- package/skills-cursor/canvas/sdk/index.d.ts +47 -0
- package/skills-cursor/canvas/sdk/theme.d.ts +61 -0
- package/skills-cursor/canvas/sdk/todo-list.d.ts +49 -0
- package/skills-cursor/canvas/sdk/ui-primitives.d.ts +549 -0
- package/skills-cursor/canvas/sdk/ui-primitives.test.d.ts +2 -0
- package/skills-cursor/create-hook/SKILL.md +238 -0
- package/skills-cursor/create-rule/SKILL.md +185 -0
- package/skills-cursor/create-skill/SKILL.md +269 -0
- package/skills-cursor/create-skill/references/authoring-guide.md +182 -0
- package/skills-cursor/create-subagent/SKILL.md +228 -0
- package/skills-cursor/migrate-to-skills/SKILL.md +121 -0
- package/skills-cursor/shell/SKILL.md +22 -0
- package/skills-cursor/split-to-prs/SKILL.md +47 -0
- package/skills-cursor/statusline/SKILL.md +193 -0
- package/skills-cursor/update-cli-config/SKILL.md +85 -0
- package/skills-cursor/update-cursor-settings/SKILL.md +137 -0
- package/skills.sh.json +297 -0
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mushi-health
|
|
3
|
+
description: >-
|
|
4
|
+
Pass/fail health check across every Mushi Mushi pipeline component — CLI
|
|
5
|
+
credentials, API reachability, edge functions, BYOK key pool, QA cron.
|
|
6
|
+
Use when "is mushi working", "mushi health check", "check mushi pipeline",
|
|
7
|
+
"mushi deploy check", "pipeline not responding", or right after setup.
|
|
8
|
+
license: MIT
|
|
9
|
+
disable-model-invocation: true
|
|
10
|
+
effort: low
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Mushi Health Check
|
|
14
|
+
|
|
15
|
+
**Degree of freedom: MIXED.** First-red diagnosis `[HIGH freedom]`;
|
|
16
|
+
Steps 1–6 in order `[LOW freedom — run exactly]`.
|
|
17
|
+
|
|
18
|
+
## How to reason
|
|
19
|
+
|
|
20
|
+
1. **Observe** — `doctor`, `deploy check`, keys, logs, cron — in that order
|
|
21
|
+
2. **Interpret** — first red is root vs downstream symptom
|
|
22
|
+
3. **Classify** — creds / functions-down / keys / logs / cron-missing
|
|
23
|
+
4. **Severity** — paused project or invalid API key outranks a quiet QA cron on a new project
|
|
24
|
+
|
|
25
|
+
## Worked example
|
|
26
|
+
|
|
27
|
+
> **Observe:** `mushi doctor` green; `mushi deploy check` ✗ `qa-story-runner`; `qa_story_runs` empty for 2h.
|
|
28
|
+
> **Interpret:** first red is the runner; empty cron is downstream.
|
|
29
|
+
> **Classify:** function-down — check `query_logs` for `qa-story-runner`; do not add keys yet.
|
|
30
|
+
> **Verify:** stop at Step 2; fix the runner; continue remaining steps only after it is green.
|
|
31
|
+
|
|
32
|
+
## Self-critique before reporting
|
|
33
|
+
|
|
34
|
+
- **In order** — did not skip ahead of the first ❌
|
|
35
|
+
- **Evidence** — each row cites command output or a query, not memory
|
|
36
|
+
- **Stopped to fix** — first red was remediated before later steps
|
|
37
|
+
- **Right owner** — e2e loop proof → `mushi-integration`; targeted diagnosis → `diagnose_setup`
|
|
38
|
+
|
|
39
|
+
Run these checks in order. Stop and fix at the first ❌ before continuing.
|
|
40
|
+
|
|
41
|
+
## Component map
|
|
42
|
+
|
|
43
|
+
| # | Component | How to check |
|
|
44
|
+
|---|-----------|-------------|
|
|
45
|
+
| 1 | CLI credentials | `mushi doctor` |
|
|
46
|
+
| 2 | API + edge functions | `mushi deploy check` |
|
|
47
|
+
| 3 | Project overview | `mushi status` |
|
|
48
|
+
| 4 | BYOK key pool | `mushi keys list` or MCP `list_byok_keys` |
|
|
49
|
+
| 5 | Supabase logs | Supabase MCP `query_logs` |
|
|
50
|
+
| 6 | QA cron running | DB query on `qa_story_runs` |
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Step 1 — CLI credentials [LOW freedom — run exactly]
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
mushi doctor
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Expected output — all lines green:
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
✓ ~/.mushirc found
|
|
64
|
+
✓ MUSHI_API_KEY valid (mushi_...)
|
|
65
|
+
✓ MUSHI_API_ENDPOINT reachable (200 OK)
|
|
66
|
+
✓ MUSHI_PROJECT_ID matches a live project
|
|
67
|
+
✓ Feature flags fetched
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
**Fix if red:** Re-run `mushi login --api-key mushi_... --endpoint https://<ref>.supabase.co/functions/v1/api --project-id <pid>`.
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Step 2 — API + edge functions [LOW freedom — run exactly]
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
mushi deploy check
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Probes each edge function with a lightweight ping. Healthy output:
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
✓ api
|
|
84
|
+
✓ classify-report
|
|
85
|
+
✓ fix-worker
|
|
86
|
+
✓ story-mapper
|
|
87
|
+
✓ test-gen-from-story # Mushi edge function, not a pack skill
|
|
88
|
+
✓ pdca-runner
|
|
89
|
+
✓ qa-story-runner
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
A `✗` on any line means that function is down. Check its logs in Step 5.
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Step 3 — Project overview [LOW freedom — run exactly]
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
mushi status
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Confirm:
|
|
103
|
+
- Report count is non-zero (or expected zero for a brand-new project).
|
|
104
|
+
- `autofix_agent` shows the expected agent (`cursor_cloud`, `mcp`, etc.).
|
|
105
|
+
- No `billing: quota_exceeded` warning.
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Step 4 — BYOK key pool [LOW freedom — run exactly]
|
|
110
|
+
|
|
111
|
+
Via CLI:
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
mushi keys list
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Via MCP (if the Mushi MCP server is active in Cursor):
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
list_byok_keys(projectId)
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Healthy:** at least one `anthropic` key with `status=active`, at least one `firecrawl` key with `status=active`.
|
|
124
|
+
|
|
125
|
+
**Fix:** Add a missing or exhausted key:
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
mushi keys add --provider anthropic --key sk-ant-... --label "primary" --priority 100
|
|
129
|
+
mushi keys add --provider firecrawl --key fc-... --label "primary" --priority 100
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Step 5 — Supabase edge function logs [LOW freedom — run exactly]
|
|
135
|
+
|
|
136
|
+
Use the Supabase MCP (requires `SUPABASE_ACCESS_TOKEN` in MCP config):
|
|
137
|
+
|
|
138
|
+
```
|
|
139
|
+
query_logs(sql: "select timestamp, log_attributes['function_id'] as function_id, log_attributes['level'] as level, event_message from logs where source = 'function_logs' order by timestamp desc limit 100", iso_timestamp_start: "<ISO 8601, 15 min ago>")
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
`function_logs` holds console output from inside each function;
|
|
143
|
+
`function_edge_logs` holds the invocations and their status codes.
|
|
144
|
+
`function_id` is the `id` that `list_edge_functions` returns for each slug.
|
|
145
|
+
Look for `ERROR` lines in the last 15 minutes, especially from these
|
|
146
|
+
**Mushi edge functions** (not pack skills):
|
|
147
|
+
- `story-mapper` — Firecrawl timeout or Claude quota
|
|
148
|
+
- `test-gen-from-story` — LLM key exhausted
|
|
149
|
+
- `pdca-runner` — failed PDCA cycle
|
|
150
|
+
- `qa-story-runner` — Browserbase quota or Firecrawl error
|
|
151
|
+
|
|
152
|
+
If the Supabase MCP is not wired in Cursor, use the CLI:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
supabase functions logs story-mapper --project-ref <ref>
|
|
156
|
+
supabase functions logs qa-story-runner --project-ref <ref>
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Step 6 — QA cron running [LOW freedom — run exactly]
|
|
162
|
+
|
|
163
|
+
Verify scheduled tests are executing (requires Supabase MCP):
|
|
164
|
+
|
|
165
|
+
```sql
|
|
166
|
+
SELECT status, COUNT(*)
|
|
167
|
+
FROM qa_story_runs
|
|
168
|
+
WHERE created_at > NOW() - INTERVAL '2 hours'
|
|
169
|
+
GROUP BY status;
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Healthy output:** at least one `completed` row in the last 2 hours (if you have enabled stories).
|
|
173
|
+
|
|
174
|
+
If `qa_story_runs` is empty:
|
|
175
|
+
1. Confirm at least one story has `enabled = true` and `approval_status = 'approved'`.
|
|
176
|
+
2. Confirm the pg_cron job is registered: `SELECT jobname, schedule FROM cron.job WHERE jobname LIKE 'qa%';`
|
|
177
|
+
3. Manually trigger: `mushi tdd run <qa-story-id>` and re-check.
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
## Pass/Fail Summary Template [LOW freedom — do not skip]
|
|
182
|
+
|
|
183
|
+
After running all steps, record results:
|
|
184
|
+
|
|
185
|
+
| Component | Status | Notes |
|
|
186
|
+
|-----------|--------|-------|
|
|
187
|
+
| CLI credentials | ✅ / ❌ | |
|
|
188
|
+
| Edge functions | ✅ / ❌ | Which ones failed? |
|
|
189
|
+
| Project overview | ✅ / ❌ | Billing ok? |
|
|
190
|
+
| BYOK key pool | ✅ / ❌ | Missing providers? |
|
|
191
|
+
| Supabase logs | ✅ / ❌ | Any ERRORs? |
|
|
192
|
+
| QA cron | ✅ / ❌ | Last run at? |
|
|
193
|
+
|
|
194
|
+
If all ✅ → pipeline is healthy.
|
|
195
|
+
If any ❌ → run the mushi MCP `diagnose_setup` tool for targeted diagnosis.
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Common causes of all-red [HIGH freedom]
|
|
200
|
+
|
|
201
|
+
| Symptom | Likely cause | Fix |
|
|
202
|
+
|---------|-------------|-----|
|
|
203
|
+
| `mushi doctor` can't reach endpoint | Wrong `MUSHI_API_ENDPOINT` in `~/.mushirc` | Re-run `mushi login --endpoint https://...` |
|
|
204
|
+
| All edge functions ❌ | Supabase project paused (free tier) | Restore the project in the Supabase dashboard |
|
|
205
|
+
| BYOK keys all `quota_exhausted` | Rate limits hit on all keys | Add a backup key for each provider |
|
|
206
|
+
| QA cron never fires | pg_cron job missing | Re-run migration `20260602000003_pdca_qa_improve_cron.sql` |
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mushi-integration
|
|
3
|
+
description: >-
|
|
4
|
+
Full end-to-end Mushi Mushi integration smoke test: bug capture → AI triage
|
|
5
|
+
→ story mapping → TDD test generation → approval → execution → PDCA cycle.
|
|
6
|
+
Use when "test mushi integration", "verify full pipeline", "mushi e2e check",
|
|
7
|
+
"does mushi work end-to-end", "smoke test mushi", or after deploying changes.
|
|
8
|
+
license: MIT
|
|
9
|
+
disable-model-invocation: true
|
|
10
|
+
effort: low
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Mushi Integration Smoke Test
|
|
14
|
+
|
|
15
|
+
**Degree of freedom: MIXED.** Pass/fail judgment `[HIGH freedom]`;
|
|
16
|
+
Stages 1–6 probes and DB verifies `[LOW freedom — run exactly]`.
|
|
17
|
+
|
|
18
|
+
## How to reason
|
|
19
|
+
|
|
20
|
+
1. **Observe** — each stage's CLI output and DB row
|
|
21
|
+
2. **Interpret** — stage failed vs still-pending vs expected-failure (test detected friction)
|
|
22
|
+
3. **Classify** — capture / triage / map / gen / run / pdca
|
|
23
|
+
4. **Severity** — `classify-report` down outranks optional Stage 7 dashboard drift
|
|
24
|
+
|
|
25
|
+
## Worked example
|
|
26
|
+
|
|
27
|
+
> **Observe:** `mushi test` → `rep_…`; DB still `pending` at 70s; `mushi doctor` was green.
|
|
28
|
+
> **Interpret:** capture wrote; `classify-report` did not.
|
|
29
|
+
> **Classify:** Stage 2 fail — check `query_logs`; do not start story mapping.
|
|
30
|
+
> **Verify:** summary marks Stage 2 ❌; later stages skipped; `diagnose_setup` next.
|
|
31
|
+
|
|
32
|
+
## Self-critique before reporting
|
|
33
|
+
|
|
34
|
+
- **Health first** — `mushi doctor` green before Stage 1
|
|
35
|
+
- **DB verify** — each stage checked the row, not only CLI text
|
|
36
|
+
- **Expected fail ok** — Stage 5 `failed` still counts if the test executed
|
|
37
|
+
- **Right owner** — component down → `mushi-health`; targeted diagnosis → `diagnose_setup`
|
|
38
|
+
|
|
39
|
+
Exercises every stage of the Mushi pipeline end-to-end. Run after setup,
|
|
40
|
+
after a deploy, or any time you need proof that the whole loop works.
|
|
41
|
+
|
|
42
|
+
## Prerequisites [LOW freedom — run exactly]
|
|
43
|
+
|
|
44
|
+
- `mushi doctor` passes (all green) — run [`mushi-health`](../mushi-health/SKILL.md) first if unsure.
|
|
45
|
+
- At least one BYOK key for `anthropic` and `firecrawl` is active.
|
|
46
|
+
- You have the app URL you want to map stories from.
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Stage 1 — Bug capture [LOW freedom — run exactly]
|
|
51
|
+
|
|
52
|
+
Send a real test report through the SDK pipeline:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
mushi test
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Expected: `Test report submitted — id: rep_...`
|
|
59
|
+
|
|
60
|
+
**Verify in DB** (Supabase MCP):
|
|
61
|
+
|
|
62
|
+
```sql
|
|
63
|
+
SELECT id, status, severity, category, created_at
|
|
64
|
+
FROM reports
|
|
65
|
+
ORDER BY created_at DESC LIMIT 1;
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Expected: a row with `status` = `classified` and a non-null `severity` within ~30 seconds.
|
|
69
|
+
If still `pending` after 60 s: `classify-report` edge function failed — check its console output with `query_logs` on `source = 'function_logs'`.
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Stage 2 — AI triage [LOW freedom — run exactly]
|
|
74
|
+
|
|
75
|
+
Confirm the classifier ran:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
mushi reports list --limit 1
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Expected output includes `severity`, `category`, and `blast_radius`.
|
|
82
|
+
|
|
83
|
+
**Verify via MCP:**
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
get_report_detail(reportId)
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Confirm `classification.severity` and `classification.category` are set.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Stage 3 — Story mapping [LOW freedom — run exactly]
|
|
94
|
+
|
|
95
|
+
Map user stories from a live URL:
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
mushi stories map --url https://your-app.com --wait
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
`--wait` polls until the crawl finishes (usually 30–90 s). Expected terminal output:
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
✓ Crawled 12 pages
|
|
105
|
+
✓ Claude drafted 8 user stories
|
|
106
|
+
✓ Proposal created: prop_...
|
|
107
|
+
Open in console → Inventory → Discovery → Past proposals
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
**Verify in DB:**
|
|
111
|
+
|
|
112
|
+
```sql
|
|
113
|
+
SELECT id, source, status, pages_crawled, created_at
|
|
114
|
+
FROM inventory_proposals
|
|
115
|
+
ORDER BY created_at DESC LIMIT 1;
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Expected: `source = 'live_crawl'`, `status = 'pending_review'`.
|
|
119
|
+
|
|
120
|
+
**Accept the proposal** in the Mushi console (Inventory → Discovery → Past proposals → Accept),
|
|
121
|
+
or via CLI when the accept command is available.
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## Stage 4 — TDD test generation [LOW freedom — run exactly]
|
|
126
|
+
|
|
127
|
+
Pick a story id from the accepted inventory and generate a Playwright test:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
# List available stories from the accepted inventory
|
|
131
|
+
mushi tdd pending
|
|
132
|
+
|
|
133
|
+
# Generate a test (review mode — goes to approval queue)
|
|
134
|
+
mushi tdd gen <story-id> --mode review
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
Expected output:
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
✓ Test generated: qa_...
|
|
141
|
+
✓ Draft PR opened: https://github.com/.../pull/...
|
|
142
|
+
Waiting for approval — run: mushi tdd approve qa_...
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
**Verify in DB:**
|
|
146
|
+
|
|
147
|
+
```sql
|
|
148
|
+
SELECT id, title, approval_status, source, automation_mode, created_at
|
|
149
|
+
FROM qa_stories
|
|
150
|
+
ORDER BY created_at DESC LIMIT 1;
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
Expected: `source = 'test_gen_from_story'`, `approval_status = 'pending_review'`.
|
|
154
|
+
|
|
155
|
+
**Via MCP:**
|
|
156
|
+
|
|
157
|
+
```
|
|
158
|
+
list_pending_review_stories(projectId)
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## Stage 5 — Approval and execution [LOW freedom — run exactly]
|
|
164
|
+
|
|
165
|
+
Approve the generated test:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
mushi tdd approve <qa-story-id>
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
Trigger a manual run immediately:
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
mushi tdd run <qa-story-id>
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
**Verify in DB:**
|
|
178
|
+
|
|
179
|
+
```sql
|
|
180
|
+
SELECT id, status, latency_ms, provider_session_url, created_at
|
|
181
|
+
FROM qa_story_runs
|
|
182
|
+
WHERE qa_story_id = '<qa-story-id>'
|
|
183
|
+
ORDER BY created_at DESC LIMIT 1;
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
Expected: `status = 'completed'` (or `failed` — a failure here is fine; it means the test ran and detected real friction).
|
|
187
|
+
|
|
188
|
+
**Via MCP:**
|
|
189
|
+
|
|
190
|
+
```
|
|
191
|
+
run_qa_story(projectId, qaStoryId)
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## Stage 6 — PDCA improvement cycle [LOW freedom — run exactly]
|
|
197
|
+
|
|
198
|
+
If Stage 5 produced a failure, trigger the PDCA improver:
|
|
199
|
+
|
|
200
|
+
```bash
|
|
201
|
+
mushi tdd improve
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
Expected: Claude analyzes the failure, writes an improved test, and queues it for review.
|
|
205
|
+
|
|
206
|
+
**Verify:**
|
|
207
|
+
|
|
208
|
+
```sql
|
|
209
|
+
SELECT id, title, source, parent_story_id, approval_status, created_at
|
|
210
|
+
FROM qa_stories
|
|
211
|
+
WHERE source = 'pdca'
|
|
212
|
+
ORDER BY created_at DESC LIMIT 3;
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
Expected: at least one row with `source = 'pdca'` and a `parent_story_id` pointing to the original.
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Stage 7 — Evolution loop (optional) [HIGH freedom]
|
|
220
|
+
|
|
221
|
+
Check the full PDCA dashboard to confirm the loop is converging:
|
|
222
|
+
|
|
223
|
+
**Via MCP resource:**
|
|
224
|
+
|
|
225
|
+
```
|
|
226
|
+
project://dashboard
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
Look for:
|
|
230
|
+
- Rising `judge_scores` over time.
|
|
231
|
+
- Falling `recurrence_rate` (same bugs re-appearing).
|
|
232
|
+
- `fix_attempts` with `status = 'completed'` outpacing `failed`.
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
## Pass/Fail Summary [LOW freedom — do not skip]
|
|
237
|
+
|
|
238
|
+
| Stage | What ran | Status | Notes |
|
|
239
|
+
|-------|----------|--------|-------|
|
|
240
|
+
| 1. Bug capture | `mushi test` → `reports` row | ✅ / ❌ | |
|
|
241
|
+
| 2. AI triage | `classify-report` → severity/category | ✅ / ❌ | |
|
|
242
|
+
| 3. Story mapping | `story-mapper` → `inventory_proposals` | ✅ / ❌ | |
|
|
243
|
+
| 4. TDD generation | Mushi edge fn `test-gen-from-story` → `qa_stories` | ✅ / ❌ | |
|
|
244
|
+
| 5. Approval + run | `qa-story-runner` → `qa_story_runs` | ✅ / ❌ | |
|
|
245
|
+
| 6. PDCA improve | `pdca-runner` → `qa_stories (source=pdca)` | ✅ / ❌ | |
|
|
246
|
+
|
|
247
|
+
All ✅ → Mushi is fully operational end-to-end.
|
|
248
|
+
Any ❌ → the relevant edge function failed. Run the mushi MCP `diagnose_setup` tool for targeted diagnosis.
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
## Tips [HIGH freedom]
|
|
253
|
+
|
|
254
|
+
- **Fastest smoke test:** Stages 1–2 only. Takes ~60 s and confirms bug capture + triage is alive.
|
|
255
|
+
- **Story map only:** Stage 3. Useful after changing the Firecrawl key or updating the `story-mapper` function.
|
|
256
|
+
- **TDD-only check:** Stages 4–6. Run this after changing the Mushi edge functions `test-gen-from-story` or `pdca-runner`.
|
|
257
|
+
- **Browserbase vs Firecrawl:** Stage 5 uses `firecrawl_actions` by default. To test Browserbase: set `provider = 'browserbase'` on the QA story in the console first.
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-aeo-readiness
|
|
3
|
+
description: >
|
|
4
|
+
Plan-only audit of answer-engine (AEO/GEO) citation readiness for ChatGPT,
|
|
5
|
+
Perplexity, and AI Overviews. Use when "AEO", "GEO", "show up in
|
|
6
|
+
ChatGPT/Perplexity", "AI search visibility", "llms.txt", or "am I blocking
|
|
7
|
+
AI crawlers".
|
|
8
|
+
license: MIT
|
|
9
|
+
effort: high
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Answer-Engine Readiness Audit + Citation Plan
|
|
13
|
+
|
|
14
|
+
**Degree of freedom: HIGH** — crawl access, extractability, authority levers, plan.
|
|
15
|
+
Stay **plan-only**. No robots.txt, schema, or copy edits until approved.
|
|
16
|
+
|
|
17
|
+
## This skill vs neighbors
|
|
18
|
+
|
|
19
|
+
| Skill | Owns |
|
|
20
|
+
|---|---|
|
|
21
|
+
| **plan-aeo-readiness** (this) | Answer-engine / GEO citation plan |
|
|
22
|
+
| `enhance-web-seo` | Classic search meta / sitemap / OG |
|
|
23
|
+
| `plan-antislop` | Voice / slop in the copy itself |
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
**Role:** Senior growth engineer + content strategist (AEO/GEO lens).
|
|
27
|
+
|
|
28
|
+
**Task:** Confirm AI crawler access first, audit content extractability and authority
|
|
29
|
+
levers per key page, phase remediations, emit `plan-aeo-readiness.md`. **Audit & plan
|
|
30
|
+
only — no robots.txt, schema, or copy edits until approved.**
|
|
31
|
+
|
|
32
|
+
**Find why AI engines don't cite you. Plan the fix. Change nothing until approved.**
|
|
33
|
+
|
|
34
|
+
## How to reason (every plan item)
|
|
35
|
+
|
|
36
|
+
1. **Propose** — unblock a bot, SSR/expose, schema, or authority lever
|
|
37
|
+
2. **Risk** — engines never see the page, or they see it and have nothing to cite
|
|
38
|
+
3. **Keep-working** — pages already answer-first with valid schema
|
|
39
|
+
4. **Phase** — Unblock → Structure → Authority → Entity-measure (do not execute)
|
|
40
|
+
|
|
41
|
+
## Worked example
|
|
42
|
+
|
|
43
|
+
> **Propose:** allow GPTBot/PerplexityBot in robots.txt; add an FAQ JSON-LD block on `/pricing`.
|
|
44
|
+
> **Risk:** Cloudflare default blocks AI bots — citation frequency is zero until access exists.
|
|
45
|
+
> **Keep-working:** `/docs` is SSR and already direct-answer-first.
|
|
46
|
+
> **Phase:** Phase 1 — Unblock & expose.
|
|
47
|
+
> **Lever:** access before schema; do not promise a rank.
|
|
48
|
+
|
|
49
|
+
Ranking #1 on Google no longer buys an AI citation. Overlap between top Google links
|
|
50
|
+
and AI-cited sources has **dropped from ~70% to below 20%**. LLM-referred visitors
|
|
51
|
+
convert markedly better than classic search traffic (~4.4x in one 2026 analysis).
|
|
52
|
+
|
|
53
|
+
This skill targets *LLM citation* — distinct from SERP rank (`enhance-web-seo`).
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## When this fires
|
|
58
|
+
|
|
59
|
+
Trigger phrases: *"do AI engines cite me"*, *"AEO"*, *"GEO"*, *"answer engine
|
|
60
|
+
optimization"*, *"show up in ChatGPT/Perplexity"*, *"AI search visibility"*,
|
|
61
|
+
*"llms.txt"*, *"am I blocking AI crawlers"*.
|
|
62
|
+
|
|
63
|
+
Do **not** fire for: classic Google ranking or Core Web Vitals alone
|
|
64
|
+
(`enhance-web-seo`). For Google AI Overviews, classic ranking is still often a
|
|
65
|
+
prerequisite — note and hand that layer to `enhance-web-seo`.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## The audit [HIGH freedom]
|
|
70
|
+
|
|
71
|
+
### A · Can AI even read the site?
|
|
72
|
+
- **robots.txt** — GPTBot, ClaudeBot, PerplexityBot, Google-Extended, and each engine's other current crawler tokens allowed? Check the engines' published token lists; the set changes.
|
|
73
|
+
- **CDN / Cloudflare** — AI-bot blocking can be on by default; if the site sits behind a CDN, confirm bot access with a live fetch.
|
|
74
|
+
- **SSR vs JS-hidden** — content behind client JS/login/paywall can't be cited.
|
|
75
|
+
- **llms.txt** — present? Recommend describing site structure for AI systems.
|
|
76
|
+
|
|
77
|
+
### B · Extractable & answer-shaped?
|
|
78
|
+
- **Direct-answer-first** — concise answer before context.
|
|
79
|
+
- **Heading hierarchy** — H1→H2→H3, one topic per section.
|
|
80
|
+
- **Schema markup** — FAQ, HowTo, Product, Review, Speakable JSON-LD valid.
|
|
81
|
+
- **Sub-query coverage** — answers likely fan-out sub-questions.
|
|
82
|
+
|
|
83
|
+
### C · Citable / authoritative? (Princeton GEO levers)
|
|
84
|
+
- **Expert quotes / attribution** (~+41% citation probability).
|
|
85
|
+
- **Statistics & data** (~+30%).
|
|
86
|
+
- **Inline citations** to authoritative sources (~+30%).
|
|
87
|
+
- **No keyword stuffing** (~-9%); hand AI-slop copy to `plan-antislop`.
|
|
88
|
+
|
|
89
|
+
### D · Entity & consensus (advisory)
|
|
90
|
+
- Brand consistency across crawled sources; platform presence gaps. Note only.
|
|
91
|
+
|
|
92
|
+
### E · Measurability
|
|
93
|
+
- Baseline citation monitoring across engines recommended.
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Procedure [HIGH freedom — plan only]
|
|
98
|
+
|
|
99
|
+
1. **Crawl-access first** (A) — blocked bots = finding #1.
|
|
100
|
+
2. **Audit content shape & authority** (B, C) per key page.
|
|
101
|
+
3. **Note entity/measurability** (D, E).
|
|
102
|
+
4. **Score** by impact × effort.
|
|
103
|
+
5. **Emit `plan-aeo-readiness.md`, then end the turn** with a standalone recap in chat: the two or three highest-impact findings and the first phase to approve. The file is the deliverable — write it before the recap.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Guardrails
|
|
108
|
+
|
|
109
|
+
- **Plan only.** No robots.txt, schema, or copy edits.
|
|
110
|
+
- **Access before optimization.**
|
|
111
|
+
- **Don't promise rankings** — frame as citation frequency, not fixed rank.
|
|
112
|
+
- **Authenticity over gaming** — real expertise, not manufactured quote-stuffing.
|
|
113
|
+
- **Cross-hand copy** to `plan-antislop`.
|
|
114
|
+
|
|
115
|
+
## Self-critique before the burndown [LOW freedom — do not skip]
|
|
116
|
+
|
|
117
|
+
1. **evidenced-not-assumed** — robots/CDN/SSR checked on real URLs, not assumed open
|
|
118
|
+
2. **plan-only** — no robots.txt, schema, or copy edits
|
|
119
|
+
3. **severity/phase justified** — blocked bots are finding #1, not buried under schema polish
|
|
120
|
+
4. **right-owner** — classic meta/sitemap/OG → `enhance-web-seo`; slop copy → `plan-antislop`
|
|
121
|
+
5. **no-false-safety** — do not promise rankings; citation frequency only; no manufactured quote-stuffing
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## Report template — `plan-aeo-readiness.md`
|
|
126
|
+
|
|
127
|
+
```markdown
|
|
128
|
+
# Answer-Engine Readiness Audit — <site>
|
|
129
|
+
|
|
130
|
+
_Audit-only. Nothing changes until each phase is approved._
|
|
131
|
+
|
|
132
|
+
## Scope
|
|
133
|
+
- Pages/routes audited: … | Behind Cloudflare/CDN: ☐
|
|
134
|
+
|
|
135
|
+
## Verdict
|
|
136
|
+
| Area | Status | Worst gap |
|
|
137
|
+
|------|--------|-----------|
|
|
138
|
+
| AI crawler access | ❌ | GPTBot blocked |
|
|
139
|
+
| Content extractability | partial | answers buried |
|
|
140
|
+
| Authority levers | weak | no stats/quotes |
|
|
141
|
+
|
|
142
|
+
## Findings
|
|
143
|
+
| # | Page | Gap | Lever | Sev | Direction |
|
|
144
|
+
|---|------|-----|-------|-----|-----------|
|
|
145
|
+
|
|
146
|
+
## Phased burndown
|
|
147
|
+
- **Phase 1 — Unblock & expose** → `enhance-web-seo` — robots, CDN, SSR, llms.txt
|
|
148
|
+
- **Phase 2 — Structure & schema** → `enhance-web-seo` — direct-answer-first, JSON-LD
|
|
149
|
+
- **Phase 3 — Authority levers** → `docs-writer` — stats, quotes, citations
|
|
150
|
+
- **Phase 4 — Entity/measure (advisory)** → off-site + monitoring baseline
|
|
151
|
+
|
|
152
|
+
## Execution handoff
|
|
153
|
+
Set citation-monitoring baseline before/after so improvement is measured.
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## Chains with
|
|
159
|
+
|
|
160
|
+
- **Launch gates loop** — growth/discoverability; run alongside `plan-mobile-readiness`.
|
|
161
|
+
- **`enhance-web-seo`** — classic ranking underpins AI Overviews.
|
|
162
|
+
- **`plan-antislop`** — generic copy suppresses citation.
|
|
163
|
+
- **Execution:** `enhance-web-seo`, `docs-writer`, `enhance-web-landing`.
|
|
164
|
+
- **Verify:** prompt-test target queries across engines before/after.
|
|
165
|
+
|
|
166
|
+
> Planned at high effort; executed at the default effort under the approved-plan execution rule (`approved-plan-execution.mdc`), which forbids reward hacking and feature deletion on any model.
|