codymaster 5.2.0 → 7.0.1
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 +276 -0
- package/README.md +216 -333
- 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 +12 -0
- package/dist/cli/commands/dashboard.js +76 -2
- package/dist/cli/commands/engineering.js +218 -4
- package/dist/cli/commands/install.js +160 -0
- package/dist/cli/commands/learn.js +181 -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/continuity.js +3 -1
- package/dist/dashboard.js +47 -6
- package/dist/data.js +35 -0
- package/dist/execution/tdd-gate.js +113 -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/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/learnings.js +208 -0
- package/dist/mcp-context-server.js +1 -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/skills-lock.js +96 -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/tier-classify.js +131 -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 +27 -4
- 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 +54 -287
- package/scripts/release.sh +126 -0
- package/scripts/update-changelog.sh +88 -0
- package/scripts/validate-skills.mjs +101 -4
- package/skills/_shared/SKILL_TEMPLATE.md +62 -0
- package/skills/cm-autopilot/scripts/autopilot.py +19 -2
- package/skills/cm-brainstorm-idea/SKILL.md +9 -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 +17 -19
- package/skills/cm-continuity/SKILL.md +9 -0
- 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 +17 -25
- package/skills/cm-design-system/SKILL.md +1 -0
- package/skills/cm-engineering-meta/SKILL.archive.md +73 -0
- package/skills/cm-engineering-meta/SKILL.md +16 -63
- 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-identity-guard/SKILL.md +8 -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 +17 -13
- package/skills/cm-qa-visual-cli/SKILL.archive.md +22 -0
- package/skills/cm-qa-visual-cli/SKILL.md +16 -12
- package/skills/cm-quality-gate/SKILL.md +38 -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 +17 -14
- 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 +15 -228
- package/skills/cm-skill-health/SKILL.archive.md +83 -0
- package/skills/cm-skill-health/SKILL.md +16 -73
- package/skills/cm-skill-index/SKILL.md +8 -0
- 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 +17 -40
- package/skills/cm-skill-share/SKILL.archive.md +58 -0
- package/skills/cm-skill-share/SKILL.md +17 -49
- package/skills/cm-sprint-bus/SKILL.md +9 -0
- package/skills/cm-start/SKILL.md +17 -0
- package/skills/cm-tdd/SKILL.md +19 -0
- 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 +0 -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/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/memory-system.md +0 -38
- package/skills/cm-content-factory/landing/docs/content/openspace.md +0 -27
- 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,73 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cm-engineering-meta
|
|
3
|
+
description: "Use when looking up quick wins, access patterns, or voice map for the engineering meta layer."
|
|
4
|
+
---
|
|
5
|
+
# cm-engineering-meta — quick wins + access + voice map
|
|
6
|
+
|
|
7
|
+
## Search before building
|
|
8
|
+
|
|
9
|
+
Before adding infrastructure, search in three layers:
|
|
10
|
+
|
|
11
|
+
1. **Tried-and-true** — patterns already in this repo / sibling services.
|
|
12
|
+
2. **New-and-popular** — current docs for your stack version.
|
|
13
|
+
3. **First-principles** — only when 1–2 don’t apply.
|
|
14
|
+
|
|
15
|
+
## AskUserQuestion format
|
|
16
|
+
|
|
17
|
+
When asking the human to choose:
|
|
18
|
+
|
|
19
|
+
- Short **context** (what you already know).
|
|
20
|
+
- Clear **question**.
|
|
21
|
+
- **RECOMMENDATION** (one option you’d pick and why).
|
|
22
|
+
- Lettered options **A / B / C** (not vague yes/no).
|
|
23
|
+
|
|
24
|
+
## Review readiness dashboard (ASCII)
|
|
25
|
+
|
|
26
|
+
Before ship, print a table:
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
| Gate | Status | Notes |
|
|
30
|
+
|-------------|--------|-------|
|
|
31
|
+
| Tests | ? | |
|
|
32
|
+
| Lint/Type | ? | |
|
|
33
|
+
| Secrets | ? | |
|
|
34
|
+
| Manual QA | ? | |
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Completeness gap (code review)
|
|
38
|
+
|
|
39
|
+
Flag when an **80% solution** is chosen but the **100%** path costs **< 30 minutes** (tests, edge case, docs).
|
|
40
|
+
|
|
41
|
+
## Investigate Iron Law
|
|
42
|
+
|
|
43
|
+
- Do **not** patch without a **root cause** hypothesis.
|
|
44
|
+
- After **three** failed fix attempts, stop and question architecture or gather more data.
|
|
45
|
+
|
|
46
|
+
## Access controls (Goose-style)
|
|
47
|
+
|
|
48
|
+
- Maintain lists: **autonomous_ok** vs **confirm_required** skill groups (see `.cm/config.example.yaml`).
|
|
49
|
+
- Respect “stop suggesting skill X” in session notes.
|
|
50
|
+
|
|
51
|
+
## Provider abstraction
|
|
52
|
+
|
|
53
|
+
Prefer interfaces for LLM calls so **cm-second-opinion** can swap `OPENAI_API_KEY` / future providers without rewriting skills.
|
|
54
|
+
|
|
55
|
+
## Proactive skill suggestion
|
|
56
|
+
|
|
57
|
+
Infer stage from files touched and git state:
|
|
58
|
+
|
|
59
|
+
- Many `test/` edits → suggest **cm-test-gate**.
|
|
60
|
+
- `Dockerfile` / deploy scripts → **cm-safe-deploy** + **cm canary**.
|
|
61
|
+
- `rm` / migration scripts → **cm-guardian** + **cm-secret-shield**.
|
|
62
|
+
|
|
63
|
+
## Voice-friendly triggers (examples)
|
|
64
|
+
|
|
65
|
+
| Phrase (approx.) | Skill / command |
|
|
66
|
+
|------------------|-----------------|
|
|
67
|
+
| “Run a security check” | cm-secret-shield / cm-security-gate |
|
|
68
|
+
| “Test the website” | cm browse + cm qa-visual |
|
|
69
|
+
| “Code review this” | cm-code-review |
|
|
70
|
+
| “Deploy safely” | cm-safe-deploy |
|
|
71
|
+
| “Log what went wrong” | `cm retro --note "…"` |
|
|
72
|
+
|
|
73
|
+
Use Whisper / AquaVoice → paste transcript; map keywords to the table above.
|
|
@@ -1,73 +1,26 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: cm-engineering-meta
|
|
3
|
-
description: "
|
|
3
|
+
description: "[Deprecated] engineering bridge merged. Use `cm-mcp-engineering` instead."
|
|
4
|
+
deprecated: true
|
|
5
|
+
merged_into: cm-mcp-engineering
|
|
4
6
|
---
|
|
5
|
-
# cm-engineering-meta — quick wins + access + voice map
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
# cm-engineering-meta — Deprecated
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
> ⚠️ This skill is deprecated as of CodyMaster v6.0.0 and will be removed in v6.1.0.
|
|
11
|
+
>
|
|
12
|
+
> **Use `cm-mcp-engineering` instead.** engineering bridge merged.
|
|
13
|
+
>
|
|
14
|
+
> See [docs/migration-v2.md](../../docs/migration-v2.md) for the full mapping.
|
|
10
15
|
|
|
11
|
-
|
|
12
|
-
2. **New-and-popular** — current docs for your stack version.
|
|
13
|
-
3. **First-principles** — only when 1–2 don’t apply.
|
|
16
|
+
The original content is preserved at [SKILL.archive.md](SKILL.archive.md) for reference.
|
|
14
17
|
|
|
15
|
-
##
|
|
18
|
+
## Migration
|
|
16
19
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
- Clear **question**.
|
|
21
|
-
- **RECOMMENDATION** (one option you’d pick and why).
|
|
22
|
-
- Lettered options **A / B / C** (not vague yes/no).
|
|
23
|
-
|
|
24
|
-
## Review readiness dashboard (ASCII)
|
|
25
|
-
|
|
26
|
-
Before ship, print a table:
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
| Gate | Status | Notes |
|
|
30
|
-
|-------------|--------|-------|
|
|
31
|
-
| Tests | ? | |
|
|
32
|
-
| Lint/Type | ? | |
|
|
33
|
-
| Secrets | ? | |
|
|
34
|
-
| Manual QA | ? | |
|
|
20
|
+
```bash
|
|
21
|
+
# Old: cm <use this skill>
|
|
22
|
+
# New (v6.0+): cm mcp-engineering <equivalent action>
|
|
35
23
|
```
|
|
36
24
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
Flag when an **80% solution** is chosen but the **100%** path costs **< 30 minutes** (tests, edge case, docs).
|
|
40
|
-
|
|
41
|
-
## Investigate Iron Law
|
|
42
|
-
|
|
43
|
-
- Do **not** patch without a **root cause** hypothesis.
|
|
44
|
-
- After **three** failed fix attempts, stop and question architecture or gather more data.
|
|
45
|
-
|
|
46
|
-
## Access controls (Goose-style)
|
|
47
|
-
|
|
48
|
-
- Maintain lists: **autonomous_ok** vs **confirm_required** skill groups (see `.cm/config.example.yaml`).
|
|
49
|
-
- Respect “stop suggesting skill X” in session notes.
|
|
50
|
-
|
|
51
|
-
## Provider abstraction
|
|
52
|
-
|
|
53
|
-
Prefer interfaces for LLM calls so **cm-second-opinion** can swap `OPENAI_API_KEY` / future providers without rewriting skills.
|
|
54
|
-
|
|
55
|
-
## Proactive skill suggestion
|
|
56
|
-
|
|
57
|
-
Infer stage from files touched and git state:
|
|
58
|
-
|
|
59
|
-
- Many `test/` edits → suggest **cm-test-gate**.
|
|
60
|
-
- `Dockerfile` / deploy scripts → **cm-safe-deploy** + **cm canary**.
|
|
61
|
-
- `rm` / migration scripts → **cm-guardian** + **cm-secret-shield**.
|
|
62
|
-
|
|
63
|
-
## Voice-friendly triggers (examples)
|
|
64
|
-
|
|
65
|
-
| Phrase (approx.) | Skill / command |
|
|
66
|
-
|------------------|-----------------|
|
|
67
|
-
| “Run a security check” | cm-secret-shield / cm-security-gate |
|
|
68
|
-
| “Test the website” | cm browse + cm qa-visual |
|
|
69
|
-
| “Code review this” | cm-code-review |
|
|
70
|
-
| “Deploy safely” | cm-safe-deploy |
|
|
71
|
-
| “Log what went wrong” | `cm retro --note "…"` |
|
|
72
|
-
|
|
73
|
-
Use Whisper / AquaVoice → paste transcript; map keywords to the table above.
|
|
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,14 +1,38 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: cm-execution
|
|
3
3
|
description: "Use when executing implementation plans — choose mode: batch execution with checkpoints, subagent-per-task, or parallel dispatch for independent problems."
|
|
4
|
+
token_budget: 1800
|
|
5
|
+
compressed: true
|
|
6
|
+
deprecated: false
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
# Execution — Execute Plans at Scale
|
|
7
10
|
|
|
11
|
+
## TL;DR
|
|
12
|
+
- **Use when** running an approved plan from cm-planning
|
|
13
|
+
- **Modes**: A=batch, B=subagent-per-task, C=parallel, D=RARV, E=TRIZ-parallel
|
|
14
|
+
- **Reads**: handoff/plan.json — **Writes**: handoff/exec.json
|
|
15
|
+
- **Always**: tests pass before reporting done
|
|
16
|
+
- **Next**: cm-code-review
|
|
17
|
+
|
|
8
18
|
> **Role: Lead Developer** — You execute implementation plans systematically with quality gates at every checkpoint.
|
|
9
19
|
|
|
10
20
|
> **Three modes, one skill.** Choose based on task structure.
|
|
11
21
|
|
|
22
|
+
## Persona Dispatch (Phase 2)
|
|
23
|
+
|
|
24
|
+
In Mode B (subagent-per-task) and Mode E (TRIZ-parallel), dispatch the right persona from `agents/` based on the task type:
|
|
25
|
+
|
|
26
|
+
| Task signal | Persona | File |
|
|
27
|
+
|-------------|---------|------|
|
|
28
|
+
| "design", "architecture", "trade-off" | architect | `agents/architect.md` |
|
|
29
|
+
| "implement", "fix", "refactor" | engineer | `agents/engineer.md` |
|
|
30
|
+
| "review", "audit", "verify" | reviewer | `agents/reviewer.md` |
|
|
31
|
+
| "secret", "auth", "input validation", "deploy" | security | `agents/security.md` |
|
|
32
|
+
| "scope", "intent", "user story" | pm | `agents/pm.md` |
|
|
33
|
+
|
|
34
|
+
When dispatching a subagent, pass `subagent_type: <persona>` (Claude Code agents) or load the persona file as the system prompt for the inner call.
|
|
35
|
+
|
|
12
36
|
## Step 0: Load Working Memory (MANDATORY)
|
|
13
37
|
|
|
14
38
|
Per `_shared/helpers.md#Load-Working-Memory`
|
|
@@ -55,6 +79,7 @@ Have a plan with independent tasks?
|
|
|
55
79
|
| **B: Subagent** | Plan with independent tasks, same session | Fresh subagent per task + 2-stage review |
|
|
56
80
|
| **C: Parallel** | 2+ independent problems | One agent per problem domain |
|
|
57
81
|
| **E: TRIZ-Parallel** ⚡ | 3+ independent tasks, need speed + quality | Dependency-aware parallel dispatch with per-agent quality gates |
|
|
82
|
+
| **F: Party** | One non-trivial task, want multi-perspective without subagent cost | Single agent rotates Architect → Engineer → Reviewer (→ Security), append-only `.cm/handoff/party.json` |
|
|
58
83
|
|
|
59
84
|
---
|
|
60
85
|
|
|
@@ -252,6 +277,69 @@ After EVERY phase, you MUST:
|
|
|
252
277
|
|
|
253
278
|
---
|
|
254
279
|
|
|
280
|
+
## Mode F: Party (Persona Rotation, single agent)
|
|
281
|
+
|
|
282
|
+
> **One agent, three voices.** Cheaper than Mode B, deeper than Mode A.
|
|
283
|
+
|
|
284
|
+
### When
|
|
285
|
+
- Task is non-trivial but small enough for one session
|
|
286
|
+
- You want multi-perspective scrutiny without paying for N subagents
|
|
287
|
+
- Quality matters more than raw speed
|
|
288
|
+
|
|
289
|
+
### Process
|
|
290
|
+
|
|
291
|
+
```
|
|
292
|
+
1. ARCHITECT → Load agents/architect.md as voice → propose design / approach
|
|
293
|
+
→ Append round to .cm/handoff/party.json
|
|
294
|
+
2. ENGINEER → Load agents/engineer.md as voice → implement against the design
|
|
295
|
+
→ Append round
|
|
296
|
+
3. REVIEWER → Load agents/reviewer.md as voice → critique implementation
|
|
297
|
+
→ verdict: "pass" | "revise" | "block"
|
|
298
|
+
→ Append round
|
|
299
|
+
4. (optional) SECURITY → Load agents/security.md when task touches auth/files/subprocess
|
|
300
|
+
→ Append round
|
|
301
|
+
5. SYNTHESIZE → Write `final` summary; mark handoff emitted_at
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
### Stop Conditions
|
|
305
|
+
- Reviewer verdict `pass` → done, write `final`
|
|
306
|
+
- Reviewer verdict `revise` → loop back to ENGINEER (max 2 revisions)
|
|
307
|
+
- Reviewer verdict `block` or 3rd revision → escalate to user, do not ship
|
|
308
|
+
|
|
309
|
+
### Output Contract
|
|
310
|
+
|
|
311
|
+
Writes to `.cm/handoff/party.json` matching `PartyHandoff` from `src/handoff/contracts.ts`:
|
|
312
|
+
|
|
313
|
+
```json
|
|
314
|
+
{
|
|
315
|
+
"schema": "party@1",
|
|
316
|
+
"emitted_at": "<ISO>",
|
|
317
|
+
"emitted_by": "cm-execution",
|
|
318
|
+
"data": {
|
|
319
|
+
"topic": "<task title>",
|
|
320
|
+
"rounds": [
|
|
321
|
+
{"persona":"architect","output":"...","ts":"<ISO>"},
|
|
322
|
+
{"persona":"engineer","output":"...","ts":"<ISO>"},
|
|
323
|
+
{"persona":"reviewer","output":"...","verdict":"pass","ts":"<ISO>"}
|
|
324
|
+
],
|
|
325
|
+
"final": "<one-paragraph synthesis>"
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
### Rules
|
|
331
|
+
- **Never skip the reviewer round** — that defeats the point of party mode
|
|
332
|
+
- **Never edit a previous round** — append-only, like a journal
|
|
333
|
+
- **One agent the whole way** — do NOT dispatch subagents inside party mode (use Mode B for that)
|
|
334
|
+
- **Persona files are the source of truth** — load them as system context, don't paraphrase
|
|
335
|
+
|
|
336
|
+
### Common Mistakes
|
|
337
|
+
- ❌ Running architect + engineer in same voice → missed trade-offs
|
|
338
|
+
- ❌ Skipping security persona on auth/file-touching tasks → see Security Rules below
|
|
339
|
+
- ❌ Letting reviewer revise > 2× → that's a planning problem, escalate
|
|
340
|
+
|
|
341
|
+
---
|
|
342
|
+
|
|
255
343
|
## Security Rules (Learned: March 2026)
|
|
256
344
|
|
|
257
345
|
> **Code that touches files, subprocesses, or the DOM MUST follow these rules. No exceptions.**
|
|
@@ -308,6 +396,16 @@ After EVERY phase, you MUST:
|
|
|
308
396
|
| `/cm-status` | Quick terminal progress summary |
|
|
309
397
|
| `/cm-dashboard` | Open browser dashboard |
|
|
310
398
|
|
|
399
|
+
## Karpathy Discipline — Surgical Changes
|
|
400
|
+
|
|
401
|
+
Every executor (single agent or subagent fleet) must follow:
|
|
402
|
+
- **Touch only what the task requires.** No "while I'm here" formatting, renames, or refactors.
|
|
403
|
+
- **Match existing style** even if you'd write it differently. Consistency > taste.
|
|
404
|
+
- **Notice unrelated dead code? Mention it, don't delete.** Out-of-scope cleanup → spawn a separate task.
|
|
405
|
+
- **Clean only your own orphans.** If your edit makes an import/var unused, remove it. Pre-existing dead code stays unless explicitly asked.
|
|
406
|
+
|
|
407
|
+
**Diff test:** Every changed line should trace to the task. If a reviewer asks "why this line?", you must point at the task — not "felt cleaner".
|
|
408
|
+
|
|
311
409
|
## The Bottom Line
|
|
312
410
|
|
|
313
411
|
**Choose your mode. Execute systematically. Review at every checkpoint.**
|
|
@@ -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,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.
|