claude-autopm 2.8.2 → 2.8.4

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 (391) hide show
  1. package/README.md +399 -637
  2. package/install/install.js +15 -5
  3. package/package.json +2 -1
  4. package/packages/plugin-ai/LICENSE +21 -0
  5. package/packages/plugin-ai/README.md +316 -0
  6. package/packages/plugin-ai/agents/anthropic-claude-expert.md +579 -0
  7. package/packages/plugin-ai/agents/azure-openai-expert.md +1411 -0
  8. package/packages/plugin-ai/agents/gemini-api-expert.md +880 -0
  9. package/packages/plugin-ai/agents/google-a2a-expert.md +1445 -0
  10. package/packages/plugin-ai/agents/huggingface-expert.md +2131 -0
  11. package/packages/plugin-ai/agents/langchain-expert.md +1427 -0
  12. package/packages/plugin-ai/agents/langgraph-workflow-expert.md +520 -0
  13. package/packages/plugin-ai/agents/openai-python-expert.md +1087 -0
  14. package/packages/plugin-ai/commands/a2a-setup.md +886 -0
  15. package/packages/plugin-ai/commands/ai-model-deployment.md +481 -0
  16. package/packages/plugin-ai/commands/anthropic-optimize.md +793 -0
  17. package/packages/plugin-ai/commands/huggingface-deploy.md +789 -0
  18. package/packages/plugin-ai/commands/langchain-optimize.md +807 -0
  19. package/packages/plugin-ai/commands/llm-optimize.md +348 -0
  20. package/packages/plugin-ai/commands/openai-optimize.md +863 -0
  21. package/packages/plugin-ai/commands/rag-optimize.md +841 -0
  22. package/packages/plugin-ai/commands/rag-setup-scaffold.md +382 -0
  23. package/packages/plugin-ai/package.json +66 -0
  24. package/packages/plugin-ai/plugin.json +519 -0
  25. package/packages/plugin-ai/rules/ai-model-standards.md +449 -0
  26. package/packages/plugin-ai/rules/prompt-engineering-standards.md +509 -0
  27. package/packages/plugin-ai/scripts/examples/huggingface-inference-example.py +145 -0
  28. package/packages/plugin-ai/scripts/examples/langchain-rag-example.py +366 -0
  29. package/packages/plugin-ai/scripts/examples/mlflow-tracking-example.py +224 -0
  30. package/packages/plugin-ai/scripts/examples/openai-chat-example.py +425 -0
  31. package/packages/plugin-cloud/README.md +268 -0
  32. package/packages/plugin-cloud/agents/README.md +55 -0
  33. package/packages/plugin-cloud/agents/aws-cloud-architect.md +521 -0
  34. package/packages/plugin-cloud/agents/azure-cloud-architect.md +436 -0
  35. package/packages/plugin-cloud/agents/gcp-cloud-architect.md +385 -0
  36. package/packages/plugin-cloud/agents/gcp-cloud-functions-engineer.md +306 -0
  37. package/packages/plugin-cloud/agents/gemini-api-expert.md +880 -0
  38. package/packages/plugin-cloud/agents/kubernetes-orchestrator.md +566 -0
  39. package/packages/plugin-cloud/agents/openai-python-expert.md +1087 -0
  40. package/packages/plugin-cloud/agents/terraform-infrastructure-expert.md +454 -0
  41. package/packages/plugin-cloud/commands/cloud-cost-optimize.md +243 -0
  42. package/packages/plugin-cloud/commands/cloud-validate.md +196 -0
  43. package/packages/plugin-cloud/commands/infra-deploy.md +38 -0
  44. package/packages/plugin-cloud/commands/k8s-deploy.md +37 -0
  45. package/packages/plugin-cloud/commands/ssh-security.md +65 -0
  46. package/packages/plugin-cloud/commands/traefik-setup.md +65 -0
  47. package/packages/plugin-cloud/hooks/pre-cloud-deploy.js +456 -0
  48. package/packages/plugin-cloud/package.json +64 -0
  49. package/packages/plugin-cloud/plugin.json +338 -0
  50. package/packages/plugin-cloud/rules/cloud-security-compliance.md +313 -0
  51. package/packages/plugin-cloud/rules/infrastructure-pipeline.md +128 -0
  52. package/packages/plugin-cloud/scripts/examples/aws-validate.sh +30 -0
  53. package/packages/plugin-cloud/scripts/examples/azure-setup.sh +33 -0
  54. package/packages/plugin-cloud/scripts/examples/gcp-setup.sh +39 -0
  55. package/packages/plugin-cloud/scripts/examples/k8s-validate.sh +40 -0
  56. package/packages/plugin-cloud/scripts/examples/terraform-init.sh +26 -0
  57. package/packages/plugin-core/README.md +274 -0
  58. package/packages/plugin-core/agents/core/agent-manager.md +296 -0
  59. package/packages/plugin-core/agents/core/code-analyzer.md +131 -0
  60. package/packages/plugin-core/agents/core/file-analyzer.md +162 -0
  61. package/packages/plugin-core/agents/core/test-runner.md +200 -0
  62. package/packages/plugin-core/commands/code-rabbit.md +128 -0
  63. package/packages/plugin-core/commands/prompt.md +9 -0
  64. package/packages/plugin-core/commands/re-init.md +9 -0
  65. package/packages/plugin-core/hooks/context7-reminder.md +29 -0
  66. package/packages/plugin-core/hooks/enforce-agents.js +125 -0
  67. package/packages/plugin-core/hooks/enforce-agents.sh +35 -0
  68. package/packages/plugin-core/hooks/pre-agent-context7.js +224 -0
  69. package/packages/plugin-core/hooks/pre-command-context7.js +229 -0
  70. package/packages/plugin-core/hooks/strict-enforce-agents.sh +39 -0
  71. package/packages/plugin-core/hooks/test-hook.sh +21 -0
  72. package/packages/plugin-core/hooks/unified-context7-enforcement.sh +38 -0
  73. package/packages/plugin-core/package.json +45 -0
  74. package/packages/plugin-core/plugin.json +387 -0
  75. package/packages/plugin-core/rules/agent-coordination.md +549 -0
  76. package/packages/plugin-core/rules/agent-mandatory.md +170 -0
  77. package/packages/plugin-core/rules/ai-integration-patterns.md +219 -0
  78. package/packages/plugin-core/rules/command-pipelines.md +208 -0
  79. package/packages/plugin-core/rules/context-optimization.md +176 -0
  80. package/packages/plugin-core/rules/context7-enforcement.md +327 -0
  81. package/packages/plugin-core/rules/datetime.md +122 -0
  82. package/packages/plugin-core/rules/definition-of-done.md +272 -0
  83. package/packages/plugin-core/rules/development-environments.md +19 -0
  84. package/packages/plugin-core/rules/development-workflow.md +198 -0
  85. package/packages/plugin-core/rules/framework-path-rules.md +180 -0
  86. package/packages/plugin-core/rules/frontmatter-operations.md +64 -0
  87. package/packages/plugin-core/rules/git-strategy.md +237 -0
  88. package/packages/plugin-core/rules/golden-rules.md +181 -0
  89. package/packages/plugin-core/rules/naming-conventions.md +111 -0
  90. package/packages/plugin-core/rules/no-pr-workflow.md +183 -0
  91. package/packages/plugin-core/rules/performance-guidelines.md +403 -0
  92. package/packages/plugin-core/rules/pipeline-mandatory.md +109 -0
  93. package/packages/plugin-core/rules/security-checklist.md +318 -0
  94. package/packages/plugin-core/rules/standard-patterns.md +197 -0
  95. package/packages/plugin-core/rules/strip-frontmatter.md +85 -0
  96. package/packages/plugin-core/rules/tdd.enforcement.md +103 -0
  97. package/packages/plugin-core/rules/use-ast-grep.md +113 -0
  98. package/packages/plugin-core/scripts/lib/datetime-utils.sh +254 -0
  99. package/packages/plugin-core/scripts/lib/frontmatter-utils.sh +294 -0
  100. package/packages/plugin-core/scripts/lib/github-utils.sh +221 -0
  101. package/packages/plugin-core/scripts/lib/logging-utils.sh +199 -0
  102. package/packages/plugin-core/scripts/lib/validation-utils.sh +339 -0
  103. package/packages/plugin-core/scripts/mcp/add.sh +7 -0
  104. package/packages/plugin-core/scripts/mcp/disable.sh +12 -0
  105. package/packages/plugin-core/scripts/mcp/enable.sh +12 -0
  106. package/packages/plugin-core/scripts/mcp/list.sh +7 -0
  107. package/packages/plugin-core/scripts/mcp/sync.sh +8 -0
  108. package/packages/plugin-data/README.md +315 -0
  109. package/packages/plugin-data/agents/airflow-orchestration-expert.md +158 -0
  110. package/packages/plugin-data/agents/kedro-pipeline-expert.md +304 -0
  111. package/packages/plugin-data/agents/langgraph-workflow-expert.md +530 -0
  112. package/packages/plugin-data/commands/airflow-dag-scaffold.md +413 -0
  113. package/packages/plugin-data/commands/kafka-pipeline-scaffold.md +503 -0
  114. package/packages/plugin-data/package.json +66 -0
  115. package/packages/plugin-data/plugin.json +294 -0
  116. package/packages/plugin-data/rules/data-quality-standards.md +373 -0
  117. package/packages/plugin-data/rules/etl-pipeline-standards.md +255 -0
  118. package/packages/plugin-data/scripts/examples/airflow-dag-example.py +245 -0
  119. package/packages/plugin-data/scripts/examples/dbt-transform-example.sql +238 -0
  120. package/packages/plugin-data/scripts/examples/kafka-streaming-example.py +257 -0
  121. package/packages/plugin-data/scripts/examples/pandas-etl-example.py +332 -0
  122. package/packages/plugin-databases/README.md +330 -0
  123. package/packages/plugin-databases/agents/README.md +50 -0
  124. package/packages/plugin-databases/agents/bigquery-expert.md +401 -0
  125. package/packages/plugin-databases/agents/cosmosdb-expert.md +375 -0
  126. package/packages/plugin-databases/agents/mongodb-expert.md +407 -0
  127. package/packages/plugin-databases/agents/postgresql-expert.md +329 -0
  128. package/packages/plugin-databases/agents/redis-expert.md +74 -0
  129. package/packages/plugin-databases/commands/db-optimize.md +612 -0
  130. package/packages/plugin-databases/package.json +60 -0
  131. package/packages/plugin-databases/plugin.json +237 -0
  132. package/packages/plugin-databases/rules/database-management-strategy.md +146 -0
  133. package/packages/plugin-databases/rules/database-pipeline.md +316 -0
  134. package/packages/plugin-databases/scripts/examples/bigquery-cost-analyze.sh +160 -0
  135. package/packages/plugin-databases/scripts/examples/cosmosdb-ru-optimize.sh +163 -0
  136. package/packages/plugin-databases/scripts/examples/mongodb-shard-check.sh +120 -0
  137. package/packages/plugin-databases/scripts/examples/postgres-index-analyze.sh +95 -0
  138. package/packages/plugin-databases/scripts/examples/redis-cache-stats.sh +121 -0
  139. package/packages/plugin-devops/README.md +367 -0
  140. package/packages/plugin-devops/agents/README.md +52 -0
  141. package/packages/plugin-devops/agents/azure-devops-specialist.md +308 -0
  142. package/packages/plugin-devops/agents/docker-containerization-expert.md +298 -0
  143. package/packages/plugin-devops/agents/github-operations-specialist.md +335 -0
  144. package/packages/plugin-devops/agents/mcp-context-manager.md +319 -0
  145. package/packages/plugin-devops/agents/observability-engineer.md +574 -0
  146. package/packages/plugin-devops/agents/ssh-operations-expert.md +1093 -0
  147. package/packages/plugin-devops/agents/traefik-proxy-expert.md +444 -0
  148. package/packages/plugin-devops/commands/ci-pipeline-create.md +581 -0
  149. package/packages/plugin-devops/commands/docker-optimize.md +493 -0
  150. package/packages/plugin-devops/commands/workflow-create.md +42 -0
  151. package/packages/plugin-devops/hooks/pre-docker-build.js +472 -0
  152. package/packages/plugin-devops/package.json +61 -0
  153. package/packages/plugin-devops/plugin.json +302 -0
  154. package/packages/plugin-devops/rules/ci-cd-kubernetes-strategy.md +25 -0
  155. package/packages/plugin-devops/rules/devops-troubleshooting-playbook.md +450 -0
  156. package/packages/plugin-devops/rules/docker-first-development.md +404 -0
  157. package/packages/plugin-devops/rules/github-operations.md +92 -0
  158. package/packages/plugin-devops/scripts/examples/docker-build-multistage.sh +43 -0
  159. package/packages/plugin-devops/scripts/examples/docker-compose-validate.sh +74 -0
  160. package/packages/plugin-devops/scripts/examples/github-workflow-validate.sh +48 -0
  161. package/packages/plugin-devops/scripts/examples/prometheus-health-check.sh +58 -0
  162. package/packages/plugin-devops/scripts/examples/ssh-key-setup.sh +74 -0
  163. package/packages/plugin-frameworks/README.md +309 -0
  164. package/packages/plugin-frameworks/agents/README.md +64 -0
  165. package/packages/plugin-frameworks/agents/e2e-test-engineer.md +579 -0
  166. package/packages/plugin-frameworks/agents/nats-messaging-expert.md +254 -0
  167. package/packages/plugin-frameworks/agents/react-frontend-engineer.md +393 -0
  168. package/packages/plugin-frameworks/agents/react-ui-expert.md +226 -0
  169. package/packages/plugin-frameworks/agents/tailwindcss-expert.md +1021 -0
  170. package/packages/plugin-frameworks/agents/ux-design-expert.md +244 -0
  171. package/packages/plugin-frameworks/commands/app-scaffold.md +50 -0
  172. package/packages/plugin-frameworks/commands/nextjs-optimize.md +692 -0
  173. package/packages/plugin-frameworks/commands/react-optimize.md +583 -0
  174. package/packages/plugin-frameworks/commands/tailwind-system.md +64 -0
  175. package/packages/plugin-frameworks/package.json +59 -0
  176. package/packages/plugin-frameworks/plugin.json +224 -0
  177. package/packages/plugin-frameworks/rules/performance-guidelines.md +403 -0
  178. package/packages/plugin-frameworks/rules/ui-development-standards.md +281 -0
  179. package/packages/plugin-frameworks/rules/ui-framework-rules.md +151 -0
  180. package/packages/plugin-frameworks/scripts/examples/react-component-perf.sh +34 -0
  181. package/packages/plugin-frameworks/scripts/examples/tailwind-optimize.sh +44 -0
  182. package/packages/plugin-frameworks/scripts/examples/vue-composition-check.sh +41 -0
  183. package/packages/plugin-languages/README.md +333 -0
  184. package/packages/plugin-languages/agents/README.md +50 -0
  185. package/packages/plugin-languages/agents/bash-scripting-expert.md +541 -0
  186. package/packages/plugin-languages/agents/javascript-frontend-engineer.md +197 -0
  187. package/packages/plugin-languages/agents/nodejs-backend-engineer.md +226 -0
  188. package/packages/plugin-languages/agents/python-backend-engineer.md +214 -0
  189. package/packages/plugin-languages/agents/python-backend-expert.md +289 -0
  190. package/packages/plugin-languages/commands/javascript-optimize.md +636 -0
  191. package/packages/plugin-languages/commands/nodejs-api-scaffold.md +341 -0
  192. package/packages/plugin-languages/commands/nodejs-optimize.md +689 -0
  193. package/packages/plugin-languages/commands/python-api-scaffold.md +261 -0
  194. package/packages/plugin-languages/commands/python-optimize.md +593 -0
  195. package/packages/plugin-languages/package.json +65 -0
  196. package/packages/plugin-languages/plugin.json +265 -0
  197. package/packages/plugin-languages/rules/code-quality-standards.md +496 -0
  198. package/packages/plugin-languages/rules/testing-standards.md +768 -0
  199. package/packages/plugin-languages/scripts/examples/bash-production-script.sh +520 -0
  200. package/packages/plugin-languages/scripts/examples/javascript-es6-patterns.js +291 -0
  201. package/packages/plugin-languages/scripts/examples/nodejs-async-iteration.js +360 -0
  202. package/packages/plugin-languages/scripts/examples/python-async-patterns.py +289 -0
  203. package/packages/plugin-languages/scripts/examples/typescript-patterns.ts +432 -0
  204. package/packages/plugin-ml/README.md +430 -0
  205. package/packages/plugin-ml/agents/automl-expert.md +326 -0
  206. package/packages/plugin-ml/agents/computer-vision-expert.md +550 -0
  207. package/packages/plugin-ml/agents/gradient-boosting-expert.md +455 -0
  208. package/packages/plugin-ml/agents/neural-network-architect.md +1228 -0
  209. package/packages/plugin-ml/agents/nlp-transformer-expert.md +584 -0
  210. package/packages/plugin-ml/agents/pytorch-expert.md +412 -0
  211. package/packages/plugin-ml/agents/reinforcement-learning-expert.md +2088 -0
  212. package/packages/plugin-ml/agents/scikit-learn-expert.md +228 -0
  213. package/packages/plugin-ml/agents/tensorflow-keras-expert.md +509 -0
  214. package/packages/plugin-ml/agents/time-series-expert.md +303 -0
  215. package/packages/plugin-ml/commands/ml-automl.md +572 -0
  216. package/packages/plugin-ml/commands/ml-train-optimize.md +657 -0
  217. package/packages/plugin-ml/package.json +52 -0
  218. package/packages/plugin-ml/plugin.json +338 -0
  219. package/packages/plugin-pm/README.md +368 -0
  220. package/packages/plugin-pm/claudeautopm-plugin-pm-2.0.0.tgz +0 -0
  221. package/packages/plugin-pm/commands/azure/COMMANDS.md +107 -0
  222. package/packages/plugin-pm/commands/azure/COMMAND_MAPPING.md +252 -0
  223. package/packages/plugin-pm/commands/azure/INTEGRATION_FIX.md +103 -0
  224. package/packages/plugin-pm/commands/azure/README.md +246 -0
  225. package/packages/plugin-pm/commands/azure/active-work.md +198 -0
  226. package/packages/plugin-pm/commands/azure/aliases.md +143 -0
  227. package/packages/plugin-pm/commands/azure/blocked-items.md +287 -0
  228. package/packages/plugin-pm/commands/azure/clean.md +93 -0
  229. package/packages/plugin-pm/commands/azure/docs-query.md +48 -0
  230. package/packages/plugin-pm/commands/azure/feature-decompose.md +380 -0
  231. package/packages/plugin-pm/commands/azure/feature-list.md +61 -0
  232. package/packages/plugin-pm/commands/azure/feature-new.md +115 -0
  233. package/packages/plugin-pm/commands/azure/feature-show.md +205 -0
  234. package/packages/plugin-pm/commands/azure/feature-start.md +130 -0
  235. package/packages/plugin-pm/commands/azure/fix-integration-example.md +93 -0
  236. package/packages/plugin-pm/commands/azure/help.md +150 -0
  237. package/packages/plugin-pm/commands/azure/import-us.md +269 -0
  238. package/packages/plugin-pm/commands/azure/init.md +211 -0
  239. package/packages/plugin-pm/commands/azure/next-task.md +262 -0
  240. package/packages/plugin-pm/commands/azure/search.md +160 -0
  241. package/packages/plugin-pm/commands/azure/sprint-status.md +235 -0
  242. package/packages/plugin-pm/commands/azure/standup.md +260 -0
  243. package/packages/plugin-pm/commands/azure/sync-all.md +99 -0
  244. package/packages/plugin-pm/commands/azure/task-analyze.md +186 -0
  245. package/packages/plugin-pm/commands/azure/task-close.md +329 -0
  246. package/packages/plugin-pm/commands/azure/task-edit.md +145 -0
  247. package/packages/plugin-pm/commands/azure/task-list.md +263 -0
  248. package/packages/plugin-pm/commands/azure/task-new.md +84 -0
  249. package/packages/plugin-pm/commands/azure/task-reopen.md +79 -0
  250. package/packages/plugin-pm/commands/azure/task-show.md +126 -0
  251. package/packages/plugin-pm/commands/azure/task-start.md +301 -0
  252. package/packages/plugin-pm/commands/azure/task-status.md +65 -0
  253. package/packages/plugin-pm/commands/azure/task-sync.md +67 -0
  254. package/packages/plugin-pm/commands/azure/us-edit.md +164 -0
  255. package/packages/plugin-pm/commands/azure/us-list.md +202 -0
  256. package/packages/plugin-pm/commands/azure/us-new.md +265 -0
  257. package/packages/plugin-pm/commands/azure/us-parse.md +253 -0
  258. package/packages/plugin-pm/commands/azure/us-show.md +188 -0
  259. package/packages/plugin-pm/commands/azure/us-status.md +320 -0
  260. package/packages/plugin-pm/commands/azure/validate.md +86 -0
  261. package/packages/plugin-pm/commands/azure/work-item-sync.md +47 -0
  262. package/packages/plugin-pm/commands/blocked.md +28 -0
  263. package/packages/plugin-pm/commands/clean.md +119 -0
  264. package/packages/plugin-pm/commands/context-create.md +136 -0
  265. package/packages/plugin-pm/commands/context-prime.md +170 -0
  266. package/packages/plugin-pm/commands/context-update.md +292 -0
  267. package/packages/plugin-pm/commands/context.md +28 -0
  268. package/packages/plugin-pm/commands/epic-close.md +86 -0
  269. package/packages/plugin-pm/commands/epic-decompose.md +370 -0
  270. package/packages/plugin-pm/commands/epic-edit.md +83 -0
  271. package/packages/plugin-pm/commands/epic-list.md +30 -0
  272. package/packages/plugin-pm/commands/epic-merge.md +222 -0
  273. package/packages/plugin-pm/commands/epic-oneshot.md +119 -0
  274. package/packages/plugin-pm/commands/epic-refresh.md +119 -0
  275. package/packages/plugin-pm/commands/epic-show.md +28 -0
  276. package/packages/plugin-pm/commands/epic-split.md +120 -0
  277. package/packages/plugin-pm/commands/epic-start.md +195 -0
  278. package/packages/plugin-pm/commands/epic-status.md +28 -0
  279. package/packages/plugin-pm/commands/epic-sync-modular.md +338 -0
  280. package/packages/plugin-pm/commands/epic-sync-original.md +473 -0
  281. package/packages/plugin-pm/commands/epic-sync.md +486 -0
  282. package/packages/plugin-pm/commands/github/workflow-create.md +42 -0
  283. package/packages/plugin-pm/commands/help.md +28 -0
  284. package/packages/plugin-pm/commands/import.md +115 -0
  285. package/packages/plugin-pm/commands/in-progress.md +28 -0
  286. package/packages/plugin-pm/commands/init.md +28 -0
  287. package/packages/plugin-pm/commands/issue-analyze.md +202 -0
  288. package/packages/plugin-pm/commands/issue-close.md +119 -0
  289. package/packages/plugin-pm/commands/issue-edit.md +93 -0
  290. package/packages/plugin-pm/commands/issue-reopen.md +87 -0
  291. package/packages/plugin-pm/commands/issue-show.md +41 -0
  292. package/packages/plugin-pm/commands/issue-start.md +234 -0
  293. package/packages/plugin-pm/commands/issue-status.md +95 -0
  294. package/packages/plugin-pm/commands/issue-sync.md +411 -0
  295. package/packages/plugin-pm/commands/next.md +28 -0
  296. package/packages/plugin-pm/commands/prd-edit.md +82 -0
  297. package/packages/plugin-pm/commands/prd-list.md +28 -0
  298. package/packages/plugin-pm/commands/prd-new.md +55 -0
  299. package/packages/plugin-pm/commands/prd-parse.md +42 -0
  300. package/packages/plugin-pm/commands/prd-status.md +28 -0
  301. package/packages/plugin-pm/commands/search.md +28 -0
  302. package/packages/plugin-pm/commands/standup.md +28 -0
  303. package/packages/plugin-pm/commands/status.md +28 -0
  304. package/packages/plugin-pm/commands/sync.md +99 -0
  305. package/packages/plugin-pm/commands/test-reference-update.md +151 -0
  306. package/packages/plugin-pm/commands/validate.md +28 -0
  307. package/packages/plugin-pm/commands/what-next.md +28 -0
  308. package/packages/plugin-pm/package.json +57 -0
  309. package/packages/plugin-pm/plugin.json +503 -0
  310. package/packages/plugin-pm/scripts/pm/analytics.js +425 -0
  311. package/packages/plugin-pm/scripts/pm/blocked.js +164 -0
  312. package/packages/plugin-pm/scripts/pm/blocked.sh +78 -0
  313. package/packages/plugin-pm/scripts/pm/clean.js +464 -0
  314. package/packages/plugin-pm/scripts/pm/context-create.js +216 -0
  315. package/packages/plugin-pm/scripts/pm/context-prime.js +335 -0
  316. package/packages/plugin-pm/scripts/pm/context-update.js +344 -0
  317. package/packages/plugin-pm/scripts/pm/context.js +338 -0
  318. package/packages/plugin-pm/scripts/pm/epic-close.js +347 -0
  319. package/packages/plugin-pm/scripts/pm/epic-edit.js +382 -0
  320. package/packages/plugin-pm/scripts/pm/epic-list.js +273 -0
  321. package/packages/plugin-pm/scripts/pm/epic-list.sh +109 -0
  322. package/packages/plugin-pm/scripts/pm/epic-show.js +291 -0
  323. package/packages/plugin-pm/scripts/pm/epic-show.sh +105 -0
  324. package/packages/plugin-pm/scripts/pm/epic-split.js +522 -0
  325. package/packages/plugin-pm/scripts/pm/epic-start/epic-start.js +183 -0
  326. package/packages/plugin-pm/scripts/pm/epic-start/epic-start.sh +94 -0
  327. package/packages/plugin-pm/scripts/pm/epic-status.js +291 -0
  328. package/packages/plugin-pm/scripts/pm/epic-status.sh +104 -0
  329. package/packages/plugin-pm/scripts/pm/epic-sync/README.md +208 -0
  330. package/packages/plugin-pm/scripts/pm/epic-sync/create-epic-issue.sh +77 -0
  331. package/packages/plugin-pm/scripts/pm/epic-sync/create-task-issues.sh +86 -0
  332. package/packages/plugin-pm/scripts/pm/epic-sync/update-epic-file.sh +79 -0
  333. package/packages/plugin-pm/scripts/pm/epic-sync/update-references.sh +89 -0
  334. package/packages/plugin-pm/scripts/pm/epic-sync.sh +137 -0
  335. package/packages/plugin-pm/scripts/pm/help.js +92 -0
  336. package/packages/plugin-pm/scripts/pm/help.sh +90 -0
  337. package/packages/plugin-pm/scripts/pm/in-progress.js +178 -0
  338. package/packages/plugin-pm/scripts/pm/in-progress.sh +93 -0
  339. package/packages/plugin-pm/scripts/pm/init.js +321 -0
  340. package/packages/plugin-pm/scripts/pm/init.sh +178 -0
  341. package/packages/plugin-pm/scripts/pm/issue-close.js +232 -0
  342. package/packages/plugin-pm/scripts/pm/issue-edit.js +310 -0
  343. package/packages/plugin-pm/scripts/pm/issue-show.js +272 -0
  344. package/packages/plugin-pm/scripts/pm/issue-start.js +181 -0
  345. package/packages/plugin-pm/scripts/pm/issue-sync/format-comment.sh +468 -0
  346. package/packages/plugin-pm/scripts/pm/issue-sync/gather-updates.sh +460 -0
  347. package/packages/plugin-pm/scripts/pm/issue-sync/post-comment.sh +330 -0
  348. package/packages/plugin-pm/scripts/pm/issue-sync/preflight-validation.sh +348 -0
  349. package/packages/plugin-pm/scripts/pm/issue-sync/update-frontmatter.sh +387 -0
  350. package/packages/plugin-pm/scripts/pm/lib/README.md +85 -0
  351. package/packages/plugin-pm/scripts/pm/lib/epic-discovery.js +119 -0
  352. package/packages/plugin-pm/scripts/pm/lib/logger.js +78 -0
  353. package/packages/plugin-pm/scripts/pm/next.js +189 -0
  354. package/packages/plugin-pm/scripts/pm/next.sh +72 -0
  355. package/packages/plugin-pm/scripts/pm/optimize.js +407 -0
  356. package/packages/plugin-pm/scripts/pm/pr-create.js +337 -0
  357. package/packages/plugin-pm/scripts/pm/pr-list.js +257 -0
  358. package/packages/plugin-pm/scripts/pm/prd-list.js +242 -0
  359. package/packages/plugin-pm/scripts/pm/prd-list.sh +103 -0
  360. package/packages/plugin-pm/scripts/pm/prd-new.js +684 -0
  361. package/packages/plugin-pm/scripts/pm/prd-parse.js +547 -0
  362. package/packages/plugin-pm/scripts/pm/prd-status.js +152 -0
  363. package/packages/plugin-pm/scripts/pm/prd-status.sh +63 -0
  364. package/packages/plugin-pm/scripts/pm/release.js +460 -0
  365. package/packages/plugin-pm/scripts/pm/search.js +192 -0
  366. package/packages/plugin-pm/scripts/pm/search.sh +89 -0
  367. package/packages/plugin-pm/scripts/pm/standup.js +362 -0
  368. package/packages/plugin-pm/scripts/pm/standup.sh +95 -0
  369. package/packages/plugin-pm/scripts/pm/status.js +148 -0
  370. package/packages/plugin-pm/scripts/pm/status.sh +59 -0
  371. package/packages/plugin-pm/scripts/pm/sync-batch.js +337 -0
  372. package/packages/plugin-pm/scripts/pm/sync.js +343 -0
  373. package/packages/plugin-pm/scripts/pm/template-list.js +141 -0
  374. package/packages/plugin-pm/scripts/pm/template-new.js +366 -0
  375. package/packages/plugin-pm/scripts/pm/validate.js +274 -0
  376. package/packages/plugin-pm/scripts/pm/validate.sh +106 -0
  377. package/packages/plugin-pm/scripts/pm/what-next.js +660 -0
  378. package/packages/plugin-testing/README.md +401 -0
  379. package/packages/plugin-testing/agents/frontend-testing-engineer.md +768 -0
  380. package/packages/plugin-testing/commands/jest-optimize.md +800 -0
  381. package/packages/plugin-testing/commands/playwright-optimize.md +887 -0
  382. package/packages/plugin-testing/commands/test-coverage.md +512 -0
  383. package/packages/plugin-testing/commands/test-performance.md +1041 -0
  384. package/packages/plugin-testing/commands/test-setup.md +414 -0
  385. package/packages/plugin-testing/package.json +40 -0
  386. package/packages/plugin-testing/plugin.json +197 -0
  387. package/packages/plugin-testing/rules/test-coverage-requirements.md +581 -0
  388. package/packages/plugin-testing/rules/testing-standards.md +529 -0
  389. package/packages/plugin-testing/scripts/examples/react-testing-example.test.jsx +460 -0
  390. package/packages/plugin-testing/scripts/examples/vitest-config-example.js +352 -0
  391. package/packages/plugin-testing/scripts/examples/vue-testing-example.test.js +586 -0
@@ -0,0 +1,593 @@
1
+ # python:optimize
2
+
3
+ Optimize Python application performance with Context7-verified profiling, async patterns, and best practices.
4
+
5
+ ## Description
6
+
7
+ Comprehensive Python performance optimization following official best practices:
8
+ - Profiling with Pyinstrument (sampling profiler)
9
+ - Async/await patterns for I/O operations
10
+ - Memory optimization techniques
11
+ - Type hints for runtime performance
12
+ - Production-ready FastAPI optimization
13
+
14
+ ## Required Documentation Access
15
+
16
+ **MANDATORY:** Before optimization, query Context7 for Python best practices:
17
+
18
+ **Documentation Queries:**
19
+ - `mcp://context7/python/performance` - Python performance optimization
20
+ - `mcp://context7/pyinstrument/profiling` - Profiling with Pyinstrument
21
+ - `mcp://context7/fastapi/async` - FastAPI async patterns
22
+ - `mcp://context7/python/async` - Python async/await best practices
23
+ - `mcp://context7/python/type-hints` - Type hints for performance
24
+
25
+ **Why This is Required:**
26
+ - Ensures optimization follows official Python documentation
27
+ - Applies proven profiling techniques from Pyinstrument
28
+ - Validates async patterns against FastAPI best practices
29
+ - Prevents anti-patterns and common mistakes
30
+
31
+ ## Usage
32
+
33
+ ```bash
34
+ /python:optimize [options]
35
+ ```
36
+
37
+ ## Options
38
+
39
+ - `--scope <profile|async|memory|all>` - Optimization scope (default: all)
40
+ - `--analyze-only` - Analyze without applying changes
41
+ - `--output <file>` - Write optimization report
42
+ - `--framework <fastapi|flask|django>` - Framework-specific optimization
43
+ - `--profile-requests` - Add profiling middleware for requests
44
+
45
+ ## Examples
46
+
47
+ ### Full Application Optimization
48
+ ```bash
49
+ /python:optimize
50
+ ```
51
+
52
+ ### Profile Existing Application
53
+ ```bash
54
+ /python:optimize --scope profile --framework fastapi
55
+ ```
56
+
57
+ ### Analyze Performance Without Changes
58
+ ```bash
59
+ /python:optimize --analyze-only --output performance-report.md
60
+ ```
61
+
62
+ ### Add Request Profiling
63
+ ```bash
64
+ /python:optimize --profile-requests --framework fastapi
65
+ ```
66
+
67
+ ## Optimization Categories
68
+
69
+ ### 1. Profiling with Pyinstrument (Context7-Verified)
70
+
71
+ **Pattern from Context7 (/joerick/pyinstrument):**
72
+
73
+ #### Command-Line Profiling
74
+ ```bash
75
+ # Profile a Python script
76
+ pyinstrument script.py
77
+
78
+ # Profile a module
79
+ pyinstrument -m module_name
80
+
81
+ # Output to HTML
82
+ pyinstrument -o profile.html script.py
83
+
84
+ # Output to Speedscope (interactive flamechart)
85
+ pyinstrument -r speedscope script.py
86
+ ```
87
+
88
+ #### Python API - Profiler Class
89
+ ```python
90
+ from pyinstrument import Profiler
91
+
92
+ profiler = Profiler()
93
+ profiler.start()
94
+
95
+ # Code you want to profile
96
+ expensive_operation()
97
+
98
+ profiler.stop()
99
+ profiler.print()
100
+ ```
101
+
102
+ #### Context Manager Pattern
103
+ ```python
104
+ from pyinstrument import Profiler
105
+
106
+ with Profiler() as profiler:
107
+ # Code you want to profile
108
+ process_data()
109
+
110
+ profiler.print()
111
+ ```
112
+
113
+ #### Decorator Pattern
114
+ ```python
115
+ import pyinstrument
116
+
117
+ @pyinstrument.profile()
118
+ def my_function():
119
+ # Automatically profiled
120
+ expensive_computation()
121
+ ```
122
+
123
+ **Benefits:**
124
+ - Statistical sampling (low overhead, 0.1-1% slowdown)
125
+ - Call stack visualization
126
+ - Timeline mode for temporal analysis
127
+ - Async code support (v4.0.0+)
128
+
129
+ ### 2. FastAPI Request Profiling (Production-Ready)
130
+
131
+ **Pattern from Context7 (/joerick/pyinstrument):**
132
+
133
+ ```python
134
+ from fastapi import FastAPI, Request
135
+ from fastapi.responses import HTMLResponse
136
+ from pyinstrument import Profiler
137
+
138
+ app = FastAPI()
139
+ PROFILING = True # Set from environment/config
140
+
141
+ if PROFILING:
142
+ @app.middleware("http")
143
+ async def profile_request(request: Request, call_next):
144
+ # Check for ?profile=1 query parameter
145
+ profiling = request.query_params.get("profile", False)
146
+ if profiling:
147
+ profiler = Profiler(interval=0.001, async_mode="enabled")
148
+ profiler.start()
149
+
150
+ response = await call_next(request)
151
+
152
+ profiler.stop()
153
+ return HTMLResponse(profiler.output_html())
154
+ else:
155
+ return await call_next(request)
156
+
157
+ # Usage: http://localhost:8000/api/endpoint?profile=1
158
+ ```
159
+
160
+ **Benefits:**
161
+ - Zero code changes to endpoints
162
+ - On-demand profiling via query parameter
163
+ - HTML report in browser
164
+ - Production-safe (controlled by feature flag)
165
+
166
+ ### 3. Flask Request Profiling
167
+
168
+ **Pattern from Context7:**
169
+
170
+ ```python
171
+ from flask import Flask, g, make_response, request
172
+ from pyinstrument import Profiler
173
+
174
+ app = Flask(__name__)
175
+
176
+ @app.before_request
177
+ def before_request():
178
+ if "profile" in request.args:
179
+ g.profiler = Profiler()
180
+ g.profiler.start()
181
+
182
+ @app.after_request
183
+ def after_request(response):
184
+ if not hasattr(g, "profiler"):
185
+ return response
186
+ g.profiler.stop()
187
+ output_html = g.profiler.output_html()
188
+ return make_response(output_html)
189
+
190
+ # Usage: http://localhost:5000/api/endpoint?profile=1
191
+ ```
192
+
193
+ ### 4. Django Request Profiling
194
+
195
+ **Pattern from Context7:**
196
+
197
+ #### Add Middleware (settings.py)
198
+ ```python
199
+ # settings.py
200
+ MIDDLEWARE = [
201
+ # ... other middleware
202
+ 'pyinstrument.middleware.ProfilerMiddleware',
203
+ ]
204
+
205
+ # Optional: Configure profile directory
206
+ PYINSTRUMENT_PROFILE_DIR = 'profiles'
207
+ ```
208
+
209
+ **Usage:**
210
+ ```bash
211
+ # Profile a request
212
+ http://localhost:8000/api/endpoint/?profile
213
+
214
+ # Automatically saves HTML to profiles/ directory
215
+ ```
216
+
217
+ ### 5. Async Code Profiling (v4.0.0+)
218
+
219
+ **Pattern from Context7:**
220
+
221
+ ```python
222
+ import asyncio
223
+ from pyinstrument import Profiler
224
+
225
+ async def main():
226
+ profiler = Profiler(async_mode='enabled')
227
+
228
+ with profiler:
229
+ print('Processing...')
230
+ await asyncio.sleep(1)
231
+ await fetch_data()
232
+ await process_results()
233
+
234
+ profiler.print()
235
+
236
+ asyncio.run(main())
237
+ ```
238
+
239
+ **Result:**
240
+ ```
241
+ _ ._ __/__ _ _ _ _ _/_ Recorded: 10:15:23 Samples: 100
242
+ /_//_/// /_\ / //_// / //_'/ // Duration: 1.234 CPU time: 0.456
243
+ / _/ v4.0.0
244
+
245
+ Program: main.py
246
+
247
+ 1.234 main main.py:1
248
+ └─ 1.000 asyncio.sleep
249
+ └─ 0.234 fetch_data
250
+ └─ 0.123 process_results
251
+ ```
252
+
253
+ **Benefits:**
254
+ - Correctly attributes time spent in await
255
+ - Shows async call hierarchy
256
+ - Identifies I/O bottlenecks
257
+
258
+ ### 6. Pytest Auto-Profiling
259
+
260
+ **Pattern from Context7:**
261
+
262
+ ```python
263
+ # conftest.py
264
+ from pathlib import Path
265
+ import pytest
266
+ from pyinstrument import Profiler
267
+
268
+ TESTS_ROOT = Path.cwd()
269
+
270
+ @pytest.fixture(autouse=True)
271
+ def auto_profile(request):
272
+ PROFILE_ROOT = (TESTS_ROOT / ".profiles")
273
+
274
+ # Turn profiling on
275
+ profiler = Profiler()
276
+ profiler.start()
277
+
278
+ yield # Run test
279
+
280
+ profiler.stop()
281
+ PROFILE_ROOT.mkdir(exist_ok=True)
282
+ results_file = PROFILE_ROOT / f"{request.node.name}.html"
283
+ profiler.write_html(results_file)
284
+ ```
285
+
286
+ **Result:**
287
+ ```
288
+ pytest test_api.py
289
+ # Creates .profiles/test_api_endpoint.html for each test
290
+ ```
291
+
292
+ ### 7. Memory Optimization Patterns
293
+
294
+ #### List Comprehensions vs Generator Expressions
295
+ ```python
296
+ # BEFORE: List comprehension (loads entire list into memory)
297
+ squares = [x**2 for x in range(1000000)] # 8 MB memory
298
+ total = sum(squares)
299
+
300
+ # AFTER: Generator expression (lazy evaluation)
301
+ squares = (x**2 for x in range(1000000)) # ~200 bytes
302
+ total = sum(squares)
303
+ ```
304
+
305
+ **Memory Savings:** 99.998% reduction (8 MB → 200 bytes)
306
+
307
+ #### Use __slots__ for Classes with Many Instances
308
+ ```python
309
+ # BEFORE: Default __dict__ for attributes
310
+ class Point:
311
+ def __init__(self, x, y):
312
+ self.x = x
313
+ self.y = y
314
+
315
+ # Memory: ~280 bytes per instance
316
+
317
+ # AFTER: __slots__ for fixed attributes
318
+ class Point:
319
+ __slots__ = ['x', 'y']
320
+
321
+ def __init__(self, x, y):
322
+ self.x = x
323
+ self.y = y
324
+
325
+ # Memory: ~48 bytes per instance
326
+ ```
327
+
328
+ **Memory Savings:** 83% reduction (280 bytes → 48 bytes per instance)
329
+
330
+ **Impact for 1 million instances:**
331
+ - Before: 280 MB
332
+ - After: 48 MB
333
+ - Savings: 232 MB (83%)
334
+
335
+ ### 8. Async I/O Optimization
336
+
337
+ #### Async Database Queries
338
+ ```python
339
+ # BEFORE: Synchronous queries (blocking)
340
+ def get_users():
341
+ user1 = db.query("SELECT * FROM users WHERE id = 1")
342
+ user2 = db.query("SELECT * FROM users WHERE id = 2")
343
+ user3 = db.query("SELECT * FROM users WHERE id = 3")
344
+ return [user1, user2, user3]
345
+ # Time: 300ms (3 × 100ms sequential)
346
+
347
+ # AFTER: Async queries (parallel)
348
+ import asyncio
349
+
350
+ async def get_users():
351
+ tasks = [
352
+ db.async_query("SELECT * FROM users WHERE id = 1"),
353
+ db.async_query("SELECT * FROM users WHERE id = 2"),
354
+ db.async_query("SELECT * FROM users WHERE id = 3")
355
+ ]
356
+ return await asyncio.gather(*tasks)
357
+ # Time: 100ms (parallel execution)
358
+ ```
359
+
360
+ **Performance Improvement:** 3x faster (300ms → 100ms)
361
+
362
+ #### Async HTTP Requests
363
+ ```python
364
+ # BEFORE: Synchronous requests
365
+ import requests
366
+
367
+ def fetch_apis():
368
+ data1 = requests.get("https://api1.com/data").json()
369
+ data2 = requests.get("https://api2.com/data").json()
370
+ data3 = requests.get("https://api3.com/data").json()
371
+ return [data1, data2, data3]
372
+ # Time: 1500ms (3 × 500ms sequential)
373
+
374
+ # AFTER: Async requests
375
+ import httpx
376
+ import asyncio
377
+
378
+ async def fetch_apis():
379
+ async with httpx.AsyncClient() as client:
380
+ tasks = [
381
+ client.get("https://api1.com/data"),
382
+ client.get("https://api2.com/data"),
383
+ client.get("https://api3.com/data")
384
+ ]
385
+ responses = await asyncio.gather(*tasks)
386
+ return [r.json() for r in responses]
387
+ # Time: 500ms (parallel execution)
388
+ ```
389
+
390
+ **Performance Improvement:** 3x faster (1500ms → 500ms)
391
+
392
+ ### 9. Type Hints for Runtime Performance
393
+
394
+ #### Use typing.TYPE_CHECKING for Import Optimization
395
+ ```python
396
+ from typing import TYPE_CHECKING
397
+
398
+ if TYPE_CHECKING:
399
+ # Imports only used for type checking (removed at runtime)
400
+ from expensive_module import HeavyClass
401
+
402
+ def process_data(obj: 'HeavyClass') -> None:
403
+ # Runtime has no import overhead
404
+ pass
405
+ ```
406
+
407
+ **Benefits:**
408
+ - Faster imports (no runtime overhead)
409
+ - Reduced memory usage
410
+ - IDE still has full type information
411
+
412
+ #### Use typing.Protocol for Structural Typing
413
+ ```python
414
+ from typing import Protocol
415
+
416
+ # BEFORE: Abstract base class (runtime inheritance)
417
+ from abc import ABC, abstractmethod
418
+
419
+ class Drawable(ABC):
420
+ @abstractmethod
421
+ def draw(self) -> None:
422
+ pass
423
+
424
+ # AFTER: Protocol (no runtime overhead)
425
+ class Drawable(Protocol):
426
+ def draw(self) -> None:
427
+ ...
428
+
429
+ def render(obj: Drawable) -> None:
430
+ obj.draw() # Type-safe, no runtime check
431
+ ```
432
+
433
+ **Benefits:**
434
+ - Zero runtime overhead
435
+ - Duck typing with type safety
436
+ - Faster isinstance checks
437
+
438
+ ## Optimization Output
439
+
440
+ ```
441
+ 🐍 Python Performance Optimization Analysis
442
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
443
+
444
+ Project: FastAPI Application
445
+ Framework: FastAPI 0.109.0
446
+ Python: 3.11.7
447
+
448
+ 📊 Profiling Analysis (Pyinstrument)
449
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
450
+
451
+ Total Time: 1.234s
452
+ CPU Time: 0.456s
453
+
454
+ Top 5 Hotspots:
455
+ 1. process_data() - 0.345s (28%) - api/handlers.py:42
456
+ 2. database.query() - 0.234s (19%) - db/queries.py:156
457
+ 3. json.dumps() - 0.156s (13%) - api/responses.py:23
458
+ 4. validate_input() - 0.123s (10%) - api/validation.py:67
459
+ 5. asyncio.sleep() - 0.100s (8%) - async operations
460
+
461
+ 💡 Recommendations:
462
+ 1. Cache process_data() results → Save ~0.3s per request
463
+ 2. Use async database queries → 3x faster (parallel execution)
464
+ 3. Use orjson instead of json → 2-3x faster serialization
465
+ 4. Move validation to Pydantic models → 30% faster
466
+
467
+ ⚡ Async/Await Optimization
468
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
469
+
470
+ ⚠️ Found 5 synchronous I/O operations in async context
471
+
472
+ Files:
473
+ - api/handlers.py:42 - requests.get() (blocking)
474
+ - api/handlers.py:67 - db.query() (blocking)
475
+ - api/services.py:89 - time.sleep() (blocking)
476
+
477
+ 💡 Recommendations:
478
+ 1. Replace requests with httpx.AsyncClient
479
+ 2. Use asyncpg for database (3x faster)
480
+ 3. Replace time.sleep() with asyncio.sleep()
481
+
482
+ ⚡ Expected Impact: 3x faster request handling
483
+
484
+ 💾 Memory Optimization
485
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
486
+
487
+ Current Memory Usage: 145 MB
488
+
489
+ ⚠️ Large list comprehensions detected
490
+ Files: api/processing.py:234, api/export.py:156
491
+ 💡 Recommendation: Use generator expressions
492
+ ⚡ Impact: 80 MB savings
493
+
494
+ ⚠️ Classes without __slots__
495
+ Classes: Point, Coordinate, DataPoint (12,000+ instances)
496
+ 💡 Recommendation: Add __slots__
497
+ ⚡ Impact: 35 MB savings
498
+
499
+ Total Potential Savings: 115 MB (79%)
500
+
501
+ 🎯 Type Hints Optimization
502
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
503
+
504
+ ✅ Type hints coverage: 87%
505
+ ⚠️ Heavy imports at runtime detected
506
+
507
+ Files: api/models.py, api/handlers.py
508
+ 💡 Recommendation: Use TYPE_CHECKING
509
+ ⚡ Impact: 15% faster imports
510
+
511
+ Summary
512
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
513
+
514
+ Total Optimizations: 12
515
+
516
+ 🔴 Critical: 2 (blocking I/O in async)
517
+ 🟡 High Impact: 5 (memory, async)
518
+ 🟢 Low Impact: 5 (type hints, caching)
519
+
520
+ Estimated Performance Improvement:
521
+ - Request time: -60% (1.2s → 0.5s)
522
+ - Memory usage: -79% (145 MB → 30 MB)
523
+ - Import time: -15%
524
+
525
+ Run with --apply to implement optimizations
526
+ ```
527
+
528
+ ## Implementation
529
+
530
+ This command uses the **@python-backend-engineer** agent with profiling expertise:
531
+
532
+ 1. Query Context7 for Python optimization patterns
533
+ 2. Run Pyinstrument profiler on application
534
+ 3. Analyze async/await usage
535
+ 4. Check memory patterns (generators, __slots__)
536
+ 5. Validate type hints usage
537
+ 6. Generate optimization recommendations
538
+ 7. Optionally apply automated fixes
539
+
540
+ ## Best Practices Applied
541
+
542
+ Based on Context7 documentation from `/joerick/pyinstrument`:
543
+
544
+ 1. **Pyinstrument Profiling** - Statistical sampling with low overhead
545
+ 2. **Async/Await** - Parallel I/O operations
546
+ 3. **Generator Expressions** - Memory-efficient iteration
547
+ 4. **__slots__** - Reduce memory for many instances
548
+ 5. **TYPE_CHECKING** - Zero-overhead type hints
549
+ 6. **Request Profiling** - Production-safe on-demand profiling
550
+
551
+ ## Related Commands
552
+
553
+ - `/python:api-scaffold` - Generate FastAPI application
554
+ - `/api:optimize` - API-specific optimization
555
+ - `/test:performance` - Performance testing
556
+
557
+ ## Troubleshooting
558
+
559
+ ### Pyinstrument Not Capturing Async Code
560
+ - Ensure using v4.0.0+
561
+ - Set `async_mode='enabled'`
562
+ - Verify async/await usage
563
+
564
+ ### High Memory Usage
565
+ - Check for list comprehensions (use generators)
566
+ - Add __slots__ to classes with many instances
567
+ - Profile with `tracemalloc` module
568
+
569
+ ### Slow Imports
570
+ - Move heavy imports inside functions
571
+ - Use TYPE_CHECKING for type-only imports
572
+ - Check for circular imports
573
+
574
+ ## Installation
575
+
576
+ ```bash
577
+ # Install Pyinstrument
578
+ pip install pyinstrument
579
+
580
+ # Install async HTTP client
581
+ pip install httpx
582
+
583
+ # Install async database driver (PostgreSQL)
584
+ pip install asyncpg
585
+ ```
586
+
587
+ ## Version History
588
+
589
+ - v2.0.0 - Initial Schema v2.0 release with Context7 integration
590
+ - Pyinstrument profiling patterns
591
+ - FastAPI async optimization
592
+ - Memory optimization techniques
593
+
@@ -0,0 +1,65 @@
1
+ {
2
+ "name": "@claudeautopm/plugin-languages",
3
+ "version": "2.0.0",
4
+ "description": "Complete programming languages plugin with Python, JavaScript, Node.js, Bash experts, language rules, and example scripts for ClaudeAutoPM",
5
+ "main": "plugin.json",
6
+ "type": "module",
7
+ "files": [
8
+ "agents/",
9
+ "commands/",
10
+ "rules/",
11
+ "scripts/",
12
+ "plugin.json",
13
+ "README.md",
14
+ "LICENSE"
15
+ ],
16
+ "scripts": {
17
+ "test": "echo \"Error: no test specified\" && exit 1",
18
+ "validate": "node -e \"require('./plugin.json')\" && echo 'plugin.json is valid'",
19
+ "lint:python": "find scripts/examples -name '*.py' -exec python3 -m py_compile {} \\;",
20
+ "lint:bash": "shellcheck scripts/examples/*.sh || true",
21
+ "lint:js": "eslint scripts/examples/*.js || true"
22
+ },
23
+ "keywords": [
24
+ "claudeautopm",
25
+ "plugin",
26
+ "languages",
27
+ "python",
28
+ "javascript",
29
+ "nodejs",
30
+ "bash",
31
+ "typescript",
32
+ "fastapi",
33
+ "express",
34
+ "backend",
35
+ "frontend",
36
+ "async",
37
+ "es6",
38
+ "type-hints"
39
+ ],
40
+ "author": {
41
+ "name": "ClaudeAutoPM Team",
42
+ "email": "autopm@example.com"
43
+ },
44
+ "license": "MIT",
45
+ "repository": {
46
+ "type": "git",
47
+ "url": "git+https://github.com/rafeekpro/ClaudeAutoPM.git",
48
+ "directory": "packages/plugin-languages"
49
+ },
50
+ "homepage": "https://github.com/rafeekpro/ClaudeAutoPM/tree/main/packages/plugin-languages#readme",
51
+ "bugs": {
52
+ "url": "https://github.com/rafeekpro/ClaudeAutoPM/issues"
53
+ },
54
+ "engines": {
55
+ "node": ">=16.0.0",
56
+ "npm": ">=8.0.0"
57
+ },
58
+ "peerDependencies": {
59
+ "@claudeautopm/plugin-core": "^2.0.0"
60
+ },
61
+ "publishConfig": {
62
+ "access": "public",
63
+ "registry": "https://registry.npmjs.org/"
64
+ }
65
+ }