codymaster 4.1.3 → 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 +589 -510
- package/dist/ui/box.js +49 -0
- package/install.sh +2 -2
- package/package.json +3 -9
- 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 +8 -41
- 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,621 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bench-commands
|
|
3
|
+
description: Frappe Bench CLI command reference for site management, app management, development, and production operations. Use when running bench commands, managing sites, migrations, builds, or deployments.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Bench CLI Commands Reference
|
|
7
|
+
|
|
8
|
+
Complete reference for the Frappe Bench command-line interface for managing Frappe/ERPNext installations.
|
|
9
|
+
|
|
10
|
+
## When to Use This Skill
|
|
11
|
+
|
|
12
|
+
- Running bench commands for development
|
|
13
|
+
- Managing Frappe sites
|
|
14
|
+
- Installing and updating apps
|
|
15
|
+
- Running migrations and builds
|
|
16
|
+
- Setting up production environments
|
|
17
|
+
- Troubleshooting common issues
|
|
18
|
+
|
|
19
|
+
## Bench Directory Structure
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
frappe-bench/
|
|
23
|
+
├── apps/ # Frappe apps
|
|
24
|
+
│ ├── frappe/ # Core framework
|
|
25
|
+
│ ├── erpnext/ # ERPNext (if installed)
|
|
26
|
+
│ └── my_app/ # Custom apps
|
|
27
|
+
├── sites/ # Sites directory
|
|
28
|
+
│ ├── common_site_config.json
|
|
29
|
+
│ ├── apps.txt # List of installed apps
|
|
30
|
+
│ └── my_site.local/ # Individual site
|
|
31
|
+
│ ├── site_config.json
|
|
32
|
+
│ ├── private/
|
|
33
|
+
│ └── public/
|
|
34
|
+
├── config/ # Configuration files
|
|
35
|
+
├── logs/ # Log files
|
|
36
|
+
├── env/ # Python virtual environment
|
|
37
|
+
└── node_modules/ # Node.js dependencies
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Site Management
|
|
41
|
+
|
|
42
|
+
### Create Site
|
|
43
|
+
```bash
|
|
44
|
+
# Create new site
|
|
45
|
+
bench new-site mysite.local
|
|
46
|
+
|
|
47
|
+
# With specific database
|
|
48
|
+
bench new-site mysite.local --db-name mysite_db
|
|
49
|
+
|
|
50
|
+
# With MariaDB root password
|
|
51
|
+
bench new-site mysite.local --mariadb-root-password mypassword
|
|
52
|
+
|
|
53
|
+
# With admin password
|
|
54
|
+
bench new-site mysite.local --admin-password admin123
|
|
55
|
+
|
|
56
|
+
# From SQL file
|
|
57
|
+
bench new-site mysite.local --source_sql /path/to/backup.sql
|
|
58
|
+
|
|
59
|
+
# Skip creating default user
|
|
60
|
+
bench new-site mysite.local --no-mariadb-socket
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Use Site
|
|
64
|
+
```bash
|
|
65
|
+
# Set default site
|
|
66
|
+
bench use mysite.local
|
|
67
|
+
|
|
68
|
+
# Run command on specific site
|
|
69
|
+
bench --site mysite.local migrate
|
|
70
|
+
|
|
71
|
+
# Run on all sites
|
|
72
|
+
bench --site all migrate
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Site Operations
|
|
76
|
+
```bash
|
|
77
|
+
# List all sites
|
|
78
|
+
bench list-sites
|
|
79
|
+
|
|
80
|
+
# Drop site (delete)
|
|
81
|
+
bench drop-site mysite.local
|
|
82
|
+
|
|
83
|
+
# Drop with force
|
|
84
|
+
bench drop-site mysite.local --force
|
|
85
|
+
|
|
86
|
+
# Set site maintenance mode
|
|
87
|
+
bench --site mysite.local set-maintenance-mode on
|
|
88
|
+
bench --site mysite.local set-maintenance-mode off
|
|
89
|
+
|
|
90
|
+
# Disable scheduler
|
|
91
|
+
bench --site mysite.local disable-scheduler
|
|
92
|
+
bench --site mysite.local enable-scheduler
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Backup & Restore
|
|
96
|
+
```bash
|
|
97
|
+
# Backup site
|
|
98
|
+
bench --site mysite.local backup
|
|
99
|
+
|
|
100
|
+
# Backup with files
|
|
101
|
+
bench --site mysite.local backup --with-files
|
|
102
|
+
|
|
103
|
+
# Backup all sites
|
|
104
|
+
bench --site all backup
|
|
105
|
+
|
|
106
|
+
# Restore from backup
|
|
107
|
+
bench --site mysite.local restore /path/to/backup.sql.gz
|
|
108
|
+
|
|
109
|
+
# Restore with files
|
|
110
|
+
bench --site mysite.local restore /path/to/backup.sql.gz \
|
|
111
|
+
--with-private-files /path/to/private.tar \
|
|
112
|
+
--with-public-files /path/to/public.tar
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## App Management
|
|
116
|
+
|
|
117
|
+
### Get Apps
|
|
118
|
+
```bash
|
|
119
|
+
# Get app from GitHub
|
|
120
|
+
bench get-app https://github.com/frappe/erpnext
|
|
121
|
+
|
|
122
|
+
# Get specific branch
|
|
123
|
+
bench get-app https://github.com/frappe/erpnext --branch version-14
|
|
124
|
+
|
|
125
|
+
# Get specific tag
|
|
126
|
+
bench get-app https://github.com/frappe/erpnext --tag v14.0.0
|
|
127
|
+
|
|
128
|
+
# Get from local path
|
|
129
|
+
bench get-app /path/to/my_app
|
|
130
|
+
|
|
131
|
+
# Get and install on all sites
|
|
132
|
+
bench get-app erpnext --install-all
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### Install/Uninstall Apps
|
|
136
|
+
```bash
|
|
137
|
+
# Install app on site
|
|
138
|
+
bench --site mysite.local install-app erpnext
|
|
139
|
+
|
|
140
|
+
# Install app on all sites
|
|
141
|
+
bench --site all install-app my_app
|
|
142
|
+
|
|
143
|
+
# Uninstall app
|
|
144
|
+
bench --site mysite.local uninstall-app my_app
|
|
145
|
+
|
|
146
|
+
# Uninstall with force (removes data)
|
|
147
|
+
bench --site mysite.local uninstall-app my_app --yes --force
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### Create New App
|
|
151
|
+
```bash
|
|
152
|
+
# Create new app
|
|
153
|
+
bench new-app my_app
|
|
154
|
+
|
|
155
|
+
# App will be created in apps/ directory with:
|
|
156
|
+
# - my_app/my_app/
|
|
157
|
+
# - hooks.py
|
|
158
|
+
# - modules.txt
|
|
159
|
+
# - patches.txt
|
|
160
|
+
# - requirements.txt
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### Update Apps
|
|
164
|
+
```bash
|
|
165
|
+
# Update all apps
|
|
166
|
+
bench update
|
|
167
|
+
|
|
168
|
+
# Update without migrations
|
|
169
|
+
bench update --no-migrations
|
|
170
|
+
|
|
171
|
+
# Update specific app
|
|
172
|
+
bench update --apps erpnext
|
|
173
|
+
|
|
174
|
+
# Update without pulling
|
|
175
|
+
bench update --no-pull
|
|
176
|
+
|
|
177
|
+
# Update without building assets
|
|
178
|
+
bench update --no-build
|
|
179
|
+
|
|
180
|
+
# Reset to fresh install
|
|
181
|
+
bench update --reset
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### Remove App
|
|
185
|
+
```bash
|
|
186
|
+
# Remove app from bench (not from sites)
|
|
187
|
+
bench remove-app my_app
|
|
188
|
+
|
|
189
|
+
# Remove from site first
|
|
190
|
+
bench --site mysite.local uninstall-app my_app
|
|
191
|
+
bench remove-app my_app
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
## Development Commands
|
|
195
|
+
|
|
196
|
+
### Start Development Server
|
|
197
|
+
```bash
|
|
198
|
+
# Start development server (web + redis + scheduler)
|
|
199
|
+
bench start
|
|
200
|
+
|
|
201
|
+
# Start with specific workers
|
|
202
|
+
bench start --procfile Procfile.dev
|
|
203
|
+
|
|
204
|
+
# Start only web server
|
|
205
|
+
bench serve
|
|
206
|
+
|
|
207
|
+
# Start on specific port
|
|
208
|
+
bench serve --port 8001
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### Build Assets
|
|
212
|
+
```bash
|
|
213
|
+
# Build assets (JS/CSS)
|
|
214
|
+
bench build
|
|
215
|
+
|
|
216
|
+
# Build specific app
|
|
217
|
+
bench build --app my_app
|
|
218
|
+
|
|
219
|
+
# Build with verbose output
|
|
220
|
+
bench build --verbose
|
|
221
|
+
|
|
222
|
+
# Build production assets
|
|
223
|
+
bench build --production
|
|
224
|
+
|
|
225
|
+
# Build and minify
|
|
226
|
+
bench build --make-copy
|
|
227
|
+
|
|
228
|
+
# Watch for changes
|
|
229
|
+
bench watch
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
### Migrate
|
|
233
|
+
```bash
|
|
234
|
+
# Run migrations
|
|
235
|
+
bench --site mysite.local migrate
|
|
236
|
+
|
|
237
|
+
# Migrate all sites
|
|
238
|
+
bench --site all migrate
|
|
239
|
+
|
|
240
|
+
# Migrate specific app
|
|
241
|
+
bench --site mysite.local migrate --app my_app
|
|
242
|
+
|
|
243
|
+
# Skip failing patches
|
|
244
|
+
bench --site mysite.local migrate --skip-failing
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### Clear Cache
|
|
248
|
+
```bash
|
|
249
|
+
# Clear cache
|
|
250
|
+
bench --site mysite.local clear-cache
|
|
251
|
+
|
|
252
|
+
# Clear all cache including redis
|
|
253
|
+
bench --site mysite.local clear-website-cache
|
|
254
|
+
|
|
255
|
+
# Clear redis cache
|
|
256
|
+
bench clear-redis-cache
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
### Console
|
|
260
|
+
```bash
|
|
261
|
+
# Open Python console
|
|
262
|
+
bench --site mysite.local console
|
|
263
|
+
|
|
264
|
+
# In console:
|
|
265
|
+
# >>> doc = frappe.get_doc("Customer", "CUST-001")
|
|
266
|
+
# >>> doc.customer_name
|
|
267
|
+
# >>> frappe.db.sql("SELECT * FROM tabCustomer")
|
|
268
|
+
|
|
269
|
+
# Run Python script
|
|
270
|
+
bench --site mysite.local execute myapp.scripts.my_function
|
|
271
|
+
|
|
272
|
+
# Execute with arguments
|
|
273
|
+
bench --site mysite.local execute myapp.scripts.my_function --args='["arg1", "arg2"]'
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
### MariaDB Console
|
|
277
|
+
```bash
|
|
278
|
+
# Open MariaDB console
|
|
279
|
+
bench --site mysite.local mariadb
|
|
280
|
+
|
|
281
|
+
# Run SQL query
|
|
282
|
+
bench --site mysite.local mariadb -e "SELECT * FROM tabCustomer LIMIT 5"
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
### Run Tests
|
|
286
|
+
```bash
|
|
287
|
+
# Run all tests
|
|
288
|
+
bench --site mysite.local run-tests
|
|
289
|
+
|
|
290
|
+
# Run tests for specific app
|
|
291
|
+
bench --site mysite.local run-tests --app my_app
|
|
292
|
+
|
|
293
|
+
# Run specific test
|
|
294
|
+
bench --site mysite.local run-tests --module my_app.my_module.doctype.my_doctype.test_my_doctype
|
|
295
|
+
|
|
296
|
+
# Run with coverage
|
|
297
|
+
bench --site mysite.local run-tests --coverage
|
|
298
|
+
|
|
299
|
+
# Run specific test class
|
|
300
|
+
bench --site mysite.local run-tests --doctype "My DocType"
|
|
301
|
+
|
|
302
|
+
# Run parallel tests
|
|
303
|
+
bench --site mysite.local run-tests --parallel
|
|
304
|
+
|
|
305
|
+
# Skip test setup
|
|
306
|
+
bench --site mysite.local run-tests --skip-setup
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
### Translation
|
|
310
|
+
```bash
|
|
311
|
+
# Update translation files
|
|
312
|
+
bench --site mysite.local update-translations
|
|
313
|
+
|
|
314
|
+
# Export translations
|
|
315
|
+
bench --site mysite.local export-translations
|
|
316
|
+
|
|
317
|
+
# Import translations
|
|
318
|
+
bench --site mysite.local import-translations /path/to/translations.csv
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
## Production Setup
|
|
322
|
+
|
|
323
|
+
### Setup Production
|
|
324
|
+
```bash
|
|
325
|
+
# Setup for production (systemd, nginx, supervisor)
|
|
326
|
+
sudo bench setup production frappe-user
|
|
327
|
+
|
|
328
|
+
# Setup supervisor
|
|
329
|
+
bench setup supervisor
|
|
330
|
+
|
|
331
|
+
# Setup systemd
|
|
332
|
+
bench setup systemd
|
|
333
|
+
|
|
334
|
+
# Setup nginx
|
|
335
|
+
bench setup nginx
|
|
336
|
+
|
|
337
|
+
# Setup Redis
|
|
338
|
+
bench setup redis
|
|
339
|
+
|
|
340
|
+
# Setup fail2ban
|
|
341
|
+
bench setup fail2ban
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
### SSL/Let's Encrypt
|
|
345
|
+
```bash
|
|
346
|
+
# Setup Let's Encrypt SSL
|
|
347
|
+
sudo bench setup lets-encrypt mysite.local
|
|
348
|
+
|
|
349
|
+
# Renew certificates
|
|
350
|
+
sudo bench renew-lets-encrypt
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
### Restart Services
|
|
354
|
+
```bash
|
|
355
|
+
# Restart supervisor
|
|
356
|
+
sudo supervisorctl restart all
|
|
357
|
+
|
|
358
|
+
# Restart specific
|
|
359
|
+
sudo supervisorctl restart frappe-bench-web:*
|
|
360
|
+
sudo supervisorctl restart frappe-bench-workers:*
|
|
361
|
+
|
|
362
|
+
# Restart systemd
|
|
363
|
+
sudo systemctl restart frappe-bench-web
|
|
364
|
+
sudo systemctl restart frappe-bench-schedule
|
|
365
|
+
|
|
366
|
+
# Check status
|
|
367
|
+
sudo supervisorctl status
|
|
368
|
+
```
|
|
369
|
+
|
|
370
|
+
## Scheduler & Workers
|
|
371
|
+
|
|
372
|
+
### Scheduler
|
|
373
|
+
```bash
|
|
374
|
+
# Enable scheduler
|
|
375
|
+
bench --site mysite.local enable-scheduler
|
|
376
|
+
|
|
377
|
+
# Disable scheduler
|
|
378
|
+
bench --site mysite.local disable-scheduler
|
|
379
|
+
|
|
380
|
+
# Check scheduler status
|
|
381
|
+
bench --site mysite.local show-scheduler-status
|
|
382
|
+
|
|
383
|
+
# Run specific scheduled job
|
|
384
|
+
bench --site mysite.local execute frappe.tasks.run_daily
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
### Background Jobs
|
|
388
|
+
```bash
|
|
389
|
+
# Show queued jobs
|
|
390
|
+
bench --site mysite.local show-pending-jobs
|
|
391
|
+
|
|
392
|
+
# Clear failed jobs
|
|
393
|
+
bench --site mysite.local clear-website-cache
|
|
394
|
+
|
|
395
|
+
# Run specific queue
|
|
396
|
+
bench worker --queue default
|
|
397
|
+
bench worker --queue short
|
|
398
|
+
bench worker --queue long
|
|
399
|
+
|
|
400
|
+
# Purge jobs
|
|
401
|
+
bench --site mysite.local purge-jobs
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
## Configuration
|
|
405
|
+
|
|
406
|
+
### Site Config
|
|
407
|
+
```bash
|
|
408
|
+
# Show site config
|
|
409
|
+
bench --site mysite.local show-config
|
|
410
|
+
|
|
411
|
+
# Set config value
|
|
412
|
+
bench --site mysite.local set-config key value
|
|
413
|
+
|
|
414
|
+
# Set config with JSON value
|
|
415
|
+
bench --site mysite.local set-config limits '{"users": 10}'
|
|
416
|
+
|
|
417
|
+
# Set common config (all sites)
|
|
418
|
+
bench set-config key value
|
|
419
|
+
|
|
420
|
+
# Remove config
|
|
421
|
+
bench --site mysite.local remove-config key
|
|
422
|
+
```
|
|
423
|
+
|
|
424
|
+
### Common Configurations
|
|
425
|
+
```python
|
|
426
|
+
# site_config.json
|
|
427
|
+
{
|
|
428
|
+
"db_name": "mysite_db",
|
|
429
|
+
"db_password": "password",
|
|
430
|
+
"db_type": "mariadb",
|
|
431
|
+
"encryption_key": "xxxxx",
|
|
432
|
+
"developer_mode": 0,
|
|
433
|
+
"maintenance_mode": 0,
|
|
434
|
+
"pause_scheduler": 0,
|
|
435
|
+
"mail_server": "smtp.gmail.com",
|
|
436
|
+
"mail_port": 587,
|
|
437
|
+
"use_tls": 1,
|
|
438
|
+
"mail_login": "user@gmail.com",
|
|
439
|
+
"mail_password": "password",
|
|
440
|
+
"auto_email_id": "noreply@mysite.com",
|
|
441
|
+
"mute_emails": 0,
|
|
442
|
+
"enable_scheduler": 1,
|
|
443
|
+
"limits": {
|
|
444
|
+
"users": 10,
|
|
445
|
+
"emails": 500,
|
|
446
|
+
"space": 5120
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
```
|
|
450
|
+
|
|
451
|
+
### Bench Config
|
|
452
|
+
```bash
|
|
453
|
+
# Show bench config
|
|
454
|
+
bench config list
|
|
455
|
+
|
|
456
|
+
# Set bench config
|
|
457
|
+
bench config set serve_port 8001
|
|
458
|
+
bench config set redis_cache_port 13000
|
|
459
|
+
|
|
460
|
+
# Common bench configs
|
|
461
|
+
bench config set developer_mode 1
|
|
462
|
+
bench config set webserver_port 8000
|
|
463
|
+
bench config set background_workers 1
|
|
464
|
+
```
|
|
465
|
+
|
|
466
|
+
## Troubleshooting Commands
|
|
467
|
+
|
|
468
|
+
### Logs
|
|
469
|
+
```bash
|
|
470
|
+
# View logs
|
|
471
|
+
tail -f logs/frappe.log
|
|
472
|
+
tail -f logs/web.error.log
|
|
473
|
+
tail -f logs/worker.error.log
|
|
474
|
+
tail -f logs/scheduler.error.log
|
|
475
|
+
|
|
476
|
+
# Site-specific logs
|
|
477
|
+
tail -f sites/mysite.local/logs/frappe.log
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
### Debug
|
|
481
|
+
```bash
|
|
482
|
+
# Check site health
|
|
483
|
+
bench --site mysite.local doctor
|
|
484
|
+
|
|
485
|
+
# Show database stats
|
|
486
|
+
bench --site mysite.local show-db-size
|
|
487
|
+
|
|
488
|
+
# Show table sizes
|
|
489
|
+
bench --site mysite.local --db-type mariadb execute \
|
|
490
|
+
"SELECT table_name, data_length FROM information_schema.tables WHERE table_schema = 'mysite_db'"
|
|
491
|
+
|
|
492
|
+
# Check scheduled jobs
|
|
493
|
+
bench --site mysite.local show-scheduler-status
|
|
494
|
+
|
|
495
|
+
# Reset password
|
|
496
|
+
bench --site mysite.local set-admin-password newpassword
|
|
497
|
+
|
|
498
|
+
# Add system manager
|
|
499
|
+
bench --site mysite.local add-system-manager user@example.com
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
### Fix Common Issues
|
|
503
|
+
```bash
|
|
504
|
+
# Rebuild search index
|
|
505
|
+
bench --site mysite.local build-search-index
|
|
506
|
+
|
|
507
|
+
# Reset desk customizations
|
|
508
|
+
bench --site mysite.local reset-perms
|
|
509
|
+
|
|
510
|
+
# Clear all locks
|
|
511
|
+
bench --site mysite.local clear-locks
|
|
512
|
+
|
|
513
|
+
# Reinstall
|
|
514
|
+
bench --site mysite.local reinstall --yes
|
|
515
|
+
|
|
516
|
+
# Partial restore
|
|
517
|
+
bench --site mysite.local partial-restore /path/to/backup.sql
|
|
518
|
+
```
|
|
519
|
+
|
|
520
|
+
## Version Management
|
|
521
|
+
|
|
522
|
+
```bash
|
|
523
|
+
# Check versions
|
|
524
|
+
bench version
|
|
525
|
+
|
|
526
|
+
# Switch branch
|
|
527
|
+
bench switch-to-branch version-14 frappe erpnext
|
|
528
|
+
|
|
529
|
+
# Switch to develop
|
|
530
|
+
bench switch-to-branch develop --upgrade
|
|
531
|
+
|
|
532
|
+
# Set version
|
|
533
|
+
bench set-bench-version 5.x
|
|
534
|
+
```
|
|
535
|
+
|
|
536
|
+
## Multi-Tenancy
|
|
537
|
+
|
|
538
|
+
```bash
|
|
539
|
+
# Setup multi-tenancy
|
|
540
|
+
bench config dns_multitenant on
|
|
541
|
+
|
|
542
|
+
# Add domain to site
|
|
543
|
+
bench --site mysite.local add-domain newdomain.com
|
|
544
|
+
|
|
545
|
+
# Remove domain
|
|
546
|
+
bench --site mysite.local remove-domain newdomain.com
|
|
547
|
+
|
|
548
|
+
# Setup wildcard SSL
|
|
549
|
+
sudo certbot certonly --webroot -w /var/www/letsencrypt -d *.mydomain.com
|
|
550
|
+
```
|
|
551
|
+
|
|
552
|
+
## Common Workflows
|
|
553
|
+
|
|
554
|
+
### Fresh Install
|
|
555
|
+
```bash
|
|
556
|
+
# Install bench
|
|
557
|
+
pip install frappe-bench
|
|
558
|
+
|
|
559
|
+
# Initialize bench
|
|
560
|
+
bench init frappe-bench
|
|
561
|
+
cd frappe-bench
|
|
562
|
+
|
|
563
|
+
# Get ERPNext
|
|
564
|
+
bench get-app erpnext
|
|
565
|
+
|
|
566
|
+
# Create site
|
|
567
|
+
bench new-site mysite.local
|
|
568
|
+
|
|
569
|
+
# Install ERPNext
|
|
570
|
+
bench --site mysite.local install-app erpnext
|
|
571
|
+
|
|
572
|
+
# Start development server
|
|
573
|
+
bench start
|
|
574
|
+
```
|
|
575
|
+
|
|
576
|
+
### Daily Development
|
|
577
|
+
```bash
|
|
578
|
+
# Pull latest changes
|
|
579
|
+
bench update --no-backup
|
|
580
|
+
|
|
581
|
+
# Or step by step:
|
|
582
|
+
cd apps/frappe && git pull
|
|
583
|
+
cd apps/erpnext && git pull
|
|
584
|
+
bench update --no-pull
|
|
585
|
+
|
|
586
|
+
# Clear cache after code changes
|
|
587
|
+
bench --site mysite.local clear-cache
|
|
588
|
+
|
|
589
|
+
# Build assets
|
|
590
|
+
bench build --app my_app
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
### Deploy Update
|
|
594
|
+
```bash
|
|
595
|
+
# On production server
|
|
596
|
+
cd /home/frappe/frappe-bench
|
|
597
|
+
|
|
598
|
+
# Set maintenance mode
|
|
599
|
+
bench --site mysite.local set-maintenance-mode on
|
|
600
|
+
|
|
601
|
+
# Backup
|
|
602
|
+
bench --site mysite.local backup --with-files
|
|
603
|
+
|
|
604
|
+
# Update
|
|
605
|
+
bench update
|
|
606
|
+
|
|
607
|
+
# Migrate
|
|
608
|
+
bench --site mysite.local migrate
|
|
609
|
+
|
|
610
|
+
# Build assets
|
|
611
|
+
bench build --production
|
|
612
|
+
|
|
613
|
+
# Clear cache
|
|
614
|
+
bench --site mysite.local clear-cache
|
|
615
|
+
|
|
616
|
+
# Restart
|
|
617
|
+
sudo supervisorctl restart all
|
|
618
|
+
|
|
619
|
+
# Disable maintenance mode
|
|
620
|
+
bench --site mysite.local set-maintenance-mode off
|
|
621
|
+
```
|