claude-autopm 2.8.2 → 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.
- package/README.md +399 -637
- package/package.json +2 -1
- package/packages/plugin-ai/LICENSE +21 -0
- package/packages/plugin-ai/README.md +316 -0
- package/packages/plugin-ai/agents/anthropic-claude-expert.md +579 -0
- package/packages/plugin-ai/agents/azure-openai-expert.md +1411 -0
- package/packages/plugin-ai/agents/gemini-api-expert.md +880 -0
- package/packages/plugin-ai/agents/google-a2a-expert.md +1445 -0
- package/packages/plugin-ai/agents/huggingface-expert.md +2131 -0
- package/packages/plugin-ai/agents/langchain-expert.md +1427 -0
- package/packages/plugin-ai/agents/langgraph-workflow-expert.md +520 -0
- package/packages/plugin-ai/agents/openai-python-expert.md +1087 -0
- package/packages/plugin-ai/commands/a2a-setup.md +886 -0
- package/packages/plugin-ai/commands/ai-model-deployment.md +481 -0
- package/packages/plugin-ai/commands/anthropic-optimize.md +793 -0
- package/packages/plugin-ai/commands/huggingface-deploy.md +789 -0
- package/packages/plugin-ai/commands/langchain-optimize.md +807 -0
- package/packages/plugin-ai/commands/llm-optimize.md +348 -0
- package/packages/plugin-ai/commands/openai-optimize.md +863 -0
- package/packages/plugin-ai/commands/rag-optimize.md +841 -0
- package/packages/plugin-ai/commands/rag-setup-scaffold.md +382 -0
- package/packages/plugin-ai/package.json +66 -0
- package/packages/plugin-ai/plugin.json +519 -0
- package/packages/plugin-ai/rules/ai-model-standards.md +449 -0
- package/packages/plugin-ai/rules/prompt-engineering-standards.md +509 -0
- package/packages/plugin-ai/scripts/examples/huggingface-inference-example.py +145 -0
- package/packages/plugin-ai/scripts/examples/langchain-rag-example.py +366 -0
- package/packages/plugin-ai/scripts/examples/mlflow-tracking-example.py +224 -0
- package/packages/plugin-ai/scripts/examples/openai-chat-example.py +425 -0
- package/packages/plugin-cloud/README.md +268 -0
- package/packages/plugin-cloud/agents/README.md +55 -0
- package/packages/plugin-cloud/agents/aws-cloud-architect.md +521 -0
- package/packages/plugin-cloud/agents/azure-cloud-architect.md +436 -0
- package/packages/plugin-cloud/agents/gcp-cloud-architect.md +385 -0
- package/packages/plugin-cloud/agents/gcp-cloud-functions-engineer.md +306 -0
- package/packages/plugin-cloud/agents/gemini-api-expert.md +880 -0
- package/packages/plugin-cloud/agents/kubernetes-orchestrator.md +566 -0
- package/packages/plugin-cloud/agents/openai-python-expert.md +1087 -0
- package/packages/plugin-cloud/agents/terraform-infrastructure-expert.md +454 -0
- package/packages/plugin-cloud/commands/cloud-cost-optimize.md +243 -0
- package/packages/plugin-cloud/commands/cloud-validate.md +196 -0
- package/packages/plugin-cloud/commands/infra-deploy.md +38 -0
- package/packages/plugin-cloud/commands/k8s-deploy.md +37 -0
- package/packages/plugin-cloud/commands/ssh-security.md +65 -0
- package/packages/plugin-cloud/commands/traefik-setup.md +65 -0
- package/packages/plugin-cloud/hooks/pre-cloud-deploy.js +456 -0
- package/packages/plugin-cloud/package.json +64 -0
- package/packages/plugin-cloud/plugin.json +338 -0
- package/packages/plugin-cloud/rules/cloud-security-compliance.md +313 -0
- package/packages/plugin-cloud/rules/infrastructure-pipeline.md +128 -0
- package/packages/plugin-cloud/scripts/examples/aws-validate.sh +30 -0
- package/packages/plugin-cloud/scripts/examples/azure-setup.sh +33 -0
- package/packages/plugin-cloud/scripts/examples/gcp-setup.sh +39 -0
- package/packages/plugin-cloud/scripts/examples/k8s-validate.sh +40 -0
- package/packages/plugin-cloud/scripts/examples/terraform-init.sh +26 -0
- package/packages/plugin-core/README.md +274 -0
- package/packages/plugin-core/agents/core/agent-manager.md +296 -0
- package/packages/plugin-core/agents/core/code-analyzer.md +131 -0
- package/packages/plugin-core/agents/core/file-analyzer.md +162 -0
- package/packages/plugin-core/agents/core/test-runner.md +200 -0
- package/packages/plugin-core/commands/code-rabbit.md +128 -0
- package/packages/plugin-core/commands/prompt.md +9 -0
- package/packages/plugin-core/commands/re-init.md +9 -0
- package/packages/plugin-core/hooks/context7-reminder.md +29 -0
- package/packages/plugin-core/hooks/enforce-agents.js +125 -0
- package/packages/plugin-core/hooks/enforce-agents.sh +35 -0
- package/packages/plugin-core/hooks/pre-agent-context7.js +224 -0
- package/packages/plugin-core/hooks/pre-command-context7.js +229 -0
- package/packages/plugin-core/hooks/strict-enforce-agents.sh +39 -0
- package/packages/plugin-core/hooks/test-hook.sh +21 -0
- package/packages/plugin-core/hooks/unified-context7-enforcement.sh +38 -0
- package/packages/plugin-core/package.json +45 -0
- package/packages/plugin-core/plugin.json +387 -0
- package/packages/plugin-core/rules/agent-coordination.md +549 -0
- package/packages/plugin-core/rules/agent-mandatory.md +170 -0
- package/packages/plugin-core/rules/ai-integration-patterns.md +219 -0
- package/packages/plugin-core/rules/command-pipelines.md +208 -0
- package/packages/plugin-core/rules/context-optimization.md +176 -0
- package/packages/plugin-core/rules/context7-enforcement.md +327 -0
- package/packages/plugin-core/rules/datetime.md +122 -0
- package/packages/plugin-core/rules/definition-of-done.md +272 -0
- package/packages/plugin-core/rules/development-environments.md +19 -0
- package/packages/plugin-core/rules/development-workflow.md +198 -0
- package/packages/plugin-core/rules/framework-path-rules.md +180 -0
- package/packages/plugin-core/rules/frontmatter-operations.md +64 -0
- package/packages/plugin-core/rules/git-strategy.md +237 -0
- package/packages/plugin-core/rules/golden-rules.md +181 -0
- package/packages/plugin-core/rules/naming-conventions.md +111 -0
- package/packages/plugin-core/rules/no-pr-workflow.md +183 -0
- package/packages/plugin-core/rules/performance-guidelines.md +403 -0
- package/packages/plugin-core/rules/pipeline-mandatory.md +109 -0
- package/packages/plugin-core/rules/security-checklist.md +318 -0
- package/packages/plugin-core/rules/standard-patterns.md +197 -0
- package/packages/plugin-core/rules/strip-frontmatter.md +85 -0
- package/packages/plugin-core/rules/tdd.enforcement.md +103 -0
- package/packages/plugin-core/rules/use-ast-grep.md +113 -0
- package/packages/plugin-core/scripts/lib/datetime-utils.sh +254 -0
- package/packages/plugin-core/scripts/lib/frontmatter-utils.sh +294 -0
- package/packages/plugin-core/scripts/lib/github-utils.sh +221 -0
- package/packages/plugin-core/scripts/lib/logging-utils.sh +199 -0
- package/packages/plugin-core/scripts/lib/validation-utils.sh +339 -0
- package/packages/plugin-core/scripts/mcp/add.sh +7 -0
- package/packages/plugin-core/scripts/mcp/disable.sh +12 -0
- package/packages/plugin-core/scripts/mcp/enable.sh +12 -0
- package/packages/plugin-core/scripts/mcp/list.sh +7 -0
- package/packages/plugin-core/scripts/mcp/sync.sh +8 -0
- package/packages/plugin-data/README.md +315 -0
- package/packages/plugin-data/agents/airflow-orchestration-expert.md +158 -0
- package/packages/plugin-data/agents/kedro-pipeline-expert.md +304 -0
- package/packages/plugin-data/agents/langgraph-workflow-expert.md +530 -0
- package/packages/plugin-data/commands/airflow-dag-scaffold.md +413 -0
- package/packages/plugin-data/commands/kafka-pipeline-scaffold.md +503 -0
- package/packages/plugin-data/package.json +66 -0
- package/packages/plugin-data/plugin.json +294 -0
- package/packages/plugin-data/rules/data-quality-standards.md +373 -0
- package/packages/plugin-data/rules/etl-pipeline-standards.md +255 -0
- package/packages/plugin-data/scripts/examples/airflow-dag-example.py +245 -0
- package/packages/plugin-data/scripts/examples/dbt-transform-example.sql +238 -0
- package/packages/plugin-data/scripts/examples/kafka-streaming-example.py +257 -0
- package/packages/plugin-data/scripts/examples/pandas-etl-example.py +332 -0
- package/packages/plugin-databases/README.md +330 -0
- package/packages/plugin-databases/agents/README.md +50 -0
- package/packages/plugin-databases/agents/bigquery-expert.md +401 -0
- package/packages/plugin-databases/agents/cosmosdb-expert.md +375 -0
- package/packages/plugin-databases/agents/mongodb-expert.md +407 -0
- package/packages/plugin-databases/agents/postgresql-expert.md +329 -0
- package/packages/plugin-databases/agents/redis-expert.md +74 -0
- package/packages/plugin-databases/commands/db-optimize.md +612 -0
- package/packages/plugin-databases/package.json +60 -0
- package/packages/plugin-databases/plugin.json +237 -0
- package/packages/plugin-databases/rules/database-management-strategy.md +146 -0
- package/packages/plugin-databases/rules/database-pipeline.md +316 -0
- package/packages/plugin-databases/scripts/examples/bigquery-cost-analyze.sh +160 -0
- package/packages/plugin-databases/scripts/examples/cosmosdb-ru-optimize.sh +163 -0
- package/packages/plugin-databases/scripts/examples/mongodb-shard-check.sh +120 -0
- package/packages/plugin-databases/scripts/examples/postgres-index-analyze.sh +95 -0
- package/packages/plugin-databases/scripts/examples/redis-cache-stats.sh +121 -0
- package/packages/plugin-devops/README.md +367 -0
- package/packages/plugin-devops/agents/README.md +52 -0
- package/packages/plugin-devops/agents/azure-devops-specialist.md +308 -0
- package/packages/plugin-devops/agents/docker-containerization-expert.md +298 -0
- package/packages/plugin-devops/agents/github-operations-specialist.md +335 -0
- package/packages/plugin-devops/agents/mcp-context-manager.md +319 -0
- package/packages/plugin-devops/agents/observability-engineer.md +574 -0
- package/packages/plugin-devops/agents/ssh-operations-expert.md +1093 -0
- package/packages/plugin-devops/agents/traefik-proxy-expert.md +444 -0
- package/packages/plugin-devops/commands/ci-pipeline-create.md +581 -0
- package/packages/plugin-devops/commands/docker-optimize.md +493 -0
- package/packages/plugin-devops/commands/workflow-create.md +42 -0
- package/packages/plugin-devops/hooks/pre-docker-build.js +472 -0
- package/packages/plugin-devops/package.json +61 -0
- package/packages/plugin-devops/plugin.json +302 -0
- package/packages/plugin-devops/rules/ci-cd-kubernetes-strategy.md +25 -0
- package/packages/plugin-devops/rules/devops-troubleshooting-playbook.md +450 -0
- package/packages/plugin-devops/rules/docker-first-development.md +404 -0
- package/packages/plugin-devops/rules/github-operations.md +92 -0
- package/packages/plugin-devops/scripts/examples/docker-build-multistage.sh +43 -0
- package/packages/plugin-devops/scripts/examples/docker-compose-validate.sh +74 -0
- package/packages/plugin-devops/scripts/examples/github-workflow-validate.sh +48 -0
- package/packages/plugin-devops/scripts/examples/prometheus-health-check.sh +58 -0
- package/packages/plugin-devops/scripts/examples/ssh-key-setup.sh +74 -0
- package/packages/plugin-frameworks/README.md +309 -0
- package/packages/plugin-frameworks/agents/README.md +64 -0
- package/packages/plugin-frameworks/agents/e2e-test-engineer.md +579 -0
- package/packages/plugin-frameworks/agents/nats-messaging-expert.md +254 -0
- package/packages/plugin-frameworks/agents/react-frontend-engineer.md +393 -0
- package/packages/plugin-frameworks/agents/react-ui-expert.md +226 -0
- package/packages/plugin-frameworks/agents/tailwindcss-expert.md +1021 -0
- package/packages/plugin-frameworks/agents/ux-design-expert.md +244 -0
- package/packages/plugin-frameworks/commands/app-scaffold.md +50 -0
- package/packages/plugin-frameworks/commands/nextjs-optimize.md +692 -0
- package/packages/plugin-frameworks/commands/react-optimize.md +583 -0
- package/packages/plugin-frameworks/commands/tailwind-system.md +64 -0
- package/packages/plugin-frameworks/package.json +59 -0
- package/packages/plugin-frameworks/plugin.json +224 -0
- package/packages/plugin-frameworks/rules/performance-guidelines.md +403 -0
- package/packages/plugin-frameworks/rules/ui-development-standards.md +281 -0
- package/packages/plugin-frameworks/rules/ui-framework-rules.md +151 -0
- package/packages/plugin-frameworks/scripts/examples/react-component-perf.sh +34 -0
- package/packages/plugin-frameworks/scripts/examples/tailwind-optimize.sh +44 -0
- package/packages/plugin-frameworks/scripts/examples/vue-composition-check.sh +41 -0
- package/packages/plugin-languages/README.md +333 -0
- package/packages/plugin-languages/agents/README.md +50 -0
- package/packages/plugin-languages/agents/bash-scripting-expert.md +541 -0
- package/packages/plugin-languages/agents/javascript-frontend-engineer.md +197 -0
- package/packages/plugin-languages/agents/nodejs-backend-engineer.md +226 -0
- package/packages/plugin-languages/agents/python-backend-engineer.md +214 -0
- package/packages/plugin-languages/agents/python-backend-expert.md +289 -0
- package/packages/plugin-languages/commands/javascript-optimize.md +636 -0
- package/packages/plugin-languages/commands/nodejs-api-scaffold.md +341 -0
- package/packages/plugin-languages/commands/nodejs-optimize.md +689 -0
- package/packages/plugin-languages/commands/python-api-scaffold.md +261 -0
- package/packages/plugin-languages/commands/python-optimize.md +593 -0
- package/packages/plugin-languages/package.json +65 -0
- package/packages/plugin-languages/plugin.json +265 -0
- package/packages/plugin-languages/rules/code-quality-standards.md +496 -0
- package/packages/plugin-languages/rules/testing-standards.md +768 -0
- package/packages/plugin-languages/scripts/examples/bash-production-script.sh +520 -0
- package/packages/plugin-languages/scripts/examples/javascript-es6-patterns.js +291 -0
- package/packages/plugin-languages/scripts/examples/nodejs-async-iteration.js +360 -0
- package/packages/plugin-languages/scripts/examples/python-async-patterns.py +289 -0
- package/packages/plugin-languages/scripts/examples/typescript-patterns.ts +432 -0
- package/packages/plugin-ml/README.md +430 -0
- package/packages/plugin-ml/agents/automl-expert.md +326 -0
- package/packages/plugin-ml/agents/computer-vision-expert.md +550 -0
- package/packages/plugin-ml/agents/gradient-boosting-expert.md +455 -0
- package/packages/plugin-ml/agents/neural-network-architect.md +1228 -0
- package/packages/plugin-ml/agents/nlp-transformer-expert.md +584 -0
- package/packages/plugin-ml/agents/pytorch-expert.md +412 -0
- package/packages/plugin-ml/agents/reinforcement-learning-expert.md +2088 -0
- package/packages/plugin-ml/agents/scikit-learn-expert.md +228 -0
- package/packages/plugin-ml/agents/tensorflow-keras-expert.md +509 -0
- package/packages/plugin-ml/agents/time-series-expert.md +303 -0
- package/packages/plugin-ml/commands/ml-automl.md +572 -0
- package/packages/plugin-ml/commands/ml-train-optimize.md +657 -0
- package/packages/plugin-ml/package.json +52 -0
- package/packages/plugin-ml/plugin.json +338 -0
- package/packages/plugin-pm/README.md +368 -0
- package/packages/plugin-pm/claudeautopm-plugin-pm-2.0.0.tgz +0 -0
- package/packages/plugin-pm/commands/azure/COMMANDS.md +107 -0
- package/packages/plugin-pm/commands/azure/COMMAND_MAPPING.md +252 -0
- package/packages/plugin-pm/commands/azure/INTEGRATION_FIX.md +103 -0
- package/packages/plugin-pm/commands/azure/README.md +246 -0
- package/packages/plugin-pm/commands/azure/active-work.md +198 -0
- package/packages/plugin-pm/commands/azure/aliases.md +143 -0
- package/packages/plugin-pm/commands/azure/blocked-items.md +287 -0
- package/packages/plugin-pm/commands/azure/clean.md +93 -0
- package/packages/plugin-pm/commands/azure/docs-query.md +48 -0
- package/packages/plugin-pm/commands/azure/feature-decompose.md +380 -0
- package/packages/plugin-pm/commands/azure/feature-list.md +61 -0
- package/packages/plugin-pm/commands/azure/feature-new.md +115 -0
- package/packages/plugin-pm/commands/azure/feature-show.md +205 -0
- package/packages/plugin-pm/commands/azure/feature-start.md +130 -0
- package/packages/plugin-pm/commands/azure/fix-integration-example.md +93 -0
- package/packages/plugin-pm/commands/azure/help.md +150 -0
- package/packages/plugin-pm/commands/azure/import-us.md +269 -0
- package/packages/plugin-pm/commands/azure/init.md +211 -0
- package/packages/plugin-pm/commands/azure/next-task.md +262 -0
- package/packages/plugin-pm/commands/azure/search.md +160 -0
- package/packages/plugin-pm/commands/azure/sprint-status.md +235 -0
- package/packages/plugin-pm/commands/azure/standup.md +260 -0
- package/packages/plugin-pm/commands/azure/sync-all.md +99 -0
- package/packages/plugin-pm/commands/azure/task-analyze.md +186 -0
- package/packages/plugin-pm/commands/azure/task-close.md +329 -0
- package/packages/plugin-pm/commands/azure/task-edit.md +145 -0
- package/packages/plugin-pm/commands/azure/task-list.md +263 -0
- package/packages/plugin-pm/commands/azure/task-new.md +84 -0
- package/packages/plugin-pm/commands/azure/task-reopen.md +79 -0
- package/packages/plugin-pm/commands/azure/task-show.md +126 -0
- package/packages/plugin-pm/commands/azure/task-start.md +301 -0
- package/packages/plugin-pm/commands/azure/task-status.md +65 -0
- package/packages/plugin-pm/commands/azure/task-sync.md +67 -0
- package/packages/plugin-pm/commands/azure/us-edit.md +164 -0
- package/packages/plugin-pm/commands/azure/us-list.md +202 -0
- package/packages/plugin-pm/commands/azure/us-new.md +265 -0
- package/packages/plugin-pm/commands/azure/us-parse.md +253 -0
- package/packages/plugin-pm/commands/azure/us-show.md +188 -0
- package/packages/plugin-pm/commands/azure/us-status.md +320 -0
- package/packages/plugin-pm/commands/azure/validate.md +86 -0
- package/packages/plugin-pm/commands/azure/work-item-sync.md +47 -0
- package/packages/plugin-pm/commands/blocked.md +28 -0
- package/packages/plugin-pm/commands/clean.md +119 -0
- package/packages/plugin-pm/commands/context-create.md +136 -0
- package/packages/plugin-pm/commands/context-prime.md +170 -0
- package/packages/plugin-pm/commands/context-update.md +292 -0
- package/packages/plugin-pm/commands/context.md +28 -0
- package/packages/plugin-pm/commands/epic-close.md +86 -0
- package/packages/plugin-pm/commands/epic-decompose.md +370 -0
- package/packages/plugin-pm/commands/epic-edit.md +83 -0
- package/packages/plugin-pm/commands/epic-list.md +30 -0
- package/packages/plugin-pm/commands/epic-merge.md +222 -0
- package/packages/plugin-pm/commands/epic-oneshot.md +119 -0
- package/packages/plugin-pm/commands/epic-refresh.md +119 -0
- package/packages/plugin-pm/commands/epic-show.md +28 -0
- package/packages/plugin-pm/commands/epic-split.md +120 -0
- package/packages/plugin-pm/commands/epic-start.md +195 -0
- package/packages/plugin-pm/commands/epic-status.md +28 -0
- package/packages/plugin-pm/commands/epic-sync-modular.md +338 -0
- package/packages/plugin-pm/commands/epic-sync-original.md +473 -0
- package/packages/plugin-pm/commands/epic-sync.md +486 -0
- package/packages/plugin-pm/commands/github/workflow-create.md +42 -0
- package/packages/plugin-pm/commands/help.md +28 -0
- package/packages/plugin-pm/commands/import.md +115 -0
- package/packages/plugin-pm/commands/in-progress.md +28 -0
- package/packages/plugin-pm/commands/init.md +28 -0
- package/packages/plugin-pm/commands/issue-analyze.md +202 -0
- package/packages/plugin-pm/commands/issue-close.md +119 -0
- package/packages/plugin-pm/commands/issue-edit.md +93 -0
- package/packages/plugin-pm/commands/issue-reopen.md +87 -0
- package/packages/plugin-pm/commands/issue-show.md +41 -0
- package/packages/plugin-pm/commands/issue-start.md +234 -0
- package/packages/plugin-pm/commands/issue-status.md +95 -0
- package/packages/plugin-pm/commands/issue-sync.md +411 -0
- package/packages/plugin-pm/commands/next.md +28 -0
- package/packages/plugin-pm/commands/prd-edit.md +82 -0
- package/packages/plugin-pm/commands/prd-list.md +28 -0
- package/packages/plugin-pm/commands/prd-new.md +55 -0
- package/packages/plugin-pm/commands/prd-parse.md +42 -0
- package/packages/plugin-pm/commands/prd-status.md +28 -0
- package/packages/plugin-pm/commands/search.md +28 -0
- package/packages/plugin-pm/commands/standup.md +28 -0
- package/packages/plugin-pm/commands/status.md +28 -0
- package/packages/plugin-pm/commands/sync.md +99 -0
- package/packages/plugin-pm/commands/test-reference-update.md +151 -0
- package/packages/plugin-pm/commands/validate.md +28 -0
- package/packages/plugin-pm/commands/what-next.md +28 -0
- package/packages/plugin-pm/package.json +57 -0
- package/packages/plugin-pm/plugin.json +503 -0
- package/packages/plugin-pm/scripts/pm/analytics.js +425 -0
- package/packages/plugin-pm/scripts/pm/blocked.js +164 -0
- package/packages/plugin-pm/scripts/pm/blocked.sh +78 -0
- package/packages/plugin-pm/scripts/pm/clean.js +464 -0
- package/packages/plugin-pm/scripts/pm/context-create.js +216 -0
- package/packages/plugin-pm/scripts/pm/context-prime.js +335 -0
- package/packages/plugin-pm/scripts/pm/context-update.js +344 -0
- package/packages/plugin-pm/scripts/pm/context.js +338 -0
- package/packages/plugin-pm/scripts/pm/epic-close.js +347 -0
- package/packages/plugin-pm/scripts/pm/epic-edit.js +382 -0
- package/packages/plugin-pm/scripts/pm/epic-list.js +273 -0
- package/packages/plugin-pm/scripts/pm/epic-list.sh +109 -0
- package/packages/plugin-pm/scripts/pm/epic-show.js +291 -0
- package/packages/plugin-pm/scripts/pm/epic-show.sh +105 -0
- package/packages/plugin-pm/scripts/pm/epic-split.js +522 -0
- package/packages/plugin-pm/scripts/pm/epic-start/epic-start.js +183 -0
- package/packages/plugin-pm/scripts/pm/epic-start/epic-start.sh +94 -0
- package/packages/plugin-pm/scripts/pm/epic-status.js +291 -0
- package/packages/plugin-pm/scripts/pm/epic-status.sh +104 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/README.md +208 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/create-epic-issue.sh +77 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/create-task-issues.sh +86 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/update-epic-file.sh +79 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/update-references.sh +89 -0
- package/packages/plugin-pm/scripts/pm/epic-sync.sh +137 -0
- package/packages/plugin-pm/scripts/pm/help.js +92 -0
- package/packages/plugin-pm/scripts/pm/help.sh +90 -0
- package/packages/plugin-pm/scripts/pm/in-progress.js +178 -0
- package/packages/plugin-pm/scripts/pm/in-progress.sh +93 -0
- package/packages/plugin-pm/scripts/pm/init.js +321 -0
- package/packages/plugin-pm/scripts/pm/init.sh +178 -0
- package/packages/plugin-pm/scripts/pm/issue-close.js +232 -0
- package/packages/plugin-pm/scripts/pm/issue-edit.js +310 -0
- package/packages/plugin-pm/scripts/pm/issue-show.js +272 -0
- package/packages/plugin-pm/scripts/pm/issue-start.js +181 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/format-comment.sh +468 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/gather-updates.sh +460 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/post-comment.sh +330 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/preflight-validation.sh +348 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/update-frontmatter.sh +387 -0
- package/packages/plugin-pm/scripts/pm/lib/README.md +85 -0
- package/packages/plugin-pm/scripts/pm/lib/epic-discovery.js +119 -0
- package/packages/plugin-pm/scripts/pm/lib/logger.js +78 -0
- package/packages/plugin-pm/scripts/pm/next.js +189 -0
- package/packages/plugin-pm/scripts/pm/next.sh +72 -0
- package/packages/plugin-pm/scripts/pm/optimize.js +407 -0
- package/packages/plugin-pm/scripts/pm/pr-create.js +337 -0
- package/packages/plugin-pm/scripts/pm/pr-list.js +257 -0
- package/packages/plugin-pm/scripts/pm/prd-list.js +242 -0
- package/packages/plugin-pm/scripts/pm/prd-list.sh +103 -0
- package/packages/plugin-pm/scripts/pm/prd-new.js +684 -0
- package/packages/plugin-pm/scripts/pm/prd-parse.js +547 -0
- package/packages/plugin-pm/scripts/pm/prd-status.js +152 -0
- package/packages/plugin-pm/scripts/pm/prd-status.sh +63 -0
- package/packages/plugin-pm/scripts/pm/release.js +460 -0
- package/packages/plugin-pm/scripts/pm/search.js +192 -0
- package/packages/plugin-pm/scripts/pm/search.sh +89 -0
- package/packages/plugin-pm/scripts/pm/standup.js +362 -0
- package/packages/plugin-pm/scripts/pm/standup.sh +95 -0
- package/packages/plugin-pm/scripts/pm/status.js +148 -0
- package/packages/plugin-pm/scripts/pm/status.sh +59 -0
- package/packages/plugin-pm/scripts/pm/sync-batch.js +337 -0
- package/packages/plugin-pm/scripts/pm/sync.js +343 -0
- package/packages/plugin-pm/scripts/pm/template-list.js +141 -0
- package/packages/plugin-pm/scripts/pm/template-new.js +366 -0
- package/packages/plugin-pm/scripts/pm/validate.js +274 -0
- package/packages/plugin-pm/scripts/pm/validate.sh +106 -0
- package/packages/plugin-pm/scripts/pm/what-next.js +660 -0
- package/packages/plugin-testing/README.md +401 -0
- package/packages/plugin-testing/agents/frontend-testing-engineer.md +768 -0
- package/packages/plugin-testing/commands/jest-optimize.md +800 -0
- package/packages/plugin-testing/commands/playwright-optimize.md +887 -0
- package/packages/plugin-testing/commands/test-coverage.md +512 -0
- package/packages/plugin-testing/commands/test-performance.md +1041 -0
- package/packages/plugin-testing/commands/test-setup.md +414 -0
- package/packages/plugin-testing/package.json +40 -0
- package/packages/plugin-testing/plugin.json +197 -0
- package/packages/plugin-testing/rules/test-coverage-requirements.md +581 -0
- package/packages/plugin-testing/rules/testing-standards.md +529 -0
- package/packages/plugin-testing/scripts/examples/react-testing-example.test.jsx +460 -0
- package/packages/plugin-testing/scripts/examples/vitest-config-example.js +352 -0
- package/packages/plugin-testing/scripts/examples/vue-testing-example.test.js +586 -0
|
@@ -0,0 +1,414 @@
|
|
|
1
|
+
# Testing Framework Setup Command
|
|
2
|
+
|
|
3
|
+
**Command**: `/test:setup`
|
|
4
|
+
**Category**: Testing & QA
|
|
5
|
+
**Priority**: Medium
|
|
6
|
+
|
|
7
|
+
## Description
|
|
8
|
+
|
|
9
|
+
Setup comprehensive testing framework with Jest/Vitest, Testing Library, and coverage reporting. This command configures a complete testing environment following Context7-verified best practices for frontend, backend, and E2E testing.
|
|
10
|
+
|
|
11
|
+
## Required Documentation Access
|
|
12
|
+
|
|
13
|
+
**MANDATORY:** Before setting up testing framework, query Context7 for best practices:
|
|
14
|
+
|
|
15
|
+
**Documentation Queries:**
|
|
16
|
+
- `mcp://context7/testing/vitest` - Vitest configuration and setup patterns
|
|
17
|
+
- `mcp://context7/testing/jest` - Jest configuration for JavaScript testing
|
|
18
|
+
- `mcp://context7/testing/testing-library` - Testing Library setup and patterns
|
|
19
|
+
- `mcp://context7/testing/coverage` - Coverage reporting best practices
|
|
20
|
+
|
|
21
|
+
**Why This is Required:**
|
|
22
|
+
- Ensures configuration follows latest testing framework patterns
|
|
23
|
+
- Applies proven testing methodologies and setup strategies
|
|
24
|
+
- Validates test runner configuration against current standards
|
|
25
|
+
- Prevents outdated testing patterns and anti-patterns
|
|
26
|
+
|
|
27
|
+
## Usage
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# Interactive setup (prompts for framework choice)
|
|
31
|
+
/test:setup
|
|
32
|
+
|
|
33
|
+
# Setup with specific framework
|
|
34
|
+
/test:setup --framework=vitest
|
|
35
|
+
|
|
36
|
+
# Setup with coverage configuration
|
|
37
|
+
/test:setup --framework=jest --coverage
|
|
38
|
+
|
|
39
|
+
# Setup for specific project type
|
|
40
|
+
/test:setup --type=react --framework=vitest
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Parameters
|
|
44
|
+
|
|
45
|
+
```yaml
|
|
46
|
+
framework:
|
|
47
|
+
type: string
|
|
48
|
+
enum: [vitest, jest]
|
|
49
|
+
default: vitest
|
|
50
|
+
description: "Testing framework to configure"
|
|
51
|
+
|
|
52
|
+
type:
|
|
53
|
+
type: string
|
|
54
|
+
enum: [react, vue, angular, node, vanilla]
|
|
55
|
+
default: react
|
|
56
|
+
description: "Project type for testing setup"
|
|
57
|
+
|
|
58
|
+
coverage:
|
|
59
|
+
type: boolean
|
|
60
|
+
default: true
|
|
61
|
+
description: "Enable coverage reporting"
|
|
62
|
+
|
|
63
|
+
e2e:
|
|
64
|
+
type: boolean
|
|
65
|
+
default: false
|
|
66
|
+
description: "Include E2E testing setup (Playwright/Cypress)"
|
|
67
|
+
|
|
68
|
+
ci:
|
|
69
|
+
type: boolean
|
|
70
|
+
default: true
|
|
71
|
+
description: "Configure for CI/CD integration"
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Implementation Steps
|
|
75
|
+
|
|
76
|
+
### 1. Framework Detection
|
|
77
|
+
|
|
78
|
+
```javascript
|
|
79
|
+
// Detect existing project structure
|
|
80
|
+
const packageJson = await readPackageJson();
|
|
81
|
+
const hasReact = packageJson.dependencies?.react;
|
|
82
|
+
const hasVue = packageJson.dependencies?.vue;
|
|
83
|
+
const hasAngular = packageJson.dependencies?.['@angular/core'];
|
|
84
|
+
|
|
85
|
+
// Recommend appropriate testing framework
|
|
86
|
+
const framework = detectFramework({ hasReact, hasVue, hasAngular });
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### 2. Install Dependencies
|
|
90
|
+
|
|
91
|
+
**Vitest Setup (Recommended for Modern Projects)**:
|
|
92
|
+
```bash
|
|
93
|
+
npm install -D vitest @vitest/ui @vitest/coverage-v8
|
|
94
|
+
npm install -D @testing-library/react @testing-library/user-event
|
|
95
|
+
npm install -D @testing-library/jest-dom jsdom
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
**Jest Setup (Traditional Projects)**:
|
|
99
|
+
```bash
|
|
100
|
+
npm install -D jest @types/jest
|
|
101
|
+
npm install -D @testing-library/react @testing-library/user-event
|
|
102
|
+
npm install -D @testing-library/jest-dom jest-environment-jsdom
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### 3. Create Configuration Files
|
|
106
|
+
|
|
107
|
+
**Vitest Configuration** (`vitest.config.js`):
|
|
108
|
+
```javascript
|
|
109
|
+
import { defineConfig } from 'vitest/config';
|
|
110
|
+
import react from '@vitejs/plugin-react';
|
|
111
|
+
|
|
112
|
+
export default defineConfig({
|
|
113
|
+
plugins: [react()],
|
|
114
|
+
test: {
|
|
115
|
+
globals: true,
|
|
116
|
+
environment: 'jsdom',
|
|
117
|
+
setupFiles: './test/setup.js',
|
|
118
|
+
|
|
119
|
+
// Context7-verified coverage configuration
|
|
120
|
+
coverage: {
|
|
121
|
+
provider: 'v8',
|
|
122
|
+
reporter: ['text', 'json', 'html', 'lcov'],
|
|
123
|
+
|
|
124
|
+
// Realistic thresholds based on project size
|
|
125
|
+
thresholds: {
|
|
126
|
+
lines: 80,
|
|
127
|
+
functions: 80,
|
|
128
|
+
branches: 75,
|
|
129
|
+
statements: 80
|
|
130
|
+
},
|
|
131
|
+
|
|
132
|
+
// Include only source files
|
|
133
|
+
include: ['src/**/*.{js,jsx,ts,tsx}'],
|
|
134
|
+
|
|
135
|
+
// Exclude non-testable code
|
|
136
|
+
exclude: [
|
|
137
|
+
'node_modules/',
|
|
138
|
+
'test/',
|
|
139
|
+
'**/*.config.js',
|
|
140
|
+
'**/*.spec.js',
|
|
141
|
+
'**/*.test.js',
|
|
142
|
+
'src/main.js',
|
|
143
|
+
'src/**/*.d.ts'
|
|
144
|
+
],
|
|
145
|
+
|
|
146
|
+
clean: true,
|
|
147
|
+
all: true
|
|
148
|
+
},
|
|
149
|
+
|
|
150
|
+
// Test sharding configuration
|
|
151
|
+
pool: 'threads',
|
|
152
|
+
poolOptions: {
|
|
153
|
+
threads: {
|
|
154
|
+
singleThread: false,
|
|
155
|
+
isolate: true
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
**Jest Configuration** (`jest.config.js`):
|
|
163
|
+
```javascript
|
|
164
|
+
module.exports = {
|
|
165
|
+
testEnvironment: 'jsdom',
|
|
166
|
+
setupFilesAfterEnv: ['<rootDir>/test/setup.js'],
|
|
167
|
+
|
|
168
|
+
moduleNameMapper: {
|
|
169
|
+
'\\.(css|less|scss|sass)$': 'identity-obj-proxy',
|
|
170
|
+
'^@/(.*)$': '<rootDir>/src/$1'
|
|
171
|
+
},
|
|
172
|
+
|
|
173
|
+
collectCoverageFrom: [
|
|
174
|
+
'src/**/*.{js,jsx,ts,tsx}',
|
|
175
|
+
'!src/index.js',
|
|
176
|
+
'!src/**/*.d.ts'
|
|
177
|
+
],
|
|
178
|
+
|
|
179
|
+
coverageThreshold: {
|
|
180
|
+
global: {
|
|
181
|
+
branches: 80,
|
|
182
|
+
functions: 80,
|
|
183
|
+
lines: 80,
|
|
184
|
+
statements: 80
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
|
|
188
|
+
coverageReporters: ['text', 'lcov', 'json', 'html']
|
|
189
|
+
};
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### 4. Create Test Setup File
|
|
193
|
+
|
|
194
|
+
**Test Setup** (`test/setup.js`):
|
|
195
|
+
```javascript
|
|
196
|
+
import '@testing-library/jest-dom';
|
|
197
|
+
import { cleanup } from '@testing-library/react';
|
|
198
|
+
import { afterEach } from 'vitest';
|
|
199
|
+
|
|
200
|
+
// Cleanup after each test
|
|
201
|
+
afterEach(() => {
|
|
202
|
+
cleanup();
|
|
203
|
+
});
|
|
204
|
+
|
|
205
|
+
// Mock window.matchMedia
|
|
206
|
+
Object.defineProperty(window, 'matchMedia', {
|
|
207
|
+
writable: true,
|
|
208
|
+
value: vi.fn().mockImplementation(query => ({
|
|
209
|
+
matches: false,
|
|
210
|
+
media: query,
|
|
211
|
+
onchange: null,
|
|
212
|
+
addListener: vi.fn(),
|
|
213
|
+
removeListener: vi.fn(),
|
|
214
|
+
addEventListener: vi.fn(),
|
|
215
|
+
removeEventListener: vi.fn(),
|
|
216
|
+
dispatchEvent: vi.fn(),
|
|
217
|
+
})),
|
|
218
|
+
});
|
|
219
|
+
|
|
220
|
+
// Mock IntersectionObserver
|
|
221
|
+
global.IntersectionObserver = class IntersectionObserver {
|
|
222
|
+
constructor() {}
|
|
223
|
+
disconnect() {}
|
|
224
|
+
observe() {}
|
|
225
|
+
takeRecords() {
|
|
226
|
+
return [];
|
|
227
|
+
}
|
|
228
|
+
unobserve() {}
|
|
229
|
+
};
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
### 5. Update package.json Scripts
|
|
233
|
+
|
|
234
|
+
```json
|
|
235
|
+
{
|
|
236
|
+
"scripts": {
|
|
237
|
+
"test": "vitest",
|
|
238
|
+
"test:ui": "vitest --ui",
|
|
239
|
+
"test:run": "vitest run",
|
|
240
|
+
"test:coverage": "vitest run --coverage",
|
|
241
|
+
"test:watch": "vitest watch",
|
|
242
|
+
"test:shard": "vitest --shard=%SHARD%/%TOTAL_SHARDS%"
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### 6. Create Example Test
|
|
248
|
+
|
|
249
|
+
**Example Component Test** (`src/components/__tests__/Button.test.jsx`):
|
|
250
|
+
```javascript
|
|
251
|
+
import { describe, it, expect, vi } from 'vitest';
|
|
252
|
+
import { render, screen } from '@testing-library/react';
|
|
253
|
+
import userEvent from '@testing-library/user-event';
|
|
254
|
+
import { Button } from '../Button';
|
|
255
|
+
|
|
256
|
+
describe('Button Component', () => {
|
|
257
|
+
it('renders with correct text', () => {
|
|
258
|
+
render(<Button>Click me</Button>);
|
|
259
|
+
|
|
260
|
+
// Context7-verified query: Use getByRole for accessibility
|
|
261
|
+
expect(screen.getByRole('button', { name: 'Click me' })).toBeInTheDocument();
|
|
262
|
+
});
|
|
263
|
+
|
|
264
|
+
it('calls onClick handler when clicked', async () => {
|
|
265
|
+
const user = userEvent.setup();
|
|
266
|
+
const handleClick = vi.fn();
|
|
267
|
+
|
|
268
|
+
render(<Button onClick={handleClick}>Click me</Button>);
|
|
269
|
+
|
|
270
|
+
await user.click(screen.getByRole('button'));
|
|
271
|
+
|
|
272
|
+
expect(handleClick).toHaveBeenCalledTimes(1);
|
|
273
|
+
});
|
|
274
|
+
|
|
275
|
+
it('is disabled when disabled prop is true', () => {
|
|
276
|
+
render(<Button disabled>Cannot click</Button>);
|
|
277
|
+
|
|
278
|
+
expect(screen.getByRole('button')).toBeDisabled();
|
|
279
|
+
});
|
|
280
|
+
});
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### 7. CI/CD Integration (GitHub Actions)
|
|
284
|
+
|
|
285
|
+
**GitHub Actions Workflow** (`.github/workflows/test.yml`):
|
|
286
|
+
```yaml
|
|
287
|
+
name: Tests
|
|
288
|
+
|
|
289
|
+
on:
|
|
290
|
+
push:
|
|
291
|
+
branches: [main, develop]
|
|
292
|
+
pull_request:
|
|
293
|
+
branches: [main]
|
|
294
|
+
|
|
295
|
+
jobs:
|
|
296
|
+
test:
|
|
297
|
+
runs-on: ubuntu-latest
|
|
298
|
+
|
|
299
|
+
strategy:
|
|
300
|
+
matrix:
|
|
301
|
+
shard: [1, 2, 3]
|
|
302
|
+
|
|
303
|
+
steps:
|
|
304
|
+
- uses: actions/checkout@v3
|
|
305
|
+
|
|
306
|
+
- name: Setup Node.js
|
|
307
|
+
uses: actions/setup-node@v3
|
|
308
|
+
with:
|
|
309
|
+
node-version: '18'
|
|
310
|
+
cache: 'npm'
|
|
311
|
+
|
|
312
|
+
- name: Install dependencies
|
|
313
|
+
run: npm ci
|
|
314
|
+
|
|
315
|
+
- name: Run tests (shard ${{ matrix.shard }}/3)
|
|
316
|
+
run: npm run test:run -- --shard=${{ matrix.shard }}/3
|
|
317
|
+
|
|
318
|
+
- name: Generate coverage
|
|
319
|
+
run: npm run test:coverage
|
|
320
|
+
|
|
321
|
+
- name: Upload coverage to Codecov
|
|
322
|
+
uses: codecov/codecov-action@v3
|
|
323
|
+
with:
|
|
324
|
+
files: ./coverage/lcov.info
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
## Output Format
|
|
328
|
+
|
|
329
|
+
```
|
|
330
|
+
🧪 TESTING FRAMEWORK SETUP
|
|
331
|
+
==========================
|
|
332
|
+
|
|
333
|
+
✅ Framework Detection:
|
|
334
|
+
- Project type: React
|
|
335
|
+
- Recommended: Vitest
|
|
336
|
+
- Testing Library: @testing-library/react
|
|
337
|
+
|
|
338
|
+
📦 Dependencies Installed:
|
|
339
|
+
- vitest@latest
|
|
340
|
+
- @vitest/ui@latest
|
|
341
|
+
- @vitest/coverage-v8@latest
|
|
342
|
+
- @testing-library/react@latest
|
|
343
|
+
- @testing-library/user-event@latest
|
|
344
|
+
- @testing-library/jest-dom@latest
|
|
345
|
+
|
|
346
|
+
⚙️ Configuration Created:
|
|
347
|
+
- vitest.config.js ✓
|
|
348
|
+
- test/setup.js ✓
|
|
349
|
+
- .github/workflows/test.yml ✓
|
|
350
|
+
|
|
351
|
+
📋 Scripts Added:
|
|
352
|
+
- npm test (run tests in watch mode)
|
|
353
|
+
- npm run test:run (run tests once)
|
|
354
|
+
- npm run test:coverage (generate coverage report)
|
|
355
|
+
- npm run test:ui (interactive test UI)
|
|
356
|
+
|
|
357
|
+
📚 Documentation:
|
|
358
|
+
- Example test created: src/components/__tests__/Button.test.jsx
|
|
359
|
+
- Testing guide: docs/TESTING.md
|
|
360
|
+
|
|
361
|
+
🎯 Next Steps:
|
|
362
|
+
1. Write tests for existing components
|
|
363
|
+
2. Run tests: npm test
|
|
364
|
+
3. Check coverage: npm run test:coverage
|
|
365
|
+
4. Integrate with CI/CD pipeline
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
## Context7-Verified Patterns Applied
|
|
369
|
+
|
|
370
|
+
Based on Context7 documentation from `/vitest-dev/vitest` and `/testing-library/testing-library-docs`:
|
|
371
|
+
|
|
372
|
+
1. **Query Priority**: Setup uses semantic queries (getByRole, getByLabelText)
|
|
373
|
+
2. **Coverage Configuration**: Realistic thresholds with proper exclusions
|
|
374
|
+
3. **Test Isolation**: beforeEach/afterEach cleanup configured
|
|
375
|
+
4. **Sharding Support**: Multi-process test execution enabled
|
|
376
|
+
5. **Browser Testing**: jsdom environment configured for component testing
|
|
377
|
+
6. **CI Integration**: GitHub Actions with test sharding
|
|
378
|
+
|
|
379
|
+
## Validation Checklist
|
|
380
|
+
|
|
381
|
+
Before completing setup, verify:
|
|
382
|
+
- [ ] Testing framework installed and configured
|
|
383
|
+
- [ ] Coverage reporting enabled with appropriate thresholds
|
|
384
|
+
- [ ] Test setup file created with necessary mocks
|
|
385
|
+
- [ ] Example test created and passing
|
|
386
|
+
- [ ] package.json scripts updated
|
|
387
|
+
- [ ] CI/CD workflow configured
|
|
388
|
+
- [ ] Documentation created for team
|
|
389
|
+
|
|
390
|
+
## Related Commands
|
|
391
|
+
|
|
392
|
+
- `/test:coverage` - Generate and analyze coverage reports
|
|
393
|
+
- `/e2e:setup` - Setup E2E testing with Playwright
|
|
394
|
+
- `/lint:setup` - Configure linting for test files
|
|
395
|
+
|
|
396
|
+
## Troubleshooting
|
|
397
|
+
|
|
398
|
+
### Common Issues
|
|
399
|
+
|
|
400
|
+
**Issue**: `ReferenceError: describe is not defined`
|
|
401
|
+
**Solution**: Add `globals: true` to vitest.config.js
|
|
402
|
+
|
|
403
|
+
**Issue**: `Cannot find module '@testing-library/jest-dom'`
|
|
404
|
+
**Solution**: Ensure setupFiles path is correct in config
|
|
405
|
+
|
|
406
|
+
**Issue**: Coverage thresholds not met
|
|
407
|
+
**Solution**: Review uncovered code, write additional tests, or adjust thresholds
|
|
408
|
+
|
|
409
|
+
## Support
|
|
410
|
+
|
|
411
|
+
For issues or questions:
|
|
412
|
+
- Review official documentation via Context7 MCP server
|
|
413
|
+
- Check example tests in `test/examples/`
|
|
414
|
+
- Consult frontend-testing-engineer agent
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@claudeautopm/plugin-testing",
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"description": "Testing frameworks, E2E testing, and quality assurance specialists",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"claudeautopm",
|
|
7
|
+
"plugin",
|
|
8
|
+
"testing"
|
|
9
|
+
],
|
|
10
|
+
"author": {
|
|
11
|
+
"name": "ClaudeAutoPM Team",
|
|
12
|
+
"email": "autopm@example.com"
|
|
13
|
+
},
|
|
14
|
+
"license": "MIT",
|
|
15
|
+
"repository": {
|
|
16
|
+
"type": "git",
|
|
17
|
+
"url": "git+https://github.com/rafeekpro/ClaudeAutoPM.git",
|
|
18
|
+
"directory": "packages/plugin-testing"
|
|
19
|
+
},
|
|
20
|
+
"homepage": "https://github.com/rafeekpro/ClaudeAutoPM/tree/main/packages/plugin-testing#readme",
|
|
21
|
+
"bugs": {
|
|
22
|
+
"url": "https://github.com/rafeekpro/ClaudeAutoPM/issues"
|
|
23
|
+
},
|
|
24
|
+
"engines": {
|
|
25
|
+
"node": ">=16.0.0",
|
|
26
|
+
"npm": ">=8.0.0"
|
|
27
|
+
},
|
|
28
|
+
"publishConfig": {
|
|
29
|
+
"access": "public",
|
|
30
|
+
"registry": "https://registry.npmjs.org/"
|
|
31
|
+
},
|
|
32
|
+
"files": [
|
|
33
|
+
"agents/",
|
|
34
|
+
"plugin.json",
|
|
35
|
+
"README.md"
|
|
36
|
+
],
|
|
37
|
+
"peerDependencies": {
|
|
38
|
+
"claude-autopm": ">=2.8.0"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@claudeautopm/plugin-testing",
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"schemaVersion": "2.0",
|
|
5
|
+
"displayName": "Testing & QA",
|
|
6
|
+
"description": "Complete testing plugin with Jest, Vitest, Testing Library, and comprehensive test strategies for frontend, backend, and E2E testing",
|
|
7
|
+
"category": "testing",
|
|
8
|
+
"metadata": {
|
|
9
|
+
"category": "Testing & QA",
|
|
10
|
+
"author": "ClaudeAutoPM Team",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"homepage": "https://github.com/rafeekpro/ClaudeAutoPM",
|
|
13
|
+
"repository": {
|
|
14
|
+
"type": "git",
|
|
15
|
+
"url": "git+https://github.com/rafeekpro/ClaudeAutoPM.git",
|
|
16
|
+
"directory": "packages/plugin-testing"
|
|
17
|
+
},
|
|
18
|
+
"size": "~12 KB (gzipped)",
|
|
19
|
+
"required": false,
|
|
20
|
+
"tags": ["testing", "qa", "jest", "vitest", "testing-library", "unit-testing", "integration-testing"]
|
|
21
|
+
},
|
|
22
|
+
"agents": [
|
|
23
|
+
{
|
|
24
|
+
"name": "frontend-testing-engineer",
|
|
25
|
+
"file": "agents/frontend-testing-engineer.md",
|
|
26
|
+
"category": "testing",
|
|
27
|
+
"description": "Frontend unit and integration testing with Jest, Vitest, Testing Library for React, Vue, Angular",
|
|
28
|
+
"version": "2.0.0",
|
|
29
|
+
"tags": ["frontend", "testing", "jest", "vitest", "react-testing-library", "vue", "angular"],
|
|
30
|
+
"mcp": [],
|
|
31
|
+
"context7": [
|
|
32
|
+
"/vitest-dev/vitest",
|
|
33
|
+
"/testing-library/testing-library-docs",
|
|
34
|
+
"/testing-library/react-testing-library"
|
|
35
|
+
]
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
"commands": [
|
|
39
|
+
{
|
|
40
|
+
"name": "test-setup",
|
|
41
|
+
"file": "commands/test-setup.md",
|
|
42
|
+
"category": "testing",
|
|
43
|
+
"priority": "medium",
|
|
44
|
+
"description": "Setup comprehensive testing framework with Jest/Vitest, Testing Library, and coverage reporting",
|
|
45
|
+
"tags": ["testing", "setup", "jest", "vitest", "configuration"],
|
|
46
|
+
"mcpTools": ["context7"]
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "test-coverage",
|
|
50
|
+
"file": "commands/test-coverage.md",
|
|
51
|
+
"category": "testing",
|
|
52
|
+
"priority": "medium",
|
|
53
|
+
"description": "Generate and analyze test coverage reports with actionable improvements",
|
|
54
|
+
"tags": ["coverage", "reporting", "quality", "metrics"],
|
|
55
|
+
"mcpTools": []
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"name": "jest-optimize",
|
|
59
|
+
"file": "commands/jest-optimize.md",
|
|
60
|
+
"description": "Optimize Jest test performance with parallel execution, sharding, and database optimization",
|
|
61
|
+
"category": "optimization",
|
|
62
|
+
"tags": ["jest", "performance", "parallel", "sharding", "database", "optimization"],
|
|
63
|
+
"requiredAgents": ["frontend-testing-engineer"],
|
|
64
|
+
"context7": [
|
|
65
|
+
"/goldbergyoni/nodejs-testing-best-practices",
|
|
66
|
+
"/websites/jestjs_io_next"
|
|
67
|
+
]
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"name": "playwright-optimize",
|
|
71
|
+
"file": "commands/playwright-optimize.md",
|
|
72
|
+
"description": "Optimize Playwright E2E tests with fully parallel execution, sharding, and browser optimization",
|
|
73
|
+
"category": "optimization",
|
|
74
|
+
"tags": ["playwright", "e2e", "parallel", "sharding", "performance", "optimization"],
|
|
75
|
+
"requiredAgents": ["e2e-test-engineer"],
|
|
76
|
+
"context7": [
|
|
77
|
+
"/microsoft/playwright"
|
|
78
|
+
]
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"name": "test-performance",
|
|
82
|
+
"file": "commands/test-performance.md",
|
|
83
|
+
"description": "Comprehensive testing performance optimization across Jest, Playwright, Vitest with CI/CD pipeline optimization",
|
|
84
|
+
"category": "optimization",
|
|
85
|
+
"tags": ["performance", "optimization", "jest", "playwright", "vitest", "ci-cd", "testing"],
|
|
86
|
+
"requiredAgents": ["frontend-testing-engineer", "e2e-test-engineer"],
|
|
87
|
+
"context7": [
|
|
88
|
+
"/goldbergyoni/nodejs-testing-best-practices",
|
|
89
|
+
"/microsoft/playwright",
|
|
90
|
+
"/vitest-dev/vitest"
|
|
91
|
+
]
|
|
92
|
+
}
|
|
93
|
+
],
|
|
94
|
+
"rules": [
|
|
95
|
+
{
|
|
96
|
+
"name": "testing-standards",
|
|
97
|
+
"file": "rules/testing-standards.md",
|
|
98
|
+
"priority": "high",
|
|
99
|
+
"description": "Comprehensive testing standards with Context7-verified best practices for unit, integration, and E2E tests",
|
|
100
|
+
"tags": ["testing", "standards", "best-practices", "quality"],
|
|
101
|
+
"appliesTo": ["commands", "agents"],
|
|
102
|
+
"enforcesOn": ["frontend-testing-engineer"]
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"name": "test-coverage-requirements",
|
|
106
|
+
"file": "rules/test-coverage-requirements.md",
|
|
107
|
+
"priority": "high",
|
|
108
|
+
"description": "Test coverage thresholds and quality metrics enforcement",
|
|
109
|
+
"tags": ["coverage", "quality", "metrics", "enforcement"],
|
|
110
|
+
"appliesTo": ["commands", "agents"],
|
|
111
|
+
"enforcesOn": ["frontend-testing-engineer"]
|
|
112
|
+
}
|
|
113
|
+
],
|
|
114
|
+
"scripts": [
|
|
115
|
+
{
|
|
116
|
+
"name": "vitest-config-example",
|
|
117
|
+
"file": "scripts/examples/vitest-config-example.js",
|
|
118
|
+
"description": "Vitest configuration example with coverage, sharding, and performance profiling",
|
|
119
|
+
"type": "example",
|
|
120
|
+
"executable": true,
|
|
121
|
+
"category": "vitest",
|
|
122
|
+
"tags": ["vitest", "config", "testing", "context7"]
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"name": "react-testing-example",
|
|
126
|
+
"file": "scripts/examples/react-testing-example.test.jsx",
|
|
127
|
+
"description": "React Testing Library example with Context7-verified patterns and best practices",
|
|
128
|
+
"type": "example",
|
|
129
|
+
"executable": true,
|
|
130
|
+
"category": "react",
|
|
131
|
+
"tags": ["react", "testing-library", "vitest", "context7"]
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"name": "vue-testing-example",
|
|
135
|
+
"file": "scripts/examples/vue-testing-example.test.js",
|
|
136
|
+
"description": "Vue Test Utils + Vitest example with Context7-verified patterns",
|
|
137
|
+
"type": "example",
|
|
138
|
+
"executable": true,
|
|
139
|
+
"category": "vue",
|
|
140
|
+
"tags": ["vue", "vitest", "testing", "context7"]
|
|
141
|
+
}
|
|
142
|
+
],
|
|
143
|
+
"features": {
|
|
144
|
+
"unit_testing": {
|
|
145
|
+
"enabled": true,
|
|
146
|
+
"description": "Jest and Vitest for comprehensive unit testing"
|
|
147
|
+
},
|
|
148
|
+
"integration_testing": {
|
|
149
|
+
"enabled": true,
|
|
150
|
+
"description": "Integration testing strategies and patterns"
|
|
151
|
+
},
|
|
152
|
+
"component_testing": {
|
|
153
|
+
"enabled": true,
|
|
154
|
+
"description": "React Testing Library, Vue Test Utils, Angular Testing"
|
|
155
|
+
},
|
|
156
|
+
"coverage_reporting": {
|
|
157
|
+
"enabled": true,
|
|
158
|
+
"description": "Coverage analysis and reporting with Istanbul/c8"
|
|
159
|
+
},
|
|
160
|
+
"test_sharding": {
|
|
161
|
+
"enabled": true,
|
|
162
|
+
"description": "Parallel test execution and sharding for performance"
|
|
163
|
+
},
|
|
164
|
+
"snapshot_testing": {
|
|
165
|
+
"enabled": true,
|
|
166
|
+
"description": "Snapshot testing for UI components"
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"dependencies": [],
|
|
170
|
+
"peerPlugins": [
|
|
171
|
+
"@claudeautopm/plugin-core"
|
|
172
|
+
],
|
|
173
|
+
"mcpServers": {
|
|
174
|
+
"recommended": [
|
|
175
|
+
"context7"
|
|
176
|
+
],
|
|
177
|
+
"optional": []
|
|
178
|
+
},
|
|
179
|
+
"keywords": [
|
|
180
|
+
"claudeautopm",
|
|
181
|
+
"plugin",
|
|
182
|
+
"testing",
|
|
183
|
+
"qa",
|
|
184
|
+
"jest",
|
|
185
|
+
"vitest",
|
|
186
|
+
"testing-library",
|
|
187
|
+
"react-testing-library",
|
|
188
|
+
"vue-test-utils",
|
|
189
|
+
"unit-testing",
|
|
190
|
+
"integration-testing",
|
|
191
|
+
"e2e-testing",
|
|
192
|
+
"coverage",
|
|
193
|
+
"tdd",
|
|
194
|
+
"bdd"
|
|
195
|
+
],
|
|
196
|
+
"compatibleWith": ">=3.0.0"
|
|
197
|
+
}
|