codymaster 4.8.0 → 7.0.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/CHANGELOG.md +331 -7
- package/README.md +226 -296
- package/dist/advisory-handoff.js +89 -0
- package/dist/advisory-report.js +105 -0
- package/dist/agent/antigravity.js +152 -0
- package/dist/agent/backend.js +2 -0
- package/dist/agent/claude.js +196 -0
- package/dist/agent/codex.js +204 -0
- package/dist/agent/copilot.js +284 -0
- package/dist/agent/cursor.js +211 -0
- package/dist/agent/factory.js +30 -0
- package/dist/agent/gemini.js +142 -0
- package/dist/agent/opencode.js +205 -0
- package/dist/agent/spawn-helper.js +237 -0
- package/dist/agent/version.js +25 -0
- package/dist/browse/adapter-factory.js +69 -0
- package/dist/browse/adapters/agent-browser-adapter.js +305 -0
- package/dist/browse/adapters/playwright-adapter.js +309 -0
- package/dist/browse/adapters/types.js +6 -0
- package/dist/browse/error-collector.js +132 -0
- package/dist/browse/event-log.js +109 -0
- package/dist/browse/index.js +17 -0
- package/dist/browse-server.js +204 -120
- package/dist/cli/command-registry.js +20 -0
- package/dist/cli/commands/bench.js +69 -0
- package/dist/cli/commands/brain.js +108 -0
- package/dist/cli/commands/dashboard.js +76 -2
- package/dist/cli/commands/engineering.js +326 -4
- package/dist/cli/commands/evolve.js +123 -0
- package/dist/cli/commands/install.js +160 -0
- package/dist/cli/commands/learn.js +181 -0
- package/dist/cli/commands/mcp-serve.js +104 -0
- package/dist/cli/commands/parallel.js +138 -0
- package/dist/cli/commands/quality.js +105 -0
- package/dist/cli/commands/stack.js +49 -0
- package/dist/cli/commands/update.js +159 -0
- package/dist/cli/update-check.js +94 -10
- package/dist/cm-config.js +0 -18
- package/dist/codybench/judges/automated.js +31 -0
- package/dist/codybench/runners/claude-code.js +32 -0
- package/dist/codybench/suites/memory-retention.js +85 -0
- package/dist/codybench/suites/tdd-regression.js +35 -0
- package/dist/codybench/suites/token-efficiency.js +55 -0
- package/dist/codybench/types.js +2 -0
- package/dist/context-db.js +157 -0
- package/dist/continuity.js +5 -7
- package/dist/dashboard.js +47 -6
- package/dist/data.js +35 -0
- package/dist/execution/tdd-gate.js +113 -0
- package/dist/execution-analyzer.js +138 -0
- package/dist/executor/cancel.js +34 -0
- package/dist/executor/gc.js +74 -0
- package/dist/executor/index.js +14 -0
- package/dist/executor/runner.js +70 -0
- package/dist/executor/workdir.js +31 -0
- package/dist/handoff/contracts.js +22 -0
- package/dist/handoff/index.js +18 -0
- package/dist/handoff/io.js +121 -0
- package/dist/index.js +7 -3
- package/dist/indexer/skills-lib.js +533 -0
- package/dist/indexer/skills-map.js +1374 -0
- package/dist/indexer/skills.js +16 -0
- package/dist/indexer/stack-detect.js +219 -0
- package/dist/install/copy.js +98 -0
- package/dist/install/engine.js +42 -0
- package/dist/install/paths.js +70 -0
- package/dist/install/platforms/_simple.js +85 -0
- package/dist/install/platforms/antigravity.js +91 -0
- package/dist/install/platforms/claude-code.js +107 -0
- package/dist/install/platforms/cursor.js +77 -0
- package/dist/install/platforms/index.js +27 -0
- package/dist/install/platforms/simple.js +163 -0
- package/dist/install/profiles.js +75 -0
- package/dist/install/types.js +2 -0
- package/dist/learning-promoter.js +246 -0
- package/dist/learnings.js +208 -0
- package/dist/mcp-context-server.js +230 -1
- package/dist/middleware/metrics.js +30 -0
- package/dist/middleware/security-headers.js +14 -0
- package/dist/realtime/event-bus.js +29 -0
- package/dist/realtime/ws-hub.js +91 -0
- package/dist/schemas/task-schema.js +48 -0
- package/dist/schemas/validate.js +18 -0
- package/dist/skill-chain.js +63 -1
- package/dist/skill-evolver.js +456 -0
- package/dist/skill-execution-cache.js +254 -0
- package/dist/skills-lock.js +96 -0
- package/dist/smart-brain-router.js +184 -0
- package/dist/sprint-pipeline.js +26 -0
- package/dist/storage/index.js +21 -0
- package/dist/storage/repos/activity-repo.js +46 -0
- package/dist/storage/repos/message-repo.js +39 -0
- package/dist/storage/repos/project-repo.js +56 -0
- package/dist/storage/repos/task-repo.js +142 -0
- package/dist/storage/services/project-service.js +49 -0
- package/dist/storage/services/task-service.js +97 -0
- package/dist/storage/sqlite.js +113 -0
- package/dist/storage-backend.js +10 -8
- package/dist/tier-classify.js +131 -0
- package/dist/token-budget.js +88 -0
- package/dist/ui/onboarding.js +51 -15
- package/dist/utils/cli-utils.js +7 -2
- package/dist/utils/design-taste.js +108 -0
- package/dist/utils/output-compress.js +143 -0
- package/dist/vibecoding-index.js +126 -0
- package/package.json +20 -6
- package/public/dashboard/app.js +52 -1
- package/scripts/build-skills-lock.mjs +88 -0
- package/scripts/build-skills.mjs +187 -28
- package/scripts/compress-skill.mjs +73 -0
- package/scripts/deprecate-skill.mjs +72 -0
- package/scripts/install.sh +170 -0
- package/scripts/mcp-bridge.js +2 -2
- package/scripts/postinstall.js +53 -335
- package/scripts/update-changelog.sh +88 -0
- package/scripts/validate-skills.mjs +101 -4
- package/skills/CLAUDE.md +0 -5
- package/skills/_shared/SKILL_TEMPLATE.md +62 -0
- package/skills/_shared/helpers.md +2 -8
- package/skills/cm-autopilot/scripts/autopilot.py +19 -2
- package/skills/cm-brainstorm-idea/SKILL.md +9 -0
- package/skills/cm-browse/SKILL.md +6 -0
- package/skills/cm-clean-code/SKILL.md +20 -0
- package/skills/cm-code-review/SKILL.md +21 -0
- package/skills/cm-codeintell/SKILL.md +9 -0
- package/skills/cm-conductor-worktrees/SKILL.archive.md +28 -0
- package/skills/cm-conductor-worktrees/SKILL.md +20 -18
- package/skills/cm-continuity/SKILL.md +41 -33
- package/skills/cm-dashboard/SKILL.archive.md +15 -0
- package/skills/cm-dashboard/SKILL.md +20 -9
- package/skills/cm-dashboard/ui/app.js +9 -1
- package/skills/cm-debugging/SKILL.md +9 -0
- package/skills/cm-design-studio/SKILL.archive.md +34 -0
- package/skills/cm-design-studio/SKILL.md +20 -24
- package/skills/cm-design-system/SKILL.md +1 -0
- package/skills/cm-ecosystem-roadmap/SKILL.md +4 -0
- package/skills/cm-engineering-meta/SKILL.archive.md +73 -0
- package/skills/cm-engineering-meta/SKILL.md +19 -62
- package/skills/cm-execution/SKILL.md +98 -0
- package/skills/cm-git-worktrees/SKILL.archive.md +157 -0
- package/skills/cm-git-worktrees/SKILL.md +15 -146
- package/skills/cm-guardian-runtime/SKILL.md +5 -1
- package/skills/cm-identity-guard/SKILL.md +8 -0
- package/skills/cm-mcp-engineering/SKILL.md +4 -0
- package/skills/cm-planning/SKILL.md +63 -92
- package/skills/cm-post-deploy-canary/SKILL.archive.md +22 -0
- package/skills/cm-post-deploy-canary/SKILL.md +20 -12
- package/skills/cm-project-bootstrap/SKILL.md +11 -0
- package/skills/cm-qa-visual-cli/SKILL.archive.md +22 -0
- package/skills/cm-qa-visual-cli/SKILL.md +19 -11
- package/skills/cm-quality-gate/SKILL.md +38 -0
- package/skills/cm-retro-cli/SKILL.md +4 -0
- package/skills/cm-safe-deploy/SKILL.md +9 -0
- package/skills/cm-second-opinion-cli/SKILL.archive.md +23 -0
- package/skills/cm-second-opinion-cli/SKILL.md +20 -13
- package/skills/cm-secret-shield/SKILL.archive.md +580 -0
- package/skills/cm-secret-shield/SKILL.md +15 -569
- package/skills/cm-security-gate/SKILL.archive.md +239 -0
- package/skills/cm-security-gate/SKILL.md +16 -228
- package/skills/cm-skill-chain/SKILL.md +25 -4
- package/skills/cm-skill-evolution/SKILL.md +83 -0
- package/skills/cm-skill-health/SKILL.archive.md +83 -0
- package/skills/cm-skill-health/SKILL.md +26 -0
- package/skills/cm-skill-index/SKILL.md +19 -3
- package/skills/cm-skill-mastery/SKILL.archive.md +156 -0
- package/skills/cm-skill-mastery/SKILL.md +16 -146
- package/skills/cm-skill-search/SKILL.archive.md +49 -0
- package/skills/cm-skill-search/SKILL.md +26 -0
- package/skills/cm-skill-share/SKILL.archive.md +58 -0
- package/skills/cm-skill-share/SKILL.md +26 -0
- package/skills/cm-sprint-bus/SKILL.md +13 -0
- package/skills/cm-start/SKILL.md +17 -10
- package/skills/cm-tdd/SKILL.md +21 -2
- package/skills/cm-terminal/SKILL.md +15 -0
- package/skills/cm-test-gate/SKILL.archive.md +245 -0
- package/skills/cm-test-gate/SKILL.md +15 -234
- package/skills/cm-ui-preview/SKILL.archive.md +153 -0
- package/skills/cm-ui-preview/SKILL.md +16 -143
- package/skills/cm-ux-master/cli/uxmaster/commands/mcp.py +1 -1
- package/skills/cm-ux-master/mcp/mcp-config.json +1 -1
- package/skills/cm-ux-master/mcp/server.py +2 -2
- package/skills/profiles/design.txt +1 -1
- package/skills/profiles/full.txt +4 -10
- package/skills/profiles/growth.txt +8 -8
- package/skills/profiles/knowledge.txt +1 -1
- package/skills/profiles/top35.json +41 -0
- package/adapters/antigravity.js +0 -15
- package/adapters/claude-code.js +0 -17
- package/adapters/cursor.js +0 -16
- package/install.sh +0 -1125
- package/scripts/viking-demo.ts +0 -105
- package/skills/cm-ads-tracker/SKILL.md +0 -401
- package/skills/cm-ads-tracker/evals/evals.json +0 -55
- package/skills/cm-ads-tracker/references/gtm-architecture.md +0 -321
- package/skills/cm-ads-tracker/references/industry-events.md +0 -294
- package/skills/cm-ads-tracker/references/platforms-api.md +0 -238
- package/skills/cm-ads-tracker/templates/capi-payload.md +0 -79
- package/skills/cm-ads-tracker/templates/datalayer-push.js +0 -104
- package/skills/cm-ads-tracker/templates/gtm-variables.js +0 -56
- package/skills/cm-auto-publisher/SKILL.md +0 -81
- package/skills/cm-booking-calendar/SKILL.md +0 -521
- package/skills/cm-booking-calendar/references/industry-patterns.md +0 -527
- package/skills/cm-booking-calendar/templates/booking-form.css +0 -626
- package/skills/cm-booking-calendar/templates/booking-form.html +0 -477
- package/skills/cm-booking-calendar/templates/calendar-engine.js +0 -419
- package/skills/cm-booking-calendar/templates/calendar-export.js +0 -395
- package/skills/cm-booking-calendar/templates/reminder-config.js +0 -629
- package/skills/cm-content-factory/.content-factory-state.json +0 -132
- package/skills/cm-content-factory/.git 2/logs/refs/heads/main +0 -1
- package/skills/cm-content-factory/.git 2/logs/refs/remotes/origin/main +0 -1
- package/skills/cm-content-factory/.git 2/objects/02/fb0956734b5f8ba3f918b7defd04a89cfe0076 +0 -0
- package/skills/cm-content-factory/.git 2/objects/08/1e129d75dc6feac6c02037272e6bd1a04e3324 +0 -0
- package/skills/cm-content-factory/.git 2/objects/0c/5393416f3c5e01c9a655a802bff0dd52f76f0a +0 -0
- package/skills/cm-content-factory/.git 2/objects/10/0b9be46978a946a77188f68be725098a122001 +0 -0
- package/skills/cm-content-factory/.git 2/objects/10/cf041167fc9843610eb3d90259ef3396315fdc +0 -0
- package/skills/cm-content-factory/.git 2/objects/12/5e19538dd6e1338ffe74f6c4c165b00435bf48 +0 -0
- package/skills/cm-content-factory/.git 2/objects/16/a9b9d0088d5c1347628b45a2620b479d8ad57c +0 -0
- package/skills/cm-content-factory/.git 2/objects/17/8c2a9ef93c33ae4eec9d58e82321f9229843a1 +0 -0
- package/skills/cm-content-factory/.git 2/objects/25/397ae41d09104d763bdcac2695209d85cdea89 +0 -0
- package/skills/cm-content-factory/.git 2/objects/2f/a836b7947f2d458e1f639788bf4bb0983a3305 +0 -0
- package/skills/cm-content-factory/.git 2/objects/3a/baaaf0a1c0909c0828335791557125fba911e0 +0 -0
- package/skills/cm-content-factory/.git 2/objects/42/2924221b81f5ce3c4e4daac9a64a24f9b01f9a +0 -0
- package/skills/cm-content-factory/.git 2/objects/42/ec0ce707447dc11446a34c9995fb8533801731 +0 -0
- package/skills/cm-content-factory/.git 2/objects/46/e43ce92866d56ce74b1d750db307cfe6154a15 +0 -0
- package/skills/cm-content-factory/.git 2/objects/48/5e41b633c63f55b8277bcc59f44f67681f671a +0 -0
- package/skills/cm-content-factory/.git 2/objects/49/49c596a3a89fa240642acd95dd3258e261eb09 +0 -0
- package/skills/cm-content-factory/.git 2/objects/50/9d42d8412ef8eaf7f7e138476bac2e4d10ce60 +0 -0
- package/skills/cm-content-factory/.git 2/objects/55/0c8c389d981b463ef849aeb792d8be3ccb6ec8 +0 -0
- package/skills/cm-content-factory/.git 2/objects/5d/82d3b18410cdda3ace3677436f0cb599dbe2d2 +0 -0
- package/skills/cm-content-factory/.git 2/objects/60/0617c58e871a38b33bf29e282d132bb3c381ad +0 -0
- package/skills/cm-content-factory/.git 2/objects/6a/8369a99c687b7245c92ffaf0e0f0dab9014504 +0 -0
- package/skills/cm-content-factory/.git 2/objects/79/bea435d40ab531c1aaf6be0432c6a5b7aaed21 +0 -0
- package/skills/cm-content-factory/.git 2/objects/7e/5ebd79251c2f14e4aceb86c74b6b6daae6b500 +0 -0
- package/skills/cm-content-factory/.git 2/objects/81/98a822a60178d6d5023ddb3e222cddf048742e +0 -0
- package/skills/cm-content-factory/.git 2/objects/86/0a0e1943dfe53411d2e499a1f16f46a96ef758 +0 -0
- package/skills/cm-content-factory/.git 2/objects/86/971fb55fdc081fdbae52376f0f13e57a4e9b04 +0 -0
- package/skills/cm-content-factory/.git 2/objects/88/b89dd609a0a03f8d4fe8bfde20d5b8fc1d326d +0 -0
- package/skills/cm-content-factory/.git 2/objects/90/8737edb6b7809e32cc01590b4e08ba42a9d40d +0 -0
- package/skills/cm-content-factory/.git 2/objects/93/d5a8a9a7d4fb7f11491cb596a6880528725118 +0 -0
- package/skills/cm-content-factory/.git 2/objects/98/46a2ab81d0c3b3eb00ef88fc56989aa7e9f316 +0 -0
- package/skills/cm-content-factory/.git 2/objects/9b/d8dd1e49cf274eaf9c555f3ab39dce7af5715e +0 -0
- package/skills/cm-content-factory/.git 2/objects/a1/13329fb0cec96ae78b222d33a24c3b5bc7fa1f +0 -0
- package/skills/cm-content-factory/.git 2/objects/a9/e6effe626e8a3aea3a8fc3364b492191c6e7d0 +0 -0
- package/skills/cm-content-factory/.git 2/objects/ad/6de7e48d9782cca9353d1ff0aa1aab7fe1df85 +0 -0
- package/skills/cm-content-factory/.git 2/objects/af/54ae316f771ff692e299ffcd8bf2f06b413b59 +0 -0
- package/skills/cm-content-factory/.git 2/objects/b0/4cb8b0b00dad633e731c1472161419e738d674 +0 -0
- package/skills/cm-content-factory/.git 2/objects/b3/094abb0b9ed46419b269e4a4e36a459690e3b0 +0 -0
- package/skills/cm-content-factory/.git 2/objects/b9/435c5d4baac2cfc5c83009ddd27b46b60db5f1 +0 -0
- package/skills/cm-content-factory/.git 2/objects/ba/5da17dbaec5ec2dcfdfd126aead518d1171d5c +0 -0
- package/skills/cm-content-factory/.git 2/objects/c0/bf58703aa258ba5dd63083bebaec8f223d844c +0 -0
- package/skills/cm-content-factory/.git 2/objects/c4/701a34edf1fc1bad58ccc57bd03f9426acb59a +0 -0
- package/skills/cm-content-factory/.git 2/objects/c7/5ccce9a4e5cc74d9b3174550cf6d993ca43638 +0 -0
- package/skills/cm-content-factory/.git 2/objects/c7/710d59b5a35b0f1f0a0399386643a0bd94c929 +0 -0
- package/skills/cm-content-factory/.git 2/objects/d1/fe58237112e953e5fec52da22cf38e08be3df9 +0 -5
- package/skills/cm-content-factory/.git 2/objects/d2/2bbe9fd2f74c95bc5583e803f5e435f1e2cd86 +0 -0
- package/skills/cm-content-factory/.git 2/objects/d7/e72852ea2bff74581dbf247d400120086229f4 +0 -0
- package/skills/cm-content-factory/.git 2/objects/d8/d4c3b5553e4fd72807e1d4b49ef07d9ef3ac35 +0 -0
- package/skills/cm-content-factory/.git 2/objects/dc/75050c2876f6a02ae2a53a3c886f395b622977 +0 -0
- package/skills/cm-content-factory/.git 2/objects/ee/e8546f95acec500187c08a28a8b9ee02db0dec +0 -0
- package/skills/cm-content-factory/.git 2/objects/ef/263c059208b416c2146434f10cb2b9fabcba16 +0 -0
- package/skills/cm-content-factory/.git 2/objects/f3/ae597e84d9a59b88acd21c99bde2eaf686d785 +0 -0
- package/skills/cm-content-factory/.git 2/objects/f3/f6f5673c821d3d8e76fa267a9e882e7a5387ea +0 -0
- package/skills/cm-content-factory/.git 2/objects/f9/6e6d0ad02624dd11d5848594d056caef7a5e8b +0 -0
- package/skills/cm-content-factory/.git 2/objects/ff/278988fc1edf0db3abcf18de795f4cc0b4f3e1 +0 -0
- package/skills/cm-content-factory/.git 2/refs/heads/main +0 -1
- package/skills/cm-content-factory/.git 2/refs/remotes/origin/main +0 -1
- package/skills/cm-content-factory/.pytest_cache 2/v/cache/nodeids +0 -76
- package/skills/cm-content-factory/.pytest_cache 2/v/cache/stepwise +0 -1
- package/skills/cm-content-factory/AGENTS.md +0 -61
- package/skills/cm-content-factory/CLAUDE.md +0 -63
- package/skills/cm-content-factory/CURSOR.md +0 -43
- package/skills/cm-content-factory/Content Factory.zip +0 -0
- package/skills/cm-content-factory/SKILL.md +0 -416
- package/skills/cm-content-factory/cf +0 -313
- package/skills/cm-content-factory/config.schema.json +0 -397
- package/skills/cm-content-factory/dashboard/app.js +0 -556
- package/skills/cm-content-factory/dashboard/index.html +0 -397
- package/skills/cm-content-factory/dashboard/style.css +0 -1211
- package/skills/cm-content-factory/examples/01-real-estate.config.json +0 -146
- package/skills/cm-content-factory/examples/02-personal-finance.config.json +0 -146
- package/skills/cm-content-factory/examples/03-health-wellness.config.json +0 -147
- package/skills/cm-content-factory/examples/04-saas-software.config.json +0 -147
- package/skills/cm-content-factory/examples/05-legal-services.config.json +0 -147
- package/skills/cm-content-factory/examples/06-insurance.config.json +0 -146
- package/skills/cm-content-factory/examples/07-ecommerce-dropship.config.json +0 -146
- package/skills/cm-content-factory/examples/08-online-education.config.json +0 -147
- package/skills/cm-content-factory/examples/09-crypto-defi.config.json +0 -147
- package/skills/cm-content-factory/examples/10-beauty-skincare.config.json +0 -147
- package/skills/cm-content-factory/examples/11-home-services.config.json +0 -146
- package/skills/cm-content-factory/examples/12-dental-clinic.config.json +0 -147
- package/skills/cm-content-factory/examples/13-pet-care.config.json +0 -147
- package/skills/cm-content-factory/examples/14-travel-hospitality.config.json +0 -147
- package/skills/cm-content-factory/examples/15-ai-automation.config.json +0 -147
- package/skills/cm-content-factory/examples/16-wedding-events.config.json +0 -147
- package/skills/cm-content-factory/examples/17-fitness-coaching.config.json +0 -148
- package/skills/cm-content-factory/examples/18-cybersecurity.config.json +0 -147
- package/skills/cm-content-factory/examples/19-food-restaurant.config.json +0 -148
- package/skills/cm-content-factory/examples/20-solar-energy.config.json +0 -147
- package/skills/cm-content-factory/examples/fitness-blog.config.json +0 -116
- package/skills/cm-content-factory/examples/tech-blog.config.json +0 -107
- package/skills/cm-content-factory/extensions/EXTENSION_GUIDE.md +0 -72
- package/skills/cm-content-factory/extensions/hooks.py +0 -126
- package/skills/cm-content-factory/extensions/openclaw_adapter.py +0 -132
- package/skills/cm-content-factory/landing/docs/content/changelog.md +0 -36
- package/skills/cm-content-factory/landing/docs/content/deployment.md +0 -46
- package/skills/cm-content-factory/landing/docs/content/execution-flow.md +0 -67
- package/skills/cm-content-factory/landing/docs/content/openspace.md +0 -27
- package/skills/cm-content-factory/landing/docs/content/openviking.md +0 -33
- package/skills/cm-content-factory/landing/docs/content/use-cases.md +0 -26
- package/skills/cm-content-factory/landing/docs/content/v5-intro.md +0 -28
- package/skills/cm-content-factory/landing/docs/index.html +0 -240
- package/skills/cm-content-factory/landing/index.html +0 -680
- package/skills/cm-content-factory/landing/script.js +0 -143
- package/skills/cm-content-factory/landing/style.css +0 -1216
- package/skills/cm-content-factory/landing/translations.js +0 -508
- package/skills/cm-content-factory/logs/events.jsonl +0 -11
- package/skills/cm-content-factory/profiles/_template.profile.json +0 -231
- package/skills/cm-content-factory/profiles/finance.profile.json +0 -278
- package/skills/cm-content-factory/profiles/legal.profile.json +0 -263
- package/skills/cm-content-factory/profiles/medical-research.profile.json +0 -321
- package/skills/cm-content-factory/profiles/technology.profile.json +0 -275
- package/skills/cm-content-factory/scripts/agent_dispatcher.py +0 -266
- package/skills/cm-content-factory/scripts/audit.py +0 -106
- package/skills/cm-content-factory/scripts/dashboard_server.py +0 -225
- package/skills/cm-content-factory/scripts/deploy.py +0 -146
- package/skills/cm-content-factory/scripts/extract.py +0 -132
- package/skills/cm-content-factory/scripts/landing_generator.py +0 -459
- package/skills/cm-content-factory/scripts/memory.py +0 -521
- package/skills/cm-content-factory/scripts/monetize.py +0 -239
- package/skills/cm-content-factory/scripts/pipeline.py +0 -357
- package/skills/cm-content-factory/scripts/plan.py +0 -163
- package/skills/cm-content-factory/scripts/publish.py +0 -145
- package/skills/cm-content-factory/scripts/research.py +0 -337
- package/skills/cm-content-factory/scripts/scaffold.py +0 -464
- package/skills/cm-content-factory/scripts/scoreboard.py +0 -336
- package/skills/cm-content-factory/scripts/seo.py +0 -90
- package/skills/cm-content-factory/scripts/state_manager.py +0 -320
- package/skills/cm-content-factory/scripts/token_manager.py +0 -268
- package/skills/cm-content-factory/scripts/validate.py +0 -221
- package/skills/cm-content-factory/scripts/wizard.py +0 -329
- package/skills/cm-content-factory/scripts/write.py +0 -93
- package/skills/cm-content-factory/sites/docs-site/src/assets/houston.webp +0 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/architecture.md +0 -90
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/data-flow.md +0 -54
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/deployment.md +0 -38
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/index.md +0 -65
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/lc-content-lifecycle.md +0 -48
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/seq-write-mode.md +0 -39
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/uj-first-batch.md +0 -42
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/wf-content-pipeline.md +0 -51
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/wf-learning-cycle.md +0 -52
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/configuration.md +0 -86
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/installation.md +0 -80
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/intro.md +0 -58
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/index.md +0 -102
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/index.md +0 -45
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/optimize-seo.md +0 -29
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/scale-content-production.md +0 -55
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/standardize-quality.md +0 -29
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/buyer-cmo-huong.md +0 -41
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/buyer-content-lead-khoa.md +0 -40
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/index.md +0 -56
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-content-manager-lan.md +0 -46
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-seo-minh.md +0 -45
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-writer-tu.md +0 -45
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/content-pipeline.md +0 -108
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/index.md +0 -22
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/memory-system.md +0 -52
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/seo-optimization.md +0 -58
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/troubleshooting-guide.md +0 -92
- package/skills/cm-content-factory/sites/docs-site/src/styles/custom.css +0 -575
- package/skills/cm-content-factory/tests/conftest.py +0 -66
- package/skills/cm-content-factory/tests/test_agent_dispatcher.py +0 -125
- package/skills/cm-content-factory/tests/test_memory.py +0 -128
- package/skills/cm-content-factory/tests/test_pipeline.py +0 -107
- package/skills/cm-content-factory/tests/test_research.py +0 -56
- package/skills/cm-content-factory/tests/test_state_manager.py +0 -131
- package/skills/cm-content-factory/tests/test_token_manager.py +0 -110
- package/skills/cm-content-factory/tests/test_wizard.py +0 -121
- package/skills/cm-cro-methodology/SKILL.md +0 -290
- package/skills/cm-cro-methodology/references/COPYWRITING.md +0 -178
- package/skills/cm-cro-methodology/references/OBJECTIONS.md +0 -135
- package/skills/cm-cro-methodology/references/PERSUASION.md +0 -158
- package/skills/cm-cro-methodology/references/RESEARCH.md +0 -220
- package/skills/cm-cro-methodology/references/funnel-analysis.md +0 -365
- package/skills/cm-cro-methodology/references/testing-methodology.md +0 -330
- package/skills/cm-google-form/SKILL.md +0 -266
- package/skills/cm-google-form/templates/apps-script.js +0 -55
- package/skills/cm-google-form/templates/form-markup.html +0 -110
- package/skills/cm-google-form/templates/form-submit.js +0 -201
- package/skills/cm-google-form/templates/toast.css +0 -152
- package/skills/cm-growth-hacking/SKILL.md +0 -282
- package/skills/cm-growth-hacking/bottom-sheet-engine.md +0 -261
- package/skills/cm-growth-hacking/calendar-integration.md +0 -264
- package/skills/cm-growth-hacking/references/engagement-patterns.md +0 -346
- package/skills/cm-growth-hacking/templates/bottom-sheet.css +0 -528
- package/skills/cm-growth-hacking/templates/bottom-sheet.js +0 -269
- package/skills/cm-growth-hacking/templates/calendar-cta.js +0 -213
- package/skills/cm-growth-hacking/templates/tracking-events.js +0 -211
- package/skills/cm-growth-hacking/templates/trigger-manager.js +0 -254
- package/skills/cm-growth-hacking/tracking-events.md +0 -246
- package/skills/cm-growth-hacking/trigger-system.md +0 -342
- package/skills/cm-jtbd/SKILL.md +0 -98
- package/skills/cm-notebooklm/SKILL.md +0 -156
- package/skills/cm-notebooklm/references/command_reference.md +0 -94
- package/skills/cm-notebooklm/references/workflows.md +0 -60
- package/skills/cm-notebooklm/resources/knowledge_sources.md +0 -106
- package/skills/cm-notebooklm/scripts/brain-sync.sh +0 -453
- package/skills/cm-notebooklm/scripts/graduate_wisdom.py +0 -101
- package/skills/cm-readit/SKILL.md +0 -289
- package/skills/cm-readit/audio-player.md +0 -206
- package/skills/cm-readit/examples/blog-reader.js +0 -352
- package/skills/cm-readit/examples/voice-cro.js +0 -390
- package/skills/cm-readit/tts-engine.md +0 -262
- package/skills/cm-readit/ui-patterns.md +0 -362
- package/skills/cm-readit/voice-cro.md +0 -223
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cm-git-worktrees
|
|
3
|
+
description: Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees with smart directory selection and safety verification
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Using Git Worktrees
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
Git worktrees create isolated workspaces sharing the same repository, allowing work on multiple branches simultaneously without switching.
|
|
11
|
+
|
|
12
|
+
**Core principle:** Systematic directory selection + safety verification = reliable isolation.
|
|
13
|
+
|
|
14
|
+
**Announce at start:** "I'm using the cm-git-worktrees skill to set up an isolated workspace."
|
|
15
|
+
|
|
16
|
+
## Directory Selection Process
|
|
17
|
+
|
|
18
|
+
Follow this priority order:
|
|
19
|
+
|
|
20
|
+
### 1. Check Existing Directories
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# Check in priority order
|
|
24
|
+
ls -d .worktrees 2>/dev/null # Preferred (hidden)
|
|
25
|
+
ls -d worktrees 2>/dev/null # Alternative
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**If found:** Use that directory. If both exist, `.worktrees` wins.
|
|
29
|
+
|
|
30
|
+
### 2. Check CLAUDE.md
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
grep -i "worktree.*director" CLAUDE.md 2>/dev/null
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
**If preference specified:** Use it without asking.
|
|
37
|
+
|
|
38
|
+
### 3. Ask User
|
|
39
|
+
|
|
40
|
+
If no directory exists and no CLAUDE.md preference:
|
|
41
|
+
Ask where to create worktrees.
|
|
42
|
+
|
|
43
|
+
## Safety Verification
|
|
44
|
+
|
|
45
|
+
### For Project-Local Directories (.worktrees or worktrees)
|
|
46
|
+
|
|
47
|
+
**MUST verify directory is ignored before creating worktree:**
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
# Check if directory is ignored (respects local, global, and system gitignore)
|
|
51
|
+
git check-ignore -q .worktrees 2>/dev/null || git check-ignore -q worktrees 2>/dev/null
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**If NOT ignored:**
|
|
55
|
+
|
|
56
|
+
Per Jesse's rule "Fix broken things immediately":
|
|
57
|
+
1. Add appropriate line to .gitignore
|
|
58
|
+
2. Commit the change
|
|
59
|
+
3. Proceed with worktree creation
|
|
60
|
+
|
|
61
|
+
**Why critical:** Prevents accidentally committing worktree contents to repository.
|
|
62
|
+
|
|
63
|
+
### For Global Directory (~/.config/superpowers/worktrees)
|
|
64
|
+
|
|
65
|
+
No .gitignore verification needed - outside project entirely.
|
|
66
|
+
|
|
67
|
+
## Creation Steps
|
|
68
|
+
|
|
69
|
+
### 1. Detect Project Name
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
project=$(basename "$(git rev-parse --show-toplevel)")
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### 2. Create Worktree
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
# Determine full path
|
|
79
|
+
case $LOCATION in
|
|
80
|
+
.worktrees|worktrees)
|
|
81
|
+
path="$LOCATION/$BRANCH_NAME"
|
|
82
|
+
;;
|
|
83
|
+
~/.config/superpowers/worktrees/*)
|
|
84
|
+
path="~/.config/superpowers/worktrees/$project/$BRANCH_NAME"
|
|
85
|
+
;;
|
|
86
|
+
esac
|
|
87
|
+
|
|
88
|
+
# Create worktree with new branch
|
|
89
|
+
git worktree add "$path" -b "$BRANCH_NAME"
|
|
90
|
+
cd "$path"
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### 3. Run Project Setup
|
|
94
|
+
|
|
95
|
+
Auto-detect and run appropriate setup:
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
# Node.js
|
|
99
|
+
if [ -f package.json ]; then npm install; fi
|
|
100
|
+
# Rust
|
|
101
|
+
if [ -f Cargo.toml ]; then cargo build; fi
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### 4. Verify Clean Baseline
|
|
105
|
+
|
|
106
|
+
Run tests to ensure worktree starts clean (via `cm-quality-gate` conventions).
|
|
107
|
+
|
|
108
|
+
## Quick Reference
|
|
109
|
+
|
|
110
|
+
| Situation | Action |
|
|
111
|
+
|-----------|--------|
|
|
112
|
+
| `.worktrees/` exists | Use it (verify ignored) |
|
|
113
|
+
| `worktrees/` exists | Use it (verify ignored) |
|
|
114
|
+
| Both exist | Use `.worktrees/` |
|
|
115
|
+
| Neither exists | Check CLAUDE.md → Ask user |
|
|
116
|
+
| Directory not ignored | Add to .gitignore + commit |
|
|
117
|
+
| Tests fail during baseline | Report failures + ask |
|
|
118
|
+
|
|
119
|
+
## Common Mistakes
|
|
120
|
+
|
|
121
|
+
### Skipping ignore verification
|
|
122
|
+
|
|
123
|
+
- **Problem:** Worktree contents get tracked, pollute git status
|
|
124
|
+
- **Fix:** Always use `git check-ignore` before creating project-local worktree
|
|
125
|
+
|
|
126
|
+
### Assuming directory location
|
|
127
|
+
|
|
128
|
+
- **Problem:** Creates inconsistency, violates project conventions
|
|
129
|
+
- **Fix:** Follow priority: existing > CLAUDE.md > ask
|
|
130
|
+
|
|
131
|
+
### Proceeding with failing tests
|
|
132
|
+
|
|
133
|
+
- **Problem:** Can't distinguish new bugs from pre-existing issues
|
|
134
|
+
- **Fix:** Report failures, get explicit permission to proceed
|
|
135
|
+
|
|
136
|
+
## Red Flags
|
|
137
|
+
|
|
138
|
+
**Never:**
|
|
139
|
+
- Create worktree without verifying it's ignored (project-local)
|
|
140
|
+
- Skip baseline test verification
|
|
141
|
+
- Proceed with failing tests without asking
|
|
142
|
+
- Assume directory location when ambiguous
|
|
143
|
+
|
|
144
|
+
**Always:**
|
|
145
|
+
- Follow directory priority: existing > CLAUDE.md > ask
|
|
146
|
+
- Verify directory is ignored for project-local
|
|
147
|
+
- Auto-detect and run project setup
|
|
148
|
+
- Verify clean test baseline
|
|
149
|
+
|
|
150
|
+
## Integration
|
|
151
|
+
|
|
152
|
+
**Called by:**
|
|
153
|
+
- **cm-planning** - REQUIRED when design is approved and implementation follows
|
|
154
|
+
- **cm-execution** - REQUIRED before executing any tasks
|
|
155
|
+
|
|
156
|
+
**Pairs with:**
|
|
157
|
+
- **cm-code-review** - For cleanup after work complete
|
|
@@ -1,157 +1,26 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: cm-git-worktrees
|
|
3
|
-
description:
|
|
3
|
+
description: "[Deprecated] worktree management is part of execution. Use `cm-execution` instead."
|
|
4
|
+
deprecated: true
|
|
5
|
+
merged_into: cm-execution
|
|
4
6
|
---
|
|
5
7
|
|
|
6
|
-
#
|
|
8
|
+
# cm-git-worktrees — Deprecated
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
> ⚠️ This skill is deprecated as of CodyMaster v6.0.0 and will be removed in v6.1.0.
|
|
11
|
+
>
|
|
12
|
+
> **Use `cm-execution` instead.** worktree management is part of execution.
|
|
13
|
+
>
|
|
14
|
+
> See [docs/migration-v2.md](../../docs/migration-v2.md) for the full mapping.
|
|
9
15
|
|
|
10
|
-
|
|
16
|
+
The original content is preserved at [SKILL.archive.md](SKILL.archive.md) for reference.
|
|
11
17
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
**Announce at start:** "I'm using the cm-git-worktrees skill to set up an isolated workspace."
|
|
15
|
-
|
|
16
|
-
## Directory Selection Process
|
|
17
|
-
|
|
18
|
-
Follow this priority order:
|
|
19
|
-
|
|
20
|
-
### 1. Check Existing Directories
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
# Check in priority order
|
|
24
|
-
ls -d .worktrees 2>/dev/null # Preferred (hidden)
|
|
25
|
-
ls -d worktrees 2>/dev/null # Alternative
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
**If found:** Use that directory. If both exist, `.worktrees` wins.
|
|
29
|
-
|
|
30
|
-
### 2. Check CLAUDE.md
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
grep -i "worktree.*director" CLAUDE.md 2>/dev/null
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
**If preference specified:** Use it without asking.
|
|
37
|
-
|
|
38
|
-
### 3. Ask User
|
|
39
|
-
|
|
40
|
-
If no directory exists and no CLAUDE.md preference:
|
|
41
|
-
Ask where to create worktrees.
|
|
42
|
-
|
|
43
|
-
## Safety Verification
|
|
44
|
-
|
|
45
|
-
### For Project-Local Directories (.worktrees or worktrees)
|
|
46
|
-
|
|
47
|
-
**MUST verify directory is ignored before creating worktree:**
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
# Check if directory is ignored (respects local, global, and system gitignore)
|
|
51
|
-
git check-ignore -q .worktrees 2>/dev/null || git check-ignore -q worktrees 2>/dev/null
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
**If NOT ignored:**
|
|
55
|
-
|
|
56
|
-
Per Jesse's rule "Fix broken things immediately":
|
|
57
|
-
1. Add appropriate line to .gitignore
|
|
58
|
-
2. Commit the change
|
|
59
|
-
3. Proceed with worktree creation
|
|
60
|
-
|
|
61
|
-
**Why critical:** Prevents accidentally committing worktree contents to repository.
|
|
62
|
-
|
|
63
|
-
### For Global Directory (~/.config/superpowers/worktrees)
|
|
64
|
-
|
|
65
|
-
No .gitignore verification needed - outside project entirely.
|
|
66
|
-
|
|
67
|
-
## Creation Steps
|
|
68
|
-
|
|
69
|
-
### 1. Detect Project Name
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
project=$(basename "$(git rev-parse --show-toplevel)")
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
### 2. Create Worktree
|
|
76
|
-
|
|
77
|
-
```bash
|
|
78
|
-
# Determine full path
|
|
79
|
-
case $LOCATION in
|
|
80
|
-
.worktrees|worktrees)
|
|
81
|
-
path="$LOCATION/$BRANCH_NAME"
|
|
82
|
-
;;
|
|
83
|
-
~/.config/superpowers/worktrees/*)
|
|
84
|
-
path="~/.config/superpowers/worktrees/$project/$BRANCH_NAME"
|
|
85
|
-
;;
|
|
86
|
-
esac
|
|
87
|
-
|
|
88
|
-
# Create worktree with new branch
|
|
89
|
-
git worktree add "$path" -b "$BRANCH_NAME"
|
|
90
|
-
cd "$path"
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### 3. Run Project Setup
|
|
94
|
-
|
|
95
|
-
Auto-detect and run appropriate setup:
|
|
18
|
+
## Migration
|
|
96
19
|
|
|
97
20
|
```bash
|
|
98
|
-
#
|
|
99
|
-
|
|
100
|
-
# Rust
|
|
101
|
-
if [ -f Cargo.toml ]; then cargo build; fi
|
|
21
|
+
# Old: cm <use this skill>
|
|
22
|
+
# New (v6.0+): cm execution <equivalent action>
|
|
102
23
|
```
|
|
103
24
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
Run tests to ensure worktree starts clean (via `cm-quality-gate` conventions).
|
|
107
|
-
|
|
108
|
-
## Quick Reference
|
|
109
|
-
|
|
110
|
-
| Situation | Action |
|
|
111
|
-
|-----------|--------|
|
|
112
|
-
| `.worktrees/` exists | Use it (verify ignored) |
|
|
113
|
-
| `worktrees/` exists | Use it (verify ignored) |
|
|
114
|
-
| Both exist | Use `.worktrees/` |
|
|
115
|
-
| Neither exists | Check CLAUDE.md → Ask user |
|
|
116
|
-
| Directory not ignored | Add to .gitignore + commit |
|
|
117
|
-
| Tests fail during baseline | Report failures + ask |
|
|
118
|
-
|
|
119
|
-
## Common Mistakes
|
|
120
|
-
|
|
121
|
-
### Skipping ignore verification
|
|
122
|
-
|
|
123
|
-
- **Problem:** Worktree contents get tracked, pollute git status
|
|
124
|
-
- **Fix:** Always use `git check-ignore` before creating project-local worktree
|
|
125
|
-
|
|
126
|
-
### Assuming directory location
|
|
127
|
-
|
|
128
|
-
- **Problem:** Creates inconsistency, violates project conventions
|
|
129
|
-
- **Fix:** Follow priority: existing > CLAUDE.md > ask
|
|
130
|
-
|
|
131
|
-
### Proceeding with failing tests
|
|
132
|
-
|
|
133
|
-
- **Problem:** Can't distinguish new bugs from pre-existing issues
|
|
134
|
-
- **Fix:** Report failures, get explicit permission to proceed
|
|
135
|
-
|
|
136
|
-
## Red Flags
|
|
137
|
-
|
|
138
|
-
**Never:**
|
|
139
|
-
- Create worktree without verifying it's ignored (project-local)
|
|
140
|
-
- Skip baseline test verification
|
|
141
|
-
- Proceed with failing tests without asking
|
|
142
|
-
- Assume directory location when ambiguous
|
|
143
|
-
|
|
144
|
-
**Always:**
|
|
145
|
-
- Follow directory priority: existing > CLAUDE.md > ask
|
|
146
|
-
- Verify directory is ignored for project-local
|
|
147
|
-
- Auto-detect and run project setup
|
|
148
|
-
- Verify clean test baseline
|
|
149
|
-
|
|
150
|
-
## Integration
|
|
151
|
-
|
|
152
|
-
**Called by:**
|
|
153
|
-
- **cm-planning** - REQUIRED when design is approved and implementation follows
|
|
154
|
-
- **cm-execution** - REQUIRED before executing any tasks
|
|
155
|
-
|
|
156
|
-
**Pairs with:**
|
|
157
|
-
- **cm-code-review** - For cleanup after work complete
|
|
25
|
+
If you depend on a capability that didn't carry over, please file an issue:
|
|
26
|
+
https://github.com/tody-agent/codymaster/issues
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cm-guardian-runtime
|
|
3
|
+
description: "Use when you need to check if a destructive command is blocked or run guardian freeze checks."
|
|
4
|
+
---
|
|
1
5
|
# cm-guardian-runtime — destructive command & freeze checks
|
|
2
6
|
|
|
3
7
|
## Commands
|
|
@@ -19,4 +23,4 @@ When using **cm-debugging** or root-cause work, treat **freeze roots** as mandat
|
|
|
19
23
|
|
|
20
24
|
## Config
|
|
21
25
|
|
|
22
|
-
See `.cm/config.example.yaml` → `guardian:`.
|
|
26
|
+
See `.cm/config.example.yaml` → `guardian:`. Hook patterns (Cursor / Codex): [docs/workflows/guardian-hooks.md](../../docs/workflows/guardian-hooks.md) (repo root).
|
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: cm-identity-guard
|
|
3
3
|
description: Verify and lock project identity before ANY git push, Cloudflare deploy, or Supabase operation. Essential when working with multiple GitHub accounts (personal + work), multiple Cloudflare accounts, or multiple Supabase/Neon projects. Prevents wrong-account deploys, cross-project secret leaks, and git history contamination.
|
|
4
|
+
token_budget: 800
|
|
5
|
+
compressed: true
|
|
6
|
+
deprecated: false
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
# Identity Guard — Multi-Account Safety Protocol
|
|
7
10
|
|
|
11
|
+
## TL;DR
|
|
12
|
+
- **Use before** any git push, Cloudflare deploy, or Supabase op
|
|
13
|
+
- **Verifies**: GitHub account, CF account, Supabase project match expected
|
|
14
|
+
- **Prevents**: wrong-account deploys, cross-project secret leaks
|
|
15
|
+
|
|
8
16
|
## Overview
|
|
9
17
|
|
|
10
18
|
Working across multiple projects, clients, and platforms means one wrong `git push` or `wrangler deploy` can publish work to the wrong account. This skill establishes a mandatory identity check before any operation that touches external services.
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cm-mcp-engineering
|
|
3
|
+
description: "Use when you need to interact with the MCP engineering bridge tools (cm_plan, cm_review, cm_qa, cm_deploy, cm_search)."
|
|
4
|
+
---
|
|
1
5
|
# cm-mcp-engineering — MCP tools on context server
|
|
2
6
|
|
|
3
7
|
The same binary as memory MCP (`dist/mcp-context-server.js`) now exposes **engineering bridge** tools:
|
|
@@ -1,134 +1,105 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: cm-planning
|
|
3
3
|
description: "You MUST use this before any creative work or multi-step task. Explores intent, requirements, and design before implementation. Then documents the plan before coding."
|
|
4
|
+
token_budget: 1500
|
|
5
|
+
compressed: true
|
|
6
|
+
deprecated: false
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
# Planning — Brainstorm + Write Plans
|
|
7
10
|
|
|
8
|
-
|
|
11
|
+
## TL;DR
|
|
12
|
+
- **Use before** any feature, behavior change, or 3+ step task
|
|
13
|
+
- **Phase A (Brainstorm)**: clarify intent → 2-3 options → recommend → scope
|
|
14
|
+
- **Phase B (Write)**: emit `openspec/changes/<name>/{design.md,tasks.md}`
|
|
15
|
+
- **Handoff out**: `.cm/handoff/plan.json` (goal, decisions, first 3 tasks)
|
|
16
|
+
- **Next**: `cm-tdd` or `cm-execution`
|
|
9
17
|
|
|
10
18
|
## When to Use
|
|
11
|
-
|
|
12
|
-
**ALWAYS before:**
|
|
13
19
|
- Creating features, components, or functionality
|
|
14
|
-
- Modifying behavior
|
|
15
|
-
-
|
|
16
|
-
- Any work that changes user-facing behavior
|
|
17
|
-
|
|
18
|
-
## Phase A: Brainstorm (Explore Intent)
|
|
19
|
-
|
|
20
|
-
### The Process
|
|
21
|
-
|
|
22
|
-
1. **Understand Intent** — What does the user ACTUALLY want?
|
|
23
|
-
- Ask clarifying questions
|
|
24
|
-
- Don't assume scope
|
|
25
|
-
- Identify hidden requirements
|
|
26
|
-
|
|
27
|
-
2. **Explore Options** — What are the approaches?
|
|
28
|
-
- List 2-3 possible approaches
|
|
29
|
-
- Pros/cons of each
|
|
30
|
-
- Recommend one with reasoning
|
|
31
|
-
|
|
32
|
-
3. **Define Scope** — What's in and what's out?
|
|
33
|
-
- Must-haves vs nice-to-haves
|
|
34
|
-
- Edge cases to handle
|
|
35
|
-
- Edge cases to explicitly NOT handle
|
|
36
|
-
- **Output to:** `openspec/changes/[initiative-name]/specs/`
|
|
20
|
+
- Modifying behavior; multi-step tasks; user-visible change
|
|
21
|
+
- Skip only for trivial single-line edits or pure questions
|
|
37
22
|
|
|
38
|
-
|
|
39
|
-
- Data flow
|
|
40
|
-
- Component boundaries
|
|
41
|
-
- API contracts (if applicable)
|
|
42
|
-
- **If building UI:** Use `cm-ui-preview` to preview on Google Stitch before coding
|
|
23
|
+
## Full Protocol
|
|
43
24
|
|
|
44
|
-
###
|
|
25
|
+
### Phase A: Brainstorm
|
|
45
26
|
|
|
46
|
-
|
|
47
|
-
-
|
|
48
|
-
-
|
|
49
|
-
|
|
27
|
+
1. **Intent** — Ask clarifying questions. Don't assume scope. Surface hidden requirements.
|
|
28
|
+
2. **Options** — List 2-3 approaches with pros/cons. Recommend one with reasoning.
|
|
29
|
+
3. **Scope** — Must-have vs nice-to-have; edges to handle vs explicitly skip.
|
|
30
|
+
4. **Design** — Data flow, component boundaries, API contracts. UI work → `cm-ui-preview`.
|
|
50
31
|
|
|
51
|
-
|
|
32
|
+
**Red flags (STOP)**: code before brainstorm; assuming intent; skipping scope; "it's simple."
|
|
52
33
|
|
|
53
|
-
|
|
54
|
-
> Output artifacts exactly to `openspec/changes/[initiative-name]/` to ensure human/AI alignment.
|
|
34
|
+
### Phase B: Write Plan (OpenSpec format)
|
|
55
35
|
|
|
56
|
-
|
|
36
|
+
Write to `openspec/changes/<initiative-name>/`:
|
|
57
37
|
|
|
58
|
-
|
|
59
|
-
- Multiple files involved
|
|
60
|
-
- Changes affect other components
|
|
61
|
-
- User explicitly asks for a plan
|
|
62
|
-
|
|
63
|
-
### OpenSpec Artifacts to Generate
|
|
64
|
-
|
|
65
|
-
**1. `openspec/changes/[initiative-name]/design.md`**
|
|
38
|
+
`design.md`
|
|
66
39
|
```markdown
|
|
67
40
|
# Design: [Goal]
|
|
68
|
-
|
|
69
41
|
## Context & Technical Approach
|
|
70
|
-
Why this approach and how it works.
|
|
71
|
-
|
|
72
42
|
## Proposed Changes
|
|
73
43
|
### [Component/File]
|
|
74
|
-
- What changes
|
|
75
|
-
- Why this approach
|
|
76
|
-
|
|
77
44
|
## Verification
|
|
78
|
-
How to verify it works.
|
|
79
45
|
```
|
|
80
46
|
|
|
81
|
-
|
|
47
|
+
`tasks.md`
|
|
82
48
|
```markdown
|
|
83
49
|
# Implementation Checklist
|
|
84
|
-
- [ ] 1.1
|
|
85
|
-
- [ ] 1.2
|
|
86
|
-
- [ ] 2.1 Next component integration
|
|
50
|
+
- [ ] 1.1 ...
|
|
51
|
+
- [ ] 1.2 ...
|
|
87
52
|
- [ ] Verification testing
|
|
88
53
|
```
|
|
89
54
|
|
|
90
|
-
|
|
55
|
+
**Plan rules**: small testable steps (15-30 min each), order by dependency, verification per step. No vague steps.
|
|
91
56
|
|
|
92
|
-
|
|
93
|
-
✅ DO:
|
|
94
|
-
- Break into small, testable steps
|
|
95
|
-
- Order by dependency (foundations first)
|
|
96
|
-
- Include verification for each step
|
|
97
|
-
- Keep steps bite-sized (15-30 min each)
|
|
98
|
-
|
|
99
|
-
❌ DON'T:
|
|
100
|
-
- Write vague steps ("refactor the code")
|
|
101
|
-
- Skip verification steps
|
|
102
|
-
- Plan more than needed
|
|
103
|
-
- Over-engineer the plan itself
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
### Step FINAL: Update Working Memory
|
|
57
|
+
### Step FINAL: Emit Handoff + Update Continuity
|
|
107
58
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
59
|
+
Write `.cm/handoff/plan.json`:
|
|
60
|
+
```json
|
|
61
|
+
{
|
|
62
|
+
"schema": "plan@1",
|
|
63
|
+
"goal": "...",
|
|
64
|
+
"decisions": ["..."],
|
|
65
|
+
"first_tasks": ["1.1", "1.2", "1.3"],
|
|
66
|
+
"openspec_path": "openspec/changes/<name>/"
|
|
67
|
+
}
|
|
115
68
|
```
|
|
116
69
|
|
|
117
|
-
|
|
118
|
-
|
|
70
|
+
Update `.cm/CONTINUITY.md`:
|
|
71
|
+
- Active Goal → plan goal
|
|
72
|
+
- Next Actions → first 3 tasks
|
|
73
|
+
- Current Phase → "planning"
|
|
74
|
+
- Working Context → key decisions
|
|
119
75
|
|
|
120
|
-
|
|
76
|
+
> Token win: next session reads CONTINUITY (~200 tok) instead of full plan (2000+).
|
|
121
77
|
|
|
122
78
|
## Integration
|
|
123
79
|
|
|
124
80
|
| After planning... | Use skill |
|
|
125
|
-
|
|
126
|
-
| Complex initiative
|
|
81
|
+
|---|---|
|
|
82
|
+
| Complex initiative | `cm-brainstorm-idea` (run BEFORE) |
|
|
127
83
|
| Need isolated workspace | `cm-git-worktrees` |
|
|
128
|
-
| Execute the plan
|
|
129
|
-
|
|
|
130
|
-
|
|
|
84
|
+
| Execute the plan | `cm-execution` |
|
|
85
|
+
| Tests first | `cm-tdd` |
|
|
86
|
+
| UI/frontend | `cm-ui-preview` |
|
|
131
87
|
|
|
132
|
-
##
|
|
88
|
+
## Karpathy Discipline — Think Before Coding
|
|
89
|
+
|
|
90
|
+
Before writing the plan, surface what's uncertain instead of guessing:
|
|
91
|
+
- **State assumptions explicitly.** List them in the plan; mark each as "verified" or "needs confirmation".
|
|
92
|
+
- **Multiple interpretations?** Present them side-by-side with tradeoffs. Don't pick silently.
|
|
93
|
+
- **Simpler path exists?** Say so. Push back on over-scoped requests.
|
|
94
|
+
- **Confused?** Stop. Name the confusion. Ask. Cheaper than building the wrong thing.
|
|
95
|
+
|
|
96
|
+
**Self-test:** "Could a reviewer point to anything in this plan I'm guessing about?" If yes, mark it.
|
|
133
97
|
|
|
134
|
-
|
|
98
|
+
## Anti-Patterns
|
|
99
|
+
- ❌ Coding before plan exists
|
|
100
|
+
- ❌ Skipping handoff JSON (downstream skills lose context)
|
|
101
|
+
- ❌ Vague tasks ("refactor the code")
|
|
102
|
+
- ❌ Hidden assumptions — pick one interpretation without telling the user
|
|
103
|
+
|
|
104
|
+
## The Bottom Line
|
|
105
|
+
**Think before you build. Document before you code. Emit handoff so the next skill picks up cold.**
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cm-post-deploy-canary
|
|
3
|
+
description: "Use after deployment to run smoke tests and post-deploy canary checks via the browse daemon."
|
|
4
|
+
---
|
|
5
|
+
# cm-post-deploy-canary — smoke + browse tail
|
|
6
|
+
|
|
7
|
+
## CLI
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
cm canary --url https://app.example.com
|
|
11
|
+
cm canary --url https://app.example.com --browse-port 17395 --token "$CM_BROWSE_TOKEN"
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Flow
|
|
15
|
+
|
|
16
|
+
1. **HTTP GET** the URL (status < 400).
|
|
17
|
+
2. Optionally pull **browse daemon** `/console` for recent browser errors after deploy.
|
|
18
|
+
|
|
19
|
+
## Next
|
|
20
|
+
|
|
21
|
+
- Wire into **cm-safe-deploy** as a final step.
|
|
22
|
+
- Add programmatic CWV (Lighthouse) when you need baselines per PR.
|
|
@@ -1,18 +1,26 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
name: cm-post-deploy-canary
|
|
3
|
+
description: "[Deprecated] quality gate now covers tests + canary. Use `cm-quality-gate` instead."
|
|
4
|
+
deprecated: true
|
|
5
|
+
merged_into: cm-quality-gate
|
|
6
|
+
---
|
|
2
7
|
|
|
3
|
-
|
|
8
|
+
# cm-post-deploy-canary — Deprecated
|
|
4
9
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
cm
|
|
8
|
-
|
|
10
|
+
> ⚠️ This skill is deprecated as of CodyMaster v6.0.0 and will be removed in v6.1.0.
|
|
11
|
+
>
|
|
12
|
+
> **Use `cm-quality-gate` instead.** quality gate now covers tests + canary.
|
|
13
|
+
>
|
|
14
|
+
> See [docs/migration-v2.md](../../docs/migration-v2.md) for the full mapping.
|
|
9
15
|
|
|
10
|
-
|
|
16
|
+
The original content is preserved at [SKILL.archive.md](SKILL.archive.md) for reference.
|
|
11
17
|
|
|
12
|
-
|
|
13
|
-
2. Optionally pull **browse daemon** `/console` for recent browser errors after deploy.
|
|
18
|
+
## Migration
|
|
14
19
|
|
|
15
|
-
|
|
20
|
+
```bash
|
|
21
|
+
# Old: cm <use this skill>
|
|
22
|
+
# New (v6.0+): cm quality-gate <equivalent action>
|
|
23
|
+
```
|
|
16
24
|
|
|
17
|
-
|
|
18
|
-
-
|
|
25
|
+
If you depend on a capability that didn't carry over, please file an issue:
|
|
26
|
+
https://github.com/tody-agent/codymaster/issues
|
|
@@ -1318,6 +1318,16 @@ Add this line to the AGENTS.md "Important Rules" section:
|
|
|
1318
1318
|
|
|
1319
1319
|
```markdown
|
|
1320
1320
|
- Read `.cm/CONTINUITY.md` at the start of every session for context
|
|
1321
|
+
- Rely on `.cm/project-skills.md` for skill discovery rather than external indexes
|
|
1322
|
+
```
|
|
1323
|
+
|
|
1324
|
+
### Step 5: Build Local Project Skills Index
|
|
1325
|
+
|
|
1326
|
+
Run the CodyMaster CLI indexer to detect the tech stack deterministically and pre-compile the needed community skills without wasting LLM tokens.
|
|
1327
|
+
|
|
1328
|
+
```bash
|
|
1329
|
+
# This scans package.json/go.mod/etc and outputs to .cm/project-skills.md
|
|
1330
|
+
npx cm index skills
|
|
1321
1331
|
```
|
|
1322
1332
|
|
|
1323
1333
|
### Why This Saves Tokens
|
|
@@ -1373,4 +1383,5 @@ After bootstrap, the project MUST have:
|
|
|
1373
1383
|
✅ production branch — Production deploys
|
|
1374
1384
|
✅ First commit — "chore: bootstrap with cm-project-bootstrap v2.0"
|
|
1375
1385
|
✅ .cm/CONTINUITY.md — Working memory for AI context persistence
|
|
1386
|
+
✅ .cm/project-skills.md — Localized token-efficient skill discovery index
|
|
1376
1387
|
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cm-qa-visual-cli
|
|
3
|
+
description: "Use when you need to take screenshots or run visual QA via the browse daemon CLI."
|
|
4
|
+
---
|
|
5
|
+
# cm-qa-visual-cli — screenshot via browse daemon
|
|
6
|
+
|
|
7
|
+
## Prerequisites
|
|
8
|
+
|
|
9
|
+
`cm browse start` running with the same `CM_BROWSE_TOKEN`.
|
|
10
|
+
|
|
11
|
+
## CLI
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
cm qa-visual --url http://localhost:5173 --port 17395
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Writes `cm-qa-visual.png` in the current working directory.
|
|
18
|
+
|
|
19
|
+
## Next
|
|
20
|
+
|
|
21
|
+
- Diff against golden images for visual regression.
|
|
22
|
+
- Map `git diff` → affected routes (project-specific heuristics).
|