codymaster 4.1.4 → 4.3.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 +22 -2
- package/README.md +54 -84
- package/dist/index.js +118 -4
- package/install.sh +2 -2
- package/package.json +3 -8
- package/skills/AGENTS.md +61 -0
- package/skills/CLAUDE.md +158 -0
- package/skills/boxme-git-config/SKILL.md +56 -0
- package/skills/boxme-local-dev/SKILL.md +66 -0
- package/skills/build.sh +30 -0
- package/skills/cf +314 -0
- package/skills/cf 2 +313 -0
- package/skills/cm-ads-tracker/SKILL.md +364 -69
- package/skills/cm-auto-publisher/SKILL.md +81 -0
- package/skills/cm-booking-calendar/SKILL.md +521 -0
- package/skills/cm-booking-calendar/references/industry-patterns.md +527 -0
- package/skills/cm-booking-calendar/templates/booking-form.css +626 -0
- package/skills/cm-booking-calendar/templates/booking-form.html +477 -0
- package/skills/cm-booking-calendar/templates/calendar-engine.js +419 -0
- package/skills/cm-booking-calendar/templates/calendar-export.js +395 -0
- package/skills/cm-booking-calendar/templates/reminder-config.js +629 -0
- package/skills/cm-brainstorm-idea/SKILL.md +15 -24
- package/skills/cm-clean-code/SKILL.md +300 -0
- package/skills/cm-code-review/SKILL.md +0 -27
- package/skills/cm-codeintell/SKILL.md +598 -0
- package/skills/cm-content-factory/.content-factory-state.json +132 -0
- package/skills/cm-content-factory/.git 2/logs/refs/heads/main +1 -0
- package/skills/cm-content-factory/.git 2/logs/refs/remotes/origin/main +1 -0
- 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 +5 -0
- 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 +1 -0
- package/skills/cm-content-factory/.git 2/refs/remotes/origin/main +1 -0
- package/skills/cm-content-factory/.pytest_cache 2/v/cache/nodeids +76 -0
- package/skills/cm-content-factory/.pytest_cache 2/v/cache/stepwise +1 -0
- package/skills/cm-content-factory/AGENTS.md +61 -0
- package/skills/cm-content-factory/CLAUDE.md +63 -0
- package/skills/cm-content-factory/CURSOR.md +43 -0
- package/skills/cm-content-factory/Content Factory.zip +0 -0
- package/skills/cm-content-factory/cf +313 -0
- package/skills/cm-content-factory/config.schema.json +397 -0
- package/skills/cm-content-factory/dashboard/app.js +556 -0
- package/skills/cm-content-factory/dashboard/index.html +397 -0
- package/skills/cm-content-factory/dashboard/style.css +1211 -0
- package/skills/cm-content-factory/examples/01-real-estate.config.json +146 -0
- package/skills/cm-content-factory/examples/02-personal-finance.config.json +146 -0
- package/skills/cm-content-factory/examples/03-health-wellness.config.json +147 -0
- package/skills/cm-content-factory/examples/04-saas-software.config.json +147 -0
- package/skills/cm-content-factory/examples/05-legal-services.config.json +147 -0
- package/skills/cm-content-factory/examples/06-insurance.config.json +146 -0
- package/skills/cm-content-factory/examples/07-ecommerce-dropship.config.json +146 -0
- package/skills/cm-content-factory/examples/08-online-education.config.json +147 -0
- package/skills/cm-content-factory/examples/09-crypto-defi.config.json +147 -0
- package/skills/cm-content-factory/examples/10-beauty-skincare.config.json +147 -0
- package/skills/cm-content-factory/examples/11-home-services.config.json +146 -0
- package/skills/cm-content-factory/examples/12-dental-clinic.config.json +147 -0
- package/skills/cm-content-factory/examples/13-pet-care.config.json +147 -0
- package/skills/cm-content-factory/examples/14-travel-hospitality.config.json +147 -0
- package/skills/cm-content-factory/examples/15-ai-automation.config.json +147 -0
- package/skills/cm-content-factory/examples/16-wedding-events.config.json +147 -0
- package/skills/cm-content-factory/examples/17-fitness-coaching.config.json +148 -0
- package/skills/cm-content-factory/examples/18-cybersecurity.config.json +147 -0
- package/skills/cm-content-factory/examples/19-food-restaurant.config.json +148 -0
- package/skills/cm-content-factory/examples/20-solar-energy.config.json +147 -0
- package/skills/cm-content-factory/examples/fitness-blog.config.json +116 -0
- package/skills/cm-content-factory/examples/tech-blog.config.json +107 -0
- package/skills/cm-content-factory/extensions/EXTENSION_GUIDE.md +72 -0
- package/skills/cm-content-factory/extensions/hooks.py +126 -0
- package/skills/cm-content-factory/extensions/openclaw_adapter.py +132 -0
- package/skills/cm-content-factory/landing/index.html +680 -0
- package/skills/cm-content-factory/landing/script.js +101 -0
- package/skills/cm-content-factory/landing/style.css +1216 -0
- package/skills/cm-content-factory/landing/translations.js +508 -0
- package/skills/cm-content-factory/logs/events.jsonl +11 -0
- package/skills/cm-content-factory/profiles/_template.profile.json +231 -0
- package/skills/cm-content-factory/profiles/finance.profile.json +278 -0
- package/skills/cm-content-factory/profiles/legal.profile.json +263 -0
- package/skills/cm-content-factory/profiles/medical-research.profile.json +321 -0
- package/skills/cm-content-factory/profiles/technology.profile.json +275 -0
- package/skills/cm-content-factory/scripts/agent_dispatcher.py +266 -0
- package/skills/cm-content-factory/scripts/audit.py +106 -0
- package/skills/cm-content-factory/scripts/dashboard_server.py +225 -0
- package/skills/cm-content-factory/scripts/deploy.py +146 -0
- package/skills/cm-content-factory/scripts/extract.py +132 -0
- package/skills/cm-content-factory/scripts/landing_generator.py +459 -0
- package/skills/cm-content-factory/scripts/memory.py +521 -0
- package/skills/cm-content-factory/scripts/monetize.py +239 -0
- package/skills/cm-content-factory/scripts/pipeline.py +357 -0
- package/skills/cm-content-factory/scripts/plan.py +163 -0
- package/skills/cm-content-factory/scripts/publish.py +145 -0
- package/skills/cm-content-factory/scripts/research.py +337 -0
- package/skills/cm-content-factory/scripts/scaffold.py +464 -0
- package/skills/cm-content-factory/scripts/scoreboard.py +336 -0
- package/skills/cm-content-factory/scripts/seo.py +90 -0
- package/skills/cm-content-factory/scripts/state_manager.py +320 -0
- package/skills/cm-content-factory/scripts/token_manager.py +268 -0
- package/skills/cm-content-factory/scripts/validate.py +221 -0
- package/skills/cm-content-factory/scripts/wizard.py +329 -0
- package/skills/cm-content-factory/scripts/write.py +93 -0
- 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 +90 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/data-flow.md +54 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/deployment.md +38 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/index.md +65 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/lc-content-lifecycle.md +48 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/seq-write-mode.md +39 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/uj-first-batch.md +42 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/wf-content-pipeline.md +51 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/wf-learning-cycle.md +52 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/configuration.md +86 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/installation.md +80 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/intro.md +58 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/index.md +102 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/index.md +45 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/optimize-seo.md +29 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/scale-content-production.md +55 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/standardize-quality.md +29 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/buyer-cmo-huong.md +41 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/buyer-content-lead-khoa.md +40 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/index.md +56 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-content-manager-lan.md +46 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-seo-minh.md +45 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-writer-tu.md +45 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/content-pipeline.md +108 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/index.md +22 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/memory-system.md +52 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/seo-optimization.md +58 -0
- package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/troubleshooting-guide.md +92 -0
- package/skills/cm-content-factory/sites/docs-site/src/styles/custom.css +575 -0
- package/skills/cm-content-factory/tests/conftest.py +66 -0
- package/skills/cm-content-factory/tests/test_agent_dispatcher.py +125 -0
- package/skills/cm-content-factory/tests/test_memory.py +128 -0
- package/skills/cm-content-factory/tests/test_pipeline.py +107 -0
- package/skills/cm-content-factory/tests/test_research.py +56 -0
- package/skills/cm-content-factory/tests/test_state_manager.py +131 -0
- package/skills/cm-content-factory/tests/test_token_manager.py +110 -0
- package/skills/cm-content-factory/tests/test_wizard.py +121 -0
- package/skills/cm-continuity/SKILL.md +7 -0
- package/skills/cm-cro-methodology/SKILL.md +290 -0
- package/skills/cm-dashboard/SKILL.md +7 -525
- package/skills/cm-debugging/SKILL.md +7 -116
- package/skills/cm-deep-search/SKILL.md +5 -1
- package/skills/cm-dockit/README.md +6 -15
- package/skills/cm-dockit/SKILL.md +20 -37
- package/skills/cm-execution/SKILL.md +6 -1
- package/skills/cm-frappe-agent/SKILL.md +134 -0
- package/skills/cm-frappe-agent/agents/doctype-architect.md +596 -0
- package/skills/cm-frappe-agent/agents/erpnext-customizer.md +643 -0
- package/skills/cm-frappe-agent/agents/frappe-backend.md +814 -0
- package/skills/cm-frappe-agent/agents/frappe-custom-frontend.md +557 -0
- package/skills/cm-frappe-agent/agents/frappe-debugger.md +625 -0
- package/skills/cm-frappe-agent/agents/frappe-fixer.md +275 -0
- package/skills/cm-frappe-agent/agents/frappe-frontend.md +660 -0
- package/skills/cm-frappe-agent/agents/frappe-installer.md +158 -0
- package/skills/cm-frappe-agent/agents/frappe-performance.md +307 -0
- package/skills/cm-frappe-agent/agents/frappe-planner.md +419 -0
- package/skills/cm-frappe-agent/agents/frappe-remote-ops.md +153 -0
- package/skills/cm-frappe-agent/agents/github-workflow.md +286 -0
- package/skills/cm-frappe-agent/commands/frappe-app.md +351 -0
- package/skills/cm-frappe-agent/commands/frappe-backend.md +162 -0
- package/skills/cm-frappe-agent/commands/frappe-bench.md +254 -0
- package/skills/cm-frappe-agent/commands/frappe-debug.md +263 -0
- package/skills/cm-frappe-agent/commands/frappe-doctype-create.md +272 -0
- package/skills/cm-frappe-agent/commands/frappe-doctype-field.md +310 -0
- package/skills/cm-frappe-agent/commands/frappe-erpnext.md +210 -0
- package/skills/cm-frappe-agent/commands/frappe-fix.md +59 -0
- package/skills/cm-frappe-agent/commands/frappe-frontend.md +210 -0
- package/skills/cm-frappe-agent/commands/frappe-fullstack.md +243 -0
- package/skills/cm-frappe-agent/commands/frappe-github.md +57 -0
- package/skills/cm-frappe-agent/commands/frappe-install.md +52 -0
- package/skills/cm-frappe-agent/commands/frappe-plan.md +442 -0
- package/skills/cm-frappe-agent/commands/frappe-remote.md +58 -0
- package/skills/cm-frappe-agent/commands/frappe-test.md +356 -0
- package/skills/cm-frappe-agent/docs/README.md +51 -0
- package/skills/cm-frappe-agent/docs/agents-catalog.md +113 -0
- package/skills/cm-frappe-agent/docs/architecture.md +149 -0
- package/skills/cm-frappe-agent/docs/commands-catalog.md +82 -0
- package/skills/cm-frappe-agent/docs/resources-catalog.md +66 -0
- package/skills/cm-frappe-agent/docs/sitemap-urls.txt +52 -0
- package/skills/cm-frappe-agent/docs/sitemap.md +81 -0
- package/skills/cm-frappe-agent/docs/sop/user-guide.md +178 -0
- package/skills/cm-frappe-agent/docs/sop/vibe-coding-guide.md +122 -0
- package/skills/cm-frappe-agent/resources/7-layer-architecture.md +985 -0
- package/skills/cm-frappe-agent/resources/bench_commands.md +73 -0
- package/skills/cm-frappe-agent/resources/code-patterns-guide.md +948 -0
- package/skills/cm-frappe-agent/resources/common_pitfalls.md +266 -0
- package/skills/cm-frappe-agent/resources/doctype-registry.md +158 -0
- package/skills/cm-frappe-agent/resources/installation-guide.md +289 -0
- package/skills/cm-frappe-agent/resources/rest-api-patterns.md +182 -0
- package/skills/cm-frappe-agent/resources/scaffold_checklist.md +82 -0
- package/skills/cm-frappe-agent/resources/upgrade_patterns.md +113 -0
- package/skills/cm-frappe-agent/resources/web-form-patterns.md +252 -0
- package/skills/cm-frappe-agent/skills/bench-commands/SKILL.md +621 -0
- package/skills/cm-frappe-agent/skills/client-scripts/SKILL.md +642 -0
- package/skills/cm-frappe-agent/skills/doctype-patterns/SKILL.md +576 -0
- package/skills/cm-frappe-agent/skills/frappe-api/SKILL.md +740 -0
- package/skills/cm-frappe-agent/skills/remote-operations/SKILL.md +47 -0
- package/skills/cm-frappe-agent/skills/server-scripts/SKILL.md +608 -0
- package/skills/cm-frappe-agent/skills/web-forms/SKILL.md +46 -0
- package/skills/cm-git-worktrees/SKILL.md +0 -7
- package/skills/cm-google-form/SKILL.md +266 -0
- package/skills/cm-google-form/templates/apps-script.js +55 -0
- package/skills/cm-google-form/templates/form-markup.html +110 -0
- package/skills/cm-google-form/templates/form-submit.js +201 -0
- package/skills/cm-google-form/templates/toast.css +152 -0
- package/skills/cm-growth-hacking/SKILL.md +293 -0
- package/skills/cm-growth-hacking/bottom-sheet-engine.md +261 -0
- package/skills/cm-growth-hacking/calendar-integration.md +264 -0
- package/skills/cm-growth-hacking/references/engagement-patterns.md +346 -0
- package/skills/cm-growth-hacking/templates/bottom-sheet.css +528 -0
- package/skills/cm-growth-hacking/templates/bottom-sheet.js +269 -0
- package/skills/cm-growth-hacking/templates/calendar-cta.js +213 -0
- package/skills/cm-growth-hacking/templates/tracking-events.js +211 -0
- package/skills/cm-growth-hacking/templates/trigger-manager.js +254 -0
- package/skills/cm-growth-hacking/tracking-events.md +246 -0
- package/skills/cm-growth-hacking/trigger-system.md +342 -0
- package/skills/cm-how-it-work/SKILL.md +20 -4
- package/skills/cm-identity-guard/SKILL.md +0 -11
- package/skills/cm-jtbd/SKILL.md +1 -1
- package/skills/cm-notebooklm/SKILL.md +172 -0
- package/skills/cm-notebooklm/references/command_reference.md +94 -0
- package/skills/cm-notebooklm/references/workflows.md +60 -0
- package/skills/cm-notebooklm/resources/knowledge_sources.md +106 -0
- package/skills/cm-notebooklm/scripts/brain-sync.sh +453 -0
- package/skills/cm-notebooklm/scripts/graduate_wisdom.py +101 -0
- package/skills/cm-planning/SKILL.md +39 -52
- package/skills/cm-project-bootstrap/SKILL.md +1307 -99
- package/skills/cm-quality-gate/SKILL.md +13 -106
- package/skills/cm-reactor/SKILL.md +274 -0
- package/skills/cm-safe-deploy/SKILL.md +415 -52
- package/skills/cm-safe-i18n/SKILL.md +1 -22
- package/skills/cm-secret-shield/SKILL.md +2 -2
- package/skills/cm-security-gate/SKILL.md +114 -0
- package/skills/cm-skill-chain/SKILL.md +2 -2
- package/skills/cm-skill-index/SKILL.md +9 -6
- package/skills/cm-skill-mastery/SKILL.md +2 -15
- package/skills/cm-start/SKILL.md +9 -0
- package/skills/cm-tdd/SKILL.md +16 -49
- package/skills/cm-ui-preview/SKILL.md +35 -173
- package/skills/cm-ux-master/FEATURES-v4.md +305 -0
- package/skills/cm-ux-master/README-ru.md +135 -0
- package/skills/cm-ux-master/README-vi.md +135 -0
- package/skills/cm-ux-master/README-zh.md +135 -0
- package/skills/cm-ux-master/README.md +489 -0
- package/skills/cm-ux-master/SKILL.md +773 -62
- package/skills/cm-ux-master/cli/README.md +180 -0
- package/skills/cm-ux-master/cli/pyproject.toml +106 -0
- package/skills/cm-ux-master/cli/requirements.txt +21 -0
- package/skills/cm-ux-master/cli/templates/base/skill-core.md +262 -0
- package/skills/cm-ux-master/cli/templates/platforms/claude.yaml +21 -0
- package/skills/cm-ux-master/cli/templates/platforms/cursor.yaml +21 -0
- package/skills/cm-ux-master/cli/templates/platforms/figma.yaml +24 -0
- package/skills/cm-ux-master/cli/templates/platforms/vscode-mcp.yaml +28 -0
- package/skills/cm-ux-master/cli/templates/platforms/windsurf.yaml +21 -0
- package/skills/cm-ux-master/cli/uxmaster/__init__.py +10 -0
- package/skills/cm-ux-master/cli/uxmaster/__main__.py +19 -0
- package/skills/cm-ux-master/cli/uxmaster/cli.py +349 -0
- package/skills/cm-ux-master/cli/uxmaster/commands/__init__.py +8 -0
- package/skills/cm-ux-master/cli/uxmaster/commands/extract.py +18 -0
- package/skills/cm-ux-master/cli/uxmaster/commands/init.py +58 -0
- package/skills/cm-ux-master/cli/uxmaster/commands/mcp.py +194 -0
- package/skills/cm-ux-master/cli/uxmaster/commands/search.py +23 -0
- package/skills/cm-ux-master/cli/uxmaster/commands/validate.py +270 -0
- package/skills/cm-ux-master/cli/uxmaster/search_engine.py +532 -0
- package/skills/cm-ux-master/cli/uxmaster/template_engine.py +458 -0
- package/skills/cm-ux-master/cli/uxmaster/utils/__init__.py +9 -0
- package/skills/cm-ux-master/cli/uxmaster/utils/console.py +42 -0
- package/skills/cm-ux-master/cli/uxmaster/utils/detect.py +83 -0
- package/skills/cm-ux-master/data/accessibility-advanced.csv +26 -0
- package/skills/cm-ux-master/data/animation.csv +31 -0
- package/skills/cm-ux-master/data/charts.csv +26 -0
- package/skills/cm-ux-master/data/colors.csv +97 -0
- package/skills/cm-ux-master/data/design-tests.csv +37 -0
- package/skills/cm-ux-master/data/devices.csv +21 -0
- package/skills/cm-ux-master/data/icons.csv +101 -0
- package/skills/cm-ux-master/data/landing.csv +31 -0
- package/skills/cm-ux-master/data/products.csv +97 -0
- package/skills/cm-ux-master/data/react-performance.csv +45 -0
- package/skills/cm-ux-master/data/responsive.csv +26 -0
- package/skills/cm-ux-master/data/semi-tokens.csv +52 -0
- package/skills/cm-ux-master/data/stacks/angular.csv +34 -0
- package/skills/cm-ux-master/data/stacks/astro.csv +54 -0
- package/skills/cm-ux-master/data/stacks/electron.csv +32 -0
- package/skills/cm-ux-master/data/stacks/flutter.csv +53 -0
- package/skills/cm-ux-master/data/stacks/html-tailwind.csv +56 -0
- package/skills/cm-ux-master/data/stacks/htmx.csv +28 -0
- package/skills/cm-ux-master/data/stacks/jetpack-compose.csv +53 -0
- package/skills/cm-ux-master/data/stacks/nextjs.csv +53 -0
- package/skills/cm-ux-master/data/stacks/nuxt-ui.csv +51 -0
- package/skills/cm-ux-master/data/stacks/nuxtjs.csv +59 -0
- package/skills/cm-ux-master/data/stacks/react-native.csv +52 -0
- package/skills/cm-ux-master/data/stacks/react.csv +54 -0
- package/skills/cm-ux-master/data/stacks/shadcn.csv +61 -0
- package/skills/cm-ux-master/data/stacks/svelte.csv +54 -0
- package/skills/cm-ux-master/data/stacks/swiftui.csv +51 -0
- package/skills/cm-ux-master/data/stacks/tauri.csv +29 -0
- package/skills/cm-ux-master/data/stacks/vue.csv +50 -0
- package/skills/cm-ux-master/data/styles.csv +68 -0
- package/skills/cm-ux-master/data/typography.csv +58 -0
- package/skills/cm-ux-master/data/ui-reasoning.csv +101 -0
- package/skills/cm-ux-master/data/ux-guidelines.csv +100 -0
- package/skills/cm-ux-master/data/ux-laws.csv +49 -0
- package/skills/cm-ux-master/data/web-interface.csv +31 -0
- package/skills/cm-ux-master/docs/LANDING-PAGE.html +377 -0
- package/skills/cm-ux-master/docs/README.md +108 -0
- package/skills/cm-ux-master/docs/css/styles.css +573 -0
- package/skills/cm-ux-master/docs/examples/demo-script.md +319 -0
- package/skills/cm-ux-master/docs/guides/for-designers.md +692 -0
- package/skills/cm-ux-master/docs/guides/for-developers.md +778 -0
- package/skills/cm-ux-master/docs/guides/for-product-managers.md +693 -0
- package/skills/cm-ux-master/docs/guides/react-guide-vi.md +50 -0
- package/skills/cm-ux-master/docs/index.html +1062 -0
- package/skills/cm-ux-master/docs/js/i18n.js +84 -0
- package/skills/cm-ux-master/docs/js/lang/de.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/en.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/fr.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/hi.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/id.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/ja.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/ko.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/ru.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/vi.js +145 -0
- package/skills/cm-ux-master/docs/js/lang/zh.js +145 -0
- package/skills/cm-ux-master/docs/js/main.js +117 -0
- package/skills/cm-ux-master/docs/plan/PHASE1-COMPLETION.md +217 -0
- package/skills/cm-ux-master/docs/plan/PHASE2-COMPLETION.md +199 -0
- package/skills/cm-ux-master/docs/plan/PHASE2-ENHANCED-COMPLETION.md +352 -0
- package/skills/cm-ux-master/docs/plan/PHASE3-VALIDATION-COMPLETION.md +499 -0
- package/skills/cm-ux-master/docs/plan/PHASE4-TESTING-POLISH-COMPLETION.md +483 -0
- package/skills/cm-ux-master/docs/plan/UXM-2.0-ROADMAP.md +681 -0
- package/skills/cm-ux-master/docs/plan/WOW-PITCH.md +410 -0
- package/skills/cm-ux-master/docs/technical/api-reference.md +824 -0
- package/skills/cm-ux-master/docs/technical/harvester-v4.md +328 -0
- package/skills/cm-ux-master/docs/technical/how-it-works.md +1128 -0
- package/skills/cm-ux-master/docs/tutorials/quickstart.md +339 -0
- package/skills/cm-ux-master/docs/tutorials/tutorials.md +939 -0
- package/skills/cm-ux-master/docs/tutorials/user-guide.md +716 -0
- package/skills/cm-ux-master/examples/README.md +63 -0
- package/skills/cm-ux-master/mcp/__init__.py +3 -0
- package/skills/cm-ux-master/mcp/integrations/__init__.py +11 -0
- package/skills/cm-ux-master/mcp/integrations/figma/__init__.py +6 -0
- package/skills/cm-ux-master/mcp/integrations/figma/client.py +293 -0
- package/skills/cm-ux-master/mcp/integrations/figma/plugin/code.js +561 -0
- package/skills/cm-ux-master/mcp/integrations/figma/plugin/ui.html +334 -0
- package/skills/cm-ux-master/mcp/integrations/stitch/__init__.py +5 -0
- package/skills/cm-ux-master/mcp/integrations/stitch/client.py +410 -0
- package/skills/cm-ux-master/mcp/integrations/vscode/package.json +167 -0
- package/skills/cm-ux-master/mcp/integrations/vscode/src/extension.ts +81 -0
- package/skills/cm-ux-master/mcp/mcp-config.json +274 -0
- package/skills/cm-ux-master/mcp/server.py +771 -0
- package/skills/cm-ux-master/mcp/tools/__init__.py +13 -0
- package/skills/cm-ux-master/mcp-server/server.py +595 -0
- package/skills/cm-ux-master/output/fila/FilaDashboard.tsx +47 -0
- package/skills/cm-ux-master/output/fila/components/badge/component.tsx +35 -0
- package/skills/cm-ux-master/output/fila/components/badge/index.ts +1 -0
- package/skills/cm-ux-master/output/fila/components/button/component.tsx +53 -0
- package/skills/cm-ux-master/output/fila/components/button/index.ts +1 -0
- package/skills/cm-ux-master/output/fila/components/card/component.tsx +35 -0
- package/skills/cm-ux-master/output/fila/components/card/index.ts +1 -0
- package/skills/cm-ux-master/output/fila/components/input/component.tsx +41 -0
- package/skills/cm-ux-master/output/fila/components/input/index.ts +1 -0
- package/skills/cm-ux-master/output/fila/design-system.css +151 -0
- package/skills/cm-ux-master/output/fila/design-system.html +1596 -0
- package/skills/cm-ux-master/output/fila/design-system.json +168 -0
- package/skills/cm-ux-master/output/fila/figma-tokens.json +523 -0
- package/skills/cm-ux-master/output/fila/harvest-v4-raw.json +406 -0
- package/skills/cm-ux-master/output/fila/semi-theme-override.css +95 -0
- package/skills/cm-ux-master/output/haravan/HaravanDashboard.tsx +103 -0
- package/skills/cm-ux-master/output/haravan/design-system-v3-live.html +2716 -0
- package/skills/cm-ux-master/output/haravan/design-system-v3.html +1770 -0
- package/skills/cm-ux-master/output/haravan/design-system.html +914 -0
- package/skills/cm-ux-master/output/haravan/figma-tokens.json +84 -0
- package/skills/cm-ux-master/output/haravan/haravan-harvest.json +33 -0
- package/skills/cm-ux-master/output/haravan/harvest-v3-raw.json +167 -0
- package/skills/cm-ux-master/output/haravan/semi-theme-override.css +39 -0
- package/skills/cm-ux-master/references/audit-template.md +257 -0
- package/skills/cm-ux-master/references/cultural-ux.md +346 -0
- package/skills/cm-ux-master/references/dark-patterns.md +362 -0
- package/skills/cm-ux-master/references/heuristic-conflicts.md +296 -0
- package/skills/cm-ux-master/references/krug-principles.md +289 -0
- package/skills/cm-ux-master/references/nielsen-heuristics.md +360 -0
- package/skills/cm-ux-master/references/wcag-checklist.md +306 -0
- package/skills/cm-ux-master/scripts/component_generator.py +631 -0
- package/skills/cm-ux-master/scripts/core.py +305 -0
- package/skills/cm-ux-master/scripts/demo_validation.py +452 -0
- package/skills/cm-ux-master/scripts/design_doc_generator.py +1325 -0
- package/skills/cm-ux-master/scripts/design_system.py +1141 -0
- package/skills/cm-ux-master/scripts/design_system_indexer.py +889 -0
- package/skills/cm-ux-master/scripts/extract_i18n.py +251 -0
- package/skills/cm-ux-master/scripts/extractor.py +1437 -0
- package/skills/cm-ux-master/scripts/figma_bridge.py +406 -0
- package/skills/cm-ux-master/scripts/generate.py +147 -0
- package/skills/cm-ux-master/scripts/harvest_session.py +207 -0
- package/skills/cm-ux-master/scripts/harvester.js +240 -0
- package/skills/cm-ux-master/scripts/harvester_browser.py +717 -0
- package/skills/cm-ux-master/scripts/harvester_cli.py +431 -0
- package/skills/cm-ux-master/scripts/harvester_v1.js +275 -0
- package/skills/cm-ux-master/scripts/harvester_v3.js +620 -0
- package/skills/cm-ux-master/scripts/harvester_v4.js +1003 -0
- package/skills/cm-ux-master/scripts/install.py +528 -0
- package/skills/cm-ux-master/scripts/license.py +81 -0
- package/skills/cm-ux-master/scripts/media/qrpayment.png +0 -0
- package/skills/cm-ux-master/scripts/pro_stubs.py +120 -0
- package/skills/cm-ux-master/scripts/project_registry.py +217 -0
- package/skills/cm-ux-master/scripts/search.py +114 -0
- package/skills/cm-ux-master/scripts/semi_mcp_bridge.py +425 -0
- package/skills/cm-ux-master/scripts/stitch_integration.py +583 -0
- package/skills/cm-ux-master/scripts/test_harvester_v4.py +335 -0
- package/skills/cm-ux-master/scripts/token_mapper.py +626 -0
- package/skills/cm-ux-master/scripts/validation_engine.py +1571 -0
- package/skills/cm-ux-master/scripts/wizard.py +653 -0
- package/skills/cm-ux-master/setup.py +93 -0
- package/skills/cm-ux-master/templates/base/flutter-widget.dart +69 -0
- package/skills/cm-ux-master/templates/base/html-page.html +152 -0
- package/skills/cm-ux-master/templates/base/react-component.tsx +47 -0
- package/skills/cm-ux-master/templates/base/swiftui-view.swift +62 -0
- package/skills/cm-ux-master/templates/quick-start.sh +176 -0
- package/skills/cm-ux-master/tests/automation/batch-validate.sh +250 -0
- package/skills/cm-ux-master/tests/automation/generate-test-projects.sh +561 -0
- package/skills/cm-ux-master/tests/automation/run-all-tests.sh +315 -0
- package/skills/cm-ux-master/tests/test_design_doc.py +145 -0
- package/skills/cm-ux-master/tests/test_devices.py +74 -0
- package/skills/cm-ux-master/tests/test_generator.py +116 -0
- package/skills/cm-ux-master/tests/test_harvest_session.py +131 -0
- package/skills/cm-ux-master/tests/test_harvester.py +127 -0
- package/skills/cm-ux-master/tests/test_harvester_v3.py +324 -0
- package/skills/cm-ux-master/tests/test_mcp_server.py +496 -0
- package/skills/cm-ux-master/tests/test_new_domains.py +108 -0
- package/skills/cm-ux-master/tests/test_new_stacks.py +103 -0
- package/skills/cm-ux-master/tests/test_project_registry.py +146 -0
- package/skills/cm-ux-master/tests/test_semi_mcp_bridge.py +207 -0
- package/skills/cm-ux-master/tests/test_token_mapper.py +247 -0
- package/skills/cm-ux-master/tests/test_validation_engine.py +617 -0
- package/skills/config.schema.json +397 -0
- package/skills/frappe-app-builder.zip +0 -0
- package/skills/jobs-to-be-done/SKILL.md +266 -0
- package/skills/jobs-to-be-done/references/case-studies.md +154 -0
- package/skills/jobs-to-be-done/references/competitive-strategy.md +280 -0
- package/skills/jobs-to-be-done/references/diagnostics.md +158 -0
- package/skills/jobs-to-be-done/references/innovation-process.md +392 -0
- package/skills/jobs-to-be-done/references/organizational-change.md +328 -0
- package/skills/marketplace-report-crawler/SKILL.md +176 -0
- package/skills/marketplace-report-crawler/config/accounts.json +41 -0
- package/skills/marketplace-report-crawler/config/report-types.json +422 -0
- package/skills/marketplace-report-crawler/config/sessions.json +3 -0
- package/skills/marketplace-report-crawler/scripts/ab-wrapper.sh +102 -0
- package/skills/marketplace-report-crawler/scripts/browser-actions/lazada/lazada-actions.js +114 -0
- package/skills/marketplace-report-crawler/scripts/browser-actions/shopee/shopee-actions.js +94 -0
- package/skills/marketplace-report-crawler/scripts/browser-actions/tiktok/tiktok-actions.js +272 -0
- package/skills/marketplace-report-crawler/scripts/crawl-runner.js +281 -0
- package/skills/marketplace-report-crawler/scripts/session-check.sh +72 -0
- package/skills/marketplace-report-crawler/scripts/session-manager.sh +349 -0
- package/skills/marketplace-report-crawler/scripts/setup-folders.sh +83 -0
- package/skills/medical-research/SKILL.md +194 -0
- package/skills/medical-research/scripts/evidence_checker.py +288 -0
- package/skills/mom-test/SKILL.md +267 -0
- package/skills/mom-test/references/avoiding-bad-data.md +221 -0
- package/skills/mom-test/references/case-studies.md +306 -0
- package/skills/mom-test/references/commitment-advancement.md +219 -0
- package/skills/mom-test/references/finding-conversations.md +251 -0
- package/skills/mom-test/references/processing-learning.md +256 -0
- package/skills/mom-test/references/question-patterns.md +198 -0
- package/skills/pandasai-analytics/SKILL.md +251 -0
- package/skills/release-it/SKILL.md +235 -0
- package/skills/release-it/references/anti-patterns.md +279 -0
- package/skills/release-it/references/capacity-planning.md +285 -0
- package/skills/release-it/references/chaos-engineering.md +325 -0
- package/skills/release-it/references/deployment-strategies.md +331 -0
- package/skills/release-it/references/observability.md +301 -0
- package/skills/release-it/references/stability-patterns.md +355 -0
- package/skills/scripts/sync-ide-skills.sh +61 -0
- package/skills/skill-creator-ultra/.agents/workflows/skill-audit.md +37 -0
- package/skills/skill-creator-ultra/.agents/workflows/skill-compare.md +34 -0
- package/skills/skill-creator-ultra/.agents/workflows/skill-export.md +51 -0
- package/skills/skill-creator-ultra/.agents/workflows/skill-generate.md +39 -0
- package/skills/skill-creator-ultra/.agents/workflows/skill-scaffold.md +52 -0
- package/skills/skill-creator-ultra/.agents/workflows/skill-simulate.md +25 -0
- package/skills/skill-creator-ultra/.agents/workflows/skill-stats.md +31 -0
- package/skills/skill-creator-ultra/.agents/workflows/skill-validate.md +25 -0
- package/skills/skill-creator-ultra/README.md +1242 -0
- package/skills/skill-creator-ultra/SKILL.md +388 -0
- package/skills/skill-creator-ultra/agents/analyzer.md +274 -0
- package/skills/skill-creator-ultra/agents/comparator.md +202 -0
- package/skills/skill-creator-ultra/agents/grader.md +223 -0
- package/skills/skill-creator-ultra/assets/eval_review.html +146 -0
- package/skills/skill-creator-ultra/eval-viewer/generate_review.py +471 -0
- package/skills/skill-creator-ultra/eval-viewer/viewer.html +1325 -0
- package/skills/skill-creator-ultra/examples/example_anthropic_frontend.md +109 -0
- package/skills/skill-creator-ultra/examples/example_anthropic_pdf.md +116 -0
- package/skills/skill-creator-ultra/examples/example_api_docs.md +189 -0
- package/skills/skill-creator-ultra/examples/example_db_migration.md +253 -0
- package/skills/skill-creator-ultra/examples/example_git_commit.md +111 -0
- package/skills/skill-creator-ultra/install.ps1 +289 -0
- package/skills/skill-creator-ultra/install.sh +313 -0
- package/skills/skill-creator-ultra/phases/phase1_interview.md +202 -0
- package/skills/skill-creator-ultra/phases/phase2_extract.md +55 -0
- package/skills/skill-creator-ultra/phases/phase3_detect.md +57 -0
- package/skills/skill-creator-ultra/phases/phase4_generate.md +543 -0
- package/skills/skill-creator-ultra/phases/phase5_test.md +319 -0
- package/skills/skill-creator-ultra/phases/phase6_eval.md +301 -0
- package/skills/skill-creator-ultra/phases/phase7_iterate.md +103 -0
- package/skills/skill-creator-ultra/phases/phase8_optimize.md +113 -0
- package/skills/skill-creator-ultra/resources/advanced_patterns.md +499 -0
- package/skills/skill-creator-ultra/resources/anti_patterns.md +376 -0
- package/skills/skill-creator-ultra/resources/blueprints.md +498 -0
- package/skills/skill-creator-ultra/resources/checklist.md +243 -0
- package/skills/skill-creator-ultra/resources/composition_cookbook.md +291 -0
- package/skills/skill-creator-ultra/resources/description_optimization.md +90 -0
- package/skills/skill-creator-ultra/resources/eval_guide.md +133 -0
- package/skills/skill-creator-ultra/resources/industry_questions.md +189 -0
- package/skills/skill-creator-ultra/resources/interview_questions.md +200 -0
- package/skills/skill-creator-ultra/resources/pattern_detection.md +200 -0
- package/skills/skill-creator-ultra/resources/prompt_engineering.md +531 -0
- package/skills/skill-creator-ultra/resources/schemas.md +430 -0
- package/skills/skill-creator-ultra/resources/script_integration.md +593 -0
- package/skills/skill-creator-ultra/resources/scripts_guide.md +339 -0
- package/skills/skill-creator-ultra/resources/skill_template.md +124 -0
- package/skills/skill-creator-ultra/resources/skill_writing_guide.md +634 -0
- package/skills/skill-creator-ultra/resources/versioning_guide.md +193 -0
- package/skills/skill-creator-ultra/scripts/ci_eval.py +200 -0
- package/skills/skill-creator-ultra/scripts/package_skill.py +165 -0
- package/skills/skill-creator-ultra/scripts/simulate_skill.py +398 -0
- package/skills/skill-creator-ultra/scripts/skill_audit.py +611 -0
- package/skills/skill-creator-ultra/scripts/skill_compare.py +265 -0
- package/skills/skill-creator-ultra/scripts/skill_export.py +334 -0
- package/skills/skill-creator-ultra/scripts/skill_scaffold.py +403 -0
- package/skills/skill-creator-ultra/scripts/skill_stats.py +339 -0
- package/skills/skill-creator-ultra/scripts/validate_skill.py +411 -0
- package/skills/tailwind-mastery/SKILL.md +229 -0
- package/skills/vercel-react-best-practices/AGENTS.md +3373 -0
- package/skills/vercel-react-best-practices/README.md +123 -0
- package/skills/vercel-react-best-practices/SKILL.md +143 -0
- package/skills/vercel-react-best-practices/rules/_sections.md +46 -0
- package/skills/vercel-react-best-practices/rules/_template.md +28 -0
- package/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
- package/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
- package/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
- package/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
- package/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
- package/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
- package/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
- package/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
- package/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
- package/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
- package/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
- package/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
- package/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
- package/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
- package/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
- package/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
- package/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
- package/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
- package/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
- package/skills/vercel-react-best-practices/rules/js-flatmap-filter.md +60 -0
- package/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
- package/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
- package/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
- package/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
- package/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
- package/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
- package/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
- package/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
- package/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
- package/skills/vercel-react-best-practices/rules/rendering-resource-hints.md +85 -0
- package/skills/vercel-react-best-practices/rules/rendering-script-defer-async.md +68 -0
- package/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
- package/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
- package/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
- package/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
- package/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
- package/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
- package/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
- package/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
- package/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
- package/skills/vercel-react-best-practices/rules/rerender-no-inline-components.md +82 -0
- package/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
- package/skills/vercel-react-best-practices/rules/rerender-split-combined-hooks.md +64 -0
- package/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
- package/skills/vercel-react-best-practices/rules/rerender-use-deferred-value.md +59 -0
- package/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
- package/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
- package/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
- package/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
- package/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
- package/skills/vercel-react-best-practices/rules/server-hoist-static-io.md +142 -0
- package/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
- package/skills/web-design-guidelines/SKILL.md +39 -0
- package/skills/cro-methodology/SKILL.md +0 -98
- /package/skills/{cro-methodology → cm-cro-methodology}/references/COPYWRITING.md +0 -0
- /package/skills/{cro-methodology → cm-cro-methodology}/references/OBJECTIONS.md +0 -0
- /package/skills/{cro-methodology → cm-cro-methodology}/references/PERSUASION.md +0 -0
- /package/skills/{cro-methodology → cm-cro-methodology}/references/RESEARCH.md +0 -0
- /package/skills/{cro-methodology → cm-cro-methodology}/references/funnel-analysis.md +0 -0
- /package/skills/{cro-methodology → cm-cro-methodology}/references/testing-methodology.md +0 -0
|
@@ -0,0 +1,531 @@
|
|
|
1
|
+
# 🧠 Prompt Engineering cho Skill — Kỹ Thuật Viết Instructions Chuẩn Xác
|
|
2
|
+
|
|
3
|
+
> "AI chỉ thông minh bằng hướng dẫn bạn viết cho nó."
|
|
4
|
+
|
|
5
|
+
Tài liệu này dạy các kỹ thuật viết Instructions trong SKILL.md sao cho AI
|
|
6
|
+
thực hiện CHÍNH XÁC nhất, ít hallucination nhất.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Nguyên tắc #1: Specificity Ladder (Thang Cụ Thể)
|
|
11
|
+
|
|
12
|
+
Càng cụ thể → AI càng chính xác. Luôn leo thang từ mơ hồ → cụ thể.
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
Level 1 (Mơ hồ): "Xử lý dữ liệu"
|
|
16
|
+
Level 2 (Khá hơn): "Đọc file CSV và chuyển thành JSON"
|
|
17
|
+
Level 3 (Tốt): "Đọc file CSV (encoding UTF-8, separator comma),
|
|
18
|
+
parse header dòng 1, chuyển mỗi dòng thành JSON object"
|
|
19
|
+
Level 4 (Xuất sắc): "Đọc file CSV:
|
|
20
|
+
- Encoding: UTF-8 (fallback: CP1258 cho tiếng Việt)
|
|
21
|
+
- Separator: comma (auto-detect tab nếu comma không match)
|
|
22
|
+
- Header: Dòng 1 là tên cột
|
|
23
|
+
- Mỗi dòng → 1 JSON object: {col1: val1, col2: val2}
|
|
24
|
+
- Giá trị rỗng → null (không phải empty string)
|
|
25
|
+
- Số → parse thành number, không để string"
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**Quy tắc:** Luôn viết ở Level 3-4. Nếu bạn đọc instruction mà có thể hiểu
|
|
29
|
+
theo 2 cách khác nhau → chưa đủ cụ thể.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Nguyên tắc #2: Chain-of-Thought (Chuỗi Suy Nghĩ)
|
|
34
|
+
|
|
35
|
+
Hướng dẫn AI suy nghĩ TỪNG BƯỚC, không nhảy đến kết luận.
|
|
36
|
+
|
|
37
|
+
```markdown
|
|
38
|
+
❌ SAI:
|
|
39
|
+
# Instructions
|
|
40
|
+
1. Phân tích code và tìm bugs
|
|
41
|
+
|
|
42
|
+
✅ ĐÚNG:
|
|
43
|
+
# Instructions
|
|
44
|
+
1. Đọc toàn bộ code được cung cấp.
|
|
45
|
+
2. Với MỖI function:
|
|
46
|
+
a. Xác định input types → Có kiểm tra null/undefined không?
|
|
47
|
+
b. Xác định output → Có trường hợp return undefined không?
|
|
48
|
+
c. Tìm vòng lặp → Có điều kiện dừng không? Có thể infinite loop?
|
|
49
|
+
d. Tìm array access → Có kiểm tra index bounds không?
|
|
50
|
+
3. Với MỖI API call:
|
|
51
|
+
a. Có try-catch không?
|
|
52
|
+
b. Có timeout không?
|
|
53
|
+
c. Error message có lộ thông tin nhạy cảm không?
|
|
54
|
+
4. Tổng hợp issues tìm được, sắp xếp theo mức nghiêm trọng.
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**Vì sao:** Khi AI đi TỪNG BƯỚC, nó ít bỏ sót hơn so với "phân tích tổng quan".
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Nguyên tắc #3: Few-Shot Examples (Học Qua Ví Dụ)
|
|
62
|
+
|
|
63
|
+
Số lượng ví dụ ảnh hưởng trực tiếp đến chất lượng output.
|
|
64
|
+
|
|
65
|
+
| Số ví dụ | Hiệu quả | Ghi chú |
|
|
66
|
+
|---|---|---|
|
|
67
|
+
| 0 | 🔴 40% | AI đoán format, thường sai |
|
|
68
|
+
| 1 | 🟡 65% | Khá hơn nhưng dễ overfit |
|
|
69
|
+
| 2 | 🟢 85% | Đủ để AI hiểu pattern |
|
|
70
|
+
| 3 | 🟢 92% | Tối ưu cho hầu hết trường hợp |
|
|
71
|
+
| 5+ | 🟢 95% | Diminishing returns, tốn context |
|
|
72
|
+
|
|
73
|
+
### Cách chọn ví dụ tốt
|
|
74
|
+
|
|
75
|
+
```markdown
|
|
76
|
+
✅ Ví dụ tốt:
|
|
77
|
+
- Ví dụ 1: Happy path (mọi thứ bình thường)
|
|
78
|
+
- Ví dụ 2: Edge case (dữ liệu bất thường)
|
|
79
|
+
- Ví dụ 3: Error case (lỗi xảy ra)
|
|
80
|
+
|
|
81
|
+
❌ Ví dụ xấu:
|
|
82
|
+
- 3 ví dụ giống nhau (chỉ thay data)
|
|
83
|
+
- Ví dụ quá đơn giản (không phản ánh thực tế)
|
|
84
|
+
- Ví dụ không có output rõ ràng
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Template ví dụ power
|
|
88
|
+
|
|
89
|
+
```markdown
|
|
90
|
+
## Ví dụ X: [Tên tình huống cụ thể]
|
|
91
|
+
|
|
92
|
+
**Context:** [Bối cảnh ngắn — TẠI SAO user cần làm việc này]
|
|
93
|
+
**Input:**
|
|
94
|
+
[Dữ liệu đầu vào — CHÍNH XÁC, không placeholder]
|
|
95
|
+
|
|
96
|
+
**Thought process:** [Giải thích AI nên suy nghĩ gì — OPTIONAL nhưng POWERFUL]
|
|
97
|
+
- Nhận thấy X → Nên làm Y
|
|
98
|
+
- Kiểm tra Z → Phát hiện W
|
|
99
|
+
|
|
100
|
+
**Output:**
|
|
101
|
+
[Kết quả CHÍNH XÁC]
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Nguyên tắc #4: Negative Constraints (Ràng Buộc Phủ Định)
|
|
107
|
+
|
|
108
|
+
Nói "KHÔNG ĐƯỢC" hiệu quả hơn "NÊN" vì AI dễ vi phạm default behaviors.
|
|
109
|
+
|
|
110
|
+
```markdown
|
|
111
|
+
❌ TAM TAM (chỉ nói cái nên):
|
|
112
|
+
- Nên viết code sạch
|
|
113
|
+
- Nên handle errors
|
|
114
|
+
- Nên validate input
|
|
115
|
+
|
|
116
|
+
✅ MẠNH MẼ (nói rõ cái cấm):
|
|
117
|
+
- KHÔNG ĐƯỢC return undefined — luôn trả giá trị có nghĩa hoặc throw Error
|
|
118
|
+
- KHÔNG ĐƯỢC catch error rồi im lặng (console.log rồi bỏ qua)
|
|
119
|
+
- KHÔNG ĐƯỢC trust user input — validate MỌI field trước khi xử lý
|
|
120
|
+
- KHÔNG ĐƯỢC dùng `any` trong TypeScript — định nghĩa type cụ thể
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Vì sao:** AI có xu hướng follow positive instructions lỏng lẻo,
|
|
124
|
+
nhưng tuân thủ negative constraints chặt chẽ hơn.
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Nguyên tắc #5: Output Format Anchoring (Neo Format Output)
|
|
129
|
+
|
|
130
|
+
Chỉ định CHÍNH XÁC format output bạn muốn.
|
|
131
|
+
|
|
132
|
+
```markdown
|
|
133
|
+
❌ SAI:
|
|
134
|
+
Trả về kết quả phân tích.
|
|
135
|
+
|
|
136
|
+
✅ ĐÚNG:
|
|
137
|
+
Trả về kết quả theo FORMAT SAU:
|
|
138
|
+
|
|
139
|
+
## 📊 Kết quả phân tích
|
|
140
|
+
|
|
141
|
+
### Summary
|
|
142
|
+
- Tổng files: [số]
|
|
143
|
+
- Tổng issues: [số] (🔴 [Critical] / 🟡 [Warning] / 🟢 [Info])
|
|
144
|
+
|
|
145
|
+
### Issues
|
|
146
|
+
| # | File | Line | Severity | Description | Fix |
|
|
147
|
+
|---|---|---|---|---|---|
|
|
148
|
+
| 1 | [filename] | [line] | 🔴/🟡/🟢 | [mô tả] | [gợi ý] |
|
|
149
|
+
|
|
150
|
+
### Recommendations
|
|
151
|
+
1. [Gợi ý cải thiện 1]
|
|
152
|
+
2. [Gợi ý cải thiện 2]
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
**Vì sao:** Khi AI biết CHÍNH XÁC output trông như thế nào,
|
|
156
|
+
nó generate chính xác hơn 90% so với free-form.
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## Nguyên tắc #6: Role Priming (Gán Vai)
|
|
161
|
+
|
|
162
|
+
Gán vai cho AI để nó adopt đúng persona.
|
|
163
|
+
|
|
164
|
+
```markdown
|
|
165
|
+
❌ SAI:
|
|
166
|
+
# Instructions
|
|
167
|
+
Review code.
|
|
168
|
+
|
|
169
|
+
✅ ĐÚNG:
|
|
170
|
+
# Mindset
|
|
171
|
+
Bạn là **Senior Security Engineer** với 10 năm kinh nghiệm.
|
|
172
|
+
Bạn đã từng phát hiện SQL injection ở app 10 triệu users.
|
|
173
|
+
Bạn review code với con mắt hoài nghi: "Code này hack được không?"
|
|
174
|
+
|
|
175
|
+
# Instructions
|
|
176
|
+
1. Đội mũ hacker → Tìm cách exploit code
|
|
177
|
+
2. Đội mũ architect → Code có scalable không?
|
|
178
|
+
3. Đội mũ mentor → Junior dev đọc hiểu được không?
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
**Vì sao:** Role priming giúp AI kích hoạt đúng "knowledge domain",
|
|
182
|
+
tương tự như expert consultation.
|
|
183
|
+
|
|
184
|
+
---
|
|
185
|
+
|
|
186
|
+
## Nguyên tắc #7: Conditional Logic (Logic Rẽ Nhánh)
|
|
187
|
+
|
|
188
|
+
Viết rõ ràng điều kiện IF-THEN-ELSE trong Instructions.
|
|
189
|
+
|
|
190
|
+
```markdown
|
|
191
|
+
❌ SAI:
|
|
192
|
+
1. Xử lý file tùy theo loại
|
|
193
|
+
|
|
194
|
+
✅ ĐÚNG:
|
|
195
|
+
1. Xác định loại file:
|
|
196
|
+
- **Nếu** `.csv` → Parse bằng comma separator
|
|
197
|
+
- **Nếu** `.tsv` → Parse bằng tab separator
|
|
198
|
+
- **Nếu** `.json` → Parse trực tiếp
|
|
199
|
+
- **Nếu** `.xlsx` → Thông báo: "Em cần script Python để đọc Excel.
|
|
200
|
+
Có thể chuyển sang CSV được không?"
|
|
201
|
+
- **Nếu** format khác → Hỏi user: "File này format gì vậy anh?"
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
**Vì sao:** AI xử lý logic rẽ nhánh tốt hơn khi nó được viết tường minh
|
|
205
|
+
thay vì ngầm hiểu.
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## Nguyên tắc #8: Verification Steps (Bước Xác Minh)
|
|
210
|
+
|
|
211
|
+
Thêm bước KIỂM TRA SAU mỗi bước quan trọng.
|
|
212
|
+
|
|
213
|
+
```markdown
|
|
214
|
+
❌ SAI:
|
|
215
|
+
1. Convert CSV → JSON
|
|
216
|
+
2. Giao kết quả cho user
|
|
217
|
+
|
|
218
|
+
✅ ĐÚNG:
|
|
219
|
+
1. Convert CSV → JSON
|
|
220
|
+
2. ✅ VERIFY: Đếm records JSON = Đếm dòng CSV (trừ header)?
|
|
221
|
+
- Nếu KHÁC → Có dòng bị mất, báo user
|
|
222
|
+
- Nếu BẰNG → Tiếp tục
|
|
223
|
+
3. ✅ VERIFY: Mọi field có giá trị hợp lệ?
|
|
224
|
+
- Tìm null/undefined không mong muốn
|
|
225
|
+
- Tìm encoding bị lỗi (ký tự "à" thay vì "à")
|
|
226
|
+
4. Giao kết quả cho user
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
**Vì sao:** AI đôi khi "tự tin" rằng output đúng mà không kiểm tra.
|
|
230
|
+
Bước verify buộc nó double-check.
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## Nguyên tắc #9: Graceful Degradation (Xử Lý Lỗi Nhẹ Nhàng)
|
|
235
|
+
|
|
236
|
+
Hướng dẫn AI xử lý khi GẶP LỖI, không chỉ khi thành công.
|
|
237
|
+
|
|
238
|
+
```markdown
|
|
239
|
+
❌ SAI (chỉ có happy path):
|
|
240
|
+
1. Đọc file
|
|
241
|
+
2. Parse data
|
|
242
|
+
3. Output kết quả
|
|
243
|
+
|
|
244
|
+
✅ ĐÚNG (happy path + error paths):
|
|
245
|
+
1. Đọc file
|
|
246
|
+
- ⚠️ File không tồn tại → Báo user, hỏi lại đường dẫn
|
|
247
|
+
- ⚠️ File quá lớn (>50MB) → Cảnh báo, hỏi có tiếp tục không
|
|
248
|
+
- ⚠️ Sai encoding → Thử UTF-8 → CP1258 → Latin1 → Báo lỗi
|
|
249
|
+
2. Parse data
|
|
250
|
+
- ⚠️ Format không đúng → Cảnh báo cụ thể dòng nào sai
|
|
251
|
+
- ⚠️ Missing fields → Điền null, liệt kê fields bị thiếu
|
|
252
|
+
3. Output kết quả
|
|
253
|
+
- ⚠️ Nếu có warnings → Hiển thị summary warnings trước kết quả
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
## Nguyên tắc #10: Avoid Ambiguity Traps (Tránh Bẫy Mơ Hồ)
|
|
259
|
+
|
|
260
|
+
Những từ nguy hiểm AI hay hiểu sai:
|
|
261
|
+
|
|
262
|
+
| Từ mơ hồ | Vấn đề | Thay bằng |
|
|
263
|
+
|---|---|---|
|
|
264
|
+
| "xử lý" | Xử lý kiểu gì? | "parse", "validate", "transform", "filter" |
|
|
265
|
+
| "kiểm tra" | Kiểm tra gì? | "so sánh X với Y", "đảm bảo X ≥ 0" |
|
|
266
|
+
| "tối ưu" | Tối ưu thế nào? | "giảm thời gian load <2s", "giảm bundle <500KB" |
|
|
267
|
+
| "sạch" | Clean code = gì? | "không duplicate", "function <30 dòng" |
|
|
268
|
+
| "tốt" | Tốt theo tiêu chí nào? | "pass 100% test", "response <200ms" |
|
|
269
|
+
| "nhiều" | Bao nhiêu là nhiều? | "≥5 items", ">1000 rows" |
|
|
270
|
+
| "phù hợp" | Theo tiêu chí gì? | "khớp regex [pattern]", "thuộc danh sách X" |
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
## 📋 Checklist Prompt Engineering
|
|
275
|
+
|
|
276
|
+
Trước khi finalize SKILL.md, kiểm tra:
|
|
277
|
+
|
|
278
|
+
- [ ] Mỗi step có HÀNH ĐỘNG CỤ THỂ (Level 3-4)?
|
|
279
|
+
- [ ] Có Chain-of-Thought (AI nghĩ từng bước)?
|
|
280
|
+
- [ ] Có ≥2 ví dụ (happy path + edge case)?
|
|
281
|
+
- [ ] Có Negative Constraints (KHÔNG ĐƯỢC)?
|
|
282
|
+
- [ ] Có Output Format Anchoring (format mẫu)?
|
|
283
|
+
- [ ] Có Role Priming (gán vai) nếu cần?
|
|
284
|
+
- [ ] Logic rẽ nhánh viết tường minh (IF-THEN)?
|
|
285
|
+
- [ ] Có Verification Steps sau bước quan trọng?
|
|
286
|
+
- [ ] Có Error Handling cho mỗi bước?
|
|
287
|
+
- [ ] Không có từ mơ hồ (bảng trên)?
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## 🔬 KỸ THUẬT NÂNG CAO — Dành cho Skill Engineer chuyên sâu
|
|
292
|
+
|
|
293
|
+
> Phần dưới đây chứa 5 kỹ thuật mà chỉ expert mới thường áp dụng.
|
|
294
|
+
> Nếu skill đạt Grade A với 10 nguyên tắc trên, hãy thêm những kỹ thuật này
|
|
295
|
+
> để nâng lên **S-tier**.
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
299
|
+
### Nguyên tắc #11: Guardrails Stacking (Xếp Chồng Rào Chắn)
|
|
300
|
+
|
|
301
|
+
Dùng NHIỀU rào chắn ở NHIỀU tầng thay vì 1 constraint đơn lẻ:
|
|
302
|
+
|
|
303
|
+
```markdown
|
|
304
|
+
❌ Rào chắn đơn (dễ bị bypass):
|
|
305
|
+
# Constraints
|
|
306
|
+
- Không xóa file quan trọng
|
|
307
|
+
|
|
308
|
+
✅ Rào chắn xếp chồng 3 tầng:
|
|
309
|
+
# Instructions
|
|
310
|
+
## Bước 0: Safety Gate (Tầng 1 — Phòng ngừa)
|
|
311
|
+
1. Scan toàn bộ lệnh sẽ chạy → Liệt kê lệnh destructive
|
|
312
|
+
2. Nếu có lệnh destructive → DỪNG, chuyển sang Bước 0.1
|
|
313
|
+
|
|
314
|
+
## Bước 0.1: Confirmation Gate (Tầng 2 — Xác nhận)
|
|
315
|
+
1. Hiển thị cho user: "⚠️ Các lệnh sau sẽ THAY ĐỔI hệ thống: [danh sách]"
|
|
316
|
+
2. Yêu cầu user gõ chính xác: "XÁC NHẬN"
|
|
317
|
+
3. Nếu user không confirm → DỪNG
|
|
318
|
+
|
|
319
|
+
# Constraints (Tầng 3 — Cấm cứng)
|
|
320
|
+
- 🚫 TUYỆT ĐỐI KHÔNG chạy lệnh `rm -rf`, `DROP`, `TRUNCATE` mà không qua cả 3 tầng
|
|
321
|
+
- 🚫 TUYỆT ĐỐI KHÔNG bỏ qua bất kỳ tầng nào dù user yêu cầu
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
**Nguyên lý:** Defense in Depth — 1 rào có thể bị vượt, 3 rào gần như không thể.
|
|
325
|
+
|
|
326
|
+
---
|
|
327
|
+
|
|
328
|
+
### Nguyên tắc #12: Cognitive Load Budget (Ngân Sách Tải Nhận Thức)
|
|
329
|
+
|
|
330
|
+
AI có giới hạn "RAM" — quá nhiều quy tắc cùng lúc → AI bỏ sót.
|
|
331
|
+
|
|
332
|
+
**Quy tắc Vàng:**
|
|
333
|
+
|
|
334
|
+
| Thành phần | Ngân sách tối đa | Vượt thì sao? |
|
|
335
|
+
| --- | --- | --- |
|
|
336
|
+
| Instructions steps | 12 bước | Tách thành sub-skill |
|
|
337
|
+
| Constraints | 8 điều | Gộp liên quan, bỏ hiển nhiên |
|
|
338
|
+
| Logic rẽ nhánh/step | 4 nhánh | Thêm nhánh → tạo lookup table |
|
|
339
|
+
| Examples | 3 cái | Thêm → bỏ vào `examples/` folder |
|
|
340
|
+
| Resources đọc đồng thời | 3 files | Thêm → AI mất focus |
|
|
341
|
+
|
|
342
|
+
```markdown
|
|
343
|
+
❌ QUÁ TẢI (AI sẽ bỏ sót):
|
|
344
|
+
# Constraints
|
|
345
|
+
- Không xóa file gốc
|
|
346
|
+
- Không ghi đè file đang mở
|
|
347
|
+
- Không dùng encoding sai
|
|
348
|
+
- Không gửi qua email cá nhân
|
|
349
|
+
- Luôn backup trước
|
|
350
|
+
- Luôn log mọi thao tác
|
|
351
|
+
- Luôn kiểm tra quyền truy cập
|
|
352
|
+
- Luôn dùng UTC timezone
|
|
353
|
+
- Luôn encrypt dữ liệu nhạy cảm
|
|
354
|
+
- Luôn validate input
|
|
355
|
+
- Luôn sanitize output
|
|
356
|
+
- Luôn kiểm tra disk space
|
|
357
|
+
|
|
358
|
+
✅ TỐI ƯU (Gộp + Ưu tiên):
|
|
359
|
+
# Constraints
|
|
360
|
+
|
|
361
|
+
## Bảo mật (ưu tiên #1 — AI PHẢI nhớ):
|
|
362
|
+
- 🚫 TUYỆT ĐỐI KHÔNG thao tác file/data mà không backup trước
|
|
363
|
+
- 🚫 TUYỆT ĐỐI KHÔNG gửi dữ liệu nhạy cảm ra ngoài hệ thống
|
|
364
|
+
|
|
365
|
+
## Vận hành (ưu tiên #2):
|
|
366
|
+
- ✅ LUÔN LUÔN validate input + sanitize output
|
|
367
|
+
- ✅ LUÔN LUÔN log thao tác thay đổi dữ liệu
|
|
368
|
+
|
|
369
|
+
## Quy ước (ưu tiên #3 — nếu quên thì không chết ai):
|
|
370
|
+
- ⚠️ Dùng UTC timezone cho mọi timestamp
|
|
371
|
+
- ⚠️ Kiểm tra disk space trước khi ghi file lớn
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
**Nguyên lý:** Phân tầng priority → AI nhớ tầng 1 chắc chắn,
|
|
375
|
+
tầng 2 gần chắc, tầng 3 nếu còn "bandwidth".
|
|
376
|
+
|
|
377
|
+
---
|
|
378
|
+
|
|
379
|
+
### Nguyên tắc #13: Context Window Management (Quản Lý Cửa Sổ Ngữ Cảnh)
|
|
380
|
+
|
|
381
|
+
AI có giới hạn context window (~128K-1M tokens). Skill tốt = tiết kiệm context.
|
|
382
|
+
|
|
383
|
+
**Kỹ thuật tiết kiệm context:**
|
|
384
|
+
|
|
385
|
+
```markdown
|
|
386
|
+
✅ KỸ THUẬT 1: Lazy Loading (Đọc khi cần)
|
|
387
|
+
# Instructions
|
|
388
|
+
1. Xác định loại báo cáo cần tạo
|
|
389
|
+
2. CHỈ đọc template tương ứng:
|
|
390
|
+
- Tuần → đọc `resources/templates/weekly.md`
|
|
391
|
+
- Tháng → đọc `resources/templates/monthly.md`
|
|
392
|
+
(KHÔNG đọc cả 2, chỉ đọc 1 cái cần)
|
|
393
|
+
|
|
394
|
+
✅ KỸ THUẬT 2: Summary First (Tóm tắt trước)
|
|
395
|
+
# Instructions
|
|
396
|
+
1. Đọc file dữ liệu → Tóm tắt 5 dòng key metrics
|
|
397
|
+
2. Hỏi user: "Dữ liệu có X records, Y columns. Anh muốn phân tích gì?"
|
|
398
|
+
3. CHỈ SAU KHI biết phạm vi → Đọc chi tiết phần cần thiết
|
|
399
|
+
|
|
400
|
+
✅ KỸ THUẬT 3: Black Box Scripts
|
|
401
|
+
# Instructions
|
|
402
|
+
1. KHÔNG đọc source code của script
|
|
403
|
+
2. Chạy `--help` để hiểu interface
|
|
404
|
+
3. Truyền params → Đọc output
|
|
405
|
+
(Tiết kiệm hàng trăm dòng code khỏi context)
|
|
406
|
+
```
|
|
407
|
+
|
|
408
|
+
**Dấu hiệu skill tốn context quá mức:**
|
|
409
|
+
|
|
410
|
+
- Instructions >15 bước chi tiết
|
|
411
|
+
- Đọc >3 resource files trong 1 lần chạy
|
|
412
|
+
- Examples dài >50 dòng mỗi cái
|
|
413
|
+
- Constraints >10 điều
|
|
414
|
+
|
|
415
|
+
---
|
|
416
|
+
|
|
417
|
+
### Nguyên tắc #14: Self-Correction Loop (Vòng Lặp Tự Sửa)
|
|
418
|
+
|
|
419
|
+
Dạy AI tự phát hiện và sửa lỗi output TRƯỚC KHI trả cho user:
|
|
420
|
+
|
|
421
|
+
```markdown
|
|
422
|
+
❌ Không có self-correction:
|
|
423
|
+
# Instructions
|
|
424
|
+
1. Phân tích code
|
|
425
|
+
2. Liệt kê bugs
|
|
426
|
+
3. Trả kết quả cho user
|
|
427
|
+
|
|
428
|
+
✅ Có Self-Correction Loop:
|
|
429
|
+
# Instructions
|
|
430
|
+
1. Phân tích code
|
|
431
|
+
2. Liệt kê bugs → Tạo Draft Report
|
|
432
|
+
|
|
433
|
+
## 🔄 SELF-CHECK (lặp 1 lần trước khi output):
|
|
434
|
+
3. Đọc lại Draft Report và tự hỏi:
|
|
435
|
+
- "Mỗi bug có dẫn chứng code cụ thể không?" → Nếu không → Bổ sung
|
|
436
|
+
- "Có bug nào là false positive không?" → Nếu có → Xóa
|
|
437
|
+
- "Severity có đúng không?" → Review lại từng cái
|
|
438
|
+
- "Gợi ý fix có khả thi không?" → Nếu không → Viết lại
|
|
439
|
+
4. Output Final Report (đã self-correct)
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
**Khi nào cần Self-Correction:**
|
|
443
|
+
|
|
444
|
+
- Skill có output dài (>20 dòng)
|
|
445
|
+
- Skill có tính toán số liệu
|
|
446
|
+
- Skill liên quan đến đánh giá/review
|
|
447
|
+
- Skill có output ảnh hưởng production
|
|
448
|
+
|
|
449
|
+
---
|
|
450
|
+
|
|
451
|
+
### Nguyên tắc #15: Skill Composition Protocol (Giao Thức Kết Hợp Skill)
|
|
452
|
+
|
|
453
|
+
Khi skill gọi skill khác, cần giao thức rõ ràng:
|
|
454
|
+
|
|
455
|
+
```markdown
|
|
456
|
+
❌ Gọi mơ hồ:
|
|
457
|
+
1. Kích hoạt skill `code-linter`
|
|
458
|
+
2. Tiếp tục
|
|
459
|
+
|
|
460
|
+
✅ Giao thức chuẩn:
|
|
461
|
+
1. Kích hoạt skill `code-linter`:
|
|
462
|
+
- TRUYỀN VÀO: [đường dẫn file cần lint]
|
|
463
|
+
- ĐỢI: Cho đến khi skill con trả kết quả
|
|
464
|
+
- NHẬN VỀ: [Exit status + danh sách issues]
|
|
465
|
+
- NẾU THÀNH CÔNG (0 issues hoặc chỉ warnings):
|
|
466
|
+
→ Lưu kết quả → Chuyển sang bước 2
|
|
467
|
+
- NẾU THẤT BẠI (có errors):
|
|
468
|
+
→ DỪNG pipeline → Hiển thị errors cho user
|
|
469
|
+
→ HỎI: "Sửa lỗi rồi chạy lại, hay skip lint?"
|
|
470
|
+
2. [Bước tiếp theo, chỉ chạy nếu bước 1 thành công]
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
**4 yếu tố bắt buộc khi gọi skill con:**
|
|
474
|
+
|
|
475
|
+
1. **INPUT:** Truyền gì vào skill con?
|
|
476
|
+
2. **WAIT:** Đợi hay chạy song song?
|
|
477
|
+
3. **OUTPUT:** Nhận gì về, format gì?
|
|
478
|
+
4. **BRANCH:** Thành công làm gì? Thất bại làm gì?
|
|
479
|
+
|
|
480
|
+
---
|
|
481
|
+
|
|
482
|
+
## 📊 Ma Trận Nguyên Tắc — Khi Nào Dùng Gì?
|
|
483
|
+
|
|
484
|
+
| Nguyên tắc | Luôn dùng | Khi cần | Chỉ expert |
|
|
485
|
+
| --- | --- | --- | --- |
|
|
486
|
+
| #1 Specificity Ladder | ✅ | | |
|
|
487
|
+
| #2 Chain-of-Thought | ✅ | | |
|
|
488
|
+
| #3 Few-Shot Examples | ✅ | | |
|
|
489
|
+
| #4 Negative Constraints | ✅ | | |
|
|
490
|
+
| #5 Output Format Anchoring | | ✅ Output phức tạp | |
|
|
491
|
+
| #6 Role Priming | | ✅ Cần chuyên môn | |
|
|
492
|
+
| #7 Conditional Logic | | ✅ Có rẽ nhánh | |
|
|
493
|
+
| #8 Verification Steps | | ✅ Tính toán/data | |
|
|
494
|
+
| #9 Graceful Degradation | | ✅ File/System I/O | |
|
|
495
|
+
| #10 Avoid Ambiguity | ✅ | | |
|
|
496
|
+
| #11 Guardrails Stacking | | | ✅ Production |
|
|
497
|
+
| #12 Cognitive Load Budget | | | ✅ Skill phức tạp |
|
|
498
|
+
| #13 Context Window Mgmt | | | ✅ Skill lớn |
|
|
499
|
+
| #14 Self-Correction Loop | | | ✅ Output quan trọng |
|
|
500
|
+
| #15 Composition Protocol | | | ✅ Multi-skill |
|
|
501
|
+
| #16 Explain The Why | ✅ | | |
|
|
502
|
+
|
|
503
|
+
---
|
|
504
|
+
|
|
505
|
+
### Nguyên tắc #16: Explain The Why (Giải Thích Thay Vì Ra Lệnh)
|
|
506
|
+
|
|
507
|
+
> Adapted from Anthropic's writing philosophy.
|
|
508
|
+
|
|
509
|
+
AI hiện đại có theory of mind tốt. Khi bạn giải thích LÝ DO,
|
|
510
|
+
AI xử lý edge cases tốt hơn so với chỉ tuân thủ rules cứng.
|
|
511
|
+
|
|
512
|
+
```markdown
|
|
513
|
+
❌ SAI (ra lệnh cứng):
|
|
514
|
+
# Constraints
|
|
515
|
+
- TUYỆT ĐỐI KHÔNG viết quá 400 từ
|
|
516
|
+
- LUÔN LUÔN ghi ngày tháng
|
|
517
|
+
- KHÔNG ĐƯỢC bỏ phần "Vướng mắc"
|
|
518
|
+
|
|
519
|
+
✅ ĐÚNG (giải thích why):
|
|
520
|
+
# Constraints
|
|
521
|
+
- Giữ dưới 400 từ — sếp đọc trên điện thoại, quá dài sẽ bị skip
|
|
522
|
+
- Luôn ghi ngày tháng cụ thể — để dễ trace khi review sau 3 tháng
|
|
523
|
+
- Luôn có phần "Vướng mắc" dù không có gì — sếp sẽ hỏi nếu thiếu,
|
|
524
|
+
viết "Không có" tốt hơn bỏ trống
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
**Khi nào VẪN dùng CAPS LOCK?**
|
|
528
|
+
|
|
529
|
+
Chỉ liên quan đến **bảo mật/safety** — hậu quả không undo:
|
|
530
|
+
- 🚫 TUYỆT ĐỐI KHÔNG hardcode API keys (lý do: lộ = mất tiền/data)
|
|
531
|
+
- 🚫 TUYỆT ĐỐI KHÔNG chạy lệnh destructive không confirm (lý do: không recover)
|