claude-autopm 2.8.1 → 2.8.3

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.
Files changed (450) hide show
  1. package/README.md +399 -529
  2. package/bin/autopm.js +2 -0
  3. package/bin/commands/plugin.js +395 -0
  4. package/bin/commands/team.js +184 -10
  5. package/install/install.js +223 -4
  6. package/lib/plugins/PluginManager.js +1328 -0
  7. package/lib/plugins/PluginManager.old.js +400 -0
  8. package/package.json +5 -1
  9. package/packages/plugin-ai/LICENSE +21 -0
  10. package/packages/plugin-ai/README.md +316 -0
  11. package/packages/plugin-ai/agents/anthropic-claude-expert.md +579 -0
  12. package/packages/plugin-ai/agents/azure-openai-expert.md +1411 -0
  13. package/packages/plugin-ai/agents/google-a2a-expert.md +1445 -0
  14. package/packages/plugin-ai/agents/huggingface-expert.md +2131 -0
  15. package/packages/plugin-ai/agents/langchain-expert.md +1427 -0
  16. package/packages/plugin-ai/commands/a2a-setup.md +886 -0
  17. package/packages/plugin-ai/commands/ai-model-deployment.md +481 -0
  18. package/packages/plugin-ai/commands/anthropic-optimize.md +793 -0
  19. package/packages/plugin-ai/commands/huggingface-deploy.md +789 -0
  20. package/packages/plugin-ai/commands/langchain-optimize.md +807 -0
  21. package/packages/plugin-ai/commands/llm-optimize.md +348 -0
  22. package/packages/plugin-ai/commands/openai-optimize.md +863 -0
  23. package/packages/plugin-ai/commands/rag-optimize.md +841 -0
  24. package/packages/plugin-ai/commands/rag-setup-scaffold.md +382 -0
  25. package/packages/plugin-ai/package.json +66 -0
  26. package/packages/plugin-ai/plugin.json +519 -0
  27. package/packages/plugin-ai/rules/ai-model-standards.md +449 -0
  28. package/packages/plugin-ai/rules/prompt-engineering-standards.md +509 -0
  29. package/packages/plugin-ai/scripts/examples/huggingface-inference-example.py +145 -0
  30. package/packages/plugin-ai/scripts/examples/langchain-rag-example.py +366 -0
  31. package/packages/plugin-ai/scripts/examples/mlflow-tracking-example.py +224 -0
  32. package/packages/plugin-ai/scripts/examples/openai-chat-example.py +425 -0
  33. package/packages/plugin-cloud/README.md +268 -0
  34. package/packages/plugin-cloud/agents/gemini-api-expert.md +880 -0
  35. package/packages/plugin-cloud/agents/openai-python-expert.md +1087 -0
  36. package/packages/plugin-cloud/commands/cloud-cost-optimize.md +243 -0
  37. package/packages/plugin-cloud/commands/cloud-validate.md +196 -0
  38. package/packages/plugin-cloud/hooks/pre-cloud-deploy.js +456 -0
  39. package/packages/plugin-cloud/package.json +64 -0
  40. package/packages/plugin-cloud/plugin.json +338 -0
  41. package/packages/plugin-cloud/rules/cloud-security-compliance.md +313 -0
  42. package/packages/plugin-cloud/scripts/examples/aws-validate.sh +30 -0
  43. package/packages/plugin-cloud/scripts/examples/azure-setup.sh +33 -0
  44. package/packages/plugin-cloud/scripts/examples/gcp-setup.sh +39 -0
  45. package/packages/plugin-cloud/scripts/examples/k8s-validate.sh +40 -0
  46. package/packages/plugin-cloud/scripts/examples/terraform-init.sh +26 -0
  47. package/packages/plugin-core/README.md +274 -0
  48. package/packages/plugin-core/commands/code-rabbit.md +128 -0
  49. package/packages/plugin-core/commands/prompt.md +9 -0
  50. package/packages/plugin-core/commands/re-init.md +9 -0
  51. package/packages/plugin-core/hooks/context7-reminder.md +29 -0
  52. package/packages/plugin-core/hooks/enforce-agents.js +125 -0
  53. package/packages/plugin-core/hooks/enforce-agents.sh +35 -0
  54. package/packages/plugin-core/hooks/pre-agent-context7.js +224 -0
  55. package/packages/plugin-core/hooks/pre-command-context7.js +229 -0
  56. package/packages/plugin-core/hooks/strict-enforce-agents.sh +39 -0
  57. package/packages/plugin-core/hooks/test-hook.sh +21 -0
  58. package/packages/plugin-core/hooks/unified-context7-enforcement.sh +38 -0
  59. package/packages/plugin-core/package.json +45 -0
  60. package/packages/plugin-core/plugin.json +387 -0
  61. package/packages/plugin-core/rules/agent-coordination.md +549 -0
  62. package/packages/plugin-core/rules/agent-mandatory.md +170 -0
  63. package/packages/plugin-core/rules/command-pipelines.md +208 -0
  64. package/packages/plugin-core/rules/context-optimization.md +176 -0
  65. package/packages/plugin-core/rules/context7-enforcement.md +327 -0
  66. package/packages/plugin-core/rules/datetime.md +122 -0
  67. package/packages/plugin-core/rules/definition-of-done.md +272 -0
  68. package/packages/plugin-core/rules/development-environments.md +19 -0
  69. package/packages/plugin-core/rules/development-workflow.md +198 -0
  70. package/packages/plugin-core/rules/framework-path-rules.md +180 -0
  71. package/packages/plugin-core/rules/frontmatter-operations.md +64 -0
  72. package/packages/plugin-core/rules/git-strategy.md +237 -0
  73. package/packages/plugin-core/rules/golden-rules.md +181 -0
  74. package/packages/plugin-core/rules/naming-conventions.md +111 -0
  75. package/packages/plugin-core/rules/no-pr-workflow.md +183 -0
  76. package/packages/plugin-core/rules/pipeline-mandatory.md +109 -0
  77. package/packages/plugin-core/rules/security-checklist.md +318 -0
  78. package/packages/plugin-core/rules/standard-patterns.md +197 -0
  79. package/packages/plugin-core/rules/strip-frontmatter.md +85 -0
  80. package/packages/plugin-core/rules/tdd.enforcement.md +103 -0
  81. package/packages/plugin-core/rules/use-ast-grep.md +113 -0
  82. package/packages/plugin-core/scripts/lib/datetime-utils.sh +254 -0
  83. package/packages/plugin-core/scripts/lib/frontmatter-utils.sh +294 -0
  84. package/packages/plugin-core/scripts/lib/github-utils.sh +221 -0
  85. package/packages/plugin-core/scripts/lib/logging-utils.sh +199 -0
  86. package/packages/plugin-core/scripts/lib/validation-utils.sh +339 -0
  87. package/packages/plugin-core/scripts/mcp/add.sh +7 -0
  88. package/packages/plugin-core/scripts/mcp/disable.sh +12 -0
  89. package/packages/plugin-core/scripts/mcp/enable.sh +12 -0
  90. package/packages/plugin-core/scripts/mcp/list.sh +7 -0
  91. package/packages/plugin-core/scripts/mcp/sync.sh +8 -0
  92. package/packages/plugin-data/README.md +315 -0
  93. package/packages/plugin-data/agents/airflow-orchestration-expert.md +158 -0
  94. package/packages/plugin-data/agents/kedro-pipeline-expert.md +304 -0
  95. package/packages/plugin-data/agents/langgraph-workflow-expert.md +530 -0
  96. package/packages/plugin-data/commands/airflow-dag-scaffold.md +413 -0
  97. package/packages/plugin-data/commands/kafka-pipeline-scaffold.md +503 -0
  98. package/packages/plugin-data/package.json +66 -0
  99. package/packages/plugin-data/plugin.json +294 -0
  100. package/packages/plugin-data/rules/data-quality-standards.md +373 -0
  101. package/packages/plugin-data/rules/etl-pipeline-standards.md +255 -0
  102. package/packages/plugin-data/scripts/examples/airflow-dag-example.py +245 -0
  103. package/packages/plugin-data/scripts/examples/dbt-transform-example.sql +238 -0
  104. package/packages/plugin-data/scripts/examples/kafka-streaming-example.py +257 -0
  105. package/packages/plugin-data/scripts/examples/pandas-etl-example.py +332 -0
  106. package/packages/plugin-databases/README.md +330 -0
  107. package/{autopm/.claude/agents/databases → packages/plugin-databases/agents}/bigquery-expert.md +24 -15
  108. package/{autopm/.claude/agents/databases → packages/plugin-databases/agents}/cosmosdb-expert.md +22 -15
  109. package/{autopm/.claude/agents/databases → packages/plugin-databases/agents}/mongodb-expert.md +24 -15
  110. package/{autopm/.claude/agents/databases → packages/plugin-databases/agents}/postgresql-expert.md +23 -15
  111. package/{autopm/.claude/agents/databases → packages/plugin-databases/agents}/redis-expert.md +29 -7
  112. package/packages/plugin-databases/commands/db-optimize.md +612 -0
  113. package/packages/plugin-databases/package.json +60 -0
  114. package/packages/plugin-databases/plugin.json +237 -0
  115. package/packages/plugin-databases/rules/database-management-strategy.md +146 -0
  116. package/packages/plugin-databases/rules/database-pipeline.md +316 -0
  117. package/packages/plugin-databases/scripts/examples/bigquery-cost-analyze.sh +160 -0
  118. package/packages/plugin-databases/scripts/examples/cosmosdb-ru-optimize.sh +163 -0
  119. package/packages/plugin-databases/scripts/examples/mongodb-shard-check.sh +120 -0
  120. package/packages/plugin-databases/scripts/examples/postgres-index-analyze.sh +95 -0
  121. package/packages/plugin-databases/scripts/examples/redis-cache-stats.sh +121 -0
  122. package/packages/plugin-devops/README.md +367 -0
  123. package/{autopm/.claude/agents/devops → packages/plugin-devops/agents}/github-operations-specialist.md +1 -1
  124. package/packages/plugin-devops/commands/ci-pipeline-create.md +581 -0
  125. package/packages/plugin-devops/commands/docker-optimize.md +493 -0
  126. package/packages/plugin-devops/hooks/pre-docker-build.js +472 -0
  127. package/packages/plugin-devops/package.json +61 -0
  128. package/packages/plugin-devops/plugin.json +302 -0
  129. package/packages/plugin-devops/rules/github-operations.md +92 -0
  130. package/packages/plugin-devops/scripts/examples/docker-build-multistage.sh +43 -0
  131. package/packages/plugin-devops/scripts/examples/docker-compose-validate.sh +74 -0
  132. package/packages/plugin-devops/scripts/examples/github-workflow-validate.sh +48 -0
  133. package/packages/plugin-devops/scripts/examples/prometheus-health-check.sh +58 -0
  134. package/packages/plugin-devops/scripts/examples/ssh-key-setup.sh +74 -0
  135. package/packages/plugin-frameworks/README.md +309 -0
  136. package/{autopm/.claude/agents/frameworks → packages/plugin-frameworks/agents}/e2e-test-engineer.md +219 -0
  137. package/{autopm/.claude/agents/frameworks → packages/plugin-frameworks/agents}/react-frontend-engineer.md +176 -0
  138. package/{autopm/.claude/agents/frameworks → packages/plugin-frameworks/agents}/tailwindcss-expert.md +251 -0
  139. package/packages/plugin-frameworks/commands/nextjs-optimize.md +692 -0
  140. package/packages/plugin-frameworks/commands/react-optimize.md +583 -0
  141. package/packages/plugin-frameworks/package.json +59 -0
  142. package/packages/plugin-frameworks/plugin.json +224 -0
  143. package/packages/plugin-frameworks/rules/performance-guidelines.md +403 -0
  144. package/packages/plugin-frameworks/scripts/examples/react-component-perf.sh +34 -0
  145. package/packages/plugin-frameworks/scripts/examples/tailwind-optimize.sh +44 -0
  146. package/packages/plugin-frameworks/scripts/examples/vue-composition-check.sh +41 -0
  147. package/packages/plugin-languages/README.md +333 -0
  148. package/packages/plugin-languages/commands/javascript-optimize.md +636 -0
  149. package/packages/plugin-languages/commands/nodejs-api-scaffold.md +341 -0
  150. package/packages/plugin-languages/commands/nodejs-optimize.md +689 -0
  151. package/packages/plugin-languages/commands/python-api-scaffold.md +261 -0
  152. package/packages/plugin-languages/commands/python-optimize.md +593 -0
  153. package/packages/plugin-languages/package.json +65 -0
  154. package/packages/plugin-languages/plugin.json +265 -0
  155. package/packages/plugin-languages/rules/code-quality-standards.md +496 -0
  156. package/packages/plugin-languages/rules/testing-standards.md +768 -0
  157. package/packages/plugin-languages/scripts/examples/bash-production-script.sh +520 -0
  158. package/packages/plugin-languages/scripts/examples/javascript-es6-patterns.js +291 -0
  159. package/packages/plugin-languages/scripts/examples/nodejs-async-iteration.js +360 -0
  160. package/packages/plugin-languages/scripts/examples/python-async-patterns.py +289 -0
  161. package/packages/plugin-languages/scripts/examples/typescript-patterns.ts +432 -0
  162. package/packages/plugin-ml/README.md +430 -0
  163. package/packages/plugin-ml/agents/automl-expert.md +326 -0
  164. package/packages/plugin-ml/agents/computer-vision-expert.md +550 -0
  165. package/packages/plugin-ml/agents/gradient-boosting-expert.md +455 -0
  166. package/packages/plugin-ml/agents/neural-network-architect.md +1228 -0
  167. package/packages/plugin-ml/agents/nlp-transformer-expert.md +584 -0
  168. package/packages/plugin-ml/agents/pytorch-expert.md +412 -0
  169. package/packages/plugin-ml/agents/reinforcement-learning-expert.md +2088 -0
  170. package/packages/plugin-ml/agents/scikit-learn-expert.md +228 -0
  171. package/packages/plugin-ml/agents/tensorflow-keras-expert.md +509 -0
  172. package/packages/plugin-ml/agents/time-series-expert.md +303 -0
  173. package/packages/plugin-ml/commands/ml-automl.md +572 -0
  174. package/packages/plugin-ml/commands/ml-train-optimize.md +657 -0
  175. package/packages/plugin-ml/package.json +52 -0
  176. package/packages/plugin-ml/plugin.json +338 -0
  177. package/packages/plugin-pm/README.md +368 -0
  178. package/packages/plugin-pm/claudeautopm-plugin-pm-2.0.0.tgz +0 -0
  179. package/packages/plugin-pm/commands/github/workflow-create.md +42 -0
  180. package/packages/plugin-pm/package.json +57 -0
  181. package/packages/plugin-pm/plugin.json +503 -0
  182. package/packages/plugin-testing/README.md +401 -0
  183. package/{autopm/.claude/agents/testing → packages/plugin-testing/agents}/frontend-testing-engineer.md +373 -0
  184. package/packages/plugin-testing/commands/jest-optimize.md +800 -0
  185. package/packages/plugin-testing/commands/playwright-optimize.md +887 -0
  186. package/packages/plugin-testing/commands/test-coverage.md +512 -0
  187. package/packages/plugin-testing/commands/test-performance.md +1041 -0
  188. package/packages/plugin-testing/commands/test-setup.md +414 -0
  189. package/packages/plugin-testing/package.json +40 -0
  190. package/packages/plugin-testing/plugin.json +197 -0
  191. package/packages/plugin-testing/rules/test-coverage-requirements.md +581 -0
  192. package/packages/plugin-testing/rules/testing-standards.md +529 -0
  193. package/packages/plugin-testing/scripts/examples/react-testing-example.test.jsx +460 -0
  194. package/packages/plugin-testing/scripts/examples/vitest-config-example.js +352 -0
  195. package/packages/plugin-testing/scripts/examples/vue-testing-example.test.js +586 -0
  196. package/scripts/publish-plugins.sh +166 -0
  197. package/autopm/.claude/agents/data/airflow-orchestration-expert.md +0 -52
  198. package/autopm/.claude/agents/data/kedro-pipeline-expert.md +0 -50
  199. package/autopm/.claude/agents/integration/message-queue-engineer.md +0 -794
  200. package/autopm/.claude/commands/ai/langgraph-workflow.md +0 -65
  201. package/autopm/.claude/commands/ai/openai-chat.md +0 -65
  202. package/autopm/.claude/commands/playwright/test-scaffold.md +0 -38
  203. package/autopm/.claude/commands/python/api-scaffold.md +0 -50
  204. package/autopm/.claude/commands/python/docs-query.md +0 -48
  205. package/autopm/.claude/commands/testing/prime.md +0 -314
  206. package/autopm/.claude/commands/testing/run.md +0 -125
  207. package/autopm/.claude/commands/ui/bootstrap-scaffold.md +0 -65
  208. package/autopm/.claude/rules/database-management-strategy.md +0 -17
  209. package/autopm/.claude/rules/database-pipeline.md +0 -94
  210. package/autopm/.claude/rules/ux-design-rules.md +0 -209
  211. package/autopm/.claude/rules/visual-testing.md +0 -223
  212. package/autopm/.claude/scripts/azure/README.md +0 -192
  213. package/autopm/.claude/scripts/azure/active-work.js +0 -524
  214. package/autopm/.claude/scripts/azure/active-work.sh +0 -20
  215. package/autopm/.claude/scripts/azure/blocked.js +0 -520
  216. package/autopm/.claude/scripts/azure/blocked.sh +0 -20
  217. package/autopm/.claude/scripts/azure/daily.js +0 -533
  218. package/autopm/.claude/scripts/azure/daily.sh +0 -20
  219. package/autopm/.claude/scripts/azure/dashboard.js +0 -970
  220. package/autopm/.claude/scripts/azure/dashboard.sh +0 -20
  221. package/autopm/.claude/scripts/azure/feature-list.js +0 -254
  222. package/autopm/.claude/scripts/azure/feature-list.sh +0 -20
  223. package/autopm/.claude/scripts/azure/feature-show.js +0 -7
  224. package/autopm/.claude/scripts/azure/feature-show.sh +0 -20
  225. package/autopm/.claude/scripts/azure/feature-status.js +0 -604
  226. package/autopm/.claude/scripts/azure/feature-status.sh +0 -20
  227. package/autopm/.claude/scripts/azure/help.js +0 -342
  228. package/autopm/.claude/scripts/azure/help.sh +0 -20
  229. package/autopm/.claude/scripts/azure/next-task.js +0 -508
  230. package/autopm/.claude/scripts/azure/next-task.sh +0 -20
  231. package/autopm/.claude/scripts/azure/search.js +0 -469
  232. package/autopm/.claude/scripts/azure/search.sh +0 -20
  233. package/autopm/.claude/scripts/azure/setup.js +0 -745
  234. package/autopm/.claude/scripts/azure/setup.sh +0 -20
  235. package/autopm/.claude/scripts/azure/sprint-report.js +0 -1012
  236. package/autopm/.claude/scripts/azure/sprint-report.sh +0 -20
  237. package/autopm/.claude/scripts/azure/sync.js +0 -563
  238. package/autopm/.claude/scripts/azure/sync.sh +0 -20
  239. package/autopm/.claude/scripts/azure/us-list.js +0 -210
  240. package/autopm/.claude/scripts/azure/us-list.sh +0 -20
  241. package/autopm/.claude/scripts/azure/us-status.js +0 -238
  242. package/autopm/.claude/scripts/azure/us-status.sh +0 -20
  243. package/autopm/.claude/scripts/azure/validate.js +0 -626
  244. package/autopm/.claude/scripts/azure/validate.sh +0 -20
  245. package/autopm/.claude/scripts/azure/wrapper-template.sh +0 -20
  246. package/autopm/.claude/scripts/github/dependency-tracker.js +0 -554
  247. package/autopm/.claude/scripts/github/dependency-validator.js +0 -545
  248. package/autopm/.claude/scripts/github/dependency-visualizer.js +0 -477
  249. package/bin/node/azure-feature-show.js +0 -7
  250. /package/{autopm/.claude/agents/cloud → packages/plugin-ai/agents}/gemini-api-expert.md +0 -0
  251. /package/{autopm/.claude/agents/data → packages/plugin-ai/agents}/langgraph-workflow-expert.md +0 -0
  252. /package/{autopm/.claude/agents/cloud → packages/plugin-ai/agents}/openai-python-expert.md +0 -0
  253. /package/{autopm/.claude/agents/cloud → packages/plugin-cloud/agents}/README.md +0 -0
  254. /package/{autopm/.claude/agents/cloud → packages/plugin-cloud/agents}/aws-cloud-architect.md +0 -0
  255. /package/{autopm/.claude/agents/cloud → packages/plugin-cloud/agents}/azure-cloud-architect.md +0 -0
  256. /package/{autopm/.claude/agents/cloud → packages/plugin-cloud/agents}/gcp-cloud-architect.md +0 -0
  257. /package/{autopm/.claude/agents/cloud → packages/plugin-cloud/agents}/gcp-cloud-functions-engineer.md +0 -0
  258. /package/{autopm/.claude/agents/cloud → packages/plugin-cloud/agents}/kubernetes-orchestrator.md +0 -0
  259. /package/{autopm/.claude/agents/cloud → packages/plugin-cloud/agents}/terraform-infrastructure-expert.md +0 -0
  260. /package/{autopm/.claude/commands/cloud → packages/plugin-cloud/commands}/infra-deploy.md +0 -0
  261. /package/{autopm/.claude/commands/kubernetes/deploy.md → packages/plugin-cloud/commands/k8s-deploy.md} +0 -0
  262. /package/{autopm/.claude/commands/infrastructure → packages/plugin-cloud/commands}/ssh-security.md +0 -0
  263. /package/{autopm/.claude/commands/infrastructure → packages/plugin-cloud/commands}/traefik-setup.md +0 -0
  264. /package/{autopm/.claude → packages/plugin-cloud}/rules/infrastructure-pipeline.md +0 -0
  265. /package/{autopm/.claude → packages/plugin-core}/agents/core/agent-manager.md +0 -0
  266. /package/{autopm/.claude → packages/plugin-core}/agents/core/code-analyzer.md +0 -0
  267. /package/{autopm/.claude → packages/plugin-core}/agents/core/file-analyzer.md +0 -0
  268. /package/{autopm/.claude → packages/plugin-core}/agents/core/test-runner.md +0 -0
  269. /package/{autopm/.claude → packages/plugin-core}/rules/ai-integration-patterns.md +0 -0
  270. /package/{autopm/.claude → packages/plugin-core}/rules/performance-guidelines.md +0 -0
  271. /package/{autopm/.claude/agents/databases → packages/plugin-databases/agents}/README.md +0 -0
  272. /package/{autopm/.claude/agents/devops → packages/plugin-devops/agents}/README.md +0 -0
  273. /package/{autopm/.claude/agents/devops → packages/plugin-devops/agents}/azure-devops-specialist.md +0 -0
  274. /package/{autopm/.claude/agents/devops → packages/plugin-devops/agents}/docker-containerization-expert.md +0 -0
  275. /package/{autopm/.claude/agents/devops → packages/plugin-devops/agents}/mcp-context-manager.md +0 -0
  276. /package/{autopm/.claude/agents/devops → packages/plugin-devops/agents}/observability-engineer.md +0 -0
  277. /package/{autopm/.claude/agents/devops → packages/plugin-devops/agents}/ssh-operations-expert.md +0 -0
  278. /package/{autopm/.claude/agents/devops → packages/plugin-devops/agents}/traefik-proxy-expert.md +0 -0
  279. /package/{autopm/.claude/commands/github → packages/plugin-devops/commands}/workflow-create.md +0 -0
  280. /package/{autopm/.claude → packages/plugin-devops}/rules/ci-cd-kubernetes-strategy.md +0 -0
  281. /package/{autopm/.claude → packages/plugin-devops}/rules/devops-troubleshooting-playbook.md +0 -0
  282. /package/{autopm/.claude → packages/plugin-devops}/rules/docker-first-development.md +0 -0
  283. /package/{autopm/.claude/agents/frameworks → packages/plugin-frameworks/agents}/README.md +0 -0
  284. /package/{autopm/.claude/agents/frameworks → packages/plugin-frameworks/agents}/nats-messaging-expert.md +0 -0
  285. /package/{autopm/.claude/agents/frameworks → packages/plugin-frameworks/agents}/react-ui-expert.md +0 -0
  286. /package/{autopm/.claude/agents/frameworks → packages/plugin-frameworks/agents}/ux-design-expert.md +0 -0
  287. /package/{autopm/.claude/commands/react → packages/plugin-frameworks/commands}/app-scaffold.md +0 -0
  288. /package/{autopm/.claude/commands/ui → packages/plugin-frameworks/commands}/tailwind-system.md +0 -0
  289. /package/{autopm/.claude → packages/plugin-frameworks}/rules/ui-development-standards.md +0 -0
  290. /package/{autopm/.claude → packages/plugin-frameworks}/rules/ui-framework-rules.md +0 -0
  291. /package/{autopm/.claude/agents/languages → packages/plugin-languages/agents}/README.md +0 -0
  292. /package/{autopm/.claude/agents/languages → packages/plugin-languages/agents}/bash-scripting-expert.md +0 -0
  293. /package/{autopm/.claude/agents/languages → packages/plugin-languages/agents}/javascript-frontend-engineer.md +0 -0
  294. /package/{autopm/.claude/agents/languages → packages/plugin-languages/agents}/nodejs-backend-engineer.md +0 -0
  295. /package/{autopm/.claude/agents/languages → packages/plugin-languages/agents}/python-backend-engineer.md +0 -0
  296. /package/{autopm/.claude/agents/languages → packages/plugin-languages/agents}/python-backend-expert.md +0 -0
  297. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/COMMANDS.md +0 -0
  298. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/COMMAND_MAPPING.md +0 -0
  299. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/INTEGRATION_FIX.md +0 -0
  300. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/README.md +0 -0
  301. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/active-work.md +0 -0
  302. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/aliases.md +0 -0
  303. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/blocked-items.md +0 -0
  304. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/clean.md +0 -0
  305. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/docs-query.md +0 -0
  306. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/feature-decompose.md +0 -0
  307. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/feature-list.md +0 -0
  308. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/feature-new.md +0 -0
  309. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/feature-show.md +0 -0
  310. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/feature-start.md +0 -0
  311. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/fix-integration-example.md +0 -0
  312. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/help.md +0 -0
  313. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/import-us.md +0 -0
  314. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/init.md +0 -0
  315. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/next-task.md +0 -0
  316. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/search.md +0 -0
  317. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/sprint-status.md +0 -0
  318. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/standup.md +0 -0
  319. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/sync-all.md +0 -0
  320. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-analyze.md +0 -0
  321. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-close.md +0 -0
  322. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-edit.md +0 -0
  323. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-list.md +0 -0
  324. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-new.md +0 -0
  325. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-reopen.md +0 -0
  326. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-show.md +0 -0
  327. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-start.md +0 -0
  328. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-status.md +0 -0
  329. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/task-sync.md +0 -0
  330. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/us-edit.md +0 -0
  331. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/us-list.md +0 -0
  332. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/us-new.md +0 -0
  333. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/us-parse.md +0 -0
  334. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/us-show.md +0 -0
  335. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/us-status.md +0 -0
  336. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/validate.md +0 -0
  337. /package/{autopm/.claude → packages/plugin-pm}/commands/azure/work-item-sync.md +0 -0
  338. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/blocked.md +0 -0
  339. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/clean.md +0 -0
  340. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/context-create.md +0 -0
  341. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/context-prime.md +0 -0
  342. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/context-update.md +0 -0
  343. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/context.md +0 -0
  344. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-close.md +0 -0
  345. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-decompose.md +0 -0
  346. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-edit.md +0 -0
  347. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-list.md +0 -0
  348. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-merge.md +0 -0
  349. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-oneshot.md +0 -0
  350. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-refresh.md +0 -0
  351. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-show.md +0 -0
  352. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-split.md +0 -0
  353. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-start.md +0 -0
  354. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-status.md +0 -0
  355. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-sync-modular.md +0 -0
  356. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-sync-original.md +0 -0
  357. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/epic-sync.md +0 -0
  358. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/help.md +0 -0
  359. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/import.md +0 -0
  360. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/in-progress.md +0 -0
  361. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/init.md +0 -0
  362. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/issue-analyze.md +0 -0
  363. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/issue-close.md +0 -0
  364. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/issue-edit.md +0 -0
  365. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/issue-reopen.md +0 -0
  366. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/issue-show.md +0 -0
  367. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/issue-start.md +0 -0
  368. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/issue-status.md +0 -0
  369. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/issue-sync.md +0 -0
  370. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/next.md +0 -0
  371. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/prd-edit.md +0 -0
  372. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/prd-list.md +0 -0
  373. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/prd-new.md +0 -0
  374. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/prd-parse.md +0 -0
  375. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/prd-status.md +0 -0
  376. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/search.md +0 -0
  377. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/standup.md +0 -0
  378. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/status.md +0 -0
  379. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/sync.md +0 -0
  380. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/test-reference-update.md +0 -0
  381. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/validate.md +0 -0
  382. /package/{autopm/.claude/commands/pm → packages/plugin-pm/commands}/what-next.md +0 -0
  383. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/analytics.js +0 -0
  384. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/blocked.js +0 -0
  385. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/blocked.sh +0 -0
  386. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/clean.js +0 -0
  387. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/context-create.js +0 -0
  388. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/context-prime.js +0 -0
  389. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/context-update.js +0 -0
  390. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/context.js +0 -0
  391. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-close.js +0 -0
  392. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-edit.js +0 -0
  393. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-list.js +0 -0
  394. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-list.sh +0 -0
  395. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-show.js +0 -0
  396. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-show.sh +0 -0
  397. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-split.js +0 -0
  398. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-start/epic-start.js +0 -0
  399. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-start/epic-start.sh +0 -0
  400. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-status.js +0 -0
  401. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-status.sh +0 -0
  402. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-sync/README.md +0 -0
  403. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-sync/create-epic-issue.sh +0 -0
  404. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-sync/create-task-issues.sh +0 -0
  405. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-sync/update-epic-file.sh +0 -0
  406. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-sync/update-references.sh +0 -0
  407. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/epic-sync.sh +0 -0
  408. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/help.js +0 -0
  409. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/help.sh +0 -0
  410. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/in-progress.js +0 -0
  411. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/in-progress.sh +0 -0
  412. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/init.js +0 -0
  413. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/init.sh +0 -0
  414. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-close.js +0 -0
  415. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-edit.js +0 -0
  416. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-show.js +0 -0
  417. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-start.js +0 -0
  418. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-sync/format-comment.sh +0 -0
  419. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-sync/gather-updates.sh +0 -0
  420. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-sync/post-comment.sh +0 -0
  421. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-sync/preflight-validation.sh +0 -0
  422. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/issue-sync/update-frontmatter.sh +0 -0
  423. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/lib/README.md +0 -0
  424. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/lib/epic-discovery.js +0 -0
  425. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/lib/logger.js +0 -0
  426. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/next.js +0 -0
  427. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/next.sh +0 -0
  428. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/optimize.js +0 -0
  429. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/pr-create.js +0 -0
  430. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/pr-list.js +0 -0
  431. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/prd-list.js +0 -0
  432. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/prd-list.sh +0 -0
  433. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/prd-new.js +0 -0
  434. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/prd-parse.js +0 -0
  435. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/prd-status.js +0 -0
  436. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/prd-status.sh +0 -0
  437. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/release.js +0 -0
  438. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/search.js +0 -0
  439. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/search.sh +0 -0
  440. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/standup.js +0 -0
  441. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/standup.sh +0 -0
  442. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/status.js +0 -0
  443. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/status.sh +0 -0
  444. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/sync-batch.js +0 -0
  445. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/sync.js +0 -0
  446. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/template-list.js +0 -0
  447. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/template-new.js +0 -0
  448. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/validate.js +0 -0
  449. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/validate.sh +0 -0
  450. /package/{autopm/.claude → packages/plugin-pm}/scripts/pm/what-next.js +0 -0
@@ -0,0 +1,636 @@
1
+ # javascript:optimize
2
+
3
+ Optimize JavaScript/TypeScript frontend performance with Context7-verified bundling, tree-shaking, and runtime optimization.
4
+
5
+ ## Description
6
+
7
+ Comprehensive JavaScript performance optimization following web.dev best practices:
8
+ - Bundle optimization (code splitting, tree-shaking)
9
+ - Runtime performance (event loop, debouncing)
10
+ - Resource loading (lazy loading, preloading)
11
+ - Critical rendering path optimization
12
+ - Web Workers for background processing
13
+
14
+ ## Required Documentation Access
15
+
16
+ **MANDATORY:** Before optimization, query Context7 for JavaScript best practices:
17
+
18
+ **Documentation Queries:**
19
+ - `mcp://context7/web-dev/performance` - Web performance optimization
20
+ - `mcp://context7/javascript/bundling` - Bundle optimization techniques
21
+ - `mcp://context7/web-dev/critical-rendering-path` - Rendering optimization
22
+ - `mcp://context7/javascript/web-workers` - Background processing
23
+ - `mcp://context7/web-dev/resource-hints` - Resource loading optimization
24
+
25
+ **Why This is Required:**
26
+ - Ensures optimization follows web.dev best practices
27
+ - Applies proven bundling and minification techniques
28
+ - Validates resource loading strategies
29
+ - Prevents common JavaScript performance pitfalls
30
+
31
+ ## Usage
32
+
33
+ ```bash
34
+ /javascript:optimize [options]
35
+ ```
36
+
37
+ ## Options
38
+
39
+ - `--scope <bundle|runtime|resources|all>` - Optimization scope (default: all)
40
+ - `--analyze-only` - Analyze without applying changes
41
+ - `--output <file>` - Write optimization report
42
+ - `--bundler <webpack|vite|rollup>` - Bundler-specific optimization
43
+ - `--target <modern|legacy>` - Browser target (default: modern)
44
+
45
+ ## Examples
46
+
47
+ ### Full Application Optimization
48
+ ```bash
49
+ /javascript:optimize
50
+ ```
51
+
52
+ ### Bundle Optimization Only
53
+ ```bash
54
+ /javascript:optimize --scope bundle --bundler vite
55
+ ```
56
+
57
+ ### Analyze Performance
58
+ ```bash
59
+ /javascript:optimize --analyze-only --output performance-report.md
60
+ ```
61
+
62
+ ### Modern Browsers Only
63
+ ```bash
64
+ /javascript:optimize --target modern
65
+ ```
66
+
67
+ ## Optimization Categories
68
+
69
+ ### 1. Bundle Optimization (Context7-Verified)
70
+
71
+ **Patterns from Context7 (/websites/web_dev_learn):**
72
+
73
+ #### Code Splitting
74
+ ```javascript
75
+ // BEFORE: Single large bundle
76
+ import { heavyLibrary } from 'heavy-lib';
77
+ import { rareFeature } from './rare-feature';
78
+
79
+ function init() {
80
+ heavyLibrary.setup();
81
+ if (needsRareFeature) {
82
+ rareFeature.run();
83
+ }
84
+ }
85
+ // Bundle size: 850 KB
86
+
87
+ // AFTER: Dynamic imports (code splitting)
88
+ function init() {
89
+ import('heavy-lib').then(({ heavyLibrary }) => {
90
+ heavyLibrary.setup();
91
+ });
92
+
93
+ if (needsRareFeature) {
94
+ import('./rare-feature').then(({ rareFeature }) => {
95
+ rareFeature.run();
96
+ });
97
+ }
98
+ }
99
+ // Initial bundle: 150 KB (82% reduction)
100
+ // Lazy chunks: Loaded on demand
101
+ ```
102
+
103
+ **Performance Impact:**
104
+ - Initial load: 850 KB → 150 KB (82% reduction)
105
+ - Time to Interactive: 3.2s → 0.9s (72% faster)
106
+ - First Contentful Paint: 1.8s → 0.5s (72% faster)
107
+
108
+ #### Tree Shaking (Webpack/Rollup)
109
+ ```javascript
110
+ // library.js - Export multiple functions
111
+ export function usedFunction() {
112
+ return 'used';
113
+ }
114
+
115
+ export function unusedFunction() {
116
+ return 'never imported';
117
+ }
118
+
119
+ // app.js - Import only what you need
120
+ import { usedFunction } from './library';
121
+
122
+ console.log(usedFunction());
123
+
124
+ // Result: unusedFunction() is removed from bundle (dead code elimination)
125
+ ```
126
+
127
+ **Configuration (package.json):**
128
+ ```json
129
+ {
130
+ "sideEffects": false
131
+ }
132
+ ```
133
+
134
+ **Benefits:**
135
+ - Removes unused exports (20-40% smaller bundles)
136
+ - Works with ES6 modules
137
+ - Automatic dead code elimination
138
+
139
+ #### Minification and Uglification
140
+ ```javascript
141
+ // BEFORE: Unminified JavaScript
142
+ export function injectScript() {
143
+ const scriptElement = document.createElement('script');
144
+ scriptElement.src = '/js/scripts.js';
145
+ scriptElement.type = 'module';
146
+ document.body.appendChild(scriptElement);
147
+ }
148
+ // Size: 180 bytes
149
+
150
+ // AFTER: Minified (Terser/UglifyJS)
151
+ export function injectScript(){const t=document.createElement("script");t.src="/js/scripts.js",t.type="module",document.body.appendChild(t)}
152
+ // Size: 126 bytes (30% reduction)
153
+ ```
154
+
155
+ **Benefits:**
156
+ - 20-40% size reduction
157
+ - Faster parsing
158
+ - Automatic in production builds
159
+
160
+ ### 2. Critical Rendering Path Optimization (Context7-Verified)
161
+
162
+ **Patterns from Context7 (/websites/web_dev_learn):**
163
+
164
+ #### Inline Critical CSS
165
+ ```html
166
+ <head>
167
+ <title>Page Title</title>
168
+ <!-- Inline critical CSS (above-the-fold styles) -->
169
+ <style>
170
+ h1,h2{color:#000}h1{font-size:2em}h2{font-size:1.5em}
171
+ </style>
172
+ </head>
173
+ <body>
174
+ <!-- Page content -->
175
+
176
+ <!-- Load non-critical CSS asynchronously -->
177
+ <link rel="stylesheet" href="non-critical.css">
178
+ </body>
179
+ ```
180
+
181
+ **Benefits:**
182
+ - Eliminates render-blocking CSS request
183
+ - Faster First Contentful Paint (FCP)
184
+ - Improved Largest Contentful Paint (LCP)
185
+
186
+ **Performance Impact:**
187
+ - FCP: 1.8s → 0.6s (67% faster)
188
+ - LCP: 2.4s → 1.1s (54% faster)
189
+
190
+ #### Defer Non-Critical JavaScript
191
+ ```html
192
+ <!-- BEFORE: Render-blocking script -->
193
+ <script src="/script.js"></script>
194
+
195
+ <!-- AFTER: Deferred script -->
196
+ <script defer src="/script.js"></script>
197
+ ```
198
+
199
+ **Benefits:**
200
+ - HTML parsing continues while script downloads
201
+ - Script executes after DOM is parsed
202
+ - Maintains execution order
203
+
204
+ **Script Loading Strategies:**
205
+ ```html
206
+ <!-- Critical: Block parsing (use sparingly) -->
207
+ <script src="/critical.js"></script>
208
+
209
+ <!-- Non-critical: Defer execution -->
210
+ <script src="/non-critical.js" defer></script>
211
+
212
+ <!-- Analytics: Async (order doesn't matter) -->
213
+ <script src="/analytics.js" async></script>
214
+ ```
215
+
216
+ #### Resource Hints
217
+ ```html
218
+ <!-- Preconnect: Establish early connection -->
219
+ <link rel="preconnect" href="https://api.example.com">
220
+
221
+ <!-- DNS Prefetch: Resolve DNS early -->
222
+ <link rel="dns-prefetch" href="https://fonts.googleapis.com">
223
+
224
+ <!-- Preload: High-priority resource -->
225
+ <link rel="preload" href="/styles/critical.css" as="style">
226
+
227
+ <!-- Prefetch: Low-priority future navigation -->
228
+ <link rel="prefetch" href="/page2.html" as="document">
229
+ ```
230
+
231
+ **Benefits:**
232
+ - Faster resource loading (100-500ms savings)
233
+ - Reduced latency for API calls
234
+ - Improved navigation performance
235
+
236
+ ### 3. Runtime Performance Optimization (Context7-Verified)
237
+
238
+ **Patterns from Context7:**
239
+
240
+ #### Debouncing Expensive Operations
241
+ ```javascript
242
+ // Context7 Pattern: Debounce scroll/resize handlers
243
+ function debounce(func, wait) {
244
+ let timeout;
245
+ return function executedFunction(...args) {
246
+ const later = () => {
247
+ clearTimeout(timeout);
248
+ func(...args);
249
+ };
250
+ clearTimeout(timeout);
251
+ timeout = setTimeout(later, wait);
252
+ };
253
+ }
254
+
255
+ // Usage: Debounce scroll handler
256
+ const handleScroll = debounce(() => {
257
+ console.log('Scroll handled');
258
+ updateScrollPosition();
259
+ }, 200);
260
+
261
+ window.addEventListener('scroll', handleScroll);
262
+ ```
263
+
264
+ **Benefits:**
265
+ - Reduces function calls by 90-95%
266
+ - Prevents event loop congestion
267
+ - Smoother scrolling/resizing
268
+
269
+ **Performance Impact:**
270
+ - Without debounce: 500 calls/second (event loop blocked)
271
+ - With debounce (200ms): 5 calls/second (smooth performance)
272
+
273
+ #### Lazy Loading with Intersection Observer
274
+ ```javascript
275
+ // Context7 Pattern: Lazy load images
276
+ const imageObserver = new IntersectionObserver((entries, observer) => {
277
+ entries.forEach(entry => {
278
+ if (entry.isIntersecting) {
279
+ const img = entry.target;
280
+ img.src = img.dataset.src;
281
+ img.classList.add('loaded');
282
+ observer.unobserve(img);
283
+ }
284
+ });
285
+ });
286
+
287
+ // Apply to all images with data-src
288
+ document.querySelectorAll('img[data-src]').forEach(img => {
289
+ imageObserver.observe(img);
290
+ });
291
+ ```
292
+
293
+ **HTML:**
294
+ ```html
295
+ <img
296
+ src="/images/placeholder.jpg"
297
+ data-src="/images/actual-image.jpg"
298
+ loading="lazy"
299
+ alt="Description"
300
+ />
301
+ ```
302
+
303
+ **Benefits:**
304
+ - Images load only when visible
305
+ - Faster initial page load
306
+ - Reduced bandwidth usage
307
+
308
+ **Performance Impact:**
309
+ - Initial load: 2.5 MB → 0.3 MB (88% reduction)
310
+ - Page load time: 4.2s → 1.1s (74% faster)
311
+
312
+ #### Web Workers for Background Processing
313
+ ```javascript
314
+ // Context7 Pattern: Offload heavy computation
315
+ // main.js
316
+ const worker = new Worker('/worker.js');
317
+
318
+ worker.postMessage({ data: largeDataset });
319
+
320
+ worker.onmessage = (event) => {
321
+ console.log('Result:', event.data);
322
+ updateUI(event.data);
323
+ };
324
+
325
+ // worker.js
326
+ self.onmessage = (event) => {
327
+ const result = processData(event.data);
328
+ self.postMessage(result);
329
+ };
330
+
331
+ function processData(data) {
332
+ // Heavy computation (doesn't block main thread)
333
+ return data.map(item => expensiveOperation(item));
334
+ }
335
+ ```
336
+
337
+ **Benefits:**
338
+ - Main thread remains responsive
339
+ - Parallel processing
340
+ - No UI freezing during computation
341
+
342
+ **Performance Impact:**
343
+ - Without worker: UI frozen for 3 seconds
344
+ - With worker: UI responsive (computation in background)
345
+
346
+ #### Performance API for Measurement
347
+ ```javascript
348
+ // Context7 Pattern: Measure custom timing
349
+ performance.mark('process-start');
350
+
351
+ // ... expensive operation
352
+ await processLargeDataset();
353
+
354
+ performance.mark('process-end');
355
+ performance.measure('process', 'process-start', 'process-end');
356
+
357
+ const measure = performance.getEntriesByName('process')[0];
358
+ console.log('Process took:', measure.duration, 'ms');
359
+ ```
360
+
361
+ **Navigation Timing:**
362
+ ```javascript
363
+ // Measure page load performance
364
+ const perfData = performance.getEntriesByType('navigation')[0];
365
+ console.log('DOM Load:', perfData.domContentLoadedEventEnd);
366
+ console.log('Full Load:', perfData.loadEventEnd);
367
+ ```
368
+
369
+ ### 4. Responsive Images Optimization
370
+
371
+ **Pattern from Context7:**
372
+
373
+ ```html
374
+ <!-- Picture element with WebP -->
375
+ <picture>
376
+ <source
377
+ media="(min-width: 1200px)"
378
+ srcset="/images/hero-large.webp"
379
+ type="image/webp"
380
+ />
381
+ <source
382
+ media="(min-width: 768px)"
383
+ srcset="/images/hero-medium.webp"
384
+ type="image/webp"
385
+ />
386
+ <img
387
+ src="/images/hero-small.jpg"
388
+ alt="Hero image"
389
+ loading="lazy"
390
+ width="800"
391
+ height="600"
392
+ />
393
+ </picture>
394
+ ```
395
+
396
+ **Benefits:**
397
+ - Modern format (WebP): 30-50% smaller than JPEG
398
+ - Responsive sizing: Correct image for device
399
+ - Lazy loading: Deferred loading for below-fold images
400
+
401
+ **Performance Impact:**
402
+ - Image size: 1.2 MB → 0.4 MB (67% reduction)
403
+ - Mobile bandwidth savings: 80%
404
+
405
+ #### Prioritize LCP Image
406
+ ```html
407
+ <!-- LCP image should NOT be lazy loaded -->
408
+ <img
409
+ src="hero.jpg"
410
+ alt="Main promotional image"
411
+ fetchpriority="high"
412
+ >
413
+ ```
414
+
415
+ **Benefits:**
416
+ - Prioritizes critical image loading
417
+ - Improves Largest Contentful Paint (LCP)
418
+ - Better Core Web Vitals score
419
+
420
+ ### 5. Render-Blocking Resource Management
421
+
422
+ **Pattern from Context7:**
423
+
424
+ #### Mark Render-Blocking Resources
425
+ ```html
426
+ <!-- Explicitly mark render-blocking (Chrome 105+) -->
427
+ <link rel="stylesheet" href="critical.css" blocking="render">
428
+ <script src="important.js" blocking="render"></script>
429
+ <style blocking="render">
430
+ body { background-color: lightblue; }
431
+ </style>
432
+ ```
433
+
434
+ #### Mark Non-Render-Blocking
435
+ ```html
436
+ <!-- Make CSS non-render-blocking with media query -->
437
+ <link rel="stylesheet" href="print.css" media="print">
438
+ <link rel="stylesheet" href="large-screens.css" media="(min-width: 1200px)">
439
+ ```
440
+
441
+ **Benefits:**
442
+ - Explicit control over rendering
443
+ - Parser continues processing
444
+ - Faster initial rendering
445
+
446
+ ## Optimization Output
447
+
448
+ ```
449
+ 🎨 JavaScript/Frontend Performance Optimization Analysis
450
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
451
+
452
+ Project: React SPA
453
+ Bundler: Webpack 5.89.0
454
+ Target: Modern Browsers (ES2020)
455
+
456
+ 📦 Bundle Analysis
457
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
458
+
459
+ Current Bundle Size: 850 KB (uncompressed)
460
+ Gzipped: 280 KB
461
+ Target: < 200 KB (gzipped)
462
+
463
+ ⚠️ Large bundle detected
464
+
465
+ Top Contributors:
466
+ 1. moment.js - 72 KB (use date-fns: 92% smaller)
467
+ 2. lodash - 68 KB (use lodash-es: tree-shakeable)
468
+ 3. unused exports - 54 KB (enable tree-shaking)
469
+ 4. duplicate code - 38 KB (deduplicate dependencies)
470
+
471
+ 💡 Recommendations:
472
+ 1. Replace moment with date-fns → Save 66 KB
473
+ 2. Replace lodash with lodash-es → Save 50 KB
474
+ 3. Enable tree-shaking (sideEffects: false) → Save 54 KB
475
+ 4. Code splitting for routes → Initial: 150 KB (82% reduction)
476
+
477
+ Expected Impact: 850 KB → 150 KB initial (82% reduction)
478
+
479
+ 🚀 Critical Rendering Path
480
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
481
+
482
+ ❌ Render-blocking resources detected
483
+
484
+ CSS:
485
+ - /styles/main.css (42 KB, 320ms)
486
+ - /styles/fonts.css (18 KB, 180ms)
487
+
488
+ JavaScript:
489
+ - /js/vendor.js (180 KB, 890ms)
490
+ - /js/app.js (120 KB, 640ms)
491
+
492
+ 💡 Recommendations:
493
+ 1. Inline critical CSS → Save 500ms (FCP improvement)
494
+ 2. Defer non-critical JS → Save 1,530ms
495
+ 3. Preload critical resources → Save 200ms
496
+
497
+ Expected Impact:
498
+ - FCP: 1.8s → 0.6s (67% faster)
499
+ - LCP: 2.4s → 1.1s (54% faster)
500
+
501
+ ⚡ Runtime Performance
502
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
503
+
504
+ ⚠️ Performance issues detected
505
+
506
+ 1. Scroll handler without debounce
507
+ File: components/Navbar.js:42
508
+ Impact: 500 calls/second (blocks event loop)
509
+ 💡 Add debouncing (200ms)
510
+
511
+ 2. Heavy computation in main thread
512
+ File: utils/dataProcessor.js:156
513
+ Time: 2.3 seconds (UI frozen)
514
+ 💡 Move to Web Worker
515
+
516
+ 3. Large images not lazy loaded
517
+ Count: 15 images (8 MB total)
518
+ 💡 Add lazy loading attribute
519
+
520
+ Expected Impact:
521
+ - Smooth scrolling (95% fewer calls)
522
+ - Responsive UI (no freezing)
523
+ - 88% faster initial load (lazy loading)
524
+
525
+ 📊 Resource Loading
526
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
527
+
528
+ ⚠️ Suboptimal resource loading
529
+
530
+ Issues:
531
+ 1. Missing preconnect for API (api.example.com)
532
+ 2. Missing preload for LCP image
533
+ 3. No resource hints for external fonts
534
+
535
+ 💡 Recommendations:
536
+ 1. Add preconnect for API → Save 300ms
537
+ 2. Add preload for hero image → Save 200ms (LCP)
538
+ 3. Add dns-prefetch for fonts → Save 100ms
539
+
540
+ Expected Impact: 600ms faster resource loading
541
+
542
+ Summary
543
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
544
+
545
+ Total Optimizations: 14
546
+
547
+ 🔴 Critical: 2 (bundle size, render-blocking)
548
+ 🟡 High Impact: 6 (lazy loading, debouncing, workers)
549
+ 🟢 Medium Impact: 6 (resource hints, code splitting)
550
+
551
+ Estimated Performance Improvement:
552
+ - Bundle size: -82% (850 KB → 150 KB initial)
553
+ - FCP: -67% (1.8s → 0.6s)
554
+ - LCP: -54% (2.4s → 1.1s)
555
+ - TTI: -72% (3.2s → 0.9s)
556
+
557
+ Core Web Vitals:
558
+ - LCP: 2.4s → 1.1s (✅ Good: < 2.5s)
559
+ - FID: 80ms → 20ms (✅ Good: < 100ms)
560
+ - CLS: 0.15 → 0.05 (✅ Good: < 0.1)
561
+
562
+ Run with --apply to implement optimizations
563
+ ```
564
+
565
+ ## Implementation
566
+
567
+ This command uses the **@javascript-frontend-engineer** agent:
568
+
569
+ 1. Query Context7 for JavaScript optimization patterns
570
+ 2. Analyze bundle composition (Webpack Bundle Analyzer)
571
+ 3. Check critical rendering path (render-blocking resources)
572
+ 4. Detect performance anti-patterns (missing debouncing, lazy loading)
573
+ 5. Validate resource loading (preload, preconnect, prefetch)
574
+ 6. Generate optimization recommendations
575
+ 7. Optionally apply automated fixes
576
+
577
+ ## Best Practices Applied
578
+
579
+ Based on Context7 documentation from `/websites/web_dev_learn`:
580
+
581
+ 1. **Code Splitting** - Reduce initial bundle size (82%)
582
+ 2. **Tree Shaking** - Remove unused exports (20-40%)
583
+ 3. **Debouncing** - Optimize event handlers (95% fewer calls)
584
+ 4. **Lazy Loading** - Load resources on demand (88% savings)
585
+ 5. **Web Workers** - Background processing (non-blocking)
586
+ 6. **Resource Hints** - Faster resource loading (600ms savings)
587
+ 7. **Critical CSS** - Eliminate render-blocking (67% faster FCP)
588
+
589
+ ## Related Commands
590
+
591
+ - `/react:optimize` - React-specific optimization
592
+ - `/nextjs:optimize` - Next.js optimization
593
+ - `/bundle:analyze` - Bundle analysis
594
+
595
+ ## Troubleshooting
596
+
597
+ ### Large Bundle Size
598
+ - Enable tree-shaking (package.json: sideEffects: false)
599
+ - Use dynamic imports for code splitting
600
+ - Replace heavy libraries with lighter alternatives
601
+
602
+ ### Slow First Paint
603
+ - Inline critical CSS
604
+ - Defer non-critical JavaScript
605
+ - Preload critical resources
606
+
607
+ ### Blocked Event Loop
608
+ - Add debouncing to scroll/resize handlers
609
+ - Move heavy computation to Web Workers
610
+ - Use requestAnimationFrame for animations
611
+
612
+ ## Installation
613
+
614
+ ```bash
615
+ # Bundle analyzers
616
+ npm install --save-dev webpack-bundle-analyzer
617
+ npm install --save-dev rollup-plugin-visualizer
618
+
619
+ # Performance utilities
620
+ npm install --save-dev lighthouse
621
+ npm install --save-dev @bundle/cli
622
+
623
+ # Modern date library (replace moment)
624
+ npm install date-fns
625
+
626
+ # Tree-shakeable utilities (replace lodash)
627
+ npm install lodash-es
628
+ ```
629
+
630
+ ## Version History
631
+
632
+ - v2.0.0 - Initial Schema v2.0 release with Context7 integration
633
+ - Bundle optimization patterns
634
+ - Critical rendering path optimization
635
+ - Runtime performance best practices
636
+