@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
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,1790 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable additions and changes to kenji (`kensaurus/skills`, named `cursor-kenji` before 2.0.0) are listed here.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## [Unreleased]
|
|
8
|
+
|
|
9
|
+
## [2.1.0] — 2026-10-01
|
|
10
|
+
|
|
11
|
+
UX laws as a measured fix pass, and the Miller misreading removed from the
|
|
12
|
+
pack.
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- **`enhance-ux-laws`.** Measure-then-fix pass on one screen or flow against
|
|
17
|
+
seven Laws of UX: Fitts, Hick, Miller, Jakob, Zeigarnik, Goal-Gradient and
|
|
18
|
+
Von Restorff. A browser probe measures tap targets, competing accents,
|
|
19
|
+
choice sets, unlabeled fields and progress cues at phone and desktop widths;
|
|
20
|
+
an eight-check flow walk covers what the DOM cannot show (resume after
|
|
21
|
+
reload, dead controls, pasted codes). Each law states its precondition and
|
|
22
|
+
what it does not say. Progress and resume cues must read real state, and
|
|
23
|
+
drafts never store card numbers or one-time codes.
|
|
24
|
+
|
|
25
|
+
### Changed
|
|
26
|
+
|
|
27
|
+
- **Miller and Hick read correctly.** `audit-ux` and `enhance-web-ux` no
|
|
28
|
+
longer cap menus or navigation at seven items: Miller is about what the user
|
|
29
|
+
must hold in mind, and Hick applies only when options must be weighed, not to
|
|
30
|
+
known-item lookups. `audit-ux` gains Von Restorff and
|
|
31
|
+
Goal-Gradient/Zeigarnik rows.
|
|
32
|
+
- **Releases are staged.** `npm-publish.yml` runs `npm stage publish
|
|
33
|
+
--provenance`; a version goes live only when the maintainer approves it with
|
|
34
|
+
2FA. CI actions moved to v5 (Node 24).
|
|
35
|
+
- Six skill descriptions dropped duplicate trigger phrases so the listing stays
|
|
36
|
+
under its 39,000-character ratchet with the new skill (ADR-0010).
|
|
37
|
+
|
|
38
|
+
## [2.0.0] — 2026-10-01
|
|
39
|
+
|
|
40
|
+
**cursor-kenji is now kenji: `kensaurus/skills` on GitHub, `@kensaurus/skills`
|
|
41
|
+
on npm, plugin `kenji@kenji`.** Same pack, tool-neutral name. Breaking because
|
|
42
|
+
the plugin ID and the `/cursor-kenji:` slash namespace change (ADR-0013).
|
|
43
|
+
Upgrade steps: README → "Upgrading from cursor-kenji".
|
|
44
|
+
|
|
45
|
+
### Changed
|
|
46
|
+
|
|
47
|
+
- **Renamed.** Repo `kensaurus/cursor-kenji` → `kensaurus/skills` (old URLs
|
|
48
|
+
redirect), npm `@kensaurus/cursor-kenji` → `@kensaurus/skills`, CLI
|
|
49
|
+
`cursor-kenji` → `kenji`, plugin and marketplace `cursor-kenji` → `kenji`,
|
|
50
|
+
Windows shim `cursor-kenji.cmd` → `kenji.cmd`.
|
|
51
|
+
- **Existing installs migrate.** The installer replaces a pre-2.0.0
|
|
52
|
+
completion-gate entry (`cursor-kenji-hooks/`) with `kenji-hooks/`, keeps every
|
|
53
|
+
other hook and setting, and removes the orphaned folder. `--restore` also
|
|
54
|
+
reads the legacy `.cursor-kenji-backups/`. Claude plugin installs follow the
|
|
55
|
+
marketplace `renames` map. `CURSOR_KENJI_GATE_STATE_DIR` and
|
|
56
|
+
`CURSOR_KENJI_DIR` still work beside `KENJI_GATE_STATE_DIR` and
|
|
57
|
+
`KENJI_SKILLS_DIR`.
|
|
58
|
+
- **Tool-neutral listing.** Descriptions and keywords name Claude Code, Cursor,
|
|
59
|
+
Codex CLI, and Gemini CLI; the homepage is the GitHub README until the new
|
|
60
|
+
skills.sh page is indexed.
|
|
61
|
+
- Ten skill descriptions dropped duplicate trigger phrases to keep the skill
|
|
62
|
+
listing under its 39,000-character ratchet (ADR-0010). Every routing pointer
|
|
63
|
+
stays.
|
|
64
|
+
|
|
65
|
+
### Added
|
|
66
|
+
|
|
67
|
+
- **`audit-agent-speed`.** Measures, then fixes a slow coding-agent host:
|
|
68
|
+
transcript-parsing status lines, per-call and blocking Stop hooks, AGENTS.md
|
|
69
|
+
skipped under a parent CLAUDE.md, un-ignored worktree folders doubling
|
|
70
|
+
search, global effort and Explore model, worktree pile-up, antivirus,
|
|
71
|
+
indexer and vendor WMI pollers. Ships
|
|
72
|
+
`scripts/stop-typecheck.mjs`, an `asyncRewake` Stop hook that typechecks in
|
|
73
|
+
the background, skips when nothing changed, wakes the agent only on a new
|
|
74
|
+
error set, and summarizes codegen cascades.
|
|
75
|
+
- Routing rule: agent or machine slow → `audit-agent-speed`; product slow →
|
|
76
|
+
`audit-performance`.
|
|
77
|
+
|
|
78
|
+
### Fixed
|
|
79
|
+
|
|
80
|
+
- `docs/AGENTS.template.md` now says Claude Code skips `AGENTS.md` when a
|
|
81
|
+
`CLAUDE.md` exists in the repo or any parent folder, and how to load both.
|
|
82
|
+
|
|
83
|
+
## [1.40.1] — 2026-09-29
|
|
84
|
+
|
|
85
|
+
The completion gate stops looping. In Cursor it ran twice on every stop, and
|
|
86
|
+
the copy loaded from the Claude Code config had no cap, so an open checklist
|
|
87
|
+
sent the same follow-up for hours, including to sessions that did not own it.
|
|
88
|
+
|
|
89
|
+
### Fixed
|
|
90
|
+
|
|
91
|
+
- **The completion gate looped for hours in Cursor.** Cursor also runs Claude
|
|
92
|
+
Code hooks from `~/.claude/settings.json`, with no `loop_limit`, so every
|
|
93
|
+
stop was gated twice and the Claude-config copy never stood aside. Each
|
|
94
|
+
registration now carries `--host=cursor` or `--host=claude`, and inside
|
|
95
|
+
Cursor the Claude-config copy stands aside when the native entry exists
|
|
96
|
+
(ADR-0012).
|
|
97
|
+
- **Two agents in one repo restarted each other's loop.** The follow-up budget
|
|
98
|
+
was one workspace counter. It is now per conversation, kept in
|
|
99
|
+
`~/.cache/cursor-kenji/completion-gate/`: three follow-ups while none of the
|
|
100
|
+
items that conversation saw closes. The old
|
|
101
|
+
`.cursor/completion-gate.count.json` is deleted on the next run.
|
|
102
|
+
- **The gate pushed work that waits on a person.** Items marked
|
|
103
|
+
`blocked by:`, `blocked on:`, or `waiting on:` no longer gate, and neither
|
|
104
|
+
does a state file untouched for 24 hours. The follow-up now says how to
|
|
105
|
+
stand down: mark an item that waits on a person as blocked, leave a
|
|
106
|
+
checklist another agent owns unchanged, say so in one line, and stop.
|
|
107
|
+
|
|
108
|
+
## [1.40.0] — 2026-09-29
|
|
109
|
+
|
|
110
|
+
Ships the `housekeep-files` document organizer, with the Windows script fixed
|
|
111
|
+
so it actually runs on the PowerShell it claims to support. The fix came from
|
|
112
|
+
running the skill on a real Downloads tree: the bundled script would not parse
|
|
113
|
+
under Windows PowerShell 5.1, and an earlier run under a Japanese code page
|
|
114
|
+
had copied an access-key bundle that its secret rule should have refused.
|
|
115
|
+
|
|
116
|
+
### Added
|
|
117
|
+
|
|
118
|
+
- **`housekeep-files`** skill + `/housekeep-files` command: organize a
|
|
119
|
+
drifted document tree (Downloads, a synced drive) into per-owner homes
|
|
120
|
+
by copy, not move. Bundled `scripts/housekeep-files.ps1` (Windows
|
|
121
|
+
PowerShell 5.1+) and `scripts/housekeep-files.sh` (macOS/Linux bash)
|
|
122
|
+
read the same `plan.tsv` and run inventory (SHA-256 of every source) →
|
|
123
|
+
dry run → apply → verify. Keys, credentials, media over the size cap,
|
|
124
|
+
and installers are cataloged in place, never copied. Vague filenames get
|
|
125
|
+
`{entity}_{area}_{date}_{doc-type}__{original}`; each owner root gets a
|
|
126
|
+
visible `_ai-catalog.jsonl` and `_SEARCH.md`. `verify` re-checks every
|
|
127
|
+
source path and size, re-hashes every copy, recounts untouched media
|
|
128
|
+
folders, and exits non-zero on the first miss. Layout options (root per
|
|
129
|
+
owner, one root with owners inside, PARA-lite) are offered before the
|
|
130
|
+
plan is written. Sources in `references/naming-and-catalog.md`.
|
|
131
|
+
|
|
132
|
+
### Fixed
|
|
133
|
+
|
|
134
|
+
- **`housekeep-files.ps1` failed or misbehaved on Windows PowerShell 5.1.**
|
|
135
|
+
The file was UTF-8 without a BOM and held three non-ASCII characters (the
|
|
136
|
+
`アクセスキー` secret pattern and two em dashes). PowerShell 5.1 decodes a
|
|
137
|
+
BOM-less script with the ANSI code page. Under cp1252 an em dash becomes a
|
|
138
|
+
curly quote that ends the string, so the script does not parse. Under cp932
|
|
139
|
+
it parses, but the CJK pattern turns into mojibake, so a file named for an
|
|
140
|
+
access key is copied instead of cataloged in place. The script is now pure
|
|
141
|
+
ASCII, and the pattern is written as a `\uXXXX` regex escape. Verified by
|
|
142
|
+
running the old and new script natively under 5.1 on a folder holding an
|
|
143
|
+
`…アクセスキー…zip`: the old one throws a parse error; the new one marks the
|
|
144
|
+
zip `indexed-in-place:secret`.
|
|
145
|
+
- **Guard:** `validate-skills` fails on any shipped `.ps1`, `.psm1`, or
|
|
146
|
+
`.psd1` that contains a non-ASCII byte without a UTF-8 BOM, and reports
|
|
147
|
+
the file and line. Probe: a BOM-less em dash in a scratch `.ps1` fails;
|
|
148
|
+
the same text with a BOM passes.
|
|
149
|
+
|
|
150
|
+
If you ran `housekeep-files` on Windows before this release, check each
|
|
151
|
+
`_ai-catalog.jsonl` for `copied-source-kept` rows whose path contains
|
|
152
|
+
`アクセスキー`, and rotate those keys.
|
|
153
|
+
|
|
154
|
+
## [1.39.0] — 2026-09-23
|
|
155
|
+
|
|
156
|
+
Closes the last three open items from the Opus 5.5 pass: the always-on
|
|
157
|
+
routing rule, facts that went stale, and broken markdown. Each fix was
|
|
158
|
+
researched from primary sources (package source, vendor docs, npm) and
|
|
159
|
+
checked by an independent verifier before it was applied.
|
|
160
|
+
|
|
161
|
+
### Changed
|
|
162
|
+
|
|
163
|
+
- **`skill-workflows.mdc` halved** (3,246 → 1,614 bytes), ADR-0011. Claude
|
|
164
|
+
Code loads it in every session. It now lists only the mappings a skill
|
|
165
|
+
name gets wrong, for example `workflow-release-prep` never merges and
|
|
166
|
+
`workflow-onboard` is not product onboarding. It also keeps the
|
|
167
|
+
multi-phase → workflow principle and the six audit-and-fix exceptions.
|
|
168
|
+
Everything else was already in skill descriptions or the verification
|
|
169
|
+
rule.
|
|
170
|
+
- **Supabase MCP calls match current servers.** Current servers (the pinned
|
|
171
|
+
0.12.0 and the hosted one) hide `get_logs` and list `query_logs`, which
|
|
172
|
+
takes ClickHouse SQL filtered by `source`. The skills now use it, with SQL
|
|
173
|
+
taken from the server's own per-service queries. The pack's config is
|
|
174
|
+
project-scoped (`--project-ref`), so calls no longer pass `project_id`,
|
|
175
|
+
and `list_projects` is described as available only on an unscoped server.
|
|
176
|
+
Affected: `deploy-verify`, `iterate-post-launch`, `workflow-fix-and-ship`,
|
|
177
|
+
`workflow-feature-flag`, `workflow-feedback-to-closure`, `mushi-*`,
|
|
178
|
+
`test-*`, `mobile-emulator-test`, `audit-db-schema`, `audit-fe-api`,
|
|
179
|
+
`audit-langfuse-llm`, `debug-fe-be-integration`, `design-prd`, and the
|
|
180
|
+
`full-stack-ship-discipline` rule.
|
|
181
|
+
- **Sentry MCP calls match the current server.**
|
|
182
|
+
- `get_issue_breadcrumbs`, `get_issue_tag_values`, and `find_releases` are
|
|
183
|
+
catalog tools, reached through `execute_sentry_tool`; `search_sentry_tools`
|
|
184
|
+
is the fallback.
|
|
185
|
+
- `update_issue` needs the Triage skill on the connection.
|
|
186
|
+
- Relative issue-search dates take a sign (`firstSeen:-1h`).
|
|
187
|
+
- **`enhance-pwa`** uses current facts:
|
|
188
|
+
- Next.js caching goes through Serwist; `@ducanh2912/next-pwa` is
|
|
189
|
+
webpack-only.
|
|
190
|
+
- Lighthouse 12 removed its PWA category, so installability is checked in
|
|
191
|
+
DevTools. `workflow-launch-ready` and the catalog no longer ask for a PWA
|
|
192
|
+
score.
|
|
193
|
+
- `navigateFallback` is the SPA shell, not an offline page.
|
|
194
|
+
- `beforeinstallprompt` fires only in Chromium.
|
|
195
|
+
- **`enhance-web-instant-nav`** gives the current Speculation Rules eagerness
|
|
196
|
+
defaults and Next.js 16.3 Instant Navigations.
|
|
197
|
+
- **`plan-capacitor-hardening`** names the current Capsec package
|
|
198
|
+
(`@capgo/capgo-sec`) and its rule families, and says Ionic Identity Vault
|
|
199
|
+
stopped new sales in 2025-02.
|
|
200
|
+
- **No calendar-stamped advice.**
|
|
201
|
+
- Search queries use `[current year]`.
|
|
202
|
+
- "(2026)" labels on current guidance are gone.
|
|
203
|
+
- A cost tier is named as a tier, not a model.
|
|
204
|
+
- Token-cap and streaming-usage fields are named per provider.
|
|
205
|
+
- The OWASP red-team checklist says it maps the 2021 edition.
|
|
206
|
+
|
|
207
|
+
### Added
|
|
208
|
+
|
|
209
|
+
- **`scripts/check-md-structure.mjs`**, in `npm test` and CI, fails on a
|
|
210
|
+
nested or unclosed code fence.
|
|
211
|
+
- **`check-skill-refs` flags `supabase:get_logs`.**
|
|
212
|
+
|
|
213
|
+
### Fixed
|
|
214
|
+
|
|
215
|
+
- **13 code-fence errors in 9 files.** A nested or unclosed fence rendered
|
|
216
|
+
the rest of an output template as live markdown. Affected: `design-prd`,
|
|
217
|
+
`plan-dead-code`, `audit-db-schema`, `audit-langfuse-llm`,
|
|
218
|
+
`audit-uiux-design-system`, `backend-error-handling`, and
|
|
219
|
+
`docs/CONTRIBUTING.md`.
|
|
220
|
+
- **Duplicate headings.** The ones in `audit-code-quality` and
|
|
221
|
+
`docs-coauthor` now have distinct names. The catalog's duplicate
|
|
222
|
+
`audit-skill-conflicts` entry is now a pointer to its Audit entry.
|
|
223
|
+
- **The README said `audit-*` skills may fix things.** It now says they
|
|
224
|
+
report and stop by default, names the six audit-and-fix skills, and notes
|
|
225
|
+
the few others that end with an explicit apply step.
|
|
226
|
+
- **`CITATION.cff`** still said version 1.31.0.
|
|
227
|
+
|
|
228
|
+
## [1.38.0] — 2026-09-23
|
|
229
|
+
|
|
230
|
+
Follow-through on 1.37. A section-by-section check of the Opus 5.5 plan
|
|
231
|
+
against the repo, run in fresh contexts, found edits that were only half
|
|
232
|
+
applied. Reading the Claude Code client showed its skill-listing budget
|
|
233
|
+
works differently from what ADR-0008 assumed.
|
|
234
|
+
|
|
235
|
+
### Changed
|
|
236
|
+
|
|
237
|
+
- **Skill descriptions trimmed.** 137 descriptions were rewritten to about
|
|
238
|
+
230 chars. The rewrite kept the distinct trigger phrases and the handoffs
|
|
239
|
+
that separate overlapping triggers, and dropped filler, synonyms, and lists
|
|
240
|
+
of chained skills. The pack's Claude Code listing drops about 15%, from
|
|
241
|
+
45,573 to 38,979 chars; every request carries that listing on both hosts.
|
|
242
|
+
- **`validate-skills` measures the listing the way the client does**: one
|
|
243
|
+
`- name: description` line per model-invocable skill and command, with
|
|
244
|
+
agents reported separately. It fails above `LISTING_MAX_CHARS` (39,000).
|
|
245
|
+
ADR-0010 supersedes ADR-0008's measure and corrects its facts:
|
|
246
|
+
- the budget is 1% of the context window at 3 chars/token for current
|
|
247
|
+
models, 30,000 chars on a 1M Opus 5.5 session;
|
|
248
|
+
- built-in skills share that budget;
|
|
249
|
+
- over budget, the least-used skills show by name only, and nothing is
|
|
250
|
+
dropped.
|
|
251
|
+
- **Keep every description visible on Claude Code** with
|
|
252
|
+
`"skillListingBudgetFraction": 0.02` in `~/.claude/settings.json`. The
|
|
253
|
+
installer prints the installed listing size and this setting; it does not
|
|
254
|
+
change your settings.
|
|
255
|
+
- **Authoring surfaces say T1–T8**: `enhance-skill-prompts`,
|
|
256
|
+
`meta-skill-creator`, `audit-skill-conflicts`, CATALOG, and the playbook
|
|
257
|
+
describe T2 as a classification contract and T4 as an evidence rubric.
|
|
258
|
+
- **`docs/DISTRIBUTION.md`**: the completion-hook column lists Claude Code and
|
|
259
|
+
the plugin's Stop hook, and warns against running the plugin hook and the
|
|
260
|
+
`--claude` hook together.
|
|
261
|
+
|
|
262
|
+
### Fixed
|
|
263
|
+
|
|
264
|
+
- **Leftovers from 1.37.0's mechanical edits.** In about 30 files a passage
|
|
265
|
+
was replaced but its old lines stayed under the new ones:
|
|
266
|
+
- `audit-ux` had a second set of sections 0b–0e;
|
|
267
|
+
- `audit-security` kept its old vulnerability examples;
|
|
268
|
+
- `audit-code-review` kept its DO/DON'T lists after the new review rule;
|
|
269
|
+
- `enhance-web-seo` had broken JSON in its research step;
|
|
270
|
+
- `debug-error` and `debug-sentry-monitor` repeated checklists;
|
|
271
|
+
- `tdd-patterns` had an orphan comment;
|
|
272
|
+
- several paragraphs had fallen into the list or blockquote above them.
|
|
273
|
+
- **`backend-realtime` printed secrets.** It told the agent to `cat .env*`,
|
|
274
|
+
which prints secret values; it now lists variable names only.
|
|
275
|
+
- **`rules/approved-plan-execution.mdc` had invalid YAML frontmatter**: an
|
|
276
|
+
unquoted `: ` in the description. A strict parser rejects it, which can
|
|
277
|
+
drop the rule's `paths:` scope.
|
|
278
|
+
- **Merge installs now prune leftovers from older releases** on both hosts:
|
|
279
|
+
- the renamed `/plan` command, pruned only while it still carries the
|
|
280
|
+
pack's description;
|
|
281
|
+
- the `native-rn-monorepo` command bundle, which older installers copied
|
|
282
|
+
into the global commands folder, registering ten `native-rn-monorepo:*`
|
|
283
|
+
commands in every project.
|
|
284
|
+
- **`migrate-to-skills`** skipped creating the skills folders when no
|
|
285
|
+
subagent tool was available.
|
|
286
|
+
- **`create-skill` and `meta-skill-creator`** told every skill to repeat the
|
|
287
|
+
always-on update rule. They now say never to suppress it, and to add a
|
|
288
|
+
turn-end line only for unattended skills.
|
|
289
|
+
- **`audit-auth-flows` and its annotated exemplar** match again: same effort
|
|
290
|
+
key, same finding-shape wording.
|
|
291
|
+
- **Closure runs could not record a verification rung that does not apply.**
|
|
292
|
+
In a headless `/complete-everything` probe on a repo with no typecheck or
|
|
293
|
+
lint, the unchecked rungs made the Stop hook block, and the model invented a
|
|
294
|
+
`[-]` marker that the hook then skipped with no reason required. The skill
|
|
295
|
+
now defines `- [-] <rung> — n/a: <evidence>`. The completion gate counts a
|
|
296
|
+
`[-]` line without an `n/a:` reason as open, and `completion-judge` checks
|
|
297
|
+
the reason. The skill also notes that Claude Code shows "Stop hook error
|
|
298
|
+
occurred" for every Stop-hook block; that is the gate working, not a
|
|
299
|
+
failure.
|
|
300
|
+
|
|
301
|
+
## [1.37.1] — 2026-09-23
|
|
302
|
+
|
|
303
|
+
### Fixed
|
|
304
|
+
|
|
305
|
+
- **`--verify` reported line endings as corruption.** A Windows checkout with
|
|
306
|
+
`core.autocrlf=true` carries CRLF in the working copy while the npm tarball
|
|
307
|
+
(built on Linux) is LF, so an install from a clone followed by
|
|
308
|
+
`npx @kensaurus/cursor-kenji --verify --all` failed on 17 files with
|
|
309
|
+
"content hash mismatch". `bin/install.mjs` now hashes text files with line
|
|
310
|
+
endings normalized; the install smoke test plants a CRLF copy and expects
|
|
311
|
+
`--verify` to pass.
|
|
312
|
+
|
|
313
|
+
## [1.37.0] — 2026-09-23
|
|
314
|
+
|
|
315
|
+
An Opus 5.5 pass. Claude Code 2.1.280 made Claude Opus 5.5 the default model
|
|
316
|
+
on 2026-09-22, and it changes two assumptions the pack was written on: prose
|
|
317
|
+
no longer steers thinking (effort does, and its default is `medium`), and
|
|
318
|
+
there is no strong planner / fast implementer split left to route around.
|
|
319
|
+
|
|
320
|
+
### Added
|
|
321
|
+
|
|
322
|
+
- **`docs/MODEL-AND-EFFORT.md`** — the model story: default model per host,
|
|
323
|
+
how to set effort (`/effort`, `modelSettings`, frontmatter `effort:`), the
|
|
324
|
+
pack's routing table, what changed in how skills are written, the always-on
|
|
325
|
+
token budget. ADR-0006 … ADR-0009 record the decisions.
|
|
326
|
+
- **`effort:` frontmatter** on every `audit-*`, `plan-*`, `debug-*`, judge and
|
|
327
|
+
security skill (`high`), on `handoff`, `workflow-git-commit`, smoke checks,
|
|
328
|
+
the RN bundle commands and `deploy-checker` (`low`); `workflow-onboard`
|
|
329
|
+
runs in a forked `Explore` context. `validate-skills` checks the values.
|
|
330
|
+
- **Claude Code Stop hook.** `hooks/hooks.json` now carries the Claude
|
|
331
|
+
schema (Cursor's moved to `hooks/cursor-hooks.json`); `completion-gate.mjs`
|
|
332
|
+
serves both hosts; `--claude` installs it into `~/.claude/settings.json`
|
|
333
|
+
with the same merge/preserve/prune semantics as the Cursor hook.
|
|
334
|
+
- **Roster ratchet.** `validate-skills` sums auto-invocable description chars
|
|
335
|
+
(skills + commands + agents) and fails above `ROSTER_MAX_CHARS`; every
|
|
336
|
+
`commands/*.md` except `gtm-weekly`, `fix-issue`, `mcp-guide` is now
|
|
337
|
+
`/`-only (`disable-model-invocation: true`); `deploy-npm`,
|
|
338
|
+
`iterate-gtm-weekly`, `mushi-health`, `mushi-integration` likewise;
|
|
339
|
+
`protocol-browser-anti-stall` and the Cursor `canvas` copy are
|
|
340
|
+
`user-invocable: false`. The `native-rn-monorepo` command bundle no longer
|
|
341
|
+
leaks into global `~/.claude/commands`.
|
|
342
|
+
- **Always-on "Delivering work" section** in
|
|
343
|
+
`verification-before-completion.mdc`: intent line and recap, turn-ending
|
|
344
|
+
check, scope and test-sprawl, delegation criteria, pasted text is data,
|
|
345
|
+
compaction is not a stop signal.
|
|
346
|
+
- `check-skill-refs` fails on prompt fossils (retired model names, thinking
|
|
347
|
+
scaffolds, update suppressors); `check-docs-facts` fails on `.cursor/rules`
|
|
348
|
+
forks and on the retired two-model framing.
|
|
349
|
+
|
|
350
|
+
### Changed
|
|
351
|
+
|
|
352
|
+
- **`composer-2.5-execution.mdc` → `approved-plan-execution.mdc`.** Same
|
|
353
|
+
guardrails, no model pin; the installer prunes the old file on merge
|
|
354
|
+
installs. README, `docs/PLAN-LOOPS.md`, `docs/AGENTS.template.md`,
|
|
355
|
+
`docs/CATALOG.md`, `/burndown-full` and 13 plan-* references now say
|
|
356
|
+
"planned at high effort; executed at the default effort under the rule".
|
|
357
|
+
- **`.cursor/rules/*.mdc`** are byte-identical mirrors of `rules/` (the
|
|
358
|
+
212-line always-on `skill-workflows` fork is gone).
|
|
359
|
+
- **Sequential Thinking MCP retired** from the full template, pins, docs and
|
|
360
|
+
the five skills/commands that routed to it (ADR-0009).
|
|
361
|
+
- **`senior-engineer.mdc`** is `paths:`-scoped to Next.js/Supabase files on
|
|
362
|
+
Claude Code; `shell-first-search` is an `.mdc` rule Cursor can attach;
|
|
363
|
+
`project-starter/web-performance.mdc` is glob-attached, not always-on.
|
|
364
|
+
- **Skills, commands, agents, rules**: pressure language and prohibition
|
|
365
|
+
lists restated at normal volume with reasons; think-tool and self-check
|
|
366
|
+
scaffolds removed; step choreography on judgment tasks replaced by
|
|
367
|
+
outcomes and verification; frontend skills name the Opus 5.5 default
|
|
368
|
+
patterns to avoid; research steps say a recognised name is not current
|
|
369
|
+
knowledge; closure modes say how a turn may end; `## Critical Rules`
|
|
370
|
+
headings are `## Rules`.
|
|
371
|
+
- **`docs/PROMPT-ENHANCEMENT-PLAYBOOK.md`** — T2 is a classification
|
|
372
|
+
contract, not a thinking instruction; T4 is an evidence rubric, not a
|
|
373
|
+
self-check; T7 declares `effort:`; T8 sets volume, shape and
|
|
374
|
+
communication. `enhance-skill-prompts`, `meta-skill-creator`,
|
|
375
|
+
`create-skill`, `create-subagent`, `docs/CONTRIBUTING.md` teach the same.
|
|
376
|
+
- **`llms.txt`, `.claude-plugin/*.json`, README, GETTING-STARTED, CATALOG,
|
|
377
|
+
PROMOTION** — name the model and the effort routing.
|
|
378
|
+
|
|
379
|
+
### Fixed
|
|
380
|
+
|
|
381
|
+
- **`scripts/test-install.mjs`** — the Windows shim test ran `cursor-kenji.cmd`
|
|
382
|
+
from the cwd, which hardened shells block with
|
|
383
|
+
`NoDefaultCurrentDirectoryInExePath=1`. The test now clears that variable for
|
|
384
|
+
the child and also exercises the explicit `.\cursor-kenji.cmd` form.
|
|
385
|
+
|
|
386
|
+
## [1.36.3] — 2026-09-22
|
|
387
|
+
|
|
388
|
+
A command-surface pass. `/plan` became a host built-in in three of the four
|
|
389
|
+
supported tools while we still shipped a file of that name, and four commands
|
|
390
|
+
still promised tools the pack stopped shipping. The collision guard now covers
|
|
391
|
+
every install target instead of Claude Code only.
|
|
392
|
+
|
|
393
|
+
### Changed
|
|
394
|
+
|
|
395
|
+
- **`/plan` → `/plan-mode`, in both command sets.** Claude Code, the Cursor CLI,
|
|
396
|
+
and Gemini CLI each ship a built-in `/plan` that enters Plan mode, so
|
|
397
|
+
`commands/plan.md` duplicated it and `commands-portable/plan.md` shadowed it
|
|
398
|
+
as `~/.gemini/commands/plan.toml`. Both are renamed; the file is the
|
|
399
|
+
procedure, the built-in is the mode switch. Natural-language triggers are
|
|
400
|
+
unchanged. **Restart the host after updating** — Claude Code and Cursor
|
|
401
|
+
register `commands/` at session start.
|
|
402
|
+
- **`commands/mcp-guide`** — describes the actual default template (Firecrawl,
|
|
403
|
+
Context7, Supabase) and headed `playwright-cli`. Sequential Thinking and the
|
|
404
|
+
Playwright MCP are full-template only, so nothing routes to them by default.
|
|
405
|
+
- **`commands/fix-issue`** — dropped a `SemanticSearch` call and the hardcoded
|
|
406
|
+
`npm run test:unit`. Diagnosis routes to `debug-error`, the ship loop to
|
|
407
|
+
`workflow-fix-and-ship`, and verification runs the repo's own checks.
|
|
408
|
+
- **`commands/debug-issue`** — no longer claims Sequential Thinking is part of
|
|
409
|
+
`debug-error`; notes that `/debug` is a built-in in both hosts.
|
|
410
|
+
- **`commands/test`** — tagline matches the body: route to the matching test
|
|
411
|
+
skill rather than run one generic suite.
|
|
412
|
+
- **`commands-portable/research`** — resynced with `skills/research`: repo
|
|
413
|
+
first, docs for the pinned version, no implementation until asked.
|
|
414
|
+
- **`docs/CATALOG.md` `audit-ux`** and **`skills/plan-uiux-unification`** —
|
|
415
|
+
stopped listing Sequential Thinking as available; the skills never called it.
|
|
416
|
+
- **`.claude-plugin/marketplace.json`** — listing said 145 skills and 57
|
|
417
|
+
commands; the real counts are 156 and 62.
|
|
418
|
+
|
|
419
|
+
### Fixed
|
|
420
|
+
|
|
421
|
+
- **The reserved-command guard only covered one of four hosts.** It scanned
|
|
422
|
+
`commands/` against a Claude Code list, so a `commands-portable/` name could
|
|
423
|
+
collide with a Gemini CLI built-in unnoticed — which is exactly how `/plan`
|
|
424
|
+
survived there. `scripts/validate-skills.mjs` now scans both directories
|
|
425
|
+
against the documented built-ins and aliases of Claude Code, the Cursor CLI,
|
|
426
|
+
and Gemini CLI. Probe: a `commands-portable/tools.md` fails the gate.
|
|
427
|
+
- **The count ratchet skipped both Claude Code manifests.** `.claude-plugin/`
|
|
428
|
+
was never checked, which is how its listing drifted 11 skills and 5 commands
|
|
429
|
+
behind. `scripts/check-skill-count.mjs` now covers `plugin.json` and
|
|
430
|
+
`marketplace.json`.
|
|
431
|
+
|
|
432
|
+
### Known issue
|
|
433
|
+
|
|
434
|
+
- Codex CLI deprecated custom prompts and stopped loading `~/.codex/prompts`
|
|
435
|
+
(0.117.0), which is where `--codex` writes the portable playbooks. Its merged
|
|
436
|
+
`~/.codex/AGENTS.md` rules are unaffected. Choosing a replacement surface
|
|
437
|
+
touches [ADR 0001](docs/adr/0001-custom-npm-installer-ships-four-tools.md) and
|
|
438
|
+
is deliberately not bundled into this release.
|
|
439
|
+
|
|
440
|
+
## [1.36.2] — 2026-09-17
|
|
441
|
+
|
|
442
|
+
A `plan-dead-code` → `housekeep-dead-code` pass on the pack's own
|
|
443
|
+
repository, run with the pack's own skills. The JS surface was already
|
|
444
|
+
clean; the deliverable is the gate that keeps it that way.
|
|
445
|
+
|
|
446
|
+
### Removed
|
|
447
|
+
|
|
448
|
+
- `scripts/migrate-browser-mcp-to-cli.mjs` — the one-off Playwright MCP →
|
|
449
|
+
playwright-cli migration script from 1.2x. Nothing ran it (no npm
|
|
450
|
+
script, workflow, or doc); Knip in default and `--production` mode and a
|
|
451
|
+
repo-wide reference grep agreed. The CHANGELOG line that introduced it
|
|
452
|
+
stays as history; git keeps the file.
|
|
453
|
+
|
|
454
|
+
### Added
|
|
455
|
+
|
|
456
|
+
- `knip.jsonc` and `npm run check:dead-code` / `check:dead-code:prod`
|
|
457
|
+
(`npx -y knip@6.36.0 --max-issues 0`, config hints as errors on the
|
|
458
|
+
default run). Entries come from `package.json` bin/scripts and the
|
|
459
|
+
workflow `run:` lines via Knip's plugins, plus the shipped helper scripts
|
|
460
|
+
and the three maintainer-run brand/description tools nothing invokes by
|
|
461
|
+
reference. The two consumer-side imports of
|
|
462
|
+
`skills/enhance-readme/scripts/record-readme-tour.mjs` (`playwright`,
|
|
463
|
+
`@ffmpeg-installer/ffmpeg`) are the single written-back false positive.
|
|
464
|
+
Appended to `npm test` and to the existing job in `validate.yml` and
|
|
465
|
+
`npm-publish.yml` — no new parallel check. Baseline 0 / 0; the number
|
|
466
|
+
only ever goes down. Probes: an unreferenced `scripts/zz-probe.mjs` fails
|
|
467
|
+
the gate; a fresh clone passes `npm test`.
|
|
468
|
+
- `docs/examples/plan-audits/cursor-kenji/plan-dead-code.md` — the audit
|
|
469
|
+
(stack, baseline, surfaces Knip cannot see, keep/kill list with evidence,
|
|
470
|
+
ratchet) that approved the deletion and the config.
|
|
471
|
+
|
|
472
|
+
### Changed
|
|
473
|
+
|
|
474
|
+
- `docs/PUBLISHING.md` — the `npm test` gate list names the dead-code
|
|
475
|
+
ratchet.
|
|
476
|
+
|
|
477
|
+
## [1.36.1] — 2026-09-17
|
|
478
|
+
|
|
479
|
+
### Fixed
|
|
480
|
+
|
|
481
|
+
- `plan-gtm/references/benchmarks-2026.md` — added the "warm invites
|
|
482
|
+
10–25%" row (nativeviralloop) that `enhance-growth-loops` already quoted.
|
|
483
|
+
The completion judge caught the number as untraceable against the
|
|
484
|
+
reference file's own rule ("quote a number only with its row here"); the
|
|
485
|
+
source was in the research all along, the row was not.
|
|
486
|
+
|
|
487
|
+
## [1.36.0] — 2026-09-17
|
|
488
|
+
|
|
489
|
+
The six follow-ups named in the 1.35.0 report, built in one closure pass:
|
|
490
|
+
pricing, growth loops, comparison pages, registry listing, the weekly loop,
|
|
491
|
+
and lifecycle email. `plan-gtm` and `workflow-gtm` now hand off to them by
|
|
492
|
+
name, so the go-to-market sequence has an owner for every step from "what
|
|
493
|
+
to charge" to "what did last week's post do".
|
|
494
|
+
|
|
495
|
+
### Added
|
|
496
|
+
|
|
497
|
+
- `plan-pricing` — plan-only pricing and packaging audit: inventory of
|
|
498
|
+
plans/gates/metering/price points/trial logic/cost, value-metric scoring
|
|
499
|
+
(value connection, fairness, predictability, scalability, billability)
|
|
500
|
+
simulated on historical accounts, ≤3 good-better-best tiers with a
|
|
501
|
+
right-hand anchor and an enterprise "from" price, free boundary just before
|
|
502
|
+
the activation event's repeat, price corridor via Van Westendorp →
|
|
503
|
+
Gabor-Granger → MaxDiff → conjoint. Emits `plan-pricing.md` with a
|
|
504
|
+
grandfathering row; changes no price, plan enum, Stripe object, or copy.
|
|
505
|
+
Command `/pricing-plan`.
|
|
506
|
+
- `enhance-growth-loops` — apply-now badge / shareable artifact / template /
|
|
507
|
+
invite / referral loops, one K-factor per loop; rewards granted
|
|
508
|
+
idempotently on the referred user's *activation*; invites user-initiated
|
|
509
|
+
and single-send with recipient opt-out; badge removable on paid.
|
|
510
|
+
- `docs-comparison-pages` — ≤5 honest "X vs Y" / "alternatives to" /
|
|
511
|
+
"migrate from" pages per pass from facts fetched and dated this session;
|
|
512
|
+
fixed shape including "where the alternative wins"; `lastVerified` +
|
|
513
|
+
`reviewEvery` freshness contract; refuses bulk generation.
|
|
514
|
+
- `audit-registry-listing` — read-only audit of README first ten lines,
|
|
515
|
+
npm/PyPI metadata and `npm pack --dry-run` contents, GitHub description /
|
|
516
|
+
topics / social preview, plugin and skills.sh manifests, and a timed
|
|
517
|
+
clean-profile install. Findings with an owner skill per row.
|
|
518
|
+
- `iterate-gtm-weekly` — thirty-minute weekly loop: funnel by source this
|
|
519
|
+
week vs last, launch Results tables filled, largest *absolute* loss named,
|
|
520
|
+
last experiment attributed with a number, exactly one experiment and one
|
|
521
|
+
post chosen from a levers-by-step table, scorecard row appended. Command
|
|
522
|
+
`/gtm-weekly`.
|
|
523
|
+
- `enhance-lifecycle-email` — event-driven sequences (welcome, activation
|
|
524
|
+
nudge, setup stall, habit, trial expiry split by activated vs stalled,
|
|
525
|
+
limit reached, win-back, dunning) with triggers, exits, idempotent
|
|
526
|
+
`(user, sequence, step)` sends, per-email transactional/marketing
|
|
527
|
+
classification, unsubscribe and suppression, quiet hours, daily cap, and
|
|
528
|
+
`email_*` events. Timers only as the fallback for silence.
|
|
529
|
+
|
|
530
|
+
### Changed
|
|
531
|
+
|
|
532
|
+
- `plan-gtm` — phased burndown names the new owners: Phase 1 adds
|
|
533
|
+
`audit-registry-listing` for repo-as-product; Phase 2 adds
|
|
534
|
+
`enhance-lifecycle-email`; Phase 3 uses `docs-comparison-pages`; Phase 4
|
|
535
|
+
adds `enhance-growth-loops` and hands the loop to `iterate-gtm-weekly`;
|
|
536
|
+
Phase 5 starts with `plan-pricing`. Neighbor table extended.
|
|
537
|
+
- `workflow-gtm` — sequence, step sections, scorecard, and worked example
|
|
538
|
+
route through the same owners; Step 7 is `iterate-gtm-weekly`
|
|
539
|
+
(`iterate-post-launch` keeps production defects).
|
|
540
|
+
- `plan-gtm/references/benchmarks-2026.md` — new sections for pricing
|
|
541
|
+
research / value metric and lifecycle email, each row with its URL.
|
|
542
|
+
- `docs/CATALOG.md`, `docs/TRIGGER-CHEATSHEET.md`, `docs/PLAN-LOOPS.md` (23
|
|
543
|
+
plan skills, `/pricing-plan` alias, execute-after-approval rows),
|
|
544
|
+
`skills.sh.json`, README ("What should I say?" and commands rows) — the
|
|
545
|
+
six skills and two commands listed with their neighbors.
|
|
546
|
+
|
|
547
|
+
### Fixed
|
|
548
|
+
|
|
549
|
+
- The five 1.35.0 GTM skills and the README skill index carried
|
|
550
|
+
double-encoded arrows (`→` for `→`) in their descriptions — a shell
|
|
551
|
+
encoding slip during the description trim. Re-encoded to UTF-8; the
|
|
552
|
+
installed copies refresh on `--auto`.
|
|
553
|
+
|
|
554
|
+
## [1.35.0] — 2026-09-17
|
|
555
|
+
|
|
556
|
+
Go-to-market for a repo that already works. The pack covered how to build,
|
|
557
|
+
prove, and ship a product but had nothing for the part after: who it is for,
|
|
558
|
+
how it is paid for, why signups never come back, where to be found, and how
|
|
559
|
+
to announce a release without a vote ring. Five skills and three commands
|
|
560
|
+
close that gap. Every benchmark quoted was checked against a 2025–2026
|
|
561
|
+
source this week (ChartMogul × Kyle Poyar × ProductLed free-to-paid report,
|
|
562
|
+
Userpilot activation medians, Show HN / Product Hunt author reports, public
|
|
563
|
+
OSS-vendor revenue mix).
|
|
564
|
+
|
|
565
|
+
### Added
|
|
566
|
+
|
|
567
|
+
- `plan-gtm` — plan-only go-to-market audit. Greps how the product is sold
|
|
568
|
+
today (billing SDKs, `isPro` gates, license family, hero/meta positioning,
|
|
569
|
+
auth providers and steps to first value, analytics + consent,
|
|
570
|
+
robots/sitemap/llms.txt, registry presence, trust signals), then
|
|
571
|
+
interviews the founder with `workflow-grilling` rules down a fixed ladder
|
|
572
|
+
(90-day metric → ICP → numbers → monetization intent → budget → market →
|
|
573
|
+
alternatives → constraints). Diagnoses in Dunford order, judges the
|
|
574
|
+
monetization model against 2026 conversion rows (freemium 3–5% good /
|
|
575
|
+
8–12% great; card-required trial 25–35%; median 8%; OSS cloud carries
|
|
576
|
+
48–73% of vendor revenue), defines `activated` and one north-star, picks
|
|
577
|
+
≤2 channels + 1 loop with caveats. Emits `plan-gtm.md`; changes nothing.
|
|
578
|
+
Business decisions (model, price, license, ICP) stay with the founder;
|
|
579
|
+
"unmeasured" is a legal cell value.
|
|
580
|
+
- `workflow-gtm` — execution arm. `plan-gtm` ⏸ approve → `audit-analytics`
|
|
581
|
+
→ `enhance-web-conversion` (+ `enhance-readme` for repo-as-product) →
|
|
582
|
+
`enhance-onboarding` → `enhance-web-seo` / `plan-aeo-readiness` →
|
|
583
|
+
`docs-launch-kit` → `iterate-post-launch` weekly. Ends with a GTM
|
|
584
|
+
scorecard (funnel before/after, skips named, next week's one fix).
|
|
585
|
+
- `enhance-onboarding` — apply-now first session to first value. Defines
|
|
586
|
+
`activated` as an outcome (never signup or tour end), walks landing →
|
|
587
|
+
activation as a stranger and counts steps, cuts fields before value
|
|
588
|
+
(OAuth/magic link, inferred locale, try-before-signup), ships empty-state
|
|
589
|
+
templates / sample data and a ≤5-item checklist ending at activation,
|
|
590
|
+
instruments `signup_started → signup_completed → activated →
|
|
591
|
+
habit_reached` behind the existing consent gate. Defers, never deletes.
|
|
592
|
+
- `enhance-web-conversion` — apply-now message / offer / proof / prompt pass
|
|
593
|
+
on landing, pricing, and upgrade paths: five-second hero check with a
|
|
594
|
+
model-matched CTA verb, ≤3 tiers with an anchor and annual toggle,
|
|
595
|
+
explicit free-tier limits, proof ordered by strength, upgrade prompts only
|
|
596
|
+
at value moments, checkout and prompt events. Removes dark patterns; adds
|
|
597
|
+
none. Visual system stays on `enhance-web-landing`.
|
|
598
|
+
- `docs-launch-kit` — versioned `docs/launch/<version>.md`: claims table
|
|
599
|
+
every sentence must trace to, one problem-first angle, native copy per
|
|
600
|
+
channel (Show HN, Product Hunt, subreddit-specific Reddit, X/Bluesky/
|
|
601
|
+
LinkedIn, article outline, user-facing release notes), calendar, UTMs,
|
|
602
|
+
Results table filled after 7 days. No vote solicitation, no fabricated
|
|
603
|
+
proof, maker disclosed.
|
|
604
|
+
- Commands `/gtm-plan` → `plan-gtm`, `/gtm` → `workflow-gtm`,
|
|
605
|
+
`/launch-kit` → `docs-launch-kit`.
|
|
606
|
+
|
|
607
|
+
### Changed
|
|
608
|
+
|
|
609
|
+
- `rules/skill-workflows.mdc` — bundle row "take a shipped product to
|
|
610
|
+
market → `workflow-gtm`".
|
|
611
|
+
- `docs/PLAN-LOOPS.md` — `plan-gtm` in the execute-after-approval table, the
|
|
612
|
+
plan skill map (22 plan skills), launch gates, slash aliases, and a
|
|
613
|
+
copy-paste prompt; related-loops row.
|
|
614
|
+
- `docs/CATALOG.md`, `docs/TRIGGER-CHEATSHEET.md`, `skills.sh.json`, README
|
|
615
|
+
("What should I say?" row, commands table, plan → apply callout) — the
|
|
616
|
+
five skills and three commands are listed where their neighbors are.
|
|
617
|
+
- MCP pins re-verified against the registries on 2026-09-17
|
|
618
|
+
(`mcp/pinned-versions.json`, both templates, `.mcp.json`, `mcp/VERSIONS.md`,
|
|
619
|
+
`mcp/README.md`): `@upstash/context7-mcp` 3.2.2 → 4.1.1 (v2 SDK, 2026-07-28
|
|
620
|
+
protocol; stdio flags unchanged), `firecrawl-mcp` 3.21.3 → 3.24.0,
|
|
621
|
+
`@supabase/mcp-server-supabase` 0.8.2 → 0.12.0 (`--project-ref` /
|
|
622
|
+
`--read-only` / `--features` still accepted), `chrome-devtools-mcp` 1.3.0 →
|
|
623
|
+
1.9.0, `@playwright/mcp` 0.0.76 → 0.0.81, `@notionhq/notion-mcp-server`
|
|
624
|
+
2.4.1 → 2.5.1, `server-sequential-thinking` 2025.12.18 → 2026.8.31,
|
|
625
|
+
`server-memory` 2026.1.26 → 2026.8.31, `awslabs.lambda-tool-mcp-server`
|
|
626
|
+
2.0.19 → 2.1.1, `awslabs.aws-api-mcp-server` 1.3.45 → 1.5.5,
|
|
627
|
+
`awslabs.cloudwatch-mcp-server` 0.0.8 → 0.2.1. `server-github`, `-postgres`,
|
|
628
|
+
`-redis`, `-slack` had no newer release.
|
|
629
|
+
- `scripts/test-install.mjs` reads the expected firecrawl pin from
|
|
630
|
+
`mcp/pinned-versions.json` instead of a hard-coded `3.21.3`, so a pin bump
|
|
631
|
+
cannot pass the pin check and fail the install smoke test for the same fact.
|
|
632
|
+
|
|
633
|
+
## [1.34.0] — 2026-09-12
|
|
634
|
+
|
|
635
|
+
A prompt audit of the shipped surface (rules, agents, commands, skills)
|
|
636
|
+
against current-model behaviour: instructions written for older, less
|
|
637
|
+
steerable models were rewritten at normal volume, facts that had rotted were
|
|
638
|
+
corrected, and text the agent cannot act on (memory of previous projects,
|
|
639
|
+
"production test" scores) was removed. No skill changed name, trigger, scope,
|
|
640
|
+
or stance; no `[LOW freedom]` step lost its exactness.
|
|
641
|
+
|
|
642
|
+
### Changed
|
|
643
|
+
|
|
644
|
+
- `skills/backend-patterns` — the Edge Function example uses `Deno.serve`;
|
|
645
|
+
the `deno.land/std@0.168.0/http/server` import it carried is deprecated.
|
|
646
|
+
- `agents/perf-monitor` — `npx bundle-phobia <pkg>`; `npx bundlephobia`
|
|
647
|
+
resolves to a package with no CLI and silently does nothing.
|
|
648
|
+
- `agents/deploy-checker` — `npm audit --omit=dev` (`--production` is the
|
|
649
|
+
deprecated spelling).
|
|
650
|
+
- `agents/db-migrator` — migration files come from `supabase migration new`
|
|
651
|
+
(14-digit timestamp) instead of a hand-written 8-digit date prefix that
|
|
652
|
+
cannot order two same-day migrations.
|
|
653
|
+
- `agents/debugger` — dropped "don't explain before acting" and "ship first,
|
|
654
|
+
explain after", which contradicted the agent's own required output format
|
|
655
|
+
(root cause, evidence, verification, prevention).
|
|
656
|
+
- `commands/update-deps` — the dated Next.js cadence paragraph ("15 LTS ends
|
|
657
|
+
2026-10-21, current line 16.3.x") is now a check-at-run-time instruction;
|
|
658
|
+
the codemod advice and the `next lint` removal stay.
|
|
659
|
+
- `commands-portable/research` §7 — re-synced with `skills/research`: "plan
|
|
660
|
+
before writing code". The portable copy still said "think step-by-step",
|
|
661
|
+
which reasoning models already do and which had drifted from the skill.
|
|
662
|
+
- `skills/audit-langfuse-llm` — model examples are tier-based (frontier /
|
|
663
|
+
small) instead of pinned IDs that age; its prompt-improvement suggestions
|
|
664
|
+
recommend the provider's native reasoning mode and `max_tokens` rather than
|
|
665
|
+
"Think step by step" text and word caps in the prompt.
|
|
666
|
+
- `skills/enhance-web-landing` — register pass: removed eighteen
|
|
667
|
+
"(mandatory)" tags and the all-caps shouting, the three "most-tested AI tell
|
|
668
|
+
/ #1 violated rule in production tests" grader lines, the cross-project
|
|
669
|
+
palette and serif rotation rules (the agent has no memory of previous
|
|
670
|
+
projects), and the one-project "Marrow" references. Every rule and its
|
|
671
|
+
reason is unchanged; the copy-length limits on page content stay because
|
|
672
|
+
they constrain the page, not the reply.
|
|
673
|
+
- Seventeen skills — "CRITICAL:" / "MANDATORY:" / "BEFORE X, you MUST:" step
|
|
674
|
+
headings read at normal volume; the `[LOW freedom — run exactly]` tag
|
|
675
|
+
already carries the weight.
|
|
676
|
+
- `skills/design-canvas` — "CRITICAL Requirements" → "Quality bar".
|
|
677
|
+
- `rules/composer-2.5-execution.mdc` — title and intro no longer pin
|
|
678
|
+
Composer 2.5 or a "200k window"; the body already said it binds any
|
|
679
|
+
implementation model. Filename kept for installer and doc compatibility.
|
|
680
|
+
- `rules/shell-first-search.md` — dropped the "Windows hang history" / "this
|
|
681
|
+
Windows host" incident wording from a rule that ships to every consumer.
|
|
682
|
+
- `docs/PLAN-LOOPS.md` — the execution rule has been on-demand since v1.15.0,
|
|
683
|
+
not `alwaysApply: true` as the doc claimed; the planning model is no longer
|
|
684
|
+
pinned to Opus 4.8.
|
|
685
|
+
|
|
686
|
+
## [1.33.1] — 2026-09-10
|
|
687
|
+
|
|
688
|
+
### Changed
|
|
689
|
+
|
|
690
|
+
- `housekeep-dead-code/references/supabase-hygiene.md` — dropped
|
|
691
|
+
`supabase inspect db table-record-counts` from the CLI-equivalents line. It
|
|
692
|
+
rested on a single low-confidence doc extraction from a page that
|
|
693
|
+
redirected, and never appeared in the observability guide's documented set;
|
|
694
|
+
a wrong subcommand name in a command position is worse than no name. The
|
|
695
|
+
line now lists only the six confirmed subcommands, says the set has changed
|
|
696
|
+
across releases, and points at `supabase inspect db --help` plus the
|
|
697
|
+
version-independent SQL above it.
|
|
698
|
+
|
|
699
|
+
## [1.33.0] — 2026-09-10
|
|
700
|
+
|
|
701
|
+
A second independent implementation of the dead-code pair was written against
|
|
702
|
+
the same base commit. Comparing the two surfaced material worth keeping — and
|
|
703
|
+
two bugs worth not keeping. Ported the former as reference files; rejected the
|
|
704
|
+
latter after checking both against the knip 6.35.1 source.
|
|
705
|
+
|
|
706
|
+
### Added
|
|
707
|
+
|
|
708
|
+
- `plan-dead-code/references/residue-greps.md` — the grep pack as a table with
|
|
709
|
+
a count command and a fix column per class, plus the false positives that
|
|
710
|
+
matter: hashed and template-string asset references, and the counting
|
|
711
|
+
convention (`rg -o … | wc -l` for matches vs `rg -c` for lines — mixing them
|
|
712
|
+
makes a ratchet compare nothing). Adds a **bundle-leak probe**
|
|
713
|
+
(`rg -l "service_role" dist`) that stops the pass and routes to
|
|
714
|
+
`plan-secrets-audit`; it is the one check here that can find a live
|
|
715
|
+
credential in shipped output.
|
|
716
|
+
- `plan-dead-code/references/output-templates.md` — a filled
|
|
717
|
+
`plan-dead-code.md` with the chain-head row discipline, worked severity ×
|
|
718
|
+
effort rubric, and a root-causes section so the report names the barrel
|
|
719
|
+
rather than its forty symptoms.
|
|
720
|
+
- `plan-dead-code/references/preservation-contract.md` — the plan-only
|
|
721
|
+
non-negotiables and the five verdict buckets, matching the
|
|
722
|
+
`plan-perf-audit` convention.
|
|
723
|
+
- `housekeep-dead-code/references/ratchet-ci.md` — scripts, tsconfig
|
|
724
|
+
(`noUnusedLocals` enabled *during* the cascade, not after),
|
|
725
|
+
`eslint-plugin-unused-imports` flat config, why Knip belongs in pre-push
|
|
726
|
+
rather than pre-commit, the aggregator's `jq` result check that makes a
|
|
727
|
+
skipped job fail, and a Supabase types-drift CI guard.
|
|
728
|
+
- `housekeep-dead-code/references/supabase-hygiene.md` — the schema arm in
|
|
729
|
+
full. Three traps a client-side grep cannot see: RPCs called only from an
|
|
730
|
+
RLS policy, trigger, or `pg_cron` job; Edge Functions targeted by external
|
|
731
|
+
webhooks; and `pg_stat_*` counters too young to mean anything (check
|
|
732
|
+
`stats_reset`). Tables drop in two steps — rename to `_deprecated_<name>`,
|
|
733
|
+
drop a release later — because a rename is reversible.
|
|
734
|
+
|
|
735
|
+
### Changed
|
|
736
|
+
|
|
737
|
+
- `plan-dead-code` — chain-head reporting is now explicit (a dead file's
|
|
738
|
+
exports and sole-use dependencies are children of that row, not rows of
|
|
739
|
+
their own, or a three-item plan reads as twenty-seven); severity is paired
|
|
740
|
+
with S/M/L effort; adds the verified `--trace-export` / `--trace-file` /
|
|
741
|
+
`--max-show-issues` flags; and adds a second gate before triage — unresolved
|
|
742
|
+
imports and unlisted dependencies both explained, not just hints clean.
|
|
743
|
+
- `housekeep-dead-code` — new Phase 3 proves the ratchet bites: a fresh-clone
|
|
744
|
+
probe (deletions can pass on a warm `node_modules` and fail on `npm ci`) and
|
|
745
|
+
a deliberate-violation probe that must turn the aggregator red, not just the
|
|
746
|
+
job.
|
|
747
|
+
|
|
748
|
+
### Rejected from the ported material
|
|
749
|
+
|
|
750
|
+
Both were checked against the knip 6.35.1 source rather than its docs:
|
|
751
|
+
|
|
752
|
+
- `knip:ci: "knip --production … --treat-config-hints-as-errors"` — inert.
|
|
753
|
+
Knip sets `isDisableConfigHints = --no-config-hints || isProduction`, so the
|
|
754
|
+
flag cannot fire on a production run. It belongs on the default-mode script.
|
|
755
|
+
- `rules: { classMembers: "warn" }` in the recommended config — silently
|
|
756
|
+
exempts that issue type from the gate, because `--max-issues` totals only
|
|
757
|
+
rules set to `error`. `ratchet-ci.md` now documents this as the quietest
|
|
758
|
+
ratchet bypass instead of shipping it as a default.
|
|
759
|
+
- `$schema: ".../knip@latest/schema.json"` — floats a major version in a file
|
|
760
|
+
whose own text says not to float `latest`. Pinned to `knip@6`.
|
|
761
|
+
- `-W` as shorthand for `--workspace`, and a "<50 scans, >5 pages" threshold
|
|
762
|
+
for `supabase inspect db unused-indexes` — neither is in the source or the
|
|
763
|
+
docs. Dropped rather than repeated.
|
|
764
|
+
|
|
765
|
+
## [1.32.0] — 2026-09-10
|
|
766
|
+
|
|
767
|
+
Dead-code cleanup was one line inside `workflow-housekeep` (§2d, "npx knip
|
|
768
|
+
(if available) or npx ts-prune") — no config, no production mode, no fix
|
|
769
|
+
ordering, no ratchet, and `ts-prune` has been in maintenance mode with its
|
|
770
|
+
author pointing at Knip. Everything else a vibe-coded repo accretes
|
|
771
|
+
(duplication, debug residue, suppression debt, orphan assets, env drift,
|
|
772
|
+
dead schema) was scattered across five skills as prose with no tool behind
|
|
773
|
+
it. This adds the plan→apply pair that owns it.
|
|
774
|
+
|
|
775
|
+
### Added
|
|
776
|
+
|
|
777
|
+
- **`plan-dead-code`** — configuration-first dead-code audit. Authors
|
|
778
|
+
`knip.json` and resolves every configuration hint *before* trusting a
|
|
779
|
+
finding, because on a first run most findings are misconfiguration, not
|
|
780
|
+
dead code. Baselines both `--production` and default runs and reads
|
|
781
|
+
findings files → unresolved → exports → deps (unused files cascade into
|
|
782
|
+
phantom export and dependency findings). Builds a keep-working list for
|
|
783
|
+
glob-imported routes, generated Supabase types, Deno Edge Functions, and
|
|
784
|
+
deliberate `@public` API, then counts the seven surfaces Knip cannot see:
|
|
785
|
+
unused locals, `jscpd` duplication, debug residue, suppression debt,
|
|
786
|
+
orphan assets, env drift, dead schema. Emits `plan-dead-code.md` and
|
|
787
|
+
**deletes nothing**. Slash `/deadcode-plan`.
|
|
788
|
+
- **`housekeep-dead-code`** — the execution arm. Deletes per the approved
|
|
789
|
+
keep/kill list one category per commit with typecheck, tests, and build
|
|
790
|
+
between each, and a bisect-the-batch rule on red: files
|
|
791
|
+
(`--fix-type files --allow-remove-files`, pre-reviewed list only) →
|
|
792
|
+
exports/types → unused-locals cascade (`remove-unused-vars`, then re-run
|
|
793
|
+
Knip) → dependencies → residue → assets → suppressions. Duplication is
|
|
794
|
+
measured and ratcheted but handed to `workflow-refactor`, since fixing it
|
|
795
|
+
preserves behavior rather than removing code. Then installs the ratchet:
|
|
796
|
+
`knip` script, CI job pinned at `--max-issues <today>` and only ever
|
|
797
|
+
lowered, wired into the single aggregator gate per `housekeep-gates`.
|
|
798
|
+
Slash `/deadcode`.
|
|
799
|
+
- `plan-dead-code/references/knip-config.md` — `knip.json` recipes for
|
|
800
|
+
Vite + React + Supabase, Next.js App Router, and monorepos, each line
|
|
801
|
+
annotated with the `ignore` it replaces; tag usage (`@public`,
|
|
802
|
+
`@internal`, `@alias`); companion-tool table; and the ratchet CI job.
|
|
803
|
+
- Brand mark (`assets/logo.svg` + PNG/OG/favicon). Geometric spine + first-line tick; fal.ai candidates were generated and rejected when they drifted.
|
|
804
|
+
- Claude Code marketplace manifests: `.claude-plugin/plugin.json` + `.claude-plugin/marketplace.json`.
|
|
805
|
+
- Static landing page in `site/` (canonical stay on skills.sh until an owned host is live).
|
|
806
|
+
- `FAL_KEY` documented in `.env.example`; secret scanner now flags fal key-id:secret pairs.
|
|
807
|
+
|
|
808
|
+
### Changed
|
|
809
|
+
|
|
810
|
+
- **`workflow-housekeep` §2d now hands off instead of sweeping.** It keeps
|
|
811
|
+
dead *artifacts* (logs, `.bak`, build output, committed screenshots) —
|
|
812
|
+
things dead by inspection — and routes unused source files, exports,
|
|
813
|
+
types, and dependencies to the new pair. The `ts-prune` recommendation is
|
|
814
|
+
gone. Trigger phrase "remove dead code" moved off this skill.
|
|
815
|
+
- `plan-dependency-provenance` — boundary drawn: it owns the *manifest*
|
|
816
|
+
fact (does the package exist, is it licensed); the module-graph proof and
|
|
817
|
+
removal of unimported deps go to `plan-dead-code`. Warns against
|
|
818
|
+
hand-verifying with grep, since a dep reached only from a config string
|
|
819
|
+
looks unused and is not.
|
|
820
|
+
- `plan-antislop` §3 — boundary drawn against provable unreachability:
|
|
821
|
+
commented-out scaffolding and guards that can't trigger stay slop
|
|
822
|
+
findings (a taste judgment), while counts and deletion move to
|
|
823
|
+
`plan-dead-code`.
|
|
824
|
+
- `test-mutation` — "delete dead code" now routes to the pair rather than
|
|
825
|
+
`workflow-housekeep`.
|
|
826
|
+
- `workflow-refactor` — the "Dead Code → delete it" smell row was the last
|
|
827
|
+
open side door around the approval contract; it now routes to the pair.
|
|
828
|
+
Duplication findings arrive there; deletions do not leave from there.
|
|
829
|
+
- `package.json` homepage is the live skills.sh page.
|
|
830
|
+
- Cursor plugin manifest: `displayName`, `logo`, `category`, homepage.
|
|
831
|
+
- Distribution / promotion docs: Claude plugin install, localskills reject, Show HN draft. No fake “listed” claims.
|
|
832
|
+
|
|
833
|
+
## [1.31.0] — 2026-08-29
|
|
834
|
+
|
|
835
|
+
### Added
|
|
836
|
+
|
|
837
|
+
- **`enhance-web-instant-nav`** — Speculation Rules (prefetch/prerender with
|
|
838
|
+
a safety contract), bfcache fixes, cross-document View Transitions, 103
|
|
839
|
+
Early Hints. Slash `/instant-nav`. First-load CWV stays on
|
|
840
|
+
`audit-performance`.
|
|
841
|
+
- **`web-performance.mdc`** project rule — always-on budgets, LCP priority,
|
|
842
|
+
INP yield, no-`unload`.
|
|
843
|
+
- `audit-performance` §Loading Priority & Speculation, field-data Step 0,
|
|
844
|
+
verification protocol, and `references/loading-priority-2026.md`.
|
|
845
|
+
|
|
846
|
+
### Changed
|
|
847
|
+
|
|
848
|
+
- `audit-performance`, `audit-bundle-size`: React Compiler first; manual
|
|
849
|
+
memo only with Profiler evidence.
|
|
850
|
+
- `plan-perf-audit` scope: Navigation layer and loading-priority lines.
|
|
851
|
+
- `enhance-web-seo` §1d hands CWV fixes to `audit-performance`.
|
|
852
|
+
- `perf-monitor` agent: LCP-lazy, slow-second-page, bfcache, INP rows.
|
|
853
|
+
- Stack currency: Next.js 15 → 16.x (15 LTS EOL 2026-10-21; monthly
|
|
854
|
+
security releases noted in `/update-deps`).
|
|
855
|
+
- `check-skill-count` now ratchets the README Project Rules count against
|
|
856
|
+
`rules/project-starter/*.mdc`.
|
|
857
|
+
|
|
858
|
+
## [1.30.0] — 2026-08-21
|
|
859
|
+
|
|
860
|
+
### Added
|
|
861
|
+
|
|
862
|
+
- **`enhance-readability`** — information-design pass for comprehension
|
|
863
|
+
(CLT + Gestalt): CPL / reading level, grouping, deadspace, icons, and
|
|
864
|
+
visuals that replace verbose prose. Slash `/readability`. Breakpoints
|
|
865
|
+
stay on `audit-responsive`; looks-good stays on `enhance-web-ui`.
|
|
866
|
+
CJK 40 CPL from WCAG 2.2 SC 1.4.8.
|
|
867
|
+
|
|
868
|
+
## [1.29.1] — 2026-08-21
|
|
869
|
+
|
|
870
|
+
### Fixed
|
|
871
|
+
|
|
872
|
+
- **T3/T4 headings** — `meta-skill-creator` and `enhance-skill-prompts`
|
|
873
|
+
had T1–T6 tables/phrases but no `## Worked example` / `## Self-critique`.
|
|
874
|
+
`test-exploratory` and `workflow-release-prep` promoted T4 to `##`.
|
|
875
|
+
- **Validator** — T3/T4 now require those H2 headings so a table mention
|
|
876
|
+
cannot pass the gate.
|
|
877
|
+
|
|
878
|
+
## [1.29.0] — 2026-08-21
|
|
879
|
+
|
|
880
|
+
### Added
|
|
881
|
+
|
|
882
|
+
- **Family-first naming policy** — `docs/CONTRIBUTING.md` documents
|
|
883
|
+
`<family>-<topic>`, slash aliases, and the four unprefixed exceptions
|
|
884
|
+
(`research`, `handoff`, `complete-everything`, `burndown-full`).
|
|
885
|
+
- **`iterate-` family** — registered in the skill index
|
|
886
|
+
(`FAMILY_HEADINGS`, `FAMILY_ORDER`, blurbs).
|
|
887
|
+
- **Installer `RENAMED_SKILLS` prune** — deletes old skill directories on
|
|
888
|
+
Cursor, the `~/.agents/skills` mirror, and Claude after a rename.
|
|
889
|
+
Honors `--dry-run`; skipped when `--skill` is scoped. Tests may inject
|
|
890
|
+
pairs via `KENJI_RENAMED_SKILLS`.
|
|
891
|
+
- **`OLD_ALIASES` gate** — `check-skill-refs` fails leftover backticks of
|
|
892
|
+
renamed skills except in `CHANGELOG.md`, `docs/CONTRIBUTING.md`, and
|
|
893
|
+
`audit-skill-conflicts`.
|
|
894
|
+
|
|
895
|
+
### Changed
|
|
896
|
+
|
|
897
|
+
- **`housekeep-` taxonomy** — CATALOG / CONTRIBUTING / index blurb now
|
|
898
|
+
say "one drifted register (gates / backlog / design tokens)", not
|
|
899
|
+
"design system only".
|
|
900
|
+
- **Renames** — `domain-modeling` → `docs-domain-modeling`;
|
|
901
|
+
`grilling` → `workflow-grilling`. `/grill-me` still points at
|
|
902
|
+
`workflow-grilling`. "grill me" and glossary triggers unchanged.
|
|
903
|
+
- **Prompt waves (T1–T6)** — remaining first-party families after Wave 7
|
|
904
|
+
(`housekeep`, `docs`, `deploy`, `debug`, then the rest). Validator
|
|
905
|
+
require-list extended per family. `thirdparty-*` skipped.
|
|
906
|
+
|
|
907
|
+
## [1.28.0] — 2026-08-21
|
|
908
|
+
|
|
909
|
+
### Added
|
|
910
|
+
|
|
911
|
+
- **`audit-doctrine`** — read-only audit of custom lint/ratchet *content*:
|
|
912
|
+
is each rule right on the merits (named remedy, reachable token,
|
|
913
|
+
teaching failure, Tier-D practice), not merely enforced. Distinct from
|
|
914
|
+
`audit-gate-logic` (bypass/gaming). Un-remedied axes →
|
|
915
|
+
`housekeep-backlog`. Slash: `/doctrine`.
|
|
916
|
+
|
|
917
|
+
## [1.27.0] — 2026-08-20
|
|
918
|
+
|
|
919
|
+
### Added
|
|
920
|
+
|
|
921
|
+
- **`workflow-release-prep`** — take the local working tree (uncommitted +
|
|
922
|
+
staged + untracked + unpushed) to a merge-ready PR against main.
|
|
923
|
+
Orchestrates `audit-code-review`, `split-to-prs`, `workflow-git-commit`,
|
|
924
|
+
`workflow-pr`, and `babysit`. Does not merge. Slash: `/release-prep`.
|
|
925
|
+
|
|
926
|
+
### Changed
|
|
927
|
+
|
|
928
|
+
- **Skill-conflict routing pass** — carved overlapping triggers across the
|
|
929
|
+
PR/release, UI/slop, error-handling, tests, backend, and skill-authoring
|
|
930
|
+
clusters. Completed truncated descriptions (`burndown-full`,
|
|
931
|
+
`backend-patterns`, `mobile-emulator-start`). Moved
|
|
932
|
+
`thirdparty-emil-design-eng` body into `references/`. Validator now fails
|
|
933
|
+
unmatched quotes/parentheses and trailing `i.e.` truncation scars.
|
|
934
|
+
|
|
935
|
+
## [1.26.0] — 2026-08-20
|
|
936
|
+
|
|
937
|
+
### Added
|
|
938
|
+
|
|
939
|
+
- **`research` skill** — the production research protocol is now a first-party
|
|
940
|
+
skill (`skills/research/`) so `npx skills add` and Cursor `/` share the same
|
|
941
|
+
playbook. `/research` is a thin command wrapper (same pattern as
|
|
942
|
+
`complete-everything`).
|
|
943
|
+
- **Installer `--verify`** — read-only hash check of every packaged file
|
|
944
|
+
against the destination. Extra personal files are allowed; missing or
|
|
945
|
+
stale packaged files fail closed. Merge install now verifies each copy
|
|
946
|
+
before reporting success.
|
|
947
|
+
|
|
948
|
+
### Fixed
|
|
949
|
+
|
|
950
|
+
- **Install-channel docs** — `npx skills add` installs skills only and does
|
|
951
|
+
not write slash commands. `npx @kensaurus/cursor-kenji --all` is the
|
|
952
|
+
full-pack one-liner. The two `--all` flags are not the same.
|
|
953
|
+
- **Cursor `/babysit` shadow** — `babysit` is a Cursor-managed builtin.
|
|
954
|
+
The installer no longer copies it into `~/.cursor/skills` and deletes
|
|
955
|
+
stale copies on upgrade (Claude still gets the portable copy).
|
|
956
|
+
- **Dual-name CI gate** — `validate-skills` errors on an undeclared
|
|
957
|
+
skill+command pair so new `/` picker duplicates cannot ship unnoticed.
|
|
958
|
+
|
|
959
|
+
## [1.25.0] — 2026-08-20
|
|
960
|
+
|
|
961
|
+
### Added
|
|
962
|
+
|
|
963
|
+
- **`housekeep-backlog`** (`/housekeep-backlog`) — apply-now inventory of
|
|
964
|
+
parked work (unfinished plans, deferred phases, TODO/FIXME, skipped
|
|
965
|
+
tests, open audit findings) into a living `BACKLOG.md` that regenerates
|
|
966
|
+
and diffs (new / done / stale). Collector that feeds
|
|
967
|
+
`complete-everything` / `burndown-full`. The `docs-adr` pattern applied
|
|
968
|
+
to parked work.
|
|
969
|
+
|
|
970
|
+
## [1.24.0] — 2026-08-19
|
|
971
|
+
|
|
972
|
+
### Added
|
|
973
|
+
|
|
974
|
+
- **`enhance-skill-prompts`** — meta-skill to upgrade an existing SKILL.md
|
|
975
|
+
prompt (degrees of freedom, structured CoT, one worked example,
|
|
976
|
+
self-critique rubric, term consistency) without changing what the skill
|
|
977
|
+
does. Playbook: `docs/PROMPT-ENHANCEMENT-PLAYBOOK.md`. Annotated exemplar:
|
|
978
|
+
`skills/enhance-skill-prompts/references/exemplar-audit-auth-flows.md`.
|
|
979
|
+
- **Prompt-enhancement playbook** — T1–T6 applied to every first-party
|
|
980
|
+
`audit-*` / `plan-*` / `test-*` skill plus the Wave 4 apply-now set
|
|
981
|
+
(frontmatter and stance unchanged). Live `audit-auth-flows` is the
|
|
982
|
+
reference implementation. Factory (`meta-skill-creator`,
|
|
983
|
+
`docs/CONTRIBUTING.md`) now inherits T1–T6 for new skills.
|
|
984
|
+
- **`validate-skills` T1/T3/T4 gate** — first-party audit/plan/test skills
|
|
985
|
+
fail CI if they lack Degree of freedom, a Worked example, or a
|
|
986
|
+
Self-critique rubric.
|
|
987
|
+
|
|
988
|
+
---
|
|
989
|
+
|
|
990
|
+
## [1.23.1] — 2026-08-19
|
|
991
|
+
|
|
992
|
+
### Fixed
|
|
993
|
+
|
|
994
|
+
- **Windows `npx` from a clone** — `npx @kensaurus/cursor-kenji` from the repo folder failed with `cursor-kenji is not recognized` because npm exec uses the local package and `cmd` looks for a cwd shim that did not exist. Added `cursor-kenji.cmd` plus a `bin/cursor-kenji.js` entry so the same command works from the clone and from any other directory. Registry `npx` from a non-clone folder already worked.
|
|
995
|
+
|
|
996
|
+
---
|
|
997
|
+
|
|
998
|
+
## [1.23.0] — 2026-08-19
|
|
999
|
+
|
|
1000
|
+
### Added
|
|
1001
|
+
|
|
1002
|
+
- **`test-exploratory`** — unscripted guest vs logged-in wander of a live non-prod app (headed playwright-cli, SBTM charters, guest/auth/post-logout isolation). Discovery only; tickets via `workflow-feedback-to-closure`, lock via `test-playwright`.
|
|
1003
|
+
- Highest-impact combo pipelines in README, GETTING-STARTED, and CATALOG: `test-exploratory` → `workflow-feedback-to-closure` → `test-playwright`, plus wander-then-`workflow-quality-gate`.
|
|
1004
|
+
|
|
1005
|
+
### Changed
|
|
1006
|
+
|
|
1007
|
+
- `test-qa` / `test-playwright` / `test-red-team` descriptions no longer claim monkey / guest-vs-authed wander; `/test` and the trigger cheatsheet route those phrases to `test-exploratory`.
|
|
1008
|
+
|
|
1009
|
+
---
|
|
1010
|
+
|
|
1011
|
+
## [1.22.0] — 2026-08-19
|
|
1012
|
+
|
|
1013
|
+
### Added
|
|
1014
|
+
|
|
1015
|
+
- **`audit-auth-flows`** (`/auth-flows`) — read-only app-layer auth audit. Route×gate matrix, Supabase `getSession()` vs `getUser()`, middleware-as-only-gate (CVE-2025-29927), refresh-token reuse detection, OAuth/IDOR. Data-layer half stays on `plan-rls-audit`.
|
|
1016
|
+
|
|
1017
|
+
### Changed
|
|
1018
|
+
|
|
1019
|
+
- `audit-security` / `plan-security-audit` / `plan-rls-audit` no longer own session/route-gate / getSession triggers.
|
|
1020
|
+
|
|
1021
|
+
---
|
|
1022
|
+
|
|
1023
|
+
## [1.21.0] — 2026-08-18
|
|
1024
|
+
|
|
1025
|
+
### Added
|
|
1026
|
+
|
|
1027
|
+
- **`housekeep-gates`** (`/housekeep-gates`) — apply-now consolidation of accreted CI gates into one aggregator required check. Execution arm of `audit-gate-logic`.
|
|
1028
|
+
- **`test-mutation`** (`/test-mutation`) — StrykerJS / mutmut harness; kills assertion-free coverage theater.
|
|
1029
|
+
- **`enhance-arch-boundaries`** (`/arch-boundaries`) — dependency-cruiser / eslint-boundaries as CI fitness functions.
|
|
1030
|
+
- **`docs-adr`** (`/adr`) — lightweight ADRs with rejected alternatives; agent-readable INDEX.md.
|
|
1031
|
+
|
|
1032
|
+
### Changed
|
|
1033
|
+
|
|
1034
|
+
- **`audit-gate-logic`** — Phase 2.5 gate archaeology (duplicate vintages, competing baselines, hook-vs-CI, dead gates) and winner selection for `housekeep-gates`.
|
|
1035
|
+
- Neighbor carve-outs: `plan-test-coverage` no longer owns mutation execution; `audit-backend-architecture` defers mechanical rules; `plan-docs-sync` / `docs-coauthor` defer decision memory; `test-unit` defers assertion theater.
|
|
1036
|
+
|
|
1037
|
+
---
|
|
1038
|
+
|
|
1039
|
+
## [1.20.0] — 2026-08-18
|
|
1040
|
+
|
|
1041
|
+
### Added
|
|
1042
|
+
|
|
1043
|
+
- **`audit-gate-logic`** (`/gate-logic`) — read-only audit of CI/CD *gate logic*: silent bypass, ratchet gaming, conflicting workflow conditions, required-in-name-only checks. Distinct from `audit-cicd` (cost/speed/safety) and `workflow-quality-gate` (which runs gates).
|
|
1044
|
+
- **`audit-codemod-safety`** (`/codemod-safety`) — read-only audit of a mechanical source transform for behavior-preservation. Distinct from `audit-code-review` (diff quality) and `plan-data-integrity` (SQL/data migrations).
|
|
1045
|
+
|
|
1046
|
+
### Changed
|
|
1047
|
+
|
|
1048
|
+
- Neighbor descriptions now carve those owners: `audit-cicd`, `workflow-quality-gate`, `audit-code-review`, `plan-data-integrity`, `enhance-agent-guardrails`, `workflow-green-repo`.
|
|
1049
|
+
- `check-skill-count` now rewrites leftover PROMOTION.md count tokens (`One install, N skills`, article title).
|
|
1050
|
+
|
|
1051
|
+
---
|
|
1052
|
+
|
|
1053
|
+
## [1.19.1] — 2026-08-18
|
|
1054
|
+
|
|
1055
|
+
Routing pass from `audit-skill-conflicts` (no new skills). Description carve-outs
|
|
1056
|
+
so overlapping triggers pick one owner; `audit-*` is no longer claimed as
|
|
1057
|
+
universally read-only; dangling `mobile-mobile-*` refs fixed; `/test` and `/uiux`
|
|
1058
|
+
routers expanded; `check-skill-refs` gate added to `npm test` and CI.
|
|
1059
|
+
|
|
1060
|
+
### Changed
|
|
1061
|
+
|
|
1062
|
+
- Skill descriptions now name a single owner for LLM quality vs security, RLS/secrets vs the OWASP plan, UI/motion/housekeep, QA vs stubs, and third-party name-gating.
|
|
1063
|
+
- `audit-*` default remains present-then-stop. Audit-and-fix exceptions: `audit-responsive`, `audit-code-quality`, `audit-performance`, `audit-security`, `audit-i18n`, `audit-bundle-size` (plus `enhance-email-deliverability`).
|
|
1064
|
+
- `/test` routes `test-load` and `test-visual-regression`. `/uiux` holds the enhance surface router.
|
|
1065
|
+
- `plan-data-integrity` / `/integrity-plan` no longer own restore drills (those stay on `plan-backup-dr`).
|
|
1066
|
+
- `workflow-spec-tdd` no longer references `mobile-mobile-*`.
|
|
1067
|
+
|
|
1068
|
+
### Added
|
|
1069
|
+
|
|
1070
|
+
- **`check-skill-refs`** — CI gate for doubled-prefix typos and the stale `audit-responsive-layout` alias.
|
|
1071
|
+
|
|
1072
|
+
---
|
|
1073
|
+
|
|
1074
|
+
## [1.19.0] — 2026-08-18
|
|
1075
|
+
|
|
1076
|
+
Adds the **ops / launch gap pack** (13 skills): product analytics, UI state matrix, LLM attack surface, IAP, env parity, infra cost, visual + load tests, privacy/DR/ASO plans, email deliverability, and a pack self-audit. Skips the pack's `audit-responsive-layout` — already shipped as `audit-responsive` in 1.18.0. `audit-llm-security` is new (source tarball was missing that file).
|
|
1077
|
+
|
|
1078
|
+
### Added
|
|
1079
|
+
|
|
1080
|
+
- **`audit-llm-security`** — OWASP LLM Top 10 on *app-facing* AI (not Langfuse quality, not coding-agent policy).
|
|
1081
|
+
- **`plan-privacy-compliance`** + `/privacy-plan` — collection-vs-claimed, consent, deletion/export, GDPR / APPI / store labels. Cross-linked with `audit-analytics`.
|
|
1082
|
+
- **`plan-backup-dr`** + `/backup-plan` — restore capability, RPO/RTO, drill evidence (not destructive-op gates).
|
|
1083
|
+
- **`audit-analytics`** — funnel coverage, taxonomy, consent-gated firing.
|
|
1084
|
+
- **`audit-ui-states`** — empty / loading / error / offline / overflow matrix.
|
|
1085
|
+
- **`test-visual-regression`** — Playwright screenshot baselines + CI diffs (playwright-cli, not MCP).
|
|
1086
|
+
- **`test-load`** — k6/Artillery journeys; never hits prod unsigned.
|
|
1087
|
+
- **`audit-monetization-iap`** — StoreKit / Play / RevenueCat (not Stripe/web).
|
|
1088
|
+
- **`plan-aso`** + `/aso-plan` — store listing find + install conversion.
|
|
1089
|
+
- **`enhance-email-deliverability`** — SPF/DKIM/DMARC + hygiene (kept `enhance-*` beside `design-email`).
|
|
1090
|
+
- **`audit-env-parity`** — config agreement across envs (local runnability stays on `workflow-environment-ready`).
|
|
1091
|
+
- **`audit-infra-cost`** — hosting/egress (CI minutes → `audit-cicd`; tokens → `plan-llm-cost-guardrails`).
|
|
1092
|
+
- **`audit-skill-conflicts`** + `/skill-conflicts` — pack self-audit: contradictory directives, overlapping triggers, stale cross-refs, context bloat. Per-file spec stays on `validate:skills`.
|
|
1093
|
+
|
|
1094
|
+
### Changed
|
|
1095
|
+
|
|
1096
|
+
- **`design-email`** — no longer claims deliverability / SPF / "why is my email in spam".
|
|
1097
|
+
- **`plan-data-integrity`** — no longer claims backup drills / disaster recovery; those route to `plan-backup-dr`.
|
|
1098
|
+
- **Neighbors** — `audit-responsive`, `audit-langfuse-llm`, `plan-llm-cost-guardrails`, `plan-mobile-readiness`, `audit-payment-system`, `audit-cicd`, `workflow-environment-ready`, `iterate-post-launch`, `plan-stub-checker`, `enhance-agent-guardrails`, `test-red-team`, `audit-resilience`, `data-visualization` now point at the new skills.
|
|
1099
|
+
|
|
1100
|
+
---
|
|
1101
|
+
|
|
1102
|
+
## [1.18.0] — 2026-08-18
|
|
1103
|
+
|
|
1104
|
+
Adds **`audit-responsive`**: the missing layout/IA audit for "desktop is a linearized phone." Existing skills covered mobile-up (`design-mobile-first`), cross-page IA (`audit-ux-journeys`), tokens (`audit-uiux-design-system`), and polish (`enhance-web-ui` / `enhance-web-ux`) — none owned the 10 breakpoint anti-patterns + wireframe-then-implement loop.
|
|
1105
|
+
|
|
1106
|
+
### Added
|
|
1107
|
+
|
|
1108
|
+
- **`audit-responsive`** — detect stack, score 10 layout/IA anti-patterns (`file:line` + severity), extract or propose a token sheet, ASCII wireframes at 375 / 768 / 1440, then implement in reviewable chunks (report-first if scope is large). Live verify via playwright-cli. References: `references/checklist.md`.
|
|
1109
|
+
- **`/responsive-audit`** — thin slash entry. Optional path scope.
|
|
1110
|
+
|
|
1111
|
+
### Changed
|
|
1112
|
+
|
|
1113
|
+
- **`design-mobile-first`** — description no longer claims generic "responsive" (that stole this skill). Routes linearized-desktop complaints to `audit-responsive`.
|
|
1114
|
+
- **Neighbors** — `plan-uiux-unification`, `audit-ux`, `audit-ux-journeys`, `audit-uiux-design-system`, `/uiux`, `docs/PLAN-LOOPS.md`, catalog compositions, and the trigger cheat sheet now point at the new skill.
|
|
1115
|
+
|
|
1116
|
+
---
|
|
1117
|
+
|
|
1118
|
+
## [1.17.0] — 2026-08-15
|
|
1119
|
+
|
|
1120
|
+
Cursor/Claude config housekeep: cut always-on rule weight, stop shipping Cursor builtin skill dupes, slim default MCP, interpolate secrets.
|
|
1121
|
+
|
|
1122
|
+
### Changed
|
|
1123
|
+
|
|
1124
|
+
- **Skill descriptions** — house budget 320 characters (was 1024). 86 descriptions shortened; bodies unchanged. `paths` on RN/Capacitor skills; `disable-model-invocation` on slash-only `skills-cursor` utilities.
|
|
1125
|
+
- **Installer** — Cursor skips 11 `skills-cursor` names that Cursor already ships as managed builtins (keeps `babysit`). Claude still gets portable copies. `--no-agents-mirror` and `--quiet` added. `install.sh` is a wrapper around `bin/install.mjs`. `cursor-sync` finds `~/Documents/GitHub/cursor-kenji` and calls the Node installer.
|
|
1126
|
+
- **Rules** — `full-stack-ship-discipline` is agent-selected (no auto-push). `composer-2.5-execution` drops empty `globs`. `shell-first-search` is a hang-fallback, not a Grep/Glob ban.
|
|
1127
|
+
- **MCP** — essential template is Firecrawl (authenticated, feedback flags off) + Context7 + Supabase with `${env:NAME}` interpolation. Sequential Thinking and Playwright MCP are full-template only. Research command no longer requires Sequential Thinking MCP.
|
|
1128
|
+
|
|
1129
|
+
### Added
|
|
1130
|
+
|
|
1131
|
+
- `scripts/shorten-skill-descriptions.mjs` — description budget rewriter used for this release.
|
|
1132
|
+
|
|
1133
|
+
---
|
|
1134
|
+
|
|
1135
|
+
## [1.16.0] — 2026-08-04
|
|
1136
|
+
|
|
1137
|
+
Patterns adopted from [mattpocock/skills](https://github.com/mattpocock/skills) (MIT) after a full comparison of the two packs: alignment-first interviewing, shared domain language, session handoff, intent-first conflict resolution, and the "writing great skills" verbosity levers.
|
|
1138
|
+
|
|
1139
|
+
### Added
|
|
1140
|
+
|
|
1141
|
+
- **`grilling` skill + `/grill-me` command** — relentless one-question-at-a-time interview to close the user↔agent alignment gap before any code: recommended answer with each question, facts looked up vs decisions asked, no edits until confirmed, closes with a decision log that feeds `design-prd` / `/plan`.
|
|
1142
|
+
- **`domain-modeling` skill** — build a `CONTEXT.md` glossary and sparing ADRs (hard-to-reverse + surprising + real trade-off only); challenges conflicting terms, sharpens fuzzy language, cross-references claims against code.
|
|
1143
|
+
- **`handoff` skill + `/handoff` command** — compact the session into a handoff doc (state, ordered next steps, suggested skills, gotchas) in the OS temp dir; secrets redacted, artifacts referenced not copied, verification claims held to the `verification-before-completion` ladder. `disable-model-invocation: true`, so it costs zero always-on context.
|
|
1144
|
+
- **`workflow-merge-conflicts` skill** — resolve in-progress merges/rebases by tracing each hunk to its original intent (commits, PRs, issues) before resolving; repo checks re-run before finishing.
|
|
1145
|
+
|
|
1146
|
+
### Changed
|
|
1147
|
+
|
|
1148
|
+
- **`meta-skill-creator` + `create-skill` (Cursor)** — added the verbosity levers: no-op test (delete lines the model already obeys), positive phrasing over prohibition, leading words ("fast, deterministic, low-overhead" → *tight*), single source of truth, one trigger per branch in descriptions, checkable completion criteria; plus model-invoked vs user-invoked (`disable-model-invocation`) cost guidance.
|
|
1149
|
+
- **`debug-error`** — Phase 1 now requires a tight feedback loop before any hypothesis: one red-capable, deterministic, fast command already run once, asserting the user's exact symptom; Phase 2 gains repro minimisation (every remaining element load-bearing); Phase 6 requires the loop re-run green and the minimised repro converted to a regression test at a correct seam.
|
|
1150
|
+
- **`workflow-spec-tdd`** — TDD phase now tests only at pre-agreed seams (named in the plan, confirmed with the user), works in vertical slices (tracer bullets, not all-tests-first), bans tautological tests (expected values from an independent source of truth), and treats refactor-broken tests as implementation coupling to fix at the seam.
|
|
1151
|
+
- **`.cursor-plugin/plugin.json`** — re-synced version with `package.json` (was left at 1.14.1 by the 1.15.0 release).
|
|
1152
|
+
|
|
1153
|
+
## [1.15.0] — 2026-08-02
|
|
1154
|
+
|
|
1155
|
+
Always-on rules audit (2026-08-02): the shipped rule set cost ~11k tokens per chat once installed globally, against a ~2–4k healthy budget, and per-project template bundles leaked into every repo. Verified against current Cursor docs (`alwaysApply: true` ignores globs/description; rules ≤500 lines; skills load on demand) and Claude Code docs (CLAUDE.md ≤200 lines; `paths:` frontmatter is the only conditional loader in `.claude/rules/`; hooks for enforcement).
|
|
1156
|
+
|
|
1157
|
+
### Changed
|
|
1158
|
+
|
|
1159
|
+
- **Installer (`bin/install.mjs`, `install.sh`)** — per-project rule bundles (`native-rn-monorepo/`, `project-starter/`) are no longer copied into global `~/.cursor/rules` or `~/.claude/rules`; they are documented as copy-into-project bundles and their always/glob rules were firing in every repo (e.g. RN no-Mac conventions loading in Vite web projects).
|
|
1160
|
+
- **`rules/skill-workflows.mdc`** — demoted from a 172-line always-on catalog (~2.1k tokens/chat) to a 46-line agent-requested routing index (`alwaysApply: false`); skills self-describe and load on demand, so the full table was dead weight.
|
|
1161
|
+
- **`rules/composer-2.5-execution.mdc`** — demoted to agent-requested for Cursor and `paths`-scoped (`**/plan-*.md`, `**/plans/**`) for Claude Code, so plan-execution guardrails load only during plan runs.
|
|
1162
|
+
- **`rules/senior-engineer.md` → `.mdc`** — cut from 122 lines of generic protocol to 26 lines of stack defaults + security non-negotiables, demoted to agent-requested; renamed because current Cursor ignores plain `.md` rule files.
|
|
1163
|
+
- **`rules/full-stack-ship-discipline.mdc`** and **`rules/verification-before-completion.mdc`** — kept always-on but rewritten at roughly half the length; intent (deploy-schema-with-UI, evidence-before-completion ladders, completion-judge gate) preserved.
|
|
1164
|
+
- **`scripts/test-install.mjs`** — asserts the bundle exclusion (no `native-rn-monorepo/` or `project-starter/` in installed rules) and the `.mdc` rename.
|
|
1165
|
+
|
|
1166
|
+
Hooks, skills, commands, and subagents are unchanged — on-demand surfaces were not the problem.
|
|
1167
|
+
|
|
1168
|
+
---
|
|
1169
|
+
|
|
1170
|
+
## [1.14.1] — 2026-07-29
|
|
1171
|
+
|
|
1172
|
+
Follow-up audit of every browser-touching file after the 1.14.0 migration. Two classes of leftover slipped through: the prose pass used single-line regexes, so any "Playwright MCP" that wrapped across a line break survived; and the token pass renamed `browser_*` verbs without being able to tell that a block of bare verb names was meant to be *runnable*. All 26 files that reference `playwright-cli` or the anti-stall protocol were re-read by hand.
|
|
1173
|
+
|
|
1174
|
+
### Fixed
|
|
1175
|
+
|
|
1176
|
+
- **`test-playwright`** — Phase 3, the skill's core per-step interaction loop, was still bare pseudo-code carrying the pre-migration "wait 2s" phrasing. Rewritten as a runnable `$PW $S …` sequence. A stale "hard `goto` reload" also became `reload`.
|
|
1177
|
+
- **`test-qa/references/details.md`** — the equivalent execution-cycle block, same fix.
|
|
1178
|
+
- **`audit-langfuse-llm`** — a leftover MCP-shaped ` ```json ` block (`goto` plus a `{ "url": … }` object) is now a real `open --headed` invocation.
|
|
1179
|
+
- **`audit-uiux-design-system`** — the skill **description** still advertised "browser MCP tools", line-split across the YAML fold. Description text feeds skill triggering, so this was stale metadata, not just prose.
|
|
1180
|
+
- **`commands/test.md`** — "drive a visible browser through the Playwright / MCP" spanned a line break; now names playwright-cli with the `-s=` and `--headed` form inline.
|
|
1181
|
+
- **`audit-ux/references/details.md`** — bare arrow-stub keyboard-navigation block converted to real commands.
|
|
1182
|
+
|
|
1183
|
+
### Changed
|
|
1184
|
+
|
|
1185
|
+
- **`enhance-web-ux`** — the three-viewport pass instructed "always with viewport set BEFORE navigate", written for the MCP. Verified against `@playwright/cli@0.1.17` that `resize` persists across `goto` (a 1024×700 viewport survived navigation intact), so the ordering is sound; the stub is now a runnable loop over the three widths with a comparison table for what each one exposes.
|
|
1186
|
+
|
|
1187
|
+
### Notes
|
|
1188
|
+
|
|
1189
|
+
Skills showing no `$PW` invocations are intentional, not gaps. Spokes such as `enhance-motion` and `enhance-web-forms` reference commands by name and defer to `protocol-browser-anti-stall` for the invocation form — only the hub carries the `PW=` boilerplate.
|
|
1190
|
+
|
|
1191
|
+
---
|
|
1192
|
+
|
|
1193
|
+
## [1.14.0] — 2026-07-29
|
|
1194
|
+
|
|
1195
|
+
Browser automation moves off the **Playwright MCP** and onto **`playwright-cli`**. The MCP serves one browser per server, and a persistent Chrome profile can only be locked by one process at a time — so several agents on the same repo either contend for the profile lock or fight over each other's tabs. The CLI gives every agent its own isolated browser through `-s=<session>`, runs natively in parallel shells, and costs far fewer tokens (no tool schemas or verbose accessibility trees loaded into context). Verified end-to-end against `@playwright/cli@0.1.17`.
|
|
1196
|
+
|
|
1197
|
+
### Changed
|
|
1198
|
+
|
|
1199
|
+
- **`protocol-browser-anti-stall`** — rewritten around `playwright-cli`. Mandatory `-s=<session>` naming, `npx --yes @playwright/cli@latest` invocation (a global `npm i -g` is unreliable under `fnm`/`nvm`, whose global prefix is per-shell), and **explicit `--headed`** because the CLI is headless by default where the MCP was headed. Adds a session-lifecycle section (`open`/`goto`/`close`/`list`/`close-all`/`kill-all`), a parallel-agents section replacing the old tab-claiming etiquette, and artifact rules covering both `.playwright-mcp/` (screenshots via `--filename`) and the CLI's auto-written `.playwright-cli/` snapshots. All anti-stall guarantees are preserved: navigation guard, ≤3s waits, max 4 attempts per goal, evidence-before-retry, timeout budget, blocker format.
|
|
1200
|
+
- **Waiting model** — there is no `wait` command in the CLI. Playwright auto-waits for actionability on `click`/`fill`/`select`; explicit waits become `sleep N` (≤3s) or `run-code` with `waitFor({ timeout })`. Documented in the protocol and the command map.
|
|
1201
|
+
- **22 skills + `commands/test.md` + README migrated** — 191 tool-token replacements plus 52 prose updates across `test-playwright`, `test-qa`, `test-red-team`, `audit-accessibility`, `audit-uiux-design-system`, `audit-ux`, `audit-langfuse-llm`, `audit-bundle-size`, `audit-i18n`, `audit-realworld`, `deploy-verify`, `iterate-post-launch`, `enhance-readme`, `enhance-web-ux`, `enhance-web-ui`, `enhance-web-forms`, `enhance-web-seo`, `enhance-motion`, `enhance-pwa`, `enhance-capacitor-ui`, `design-email`, `housekeep-design`, `plan-perf-audit`, `plan-stub-checker`, `plan-uiux-unification`. The 19 structural `playwright:browser_*` JSON call sites (axe-core injection, keyboard walks, deploy smoke checks) were rewritten by hand into real shell invocations.
|
|
1202
|
+
- **`mcp/README.md`** — the Playwright entry now documents the CLI as the supported path, keeping the MCP only as an `--isolated` fallback (which loses saved logins). The pin in `mcp/VERSIONS.md` is retained for that fallback.
|
|
1203
|
+
- **`.gitignore`** — added `.playwright-cli/` alongside `.playwright-mcp/`.
|
|
1204
|
+
|
|
1205
|
+
### Added
|
|
1206
|
+
|
|
1207
|
+
- **`references/mcp-to-cli-map.md`** — complete `browser_*` → CLI command map (actions, waiting, evidence, tabs, storage, session management), plus the concepts that no longer apply (`browser_lock`, tab claiming, `session.json`, `--isolated` storage-state injection) and the gotchas that bite in practice.
|
|
1208
|
+
- **Google sign-in workaround** — `references/playwright-session-coordination.md` documents the one case that needs care: Google detects CDP and blocks sign-in from any Playwright-launched browser with "This browser or app may not be secure." The working sequence is a one-time manual login in **real Chrome** against a dedicated `--user-data-dir` (no `--remote-debugging-port`), then reuse via `open --persistent --profile <dir>`. Verified: Gmail loads straight into the inbox, and the session survives `close` → reopen.
|
|
1209
|
+
- **`scripts/migrate-browser-mcp-to-cli.mjs`** — the reviewed migration script, kept in-tree as an audit trail of how the rewrite was performed.
|
|
1210
|
+
|
|
1211
|
+
---
|
|
1212
|
+
|
|
1213
|
+
## [1.13.0] — 2026-07-25
|
|
1214
|
+
|
|
1215
|
+
UX journeys audit — a new cross-page skill for the layer `audit-ux` (per-page heuristics) doesn't cover: **can users actually find things and finish their stories?** A site can pass every per-page heuristic and still fail because the feature is buried four clicks deep, the nav mirrors the DB schema, or the checkout dead-ends on mobile. Grounded in the 2026 practitioner consensus: a UX audit derives from user stories, audits IA against mental models, walks the real journeys, and grounds findings in behavioral evidence — never taste presented as data.
|
|
1216
|
+
|
|
1217
|
+
### Added
|
|
1218
|
+
|
|
1219
|
+
- **`audit-ux-journeys`** — cross-page user-story, task-completion & IA audit (**Skill 110**). **Phase 0** derives 5–10 real stories from routes/nav/CTAs (reuses `design-prd`/`plan-test-coverage` inventories, never invented personas) and scopes depth by audit trigger (KPIs dropping / complaints / redesign / pre-launch-no-data → qualitative, labeled as assumptions). **Phase 1** audits IA structurally (IA1–IA9): click depth per story target, orphan pages, dead ends, label consistency (nav ≈ title ≈ H1), grouping vs mental model, first-click logic, wayfinding, search/filter, URL sanity. **Phase 2** walks every story end-to-end in a headed browser (desktop + 390px mobile) → task-completion matrix with friction logs (hesitation/mislabel/backtrack/surprise/stall) and error-recovery probes (invalid input, Back, refresh mid-flow); a BLOCKED story is automatically a Blocker. **Phase 3** evidence discipline — every finding tagged `[data]` / `[observed]` / `[judgment]`; validates against GA4/PostHog/Clarity/Amplitude funnels when present, otherwise recommends minimal instrumentation so the next audit has evidence. **Phase 4** impact×effort report: quick wins vs roadmap vs deprioritized, neutral language, always names what works. Detailed methods in `skills/audit-ux-journeys/references/checklist.md`.
|
|
1220
|
+
|
|
1221
|
+
### Changed
|
|
1222
|
+
|
|
1223
|
+
- **`audit-ux`** — description and Step 0c now scope it explicitly to the **per-page experience lens** and hand cross-page journeys/IA to `audit-ux-journeys` (its 0c IA map is context-building, not a structural audit). CATALOG, TRIGGER-CHEATSHEET, README (family table 17→18, full list, Assess bullets, "Start here" row), and `skill-workflows.mdc` updated; skill count 109 → 110.
|
|
1224
|
+
|
|
1225
|
+
---
|
|
1226
|
+
|
|
1227
|
+
## [1.12.1] — 2026-07-24
|
|
1228
|
+
|
|
1229
|
+
Fix broken Tsumagoi image on the npm README (private-repo raw GitHub URL 404'd). Point at the public live-site OG image and drop the private repo link.
|
|
1230
|
+
|
|
1231
|
+
### Fixed
|
|
1232
|
+
|
|
1233
|
+
- **Tsumagoi ad image** — `src` now `https://tsumagoi.kensaur.us/og-image.png` (public) instead of `raw.githubusercontent.com/...` (404 on the private repo).
|
|
1234
|
+
- **Also by table** — Tsumagoi row links only to the live site; no GitHub repo link.
|
|
1235
|
+
|
|
1236
|
+
---
|
|
1237
|
+
|
|
1238
|
+
## [1.12.0] — 2026-07-24
|
|
1239
|
+
|
|
1240
|
+
README discoverability overhaul — ELI5 intro, always-visible skill lists with family counts, npm-safe workflow diagram (no mermaid), and a playful Tsumagoi Work&Camp invite. No skill/command behavior changes; counts unchanged.
|
|
1241
|
+
|
|
1242
|
+
### Added
|
|
1243
|
+
|
|
1244
|
+
- **"Explain it like I'm five"** opener with a use-case table (*you say… → what kicks in*) and an ASCII workflow loop that renders on npm (replaces the mermaid block that showed as raw code).
|
|
1245
|
+
- **Skill families at a glance** table (counts + one-line blurb per family) plus a full always-visible skill table per family — no collapsed `<details>` you have to click open.
|
|
1246
|
+
- **Wanna code in the mountains?** — playful ad for [Tsumagoi Work&Camp](https://tsumagoi.kensaur.us) (1,444 m coworking camp) with live-site link + screenshot.
|
|
1247
|
+
|
|
1248
|
+
### Changed
|
|
1249
|
+
|
|
1250
|
+
- README section order: inventory + full skill list sit **above** the long Quick Start installer details.
|
|
1251
|
+
- `scripts/generate-skill-index.mjs` emits markdown tables instead of collapsed details; warmer family headings.
|
|
1252
|
+
- Workflows section simplified to a stage cheat-sheet that points at the top loop diagram.
|
|
1253
|
+
|
|
1254
|
+
---
|
|
1255
|
+
|
|
1256
|
+
## [1.11.2] — 2026-07-24
|
|
1257
|
+
|
|
1258
|
+
Move the auto-generated skill index up so npm/GitHub visitors see every skill right after the inventory table — no 12-screen scroll past Workflows. No skill behavior changes.
|
|
1259
|
+
|
|
1260
|
+
### Changed
|
|
1261
|
+
|
|
1262
|
+
- **README section order** — `Every skill, in plain English` now sits immediately after `What's Inside` (before `Workflows`), so the skill list is discoverable on the npm Readme tab without deep scrolling.
|
|
1263
|
+
|
|
1264
|
+
---
|
|
1265
|
+
|
|
1266
|
+
## [1.11.1] — 2026-07-24
|
|
1267
|
+
|
|
1268
|
+
README rewrite — the npm/GitHub landing page now lists every skill with a one-line summary, and the prose is warmer throughout. No skill, command, rule, or hook behavior changes; counts unchanged.
|
|
1269
|
+
|
|
1270
|
+
### Added
|
|
1271
|
+
|
|
1272
|
+
- **Auto-generated skill index in README** — new "Every skill, in plain English" section lists all **121** installable skills (109 agent + 12 Cursor) grouped by family, each with a one-line summary pulled from that skill's `SKILL.md` frontmatter. Collapsed `<details>` groups keep the page scannable.
|
|
1273
|
+
- **`scripts/generate-skill-index.mjs`** — regenerates the README block between `<!-- SKILL-INDEX:START -->` / `END` markers. `npm run gen:skill-index` writes; `npm run check:skill-index` (wired into `npm test`) fails if the block drifts from the filesystem.
|
|
1274
|
+
|
|
1275
|
+
### Changed
|
|
1276
|
+
|
|
1277
|
+
- **README tone** — benefit-first intro, shorter sentences, plain-English lead-ins before dense tables, and the giant Workflows "Assess" paragraph broken into scannable sub-bullets. FAQ grammar fix ("A installable" → "It's an installable").
|
|
1278
|
+
|
|
1279
|
+
---
|
|
1280
|
+
|
|
1281
|
+
## [1.11.0] — 2026-07-24
|
|
1282
|
+
|
|
1283
|
+
Payment system audit — a new read-only skill for the code that fails differently from normal CRUD: a retried charge is a **double-charge**, a lost ledger write is **vanished money**, a logged PAN is **PCI liability**, an unverified webhook is a **spoofed "payment succeeded"**. Grounded in the 2026 consensus (idempotency + double-entry ledger + reconciliation, with PCI DSS v4.0.1 as the floor and webhooks as the source of truth). Scope-gated so a Stripe-Checkout shop and an in-house gateway each see only relevant findings, and wired to the Stripe MCP for version-anchored provider checks.
|
|
1284
|
+
|
|
1285
|
+
### Added
|
|
1286
|
+
|
|
1287
|
+
- **`audit-payment-system`** — read-only, scope-gated audit (**Skill 109**). Phase 0 detects the payment surfaces + provider and classifies the repo (**P0 merchant integrator / P1 platform-marketplace / P2 gateway-PSP-fintech**) so an in-house-ledger control is `N/A` (not "Missing") on a shop that offloads it to Stripe. Phase 2 marks each in-scope control **Implemented/Partial/Missing/N-A** with `file:line` across seven groups: **A** money-movement correctness (idempotency on every mutation + DB unique constraint, dedup/payload-guard, payment state machine / no double-capture, integer minor units, multi-currency+FX), **B** ledger & data integrity (double-entry balanced/sum-zero, append-only immutable, derived balance snapshots, auditability, date partitioning), **C** async & webhooks (sync-auth vs async-everything, HMAC verify, event-id dedup + 200-then-process, atomic state+ledger+outbox, pull-based recovery for stuck payments, refund/dispute/payout saga), **D** reconciliation & settlement (daily 3-way match ledger↔PSP↔bank, break report, discrepancy handling, halt-on-unreconciled brake), **E** fraud/risk/SCA (velocity/geo/device + rules/ML score, 3DS2/SCA + exemptions, fraud-service fail policy, chargeback/VAMP monitoring, AML), **F** PCI DSS v4.0.1 (never store/log PAN or CVV, tokens-only scope reduction, key rotation, access audit), **G** resilience (PSP/bank timeout + breaker, bulkhead, partial-write safety, graceful degradation). Detailed per-control detection in `skills/audit-payment-system/references/checklist.md`.
|
|
1288
|
+
- **Stripe MCP wiring** — when the PSP is Stripe, Phase 1 uses `search_stripe_documentation` for concepts/best-practice and `stripe_api_search` + `stripe_api_details` for exact API params, anchoring findings to the current API (PaymentIntents, not the legacy Charges API). Non-Stripe providers use `/research` against official docs.
|
|
1289
|
+
|
|
1290
|
+
### Changed
|
|
1291
|
+
|
|
1292
|
+
- No severity below **Critical** for a double-charge, lost-money, or PAN-exposure finding. Read-only: payment code is a STOP-and-confirm surface, so findings feed a human-reviewed remediation rather than an unattended edit. Delegates without overlap — per-call resilience → `audit-resilience`, PCI/secrets → `audit-security`, ledger schema → `audit-db-schema`, outbox/saga structure → `audit-backend-architecture`. CATALOG, TRIGGER-CHEATSHEET, README, and `skill-workflows.mdc` updated; skill count 108 → 109.
|
|
1293
|
+
|
|
1294
|
+
---
|
|
1295
|
+
|
|
1296
|
+
## [1.10.0] — 2026-07-24
|
|
1297
|
+
|
|
1298
|
+
Decision lens for `audit-backend-architecture` — v1.9.0 answered *"is pattern X present?"* (conformance). This turns it into a **decision advisor** that answers *"which pattern should this codebase adopt next, and which would be over-engineering right now?"* — grounded in the 2026 "start simple, earn every pattern / modular-monolith-first" consensus. No new skill; the existing audit gets a second lens plus three patterns it was missing.
|
|
1299
|
+
|
|
1300
|
+
### Added
|
|
1301
|
+
|
|
1302
|
+
- **Fit/decision lens (Phase 3)** in `audit-backend-architecture` — for each pattern, classify **Adopt now / Adopt when [trigger] / Defer (premature)** from detected symptoms, with a **maturity ladder** (Stage 0 modular monolith → cache-aside/outbox → async/BFF/CQRS → db-per-service/saga → mesh/cell-based, each gated by a trigger) and a **symptom→pattern decision table**. Over-engineering is now a first-class finding (CQRS without read/write divergence, mesh/microservices below the size threshold, distributed monolith).
|
|
1303
|
+
- **Core principle — "start simple, earn every pattern"** — modular-monolith-first default; a pattern is only "Missing" when a measurable trigger justifies its cost; decide sync-vs-async **per interaction**; distributed monolith flagged as worse than a monolith.
|
|
1304
|
+
- **Three patterns added** (audit rows #17–19 + detection in `references/patterns.md`): **communication style** (sync request/response vs async event-driven, per interaction, with a signal table), **cache-aside** (TTL + invalidation + stampede guard), **database-per-service / data ownership** (+ distributed-monolith anti-pattern).
|
|
1305
|
+
- **`backend-patterns/references/architecture-patterns.md`** — implementation for the three: sync-vs-async decision tree + hybrid/outbox example, cache-aside read+invalidate, and data-ownership (owned schemas at T1, split only under real pressure).
|
|
1306
|
+
|
|
1307
|
+
### Changed
|
|
1308
|
+
|
|
1309
|
+
- Report template gains **Adopt now / Adopt when / Defer** sections (renumbered to Phase 4). `audit-backend-architecture` description, CATALOG, TRIGGER-CHEATSHEET, README, and `skill-workflows.mdc` now surface the decision lens ("which pattern should I use", "am I over-engineering", "sync vs event-driven"). Skill/command/agent **counts unchanged** (enhancement, not a new skill).
|
|
1310
|
+
|
|
1311
|
+
---
|
|
1312
|
+
|
|
1313
|
+
## [1.9.0] — 2026-07-24
|
|
1314
|
+
|
|
1315
|
+
Backend architecture audit — a new read-only skill that checks a repo's **distributed-systems architecture** (not just per-call resilience), plus an implementation reference so the fixes it delegates actually exist. Answers "is my backend production-grade?" for the patterns agents systematically skip: API gateway, BFF, outbox, saga, bulkhead, hexagonal, service mesh, and more. Topology-gated so a Next.js/Supabase monolith and a Kubernetes fleet each see only relevant findings.
|
|
1316
|
+
|
|
1317
|
+
### Added
|
|
1318
|
+
|
|
1319
|
+
- **`audit-backend-architecture`** — read-only, topology-gated audit (**Skill 108**). Phase 0 classifies the repo into a tier (T1 serverless/monolith → T2 containers → T3 k8s/microservices/event-driven), then marks each in-scope pattern **Implemented/Partial/Missing/N-A** with `file:line`: **API gateway** (auth, rate-limit, CORS, transform, logging, monitoring, caching), **BFF / API composition / GraphQL federation**, **circuit breaker**, **bulkhead**, **backpressure/load-shedding**, **outbox + CDC** (the dual-write fix), **saga** (orchestration/choreography + compensation + saga-pivot), **CQRS + event sourcing**, **hexagonal / ports-and-adapters**, **anti-corruption layer**, **strangler-fig migration**, **sidecar / service mesh** (incl. ambient/sidecarless), **cell-based architecture**, **zero-trust/mTLS**, **distributed tracing + SLOs**, and **contract testing**. Detailed per-pattern detection lives in `skills/audit-backend-architecture/references/patterns.md`.
|
|
1320
|
+
- **`skills/backend-patterns/references/architecture-patterns.md`** — implementation guidance + code for the patterns the audit flags (gateway centralization, BFF, bulkhead, circuit-breaker placement, outbox+relay/CDC, saga with the saga-pivot rule, hexagonal/ports-and-adapters, anti-corruption layer, strangler-fig), plus a "when NOT to reach for these" section.
|
|
1321
|
+
|
|
1322
|
+
### Changed
|
|
1323
|
+
|
|
1324
|
+
- **`audit-resilience` boundary kept clean** — the new architecture audit checks whether *patterns* exist (structural); per-call runtime tuning (timeouts, retry backoff+jitter, idempotency keys, cancellation) still belongs to `audit-resilience`, which the new skill explicitly defers to instead of duplicating.
|
|
1325
|
+
- **`backend-patterns`** — description gains triggers ("circuit breaker", "outbox pattern", "saga", "bulkhead", "hexagonal architecture", "API gateway", "BFF") and a new "Architecture patterns (distributed systems)" section pointing to the reference; pairs with `audit-backend-architecture`.
|
|
1326
|
+
- **Routing/docs** — added to `skill-workflows.mdc` (repo + `.cursor`), `docs/CATALOG.md`, `docs/TRIGGER-CHEATSHEET.md`, and `README.md` (Assess stage, use-case table). Counts synced to **108 skills**.
|
|
1327
|
+
|
|
1328
|
+
---
|
|
1329
|
+
|
|
1330
|
+
## [1.8.3] — 2026-07-23
|
|
1331
|
+
|
|
1332
|
+
Command-collision fix — three of our slash commands shared names with Claude Code's own commands. Because Claude Code 2.x **merges `commands/` into the skill namespace**, a file at `commands/<x>.md` creates `/<x>`: when `<x>` matches a built-in it shows a **duplicate**, and when it matches a bundled skill our file **silently overrides** Claude's. Renamed all three and added a CI guard so it can't regress. No other skill, command, rule, or hook behavior changes; command **counts are unchanged**.
|
|
1333
|
+
|
|
1334
|
+
### Changed
|
|
1335
|
+
|
|
1336
|
+
- **`/mcp` → `/mcp-guide`** — was duplicating Claude Code's built-in `/mcp` (the MCP server manager). Renamed `commands/mcp.md` → `commands/mcp-guide.md`.
|
|
1337
|
+
- **`/review` → `/review-code`** — was duplicating Claude Code's built-in `/review`. Renamed `commands/review.md` → `commands/review-code.md` (still delegates to `audit-code-review`).
|
|
1338
|
+
- **`/debug` → `/debug-issue`** — was overriding Claude Code's bundled `/debug`. Renamed `commands/debug.md` → `commands/debug-issue.md` (still delegates to `debug-error`).
|
|
1339
|
+
- **`README.md` + `docs/CATALOG.md`** — command tables updated to the new names with a note on why each was renamed.
|
|
1340
|
+
|
|
1341
|
+
### Added
|
|
1342
|
+
|
|
1343
|
+
- **CI guard** in `scripts/validate-skills.mjs` — fails `npm test` if any `commands/*.md` name collides with a known Claude Code built-in command or bundled skill, so future commands can't reintroduce a duplicate/override.
|
|
1344
|
+
|
|
1345
|
+
> **Upgrade note:** the natural-language triggers are unchanged (say "debug this", "review my PR", etc. and the underlying skill still fires). Only the explicit slash aliases changed: use `/mcp-guide`, `/review-code`, `/debug-issue`. After updating, **restart Claude Code** — it live-watches skill directories but not `commands/`, so newly added or renamed command files only register on the next session start.
|
|
1346
|
+
|
|
1347
|
+
---
|
|
1348
|
+
|
|
1349
|
+
## [1.8.2] — 2026-07-23
|
|
1350
|
+
|
|
1351
|
+
Documentation-skill release — teach the skills to write the way the 1.8.1 README now reads. Bakes the reader-first, plain-language 5W1H approach into the documentation-authoring skills themselves, so every doc they produce orients a newcomer before diving into reference detail. No other skill, command, rule, or hook behavior changes.
|
|
1352
|
+
|
|
1353
|
+
### Changed
|
|
1354
|
+
|
|
1355
|
+
- **`docs-writer`** — new **"Core principle — write for the reader's mental model first"** section with a 5W1H table (what/why/who/how/when·where → how to answer each) and the rules that follow (lead with the goal not the implementation, progressive disclosure, beat the curse of knowledge, show-don't-tell). Adds a **"Newcomer on-ramp"** section demonstrating the 3-column plain-language building-blocks glossary, a **"Kill the Jargon"** guideline (plain-first, precise-second), an upgraded README template (plain tagline + why/who + glossary hint), and two new README-checklist items (first-screen what/why/who; jargon defined or glossed).
|
|
1356
|
+
- **`enhance-readme`** — previously visual-only; adds **"The words matter as much as the pixels"** coupling the hero/screenshot work to `docs-writer`'s principle, defines the ideal first-screen order (name+tagline → hero → why/who → first-win → depth), adds why/who to the hero template, and adds a stop-condition that the first screen must answer what/why/who in plain language.
|
|
1357
|
+
- **`docs-coauthor`** — adds a guiding-principle line: orient the reader (what/why/who) from the first sentence, not just at the Reader-Testing stage; points to the canonical `docs-writer` rule.
|
|
1358
|
+
|
|
1359
|
+
Kept DRY: the full principle lives in `docs-writer`; the other two reference it. `plan-docs-sync` (a drift *audit*, not an authoring skill) intentionally unchanged.
|
|
1360
|
+
|
|
1361
|
+
---
|
|
1362
|
+
|
|
1363
|
+
## [1.8.1] — 2026-07-23
|
|
1364
|
+
|
|
1365
|
+
Documentation-clarity release — same skills, friendlier front door. Rewrites the released-page surfaces (README on npm/GitHub, `llms.txt` for AI crawlers, the Cursor plugin manifest, directory listing copy) so a non-technical newcomer can answer *what / who / why / how* before hitting the counts and taxonomy. No skill, command, rule, or hook behavior changes.
|
|
1366
|
+
|
|
1367
|
+
### Changed
|
|
1368
|
+
|
|
1369
|
+
- **README newcomer on-ramp** — adds a plain-English hero line, a "New to AI skills?" primer, a "Who it's for" callout, and a five-row **building-blocks glossary** (Skill / Command / Subagent / Rule / MCP server → plain meaning + how you trigger each) directly under the intro, while preserving the full developer depth below.
|
|
1370
|
+
- **`llms.txt`** — leads with the plain value proposition (ready-made playbooks your editor auto-triggers) before the inventory, improving how AI answer-engines and directory crawlers summarize the project.
|
|
1371
|
+
- **`.cursor-plugin/plugin.json`** — benefit-first description for the Cursor marketplace / directory listings.
|
|
1372
|
+
- **`docs/CATALOG.md`** — skill-taxonomy table gains a lifecycle **Stage** column and a `plan-`/`housekeep-` row, with a newcomer pointer to the Getting Started guide.
|
|
1373
|
+
- **`docs/GETTING-STARTED.md`** — plain-language example rows for the v1.8.0 skills (motion, forms, design consolidation, guardrails, resilience).
|
|
1374
|
+
- **`docs/TRIGGER-CHEATSHEET.md`** & **`docs/PROMOTION.md`** — first-time-reader pointer and benefit-first listing copy.
|
|
1375
|
+
|
|
1376
|
+
---
|
|
1377
|
+
|
|
1378
|
+
## [1.8.0] — 2026-07-23
|
|
1379
|
+
|
|
1380
|
+
Design, motion, forms, and anti-vibe-coding release. Adds six skills that fill the loop's remaining gaps — full-stack parity (`audit-realworld`), production resilience (`audit-resilience`), coherent motion on an existing system (`enhance-motion`), design-system consolidation to one SSOT (`housekeep-design`), production-quality forms (`enhance-web-forms`), and guardrails-as-code against AI regressions (`enhance-agent-guardrails`). README gains a "mental model" section teaching how the families chain against each other, a by-use-case entry table, and lifecycle-stage tags. Skills 100 → 106.
|
|
1381
|
+
|
|
1382
|
+
### Added
|
|
1383
|
+
|
|
1384
|
+
- **`audit-realworld` skill** — read-only full-stack gap audit that benchmarks a repo against the [RealWorld](https://github.com/realworld-apps/realworld) ("Conduit") reference: its formal API spec, shared Bruno/Hurl E2E contract suite, and closest-stack reference implementation. Auto-detects strict spec **Conformance** (repo is a RealWorld build) vs **Benchmark** (maps RealWorld's production-relevant patterns onto the repo's own domain), and bows out cleanly on non-CRUD/non-web repos. Reports Implemented/Partial/Missing/Diverges across frontend, backend, and data layer with `file:line` evidence, then delegates real production hardening to `audit-security` / `plan-security-audit` / `plan-perf-audit` / `plan-rls-audit` / `full-stack-ship-discipline` — RealWorld is treated as a completeness/pattern reference, never a production bar. Wired into the Audits routing table, `docs/CATALOG.md`, and `docs/TRIGGER-CHEATSHEET.md`. Skills 100 → 101.
|
|
1385
|
+
- **`enhance-motion` skill** — audits an existing app's design system and current motion, then applies coherent, `prefers-reduced-motion`-safe, 60fps motion using a right-sized 2026 stack (tw-animate-css for CSS utility transitions, Auto-Animate for zero-config list/layout changes, Motion/motion.dev for component transitions·gestures·presence, GSAP only for complex timelines), with Kinetics as a pattern source. Defines a motion-token SSOT so timing/easing stops fragmenting. Distinct from `design-motion` (from-scratch cookbook); applies changes and verifies via browser MCP.
|
|
1386
|
+
- **`housekeep-design` skill** — consolidates a design system that has drifted across many vibe-coding sessions and dev handoffs into one source of truth. Detects competing tokens, duplicate components, naming drift, mixed icon libraries, and arbitrary values; reconciles each conflict to a best-of-both canonical form; migrates usages via mechanical codemod (pairs with `burndown-full`); and installs lint guardrails so drift can't recur. Establishes a 3-layer W3C token taxonomy (primitive → semantic → component). The execution arm of `plan-uiux-unification`; the design counterpart of `workflow-housekeep`.
|
|
1387
|
+
- **`enhance-web-forms` skill** — builds/upgrades web forms to production quality: accessible structure (labels, fieldsets, autocomplete, input types), schema-driven validation with client↔server parity, screen-reader-associated inline errors, complete interaction states (loading/disabled/success/error/empty), multi-step flows, unsaved-changes guards, and optimistic submit feedback. Auto-detects the form + validation stack; applies changes and verifies via browser MCP.
|
|
1388
|
+
- **`enhance-agent-guardrails` skill** — installs guardrails-as-code so AI/vibe-coding can't keep reintroducing the same problem classes (leaked secrets, injection, off-system styles, untested code, vulnerable deps, destructive ops). Audits existing protection, then sets up agent policy files (`.cursor/rules` + `AGENTS.md`), a pre-commit hook (secret scan + SAST + lint/typecheck), a CI gate that treats agent output as untrusted, and lint-as-policy rules. Verifies the guards block a planted bad pattern; flags merge-blocking CI changes for human review. Grounded in 2026 research on AI-generated-code security debt.
|
|
1389
|
+
- **`audit-resilience` skill** — read-only audit for the non-functional "20%" agents systematically skip (the "80% problem"): timeouts, retries with backoff+jitter, circuit breakers, idempotency keys, rate limiting, graceful degradation, cancellation, audit logging, and PII handling in logs. Inventories every external call, mutation, webhook, and payment path and marks each concern Implemented/Partial/Missing with `file:line`, severity, and the exact fix skill; delegates remediation to `backend-error-handling` / `backend-patterns` / `backend-observability` / `plan-*`.
|
|
1390
|
+
|
|
1391
|
+
All six new skills wired into both `skill-workflows.mdc` routing copies, `docs/CATALOG.md`, and `docs/TRIGGER-CHEATSHEET.md`. Skills 100 → 106.
|
|
1392
|
+
|
|
1393
|
+
### Changed
|
|
1394
|
+
|
|
1395
|
+
- **README mental-model rewrite** — the Workflows section now opens with a "how the families work against each other" lifecycle diagram (Orient → Assess → Change → Prove → Ship & operate, with always-on Guardrails), a "Start here — by use case" entry table that chains the new skills, and lifecycle-**stage** tags added to the skill-taxonomy table (Assess / Change / Prove / Ship / Operate / Guardrail). Teaches composition, not just the flat skill list.
|
|
1396
|
+
|
|
1397
|
+
---
|
|
1398
|
+
|
|
1399
|
+
## [1.7.0] — 2026-07-21
|
|
1400
|
+
|
|
1401
|
+
Completion-loop release — close the gaps where agents stop early, declare false "done", or leave documented capabilities unwired. Adds an enforcement layer (evidence rule + independent judge + opt-in continuation hook), five closure/ops workflow skills, and repairs every known broken internal reference. Skills 95 → 100, commands 16 → 36, subagents held at 6.
|
|
1402
|
+
|
|
1403
|
+
### Added
|
|
1404
|
+
|
|
1405
|
+
- **`complete-everything`** skill + **`/complete-everything`** command — close unfinished plan intent and connected work previously parked as out of scope/follow-up/optional, persist observable acceptance evidence in `.cursor/complete-everything-state.md`, and loop the applicable typecheck/lint/test/API/build/browser gates until complete
|
|
1406
|
+
- **`completion-judge` subagent** — independently reconciles the approved outcome, durable state, full diff, baseline, and fresh evidence before returning `PASS`, `CONTINUE`, or `BLOCKED`
|
|
1407
|
+
- **`verification-before-completion` rule** — defines evidence-backed completion levels from implemented through observed-stable and forbids claims above the proven level
|
|
1408
|
+
- **Opt-in Cursor completion hook** — continues only actionable unchecked `complete-everything`/`burndown-full` state; safely merges into existing user hooks and remains inert for completed, errored, or human-gate-only runs
|
|
1409
|
+
- **Closure-loop workflow skills + commands** — `workflow-green-repo` (`/green-repo`) drives the whole repository to a verified-green baseline; `workflow-ship-and-observe` (`/ship-and-observe`) takes merged code to a monitored production release with a live-revision check and rollback tail; `workflow-feedback-to-closure` (`/feedback-to-closure`) turns raw feedback into deduplicated durable tickets driven to production-verified closure
|
|
1410
|
+
- **`workflow-environment-ready`** skill — preflights the toolchain, services, and config before a long autonomous run so it does not fail at the finish line on a missing dependency or credential
|
|
1411
|
+
- **`iterate-agent-harness`** skill — converts an agent failure (premature stop, false done, reward-hacked check, broken handoff) into a durable harness guard plus a regression check that fails before the fix
|
|
1412
|
+
- **17 `plan-*` pointer commands** — `/uiux-plan`, `/security-plan`, `/rls-plan`, `/secrets-plan`, `/validation-plan`, `/integrity-plan`, `/error-plan`, `/deps-plan`, `/cost-plan`, `/aeo-plan`, `/mobile-plan`, `/capacitor-plan`, `/stub-plan`, `/perf-plan`, `/docs-plan`, `/test-plan`, `/slop-plan` — thin audit-and-plan entries the docs previously referenced but shipped no file for
|
|
1413
|
+
|
|
1414
|
+
### Changed
|
|
1415
|
+
|
|
1416
|
+
- **Composer execution precedence** — normal plan runs still stop at phase boundaries; explicit closure modes persist the checkpoint and continue. Approved non-destructive schema work on a confirmed target now follows full-stack deployment discipline without a contradictory permission stop.
|
|
1417
|
+
- **Count synchronization** — skill, command, and subagent totals are all derived from the filesystem.
|
|
1418
|
+
|
|
1419
|
+
### Fixed
|
|
1420
|
+
|
|
1421
|
+
- **Broken internal skill references** — repaired a doubled `workflow-spec-workflow-spec-tdd` link in four skills, a wrong `references/` path in `workflow-spec-tdd`, dead `mushi-debug` links in `mushi-health`/`mushi-integration` (now the mushi MCP `diagnose_setup` tool), and non-existent `../start-emulator`/`../test-emulator` links in `mobile-rn-screen`. A from-scratch relative-link scan now resolves clean.
|
|
1422
|
+
|
|
1423
|
+
## [1.6.0] — 2026-07-18
|
|
1424
|
+
|
|
1425
|
+
Universal installer — cursor-kenji now installs to every supported AI coding tool, mapping to what each tool actually loads. Skills-capable tools (Cursor, Claude Code) get the full skills + commands + agents + rules set; context-file tools (Codex CLI, Gemini CLI) get the rules merged into their global instructions file plus portable command ports. Skill count held at 94.
|
|
1426
|
+
|
|
1427
|
+
### Added
|
|
1428
|
+
- **`--auto` detection** — probes `~/.cursor`, `~/.claude`, `~/.codex`, `~/.gemini` and installs the right artifacts to each installed tool (falls back to Cursor if none are found).
|
|
1429
|
+
- **Codex CLI support (`--codex`)** — merges `rules/` into `~/.codex/AGENTS.md` (auto-loaded) and ports `plan`/`research`/`fix-issue` to `~/.codex/prompts/*.md`.
|
|
1430
|
+
- **Gemini CLI support (`--gemini`)** — merges `rules/` into `~/.gemini/GEMINI.md` (auto-loaded) and ports the same commands to `~/.gemini/commands/*.toml`.
|
|
1431
|
+
- **`commands-portable/`** — new single source of truth for the three tool-agnostic playbooks the installer transforms per tool.
|
|
1432
|
+
- Install smoke test now exercises the Codex/Gemini paths (merged-rules content, command ports, TOML shape, idempotency, `--auto` detection).
|
|
1433
|
+
|
|
1434
|
+
### Changed
|
|
1435
|
+
- **`--all` now targets all four supported tools** (was Cursor + Claude Code). A bare `npx @kensaurus/cursor-kenji` stays Cursor-only for backward compatibility.
|
|
1436
|
+
- The rules merge deliberately omits the skill-routing index (`skill-workflows.mdc`) — the context-file tools have no skills loader, so it would be dead text. Skills and subagents are not written to Codex/Gemini for the same reason.
|
|
1437
|
+
- Generated context files are idempotent (byte-identical on re-run) and backed up (`.bak-<stamp>`) before any overwrite.
|
|
1438
|
+
- `install.sh` gains `--auto`/`--codex`/`--gemini`/`--all`; Codex/Gemini delegate to the Node installer so the merge/port logic has one source of truth.
|
|
1439
|
+
|
|
1440
|
+
## [1.5.1] — 2026-07-18
|
|
1441
|
+
|
|
1442
|
+
Prompt-engineering quality pass from `docs/PLAN-SKILL-PACK-ENHANCEMENT.md` (Phases 3–5). No new skills; skill count held at 94. Dual-runtime (Cursor + Claude Code) portability, staleness, and licensing hygiene.
|
|
1443
|
+
|
|
1444
|
+
### Changed
|
|
1445
|
+
- **Dual-runtime portability** — skills now refer to each other by bare name (no path assumptions), and MCP calls use portable `ServerName:tool_name` prose instead of runtime-specific fenced tool blocks.
|
|
1446
|
+
- **Command frontmatter** — added `description` + `argument-hint` to 14 slash commands for discoverability.
|
|
1447
|
+
- **Progressive disclosure** — relocated bulk inline content to `references/` in `workflow-housekeep`, `backend-realtime`, and `deploy-npm` (`references/example-mushi-mushi.md`); trimmed oversized `plan-*` descriptions and rewrote thin ones to the house standard.
|
|
1448
|
+
- **Descriptive prose over pseudo-tools** — `audit-ux` and `audit-security` reframe `Glob`/`Grep` fenced blocks (which read as executable calls) as plain guidance.
|
|
1449
|
+
|
|
1450
|
+
### Fixed
|
|
1451
|
+
- **Stale model IDs** — refreshed illustrative model references in `audit-langfuse-llm` to current-generation IDs.
|
|
1452
|
+
- **Hardcoded counts** — decoupled the style-catalog count from the always-on `thirdparty-ui-ux-pro-max` description.
|
|
1453
|
+
- **License attribution** — pinned verified upstream MIT licenses (with copyright holders) in `thirdparty-emil-design-eng` and `thirdparty-web-interface-guidelines` `ATTRIBUTION.md`, replacing "See upstream repository" placeholders.
|
|
1454
|
+
|
|
1455
|
+
## [1.5.0] — 2026-07-18
|
|
1456
|
+
|
|
1457
|
+
### Added
|
|
1458
|
+
|
|
1459
|
+
- **npm installer: Claude Code target** — `npx @kensaurus/cursor-kenji --claude` (Claude Code only) and `--all` (Cursor + Claude Code) install skills, commands, agents, and rules to `~/.claude/` with `.mdc` rules converted to `.md`. One-click on any OS, no clone needed. New `npm run install:claude` / `install:all` scripts.
|
|
1460
|
+
- **install.sh: Claude Code commands** — `~/.claude/commands/` now installed alongside skills/agents/rules.
|
|
1461
|
+
- **`docs/PLAN-SKILL-PACK-ENHANCEMENT.md`** — full prompt-engineering audit of all 94 skills + 15 commands with a phased enhancement burndown (token usage, progressive disclosure, dual-runtime portability, description standards).
|
|
1462
|
+
- **Third-party UI skills** (Jun 2026) — `thirdparty-emil-design-eng`, `thirdparty-ui-ux-pro-max`, `thirdparty-web-interface-guidelines` with `ATTRIBUTION.md`, `docs/THIRD-PARTY-SKILLS.md`, and `/thirdparty-web-interface-guidelines` command
|
|
1463
|
+
- **`burndown-full`** skill + **`/burndown-full`** command — drive partially-executed refactors/migrations to 100% repo coverage via MATCH/DONE patterns, persistent `.cursor/burndown-state.md`, batched execution, and a verification gate (framework-agnostic; works in Cursor and Claude Code)
|
|
1464
|
+
|
|
1465
|
+
### Fixed
|
|
1466
|
+
|
|
1467
|
+
- **Sentry MCP calls** — `naturalLanguageQuery` → `query` across 15 skill files (matches current Sentry MCP `search_issues`/`search_events` signature).
|
|
1468
|
+
- **`mobile-emulator-start`** — display default corrected to `1080×2400`; `1080×4000` is now opt-in for scroll-QA with a matching tall skin.
|
|
1469
|
+
- **`test-red-team`** — description trimmed under the Agent Skills 1024-char frontmatter limit.
|
|
1470
|
+
- **`design-mobile-first`** — repaired garbled self-referential description.
|
|
1471
|
+
- **`enhance-web-landing`** — H1 renamed to match the skill (internal codename removed).
|
|
1472
|
+
- **Privacy/staleness** — private project names removed from `test-qa` and `data-pipeline`; unverifiable CVE numbers and named-incident claims replaced with hedged failure-class descriptions in `plan-input-validation`, `plan-rls-audit`, `plan-data-integrity`, `plan-llm-cost-guardrails`, `plan-secrets-audit`.
|
|
1473
|
+
- **install.sh** — removed duplicated "Installed N skills" log line.
|
|
1474
|
+
|
|
1475
|
+
---
|
|
1476
|
+
|
|
1477
|
+
## [1.4.2] — 2026-06-24
|
|
1478
|
+
|
|
1479
|
+
### Fixed
|
|
1480
|
+
|
|
1481
|
+
- **npm tarball** — `.mcp.json` included in published package (Cursor Marketplace MCP reference)
|
|
1482
|
+
- **MCP essential 5** — aligned `mcp/mcp.json.template`, `.mcp.json`, and docs on Playwright (was Chrome DevTools in template)
|
|
1483
|
+
|
|
1484
|
+
### Changed
|
|
1485
|
+
|
|
1486
|
+
- **Anti-slop pass** — skill YAML descriptions, subagent frontmatter, README badges, CATALOG/PROMOTION/GETTING-STARTED copy
|
|
1487
|
+
- **`docs/DISTRIBUTION.md`** — install channel matrix (Cursor vs Claude Code vs Marketplace)
|
|
1488
|
+
- **README** — Claude Code labeled bash-only; shell helpers table expanded; project rules count clarified
|
|
1489
|
+
- **`package.json`** — removed `prepare` git-hooks side effect on consumer `npm install`
|
|
1490
|
+
- **`.gitignore`** — `*.log`, `*.bak`, `*.old`, `*.tmp`
|
|
1491
|
+
|
|
1492
|
+
---
|
|
1493
|
+
|
|
1494
|
+
## [1.4.1] — 2026-06-23
|
|
1495
|
+
|
|
1496
|
+
### Fixed
|
|
1497
|
+
|
|
1498
|
+
- **`package.json` bin** — `cursor-kenji` → `bin/install.mjs` (npm publish no longer strips the bin entry)
|
|
1499
|
+
- **`repository.url`** — normalized to `git+https://github.com/kensaurus/cursor-kenji.git`
|
|
1500
|
+
|
|
1501
|
+
### Changed
|
|
1502
|
+
|
|
1503
|
+
- **npm OIDC Trusted Publisher** configured (`kensaurus/cursor-kenji` · workflow `npm-publish.yml`)
|
|
1504
|
+
- **CI publish** — OIDC-first; `NPM_TOKEN` only used when the secret is set
|
|
1505
|
+
|
|
1506
|
+
---
|
|
1507
|
+
|
|
1508
|
+
## [1.4.0] — 2026-06-23
|
|
1509
|
+
|
|
1510
|
+
### Added
|
|
1511
|
+
|
|
1512
|
+
- **`llms.txt`** — machine-readable doc index for answer-engine / AI crawler discoverability
|
|
1513
|
+
- **`SECURITY.md`** — MCP secrets hygiene, OIDC-first publish guidance, zero-dep policy
|
|
1514
|
+
- **`scripts/scan-secrets.mjs`** — pre-commit secret pattern scanner (zero-deps)
|
|
1515
|
+
- **`scripts/check-mcp-pins.mjs`** + **`mcp/pinned-versions.json`** + **`mcp/VERSIONS.md`** — semver-pinned MCP templates
|
|
1516
|
+
- **README FAQ** — install, skill count, audit vs plan, MCP keys, llms.txt
|
|
1517
|
+
|
|
1518
|
+
### Changed
|
|
1519
|
+
|
|
1520
|
+
- **MCP templates** — all `@latest` removed; npm + uvx packages pinned; AWS servers migrated to valid PyPI names (`lambda-tool`, `aws-api`, unified `cloudwatch-mcp`)
|
|
1521
|
+
- **Pre-commit** — runs secret scan before skill validation
|
|
1522
|
+
- **`npm test`** — includes secret self-test + MCP pin check
|
|
1523
|
+
- **`docs/PROMOTION.md`** — OIDC-first npm publish; launch copy skill count 90
|
|
1524
|
+
|
|
1525
|
+
---
|
|
1526
|
+
|
|
1527
|
+
## [1.3.0] — 2026-06-23
|
|
1528
|
+
|
|
1529
|
+
### Added
|
|
1530
|
+
|
|
1531
|
+
- **Eleven new `plan-*` skills** — security spine, launch gates, antislop, Capacitor hardening, observability/spend (`plan-rls-audit` through `plan-capacitor-hardening`)
|
|
1532
|
+
- **`docs/AGENTS.template.md`** — project constitution (mission / stack / roadmap / agent discipline)
|
|
1533
|
+
- **`docs/examples/plan-audits/`** — sample plan burndown outputs; root `/plan-*.md` gitignored
|
|
1534
|
+
|
|
1535
|
+
### Changed
|
|
1536
|
+
|
|
1537
|
+
- **README** de-duplicated (~340 lines); CATALOG canonical; skill count **90** (17 plan-*)
|
|
1538
|
+
- **`check-skill-count.mjs`** syncs README, CATALOG, PROMOTION, package.json
|
|
1539
|
+
- **Pre-commit hook** re-stages all count-sync files on drift
|
|
1540
|
+
- **`create-skill`** body split — detail in `references/authoring-guide.md` (<500 lines)
|
|
1541
|
+
|
|
1542
|
+
---
|
|
1543
|
+
|
|
1544
|
+
## [1.2.7] — 2026-06-17
|
|
1545
|
+
|
|
1546
|
+
### Added
|
|
1547
|
+
|
|
1548
|
+
- **`composer-2.5-execution.mdc`** rule (`alwaysApply: true`) — execution-time guardrails for Composer 2.5 when implementing an approved `plan-*.md`: anti-reward-hacking, anti-feature-deletion, checkpointing, context + terminal discipline, STOP-and-ask on auth/RLS/secrets/payments/migrations
|
|
1549
|
+
- Documents the two-model workflow (strong model plans, Composer 2.5 executes) in README and `docs/PLAN-LOOPS.md`
|
|
1550
|
+
|
|
1551
|
+
### Changed
|
|
1552
|
+
|
|
1553
|
+
- Project rules count: 8 → **9**
|
|
1554
|
+
|
|
1555
|
+
---
|
|
1556
|
+
|
|
1557
|
+
## [1.2.6] — 2026-06-17
|
|
1558
|
+
|
|
1559
|
+
### Added
|
|
1560
|
+
|
|
1561
|
+
- **`plan-test-coverage`** — user-story-driven coverage audit, traceability matrix, fake-green detection (plan only)
|
|
1562
|
+
- **`docs/PLAN-LOOPS.md`** — six-skill plan loop: link, chain, prompts, execution mapping
|
|
1563
|
+
|
|
1564
|
+
### Changed
|
|
1565
|
+
|
|
1566
|
+
- Six-skill plan loop (was five): adds `plan-test-coverage` after stub-checker, before perf/security
|
|
1567
|
+
|
|
1568
|
+
---
|
|
1569
|
+
|
|
1570
|
+
## [1.2.5] — 2026-06-17
|
|
1571
|
+
|
|
1572
|
+
### Added
|
|
1573
|
+
|
|
1574
|
+
- **`plan-docs-sync`** — docs drift audit vs code truth; onboarding-drift checks; docs-as-code guardrails (plan only)
|
|
1575
|
+
- **`plan-perf-audit`** — measure-don't-guess perf audit across web/mobile/backend/data; Lighthouse CI + RUM guardrails (plan only)
|
|
1576
|
+
- **`plan-security-audit`** — OWASP + Supabase-first (RLS, service_role scan); no destructive testing; secrets location-only (plan only)
|
|
1577
|
+
- Five-skill plan loop documented in `skill-workflows` and CATALOG
|
|
1578
|
+
|
|
1579
|
+
---
|
|
1580
|
+
|
|
1581
|
+
## [1.2.4] — 2026-06-17
|
|
1582
|
+
|
|
1583
|
+
### Added
|
|
1584
|
+
|
|
1585
|
+
- **`plan-stub-checker`** — exhaustive stub/dead-button/fake-component/unwired-handler audit with burndown and phased wiring plan (plan only; no implementation until user approves)
|
|
1586
|
+
|
|
1587
|
+
---
|
|
1588
|
+
|
|
1589
|
+
## [1.2.3] — 2026-06-16
|
|
1590
|
+
|
|
1591
|
+
### Added
|
|
1592
|
+
|
|
1593
|
+
- **`plan-uiux-unification`** — exhaustive non-destructive UI/UX + design-system audit that outputs burndown, unification plan, and phased roadmap (plan only; no fixes until user approves)
|
|
1594
|
+
|
|
1595
|
+
---
|
|
1596
|
+
|
|
1597
|
+
## [1.2.2] — 2026-06-16
|
|
1598
|
+
|
|
1599
|
+
### Changed
|
|
1600
|
+
|
|
1601
|
+
- **Playwright test skills:** shared signed-in session reuse (Google OAuth, etc.) and multi-agent tab discipline — no fighting over the same browser tab
|
|
1602
|
+
- New reference: `protocol-browser-anti-stall/references/playwright-session-coordination.md`
|
|
1603
|
+
- Updated: `test-playwright`, `test-qa`, `test-red-team`, `protocol-browser-anti-stall`
|
|
1604
|
+
|
|
1605
|
+
---
|
|
1606
|
+
|
|
1607
|
+
## [1.2.1] — 2026-06-12
|
|
1608
|
+
|
|
1609
|
+
### Fixed
|
|
1610
|
+
|
|
1611
|
+
- npm CI publish: use OIDC trusted publishing (remove empty `NPM_TOKEN` that blocked auth)
|
|
1612
|
+
|
|
1613
|
+
---
|
|
1614
|
+
|
|
1615
|
+
## [1.2.0] — 2026-06-12
|
|
1616
|
+
|
|
1617
|
+
### Added (13 skills since v1.1.0)
|
|
1618
|
+
|
|
1619
|
+
- **Red team & quality:** `test-red-team`, `workflow-quality-gate`
|
|
1620
|
+
- **Post-launch & shipping:** `iterate-post-launch`, `workflow-launch-ready`, `workflow-feature-flag`
|
|
1621
|
+
- **Enhance & audit:** `enhance-web-seo`, `enhance-pwa`, `audit-bundle-size`, `audit-i18n`, `design-email`
|
|
1622
|
+
- **Bundled workflows:** `workflow-build-feature`, `workflow-fix-and-ship`, `workflow-onboard`
|
|
1623
|
+
- **Routing rule:** `rules/skill-workflows.mdc` — capabilities catalog with skill-chaining diagram
|
|
1624
|
+
|
|
1625
|
+
### Changed
|
|
1626
|
+
|
|
1627
|
+
- Skill count: 60 → **73**
|
|
1628
|
+
- `test-red-team` trimmed to stay under 500-line spec limit
|
|
1629
|
+
- `.gitignore`: ignore `.playwright-mcp/` and `.qa-screenshots/` scratch artifacts
|
|
1630
|
+
|
|
1631
|
+
### Install
|
|
1632
|
+
|
|
1633
|
+
```bash
|
|
1634
|
+
npx skills add kensaurus/cursor-kenji
|
|
1635
|
+
# or
|
|
1636
|
+
npx @kensaurus/cursor-kenji@1.2.0
|
|
1637
|
+
```
|
|
1638
|
+
|
|
1639
|
+
---
|
|
1640
|
+
|
|
1641
|
+
## Jun 2026 — Bundled Workflows, Gap-Filling, & Verbosity Trim
|
|
1642
|
+
|
|
1643
|
+
### New Bundled Workflow Skills
|
|
1644
|
+
|
|
1645
|
+
Orchestrator skills that chain multiple individual skills into a single tracked loop. Inspired by community patterns from `darthlinuxer/Agentic-Skills`, `kscius/KS-Cursor-Orchestrator`, and the Anthropic agent skills ecosystem.
|
|
1646
|
+
|
|
1647
|
+
| Skill | What it chains |
|
|
1648
|
+
|:------|:--------------|
|
|
1649
|
+
| `workflow-build-feature` | spec → TDD → unit tests → smoke test → PR |
|
|
1650
|
+
| `workflow-fix-and-ship` | debug → root cause → fix → regression test → smoke → PR → deploy |
|
|
1651
|
+
| `workflow-quality-gate` | red-team → security → bundle → perf → unit tests → go/no-go verdict |
|
|
1652
|
+
| `workflow-launch-ready` | SEO + PWA + bundle + i18n + quality gate + deploy smoke + iterate |
|
|
1653
|
+
| `workflow-onboard` | First-contact orientation — reads codebase, produces 5-minute briefing |
|
|
1654
|
+
|
|
1655
|
+
### New `.cursor/rules/skill-workflows.mdc`
|
|
1656
|
+
|
|
1657
|
+
Always-on routing index that routes intent to bundled workflows vs individual skills, with a full skill-chaining diagram. Reduces the cognitive load of "which skill do I use?" to a single lookup.
|
|
1658
|
+
|
|
1659
|
+
### Improvements
|
|
1660
|
+
|
|
1661
|
+
- `test-red-team` trimmed from 515 → 417 lines: security priority table replaced verbose prose sections; Playwright quick-ref removed (already in platform docs).
|
|
1662
|
+
|
|
1663
|
+
---
|
|
1664
|
+
|
|
1665
|
+
## Jun 2026 — Post-Launch Iteration & Shipping-Quality Skills
|
|
1666
|
+
|
|
1667
|
+
### New Skills
|
|
1668
|
+
|
|
1669
|
+
| Skill | Why |
|
|
1670
|
+
|:------|:----|
|
|
1671
|
+
| `iterate-post-launch` | Closes the post-ship improvement loop — pulls Sentry errors, Supabase slow-query advisors, and live Playwright walkthrough into a ranked backlog, implements fixes, and verifies them against the live app. |
|
|
1672
|
+
| `enhance-web-seo` | Audits and fixes SEO for any web app: meta tags, OG/Twitter cards, JSON-LD structured data, robots.txt, sitemap, canonical URLs, heading hierarchy, Core Web Vitals. Applies fixes and verifies with Playwright. |
|
|
1673
|
+
| `audit-bundle-size` | Finds and eliminates JS bundle bloat: detects bundler (Vite/Webpack/Next.js), runs production build with analysis, identifies large chunks/duplicate deps/missing lazy splits, and maps every finding to a specific import. |
|
|
1674
|
+
| `enhance-pwa` | Adds or upgrades PWA features: Web App Manifest, Workbox service worker with per-asset caching strategies, install prompt, push notifications, offline page. Capacitor-compatible. Lighthouse PWA audit before/after. |
|
|
1675
|
+
| `workflow-feature-flag` | Feature-flag rollout discipline: design flag contract, gate the feature, stage at 0%→internal→5%→100%, monitor Sentry error rate and Supabase logs at each stage, promote or roll back, then clean up the flag from code. |
|
|
1676
|
+
| `audit-i18n` | i18n audit with emphasis on **human-readable, natural-sounding copy** — not machine-translated jargon. Finds hardcoded strings, checks translation completeness, rewrites stiff/literal copy to sound like a real person in each locale, fixes date/number/currency formatting. |
|
|
1677
|
+
| `design-email` | Full-stack transactional email: React Email templates with dark mode, mobile-first layout, inline styles, and copy that sounds like a person wrote it. Covers SPF/DKIM/DMARC deliverability, Resend/SendGrid/SES integration, and Supabase Edge Function triggers. |
|
|
1678
|
+
|
|
1679
|
+
---
|
|
1680
|
+
|
|
1681
|
+
## Jun 2026 — Adversarial Red-Team Skill
|
|
1682
|
+
|
|
1683
|
+
### New Skills
|
|
1684
|
+
|
|
1685
|
+
| Skill | Why |
|
|
1686
|
+
|:------|:----|
|
|
1687
|
+
| `test-red-team` | Adversarial full-app sweep — feature-first coverage matrix (feature → surfaces → components+states) attacked across 4 dimensions: UI/UX, data pipeline, security (OWASP Top 10 + MASVS), and performance. Drives Playwright browser MCP for web/PWA, Playwright Android WebView attach for Capacitor hybrid apps, and adb tap-walk for native chrome. Cross-references Sentry for production telemetry, Supabase for DB-layer truth and RLS verification, and Firecrawl for current OWASP/MASVS guidance. Produces a severity-ranked defect list with repro steps, evidence, and launch-readiness verdict. Ships with a `references/owasp-attack-checklist.md` payload library covering XSS, SQLi, IDOR, MASVS-PLATFORM, auth attacks, and 2026 performance thresholds. |
|
|
1688
|
+
|
|
1689
|
+
---
|
|
1690
|
+
|
|
1691
|
+
## Jun 2026 — Installer hardening + spec compliance
|
|
1692
|
+
|
|
1693
|
+
### Installer (`bin/install.mjs`)
|
|
1694
|
+
|
|
1695
|
+
- **Fixed a shipped bug:** the installer only copied subdirectories, silently
|
|
1696
|
+
dropping every top-level `.md`/`.mdc` file — `npx` installs landed 0 subagents,
|
|
1697
|
+
only 1 of 14 commands, and no rules files. It now copies files and directories.
|
|
1698
|
+
- **`--clean` / `--mirror`** — make `~/.cursor` exactly mirror this repo (no
|
|
1699
|
+
overlap/duplicates); takes a timestamped backup first (`--no-backup` to skip).
|
|
1700
|
+
- **`--restore [stamp]`** — restore a previous `--clean` backup.
|
|
1701
|
+
- **`--only <csv>`** and **`--skill <name>`** — partial installs.
|
|
1702
|
+
- **`--link`** — dev mode: symlink (junction on Windows) instead of copy.
|
|
1703
|
+
- MCP template is written only when missing and never overwrites existing keys.
|
|
1704
|
+
|
|
1705
|
+
### Quality gates
|
|
1706
|
+
|
|
1707
|
+
- `scripts/validate-skills.mjs` — validates every skill against the
|
|
1708
|
+
[Agent Skills spec](https://agentskills.io/specification): frontmatter present,
|
|
1709
|
+
`name` matches its directory, `description` ≤ 1024 chars, body length warnings.
|
|
1710
|
+
- `scripts/test-install.mjs` — install smoke test (would have caught the bug above).
|
|
1711
|
+
- Both run in the pre-commit hook, a new cross-OS `validate` workflow, and before
|
|
1712
|
+
`npm publish`.
|
|
1713
|
+
- Trimmed 4 over-long skill descriptions to ≤ 1024 chars (`audit-ux`,
|
|
1714
|
+
`enhance-web-ui`, `enhance-web-ux`, `enhance-capacitor-ui`).
|
|
1715
|
+
- Added `.gitattributes` to normalize line endings (LF) across machines.
|
|
1716
|
+
|
|
1717
|
+
---
|
|
1718
|
+
|
|
1719
|
+
## Jun 2026 — Anti-Vibe-Coding Spine + Taste Skills
|
|
1720
|
+
|
|
1721
|
+
### New Skills
|
|
1722
|
+
|
|
1723
|
+
| Skill | Why |
|
|
1724
|
+
|:------|:----|
|
|
1725
|
+
| `workflow-spec-workflow-spec-tdd` | The anti-vibe-coding spine — brainstorm → spec → plan → RED/GREEN/REFACTOR TDD → self-review before "done". Adapted from [obra/superpowers](https://github.com/obra/superpowers) |
|
|
1726
|
+
| `mobile-mobile-capacitor-platform` | Capacitor platform + pipeline depth — plugins, OTA, deep links, push, native CI, store submission + Apple preflight, security scan, migrations. From [cap-go/capgo-skills](https://github.com/cap-go/capgo-skills) |
|
|
1727
|
+
| `mobile-mobile-rn-performance` | React Native perf/build/upgrade depth — FPS, Hermes, TTI, bundle size, FlashList, Reanimated, Turbo Modules, 16KB alignment, RN/Expo version upgrades. From [callstack/agent-skills](https://github.com/callstackincubator/agent-skills) |
|
|
1728
|
+
| `data-pipeline` | Build-time data-pipeline correctness — idempotency, atomic writes, 4-layer staging, windowed backfills, dead-letter, observability. For ETL / edge-function workers / `pg_cron` / queues |
|
|
1729
|
+
| `backend-observability` | Build-time observability + logging — error↔trace↔log correlation, structured leveled logs, PII/secret redaction, OTel spans, LLM trace capture, alert/SLO design. Vendor-neutral (Sentry + Langfuse + OTel) |
|
|
1730
|
+
| `enhance-web-landing` | Anti-slop frontend for landing pages, portfolios, and marketing sites — brief inference, variance/motion/density dials. From [Leonxlnx/taste-skill](https://github.com/Leonxlnx/taste-skill) |
|
|
1731
|
+
| `enhance-web-redesign` | Audit-first upgrade of existing sites — 60-second AI-tell triage, then scan/diagnose/fix generic AI patterns without breaking functionality |
|
|
1732
|
+
| `enhance-web-web3d` | Audit-first 3D/WebGL + GSAP cinematic-motion elevation of an existing web app (Three.js / R3F + ScrollTrigger + Motion / React Spring). From [freshtechbro/claudedesignskills](https://github.com/freshtechbro/claudedesignskills) |
|
|
1733
|
+
|
|
1734
|
+
### Family Rename
|
|
1735
|
+
|
|
1736
|
+
`enhance-page-ui` → `enhance-web-ui`, `enhance-page-ux` → `enhance-web-ux`, `enhance-screen-rn` → `mobile-rn-screen`, `enhance-web-mobile-ui` → `enhance-capacitor-ui`. New `enhance-<surface>-<aspect>` convention + a surface-router block added to every enhance skill.
|
|
1737
|
+
|
|
1738
|
+
---
|
|
1739
|
+
|
|
1740
|
+
## May 2026 — PDCA Browser Testing, npm Release, Native RN Loop
|
|
1741
|
+
|
|
1742
|
+
### New Skills
|
|
1743
|
+
|
|
1744
|
+
| Skill | Why |
|
|
1745
|
+
|:------|:----|
|
|
1746
|
+
| `test-playwright` | Closes the PDCA loop after you ship a change. Drives the live localhost app through the Playwright MCP manually like a real user, and **fixes** pain points/errors as it goes (full-stack: UI/UX + API + DB). Red-teams the work and suggests enhancements |
|
|
1747
|
+
| `deploy-npm` | End-to-end release workflow for a Changesets + GitHub Actions + npm Trusted Publisher (OIDC) monorepo — green CI → merge release PR → resolve the `github-actions[bot]` anti-loop → dispatch publish → verify on npm and GitHub Releases |
|
|
1748
|
+
| `mobile-emulator-start` | Boots Metro + Android emulator in the correct order — kills duplicate ports, picks fresh-cache vs fast-iteration, defaults to 1080×4000 for tall QA screenshots, polls `/status` before deeplink to avoid "Cannot connect to Expo CLI" races |
|
|
1749
|
+
| `enhance-capacitor-ui` | Cross-surface architecture for hybrid PWA + iOS + Android apps. Three orthogonal axes (form factor / platform / pointer) so polish on one surface can't degrade another |
|
|
1750
|
+
|
|
1751
|
+
### New Rules
|
|
1752
|
+
|
|
1753
|
+
| Rule | Why |
|
|
1754
|
+
|:-----|:----|
|
|
1755
|
+
| `full-stack-ship-discipline.mdc` | `alwaysApply: true` — prevents the "local migration file never deployed" failure mode. Forces UI tasks to inventory backend deps in the same chat, deploy via Supabase MCP, and verify against the remote DB |
|
|
1756
|
+
| `shell-first-search.md` | Workspace-wide rule routing routine search to `Shell` (`grep`/`find`/`ls`) instead of `Grep`/`Glob` tools, which can hang for minutes on some Windows hosts |
|
|
1757
|
+
|
|
1758
|
+
### Housekeep Pass
|
|
1759
|
+
|
|
1760
|
+
- 11 skills renamed so `name:` frontmatter matches folder names per Cursor spec
|
|
1761
|
+
- 22 descriptions tightened to direct-tone single-sentence WHAT + concrete trigger list
|
|
1762
|
+
- 9 commands demoted to skill pointers (no more duplicated playbook)
|
|
1763
|
+
|
|
1764
|
+
---
|
|
1765
|
+
|
|
1766
|
+
## Apr 2026 — The Enhance Family
|
|
1767
|
+
|
|
1768
|
+
| Skill | Why |
|
|
1769
|
+
|:------|:----|
|
|
1770
|
+
| `enhance-web-ui` | Composition over decoration — fix hierarchy, grouping, spacing, motion. NN/g + Laws of UX grounded |
|
|
1771
|
+
| `enhance-web-ux` | Replace generic "stacked" UI with semantic data. Every change cites a Nielsen heuristic, uses existing primitives, verified at 3 viewports via browser MCP |
|
|
1772
|
+
| `enhance-readme` | Theme-aware hero + tour grid + optional animated GIF via Playwright MCP |
|
|
1773
|
+
| `audit-ux` | Deep UX audit grounded in NN/g 10 heuristics, Laws of UX, Intuit Content Design, Google HEART |
|
|
1774
|
+
| `split-to-prs` *(Cursor Skill)* | Slice a single chat / branch / PR into small reviewable PRs with safe snapshot |
|
|
1775
|
+
| `canvas` *(Cursor Skill)* | Live React canvas beside chat — updated with refreshed SDK primitives |
|
|
1776
|
+
|
|
1777
|
+
---
|
|
1778
|
+
|
|
1779
|
+
## Earlier 2026
|
|
1780
|
+
|
|
1781
|
+
| Addition | Type |
|
|
1782
|
+
|:---------|:-----|
|
|
1783
|
+
| `create-hook` | Skill |
|
|
1784
|
+
| `workflow-spec-workflow-spec-tdd` | Skill |
|
|
1785
|
+
| `workflow-spec-tdd` | Skill |
|
|
1786
|
+
| `workflow-workflow-parallel-agents` | Skill |
|
|
1787
|
+
| `audit-code-review` | Skill |
|
|
1788
|
+
| 20 new skills (audits, debugging, deploy verification, file handling, PRD, QA, housekeeping) | Skills |
|
|
1789
|
+
| 6 new cursor-skills (babysit, canvas, create-hook, shell, statusline, update-cli-config) | Cursor Skills |
|
|
1790
|
+
| `/plan`, `/pr`, `/debug` | Commands |
|