proagents 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +170 -0
- package/bin/proagents.js +90 -0
- package/lib/commands/feature.js +125 -0
- package/lib/commands/fix.js +60 -0
- package/lib/commands/help.js +76 -0
- package/lib/commands/init.js +64 -0
- package/lib/commands/status.js +91 -0
- package/lib/index.js +28 -0
- package/package.json +52 -0
- package/proagents/.learning/global/common-patterns.json +77 -0
- package/proagents/.learning/global/user-preferences.json +76 -0
- package/proagents/.learning/projects/example-project/corrections.json +99 -0
- package/proagents/.learning/projects/example-project/feedback.json +109 -0
- package/proagents/.learning/projects/example-project/metrics.json +101 -0
- package/proagents/.learning/projects/example-project/patterns.json +102 -0
- package/proagents/.learning/schemas/README.md +48 -0
- package/proagents/.learning/schemas/corrections-schema.json +100 -0
- package/proagents/.learning/schemas/feedback-schema.json +144 -0
- package/proagents/.learning/schemas/metrics-schema.json +96 -0
- package/proagents/.learning/schemas/patterns-schema.json +82 -0
- package/proagents/.learning/schemas/project-patterns-schema.json +125 -0
- package/proagents/.learning/schemas/user-preferences-schema.json +136 -0
- package/proagents/GETTING-STARTED-STORY.md +708 -0
- package/proagents/README.md +99 -0
- package/proagents/WORKFLOW.md +1234 -0
- package/proagents/active-features/.gitkeep +0 -0
- package/proagents/active-features/README.md +176 -0
- package/proagents/active-features/_index.json +74 -0
- package/proagents/active-features/feature-user-auth/dependencies.json +81 -0
- package/proagents/active-features/feature-user-auth/files-modified.json +126 -0
- package/proagents/active-features/feature-user-auth/status.json +122 -0
- package/proagents/active-features/schemas/dependencies-schema.json +119 -0
- package/proagents/active-features/schemas/feature-schema.json +132 -0
- package/proagents/active-features/schemas/files-schema.json +100 -0
- package/proagents/active-features/schemas/index-schema.json +95 -0
- package/proagents/adr/README.md +302 -0
- package/proagents/adr/examples/api-versioning.md +297 -0
- package/proagents/adr/examples/database-choice.md +264 -0
- package/proagents/adr/template.md +273 -0
- package/proagents/ai-models/README.md +141 -0
- package/proagents/ai-models/cost-management.md +362 -0
- package/proagents/ai-models/fallbacks.md +342 -0
- package/proagents/ai-models/model-config.md +318 -0
- package/proagents/ai-models/task-routing.md +503 -0
- package/proagents/ai-training/README.md +155 -0
- package/proagents/ai-training/continuous-learning.md +413 -0
- package/proagents/ai-training/domain-knowledge.md +378 -0
- package/proagents/ai-training/pattern-learning.md +455 -0
- package/proagents/ai-training/training-data.md +337 -0
- package/proagents/ai-training/user-preferences.md +346 -0
- package/proagents/api-versioning/README.md +257 -0
- package/proagents/api-versioning/changelog-template.md +225 -0
- package/proagents/api-versioning/deprecation-workflow.md +470 -0
- package/proagents/api-versioning/versioning-strategy.md +291 -0
- package/proagents/approval-workflows/README.md +146 -0
- package/proagents/approval-workflows/approval-config.md +332 -0
- package/proagents/approval-workflows/approval-stages.md +503 -0
- package/proagents/approval-workflows/emergency-bypass.md +351 -0
- package/proagents/approval-workflows/examples.md +859 -0
- package/proagents/approval-workflows/notifications.md +320 -0
- package/proagents/automation/README.md +38 -0
- package/proagents/automation/ai-behavior-rules.md +339 -0
- package/proagents/automation/ai-prompt-injection.md +331 -0
- package/proagents/automation/auto-decisions.md +535 -0
- package/proagents/automation/decision-defaults.yaml +317 -0
- package/proagents/cache/README.md +110 -0
- package/proagents/cache/analysis-metadata.json +76 -0
- package/proagents/cache/conventions.json +125 -0
- package/proagents/cache/dependencies.json +85 -0
- package/proagents/cache/features.json +115 -0
- package/proagents/cache/patterns.json +105 -0
- package/proagents/cache/schemas/conventions-schema.json +138 -0
- package/proagents/cache/schemas/dependencies-schema.json +95 -0
- package/proagents/cache/schemas/features-schema.json +104 -0
- package/proagents/cache/schemas/metadata-schema.json +83 -0
- package/proagents/cache/schemas/patterns-schema.json +136 -0
- package/proagents/cache/schemas/structure-schema.json +72 -0
- package/proagents/cache/structure.json +109 -0
- package/proagents/changelog/2024/01/2024-01-10-api-url-config.md +41 -0
- package/proagents/changelog/2024/01/2024-01-12-login-bug-fix.md +69 -0
- package/proagents/changelog/2024/01/2024-01-15-user-auth-feature.md +99 -0
- package/proagents/changelog/CHANGELOG.md +82 -0
- package/proagents/changelog/README.md +327 -0
- package/proagents/changelog/entry-template.md +283 -0
- package/proagents/checklists/README.md +261 -0
- package/proagents/checklists/code-quality.md +137 -0
- package/proagents/checklists/code-review.md +148 -0
- package/proagents/checklists/pr-checklist.md +78 -0
- package/proagents/checklists/pre-deployment.md +132 -0
- package/proagents/checklists/pre-implementation.md +80 -0
- package/proagents/checklists/testing.md +120 -0
- package/proagents/cicd/README.md +338 -0
- package/proagents/cicd/azure-devops.md +267 -0
- package/proagents/cicd/github-actions.md +375 -0
- package/proagents/cicd/gitlab-ci.md +278 -0
- package/proagents/cicd/jenkins.md +317 -0
- package/proagents/cli/README.md +392 -0
- package/proagents/cli/commands-reference.md +893 -0
- package/proagents/cli/ide-integration.md +584 -0
- package/proagents/cli/shortcuts.md +394 -0
- package/proagents/cli/slash-commands.md +507 -0
- package/proagents/collaboration/README.md +143 -0
- package/proagents/collaboration/roles.md +248 -0
- package/proagents/collaboration/sessions.md +390 -0
- package/proagents/collaboration/sync.md +358 -0
- package/proagents/compliance/README.md +206 -0
- package/proagents/compliance/access-control.md +310 -0
- package/proagents/compliance/audit-logging.md +444 -0
- package/proagents/compliance/compliance-frameworks.md +429 -0
- package/proagents/compliance/reports.md +491 -0
- package/proagents/compliance/retention-policies.md +454 -0
- package/proagents/config/README.md +181 -0
- package/proagents/config/integrations/README.md +68 -0
- package/proagents/config/integrations/github.yaml +211 -0
- package/proagents/config/integrations/jira.yaml +144 -0
- package/proagents/config/integrations/linear.yaml +157 -0
- package/proagents/config/integrations/notion.yaml +203 -0
- package/proagents/config/integrations/slack.yaml +230 -0
- package/proagents/config/rules/README.md +73 -0
- package/proagents/config/rules/custom-rules.template.yaml +188 -0
- package/proagents/config/rules/validation-rules.template.yaml +177 -0
- package/proagents/config/standards/README.md +58 -0
- package/proagents/config/standards/architecture-rules.template.md +124 -0
- package/proagents/config/standards/coding-standards.template.md +107 -0
- package/proagents/config/standards/naming-conventions.template.md +114 -0
- package/proagents/config/standards/testing-standards.template.md +213 -0
- package/proagents/config/templates/README.md +74 -0
- package/proagents/config/templates/api-route.template.ts +142 -0
- package/proagents/config/templates/component.template.tsx +55 -0
- package/proagents/config/templates/hook.template.ts +93 -0
- package/proagents/config/templates/test.template.ts +171 -0
- package/proagents/config-versioning/README.md +120 -0
- package/proagents/config-versioning/changelog.md +300 -0
- package/proagents/config-versioning/rollback.md +283 -0
- package/proagents/config-versioning/versioning.md +330 -0
- package/proagents/contract-testing/README.md +223 -0
- package/proagents/contract-testing/contract-testing.md +614 -0
- package/proagents/contract-testing/pact-integration.md +507 -0
- package/proagents/contract-testing/schema-validation.md +565 -0
- package/proagents/cost/README.md +48 -0
- package/proagents/cost/cost-template.md +283 -0
- package/proagents/cost/estimation-framework.md +287 -0
- package/proagents/database/README.md +72 -0
- package/proagents/database/examples/001-create-users.sql +129 -0
- package/proagents/database/examples/002-add-preferences.sql +94 -0
- package/proagents/database/examples/003-add-index.sql +105 -0
- package/proagents/database/examples/004-rename-column.sql +122 -0
- package/proagents/database/examples/005-add-foreign-key.sql +142 -0
- package/proagents/database/examples/006-data-migration.sql +196 -0
- package/proagents/database/examples/007-drop-column.sql +163 -0
- package/proagents/database/examples/README.md +89 -0
- package/proagents/database/migration-workflow.md +478 -0
- package/proagents/database/rollback-scripts.md +487 -0
- package/proagents/database/safety-checks.md +447 -0
- package/proagents/dependency-management/README.md +140 -0
- package/proagents/dependency-management/automation.md +363 -0
- package/proagents/dependency-management/compatibility.md +319 -0
- package/proagents/dependency-management/security-scanning.md +413 -0
- package/proagents/dependency-management/update-policies.md +374 -0
- package/proagents/disaster-recovery/README.md +247 -0
- package/proagents/disaster-recovery/automation.md +366 -0
- package/proagents/disaster-recovery/backup-recovery.md +571 -0
- package/proagents/disaster-recovery/incident-response.md +565 -0
- package/proagents/disaster-recovery/rollback-procedures.md +499 -0
- package/proagents/disaster-recovery/runbooks.md +603 -0
- package/proagents/disaster-recovery/scenarios.md +892 -0
- package/proagents/disaster-recovery/testing.md +438 -0
- package/proagents/environments/README.md +244 -0
- package/proagents/environments/configuration.md +437 -0
- package/proagents/environments/promotion.md +434 -0
- package/proagents/environments/setup.md +420 -0
- package/proagents/examples/README.md +55 -0
- package/proagents/examples/backend-nodejs/README.md +188 -0
- package/proagents/examples/backend-nodejs/complete-conversation.md +601 -0
- package/proagents/examples/backend-nodejs/proagents.config.yaml +415 -0
- package/proagents/examples/backend-nodejs/workflow-example.md +909 -0
- package/proagents/examples/fullstack-nextjs/README.md +155 -0
- package/proagents/examples/fullstack-nextjs/complete-conversation.md +604 -0
- package/proagents/examples/fullstack-nextjs/proagents.config.yaml +287 -0
- package/proagents/examples/fullstack-nextjs/workflow-example.md +553 -0
- package/proagents/examples/mobile-react-native/README.md +171 -0
- package/proagents/examples/mobile-react-native/complete-conversation.md +825 -0
- package/proagents/examples/mobile-react-native/proagents.config.yaml +330 -0
- package/proagents/examples/mobile-react-native/workflow-example.md +723 -0
- package/proagents/examples/web-frontend-react/README.md +125 -0
- package/proagents/examples/web-frontend-react/complete-conversation.md +556 -0
- package/proagents/examples/web-frontend-react/proagents.config.yaml +183 -0
- package/proagents/examples/web-frontend-react/workflow-example.md +603 -0
- package/proagents/existing-projects/README.md +65 -0
- package/proagents/existing-projects/challenges.md +861 -0
- package/proagents/existing-projects/coexistence-mode.md +483 -0
- package/proagents/existing-projects/compatibility-assessment.md +541 -0
- package/proagents/existing-projects/gradual-adoption.md +515 -0
- package/proagents/existing-projects/migration-strategies.md +788 -0
- package/proagents/existing-projects/pattern-reconciliation.md +489 -0
- package/proagents/existing-projects/team-onboarding.md +617 -0
- package/proagents/existing-projects/technical-debt-handling.md +644 -0
- package/proagents/feature-flags/README.md +263 -0
- package/proagents/feature-flags/ab-testing.md +413 -0
- package/proagents/feature-flags/configuration.md +420 -0
- package/proagents/feature-flags/kill-switches.md +444 -0
- package/proagents/feature-flags/rollout-strategies.md +392 -0
- package/proagents/getting-started/README.md +60 -0
- package/proagents/getting-started/ai-training-setup.md +380 -0
- package/proagents/getting-started/ide-setup.md +195 -0
- package/proagents/getting-started/mcp-setup.md +239 -0
- package/proagents/getting-started/pm-integration.md +336 -0
- package/proagents/getting-started/prompt-engineering.md +478 -0
- package/proagents/getting-started/team-onboarding.md +236 -0
- package/proagents/git/README.md +68 -0
- package/proagents/git/branch-strategy.md +164 -0
- package/proagents/git/commit-conventions.md +241 -0
- package/proagents/git/pr-workflow.md +286 -0
- package/proagents/git/rollback-procedures.md +416 -0
- package/proagents/i18n/README.md +133 -0
- package/proagents/i18n/extraction.md +433 -0
- package/proagents/i18n/tms-integration.md +332 -0
- package/proagents/i18n/translation-workflow.md +413 -0
- package/proagents/i18n/validation.md +355 -0
- package/proagents/ide-integration/README.md +124 -0
- package/proagents/ide-integration/cline-config.md +429 -0
- package/proagents/ide-integration/continue-config.md +380 -0
- package/proagents/ide-integration/cursor-rules.md +280 -0
- package/proagents/ide-integration/github-copilot.md +384 -0
- package/proagents/ide-integration/windsurf-rules.md +314 -0
- package/proagents/integrations/README.md +97 -0
- package/proagents/integrations/pm/README.md +344 -0
- package/proagents/learning/README.md +136 -0
- package/proagents/learning/adaptation.md +305 -0
- package/proagents/learning/data-collection.md +283 -0
- package/proagents/learning/implementation-guide.md +865 -0
- package/proagents/learning/reports.md +306 -0
- package/proagents/logging/README.md +276 -0
- package/proagents/logging/aggregation.md +475 -0
- package/proagents/logging/log-levels.md +376 -0
- package/proagents/logging/sensitive-data.md +423 -0
- package/proagents/logging/structured-logging.md +406 -0
- package/proagents/mcp/README.md +133 -0
- package/proagents/mcp/context-providers.md +442 -0
- package/proagents/mcp/server-config.md +306 -0
- package/proagents/mcp/tools-definition.md +513 -0
- package/proagents/metrics/README.md +174 -0
- package/proagents/metrics/code-quality-kpis.md +461 -0
- package/proagents/metrics/deployment-metrics.md +517 -0
- package/proagents/metrics/developer-productivity.md +368 -0
- package/proagents/metrics/learning-effectiveness.md +478 -0
- package/proagents/migrations/README.md +77 -0
- package/proagents/migrations/from-claude-projects.md +312 -0
- package/proagents/migrations/from-cursor-rules.md +345 -0
- package/proagents/migrations/from-custom-workflows.md +410 -0
- package/proagents/monitoring/README.md +308 -0
- package/proagents/monitoring/alerting.md +449 -0
- package/proagents/monitoring/dashboards.md +454 -0
- package/proagents/monitoring/health-checks.md +436 -0
- package/proagents/monitoring/metrics.md +434 -0
- package/proagents/multi-project/README.md +170 -0
- package/proagents/multi-project/coordinated-deploy.md +510 -0
- package/proagents/multi-project/cross-project-deps.md +395 -0
- package/proagents/multi-project/unified-changelog.md +477 -0
- package/proagents/multi-project/walkthroughs/monorepo-setup.md +787 -0
- package/proagents/multi-project/workspace-config.md +408 -0
- package/proagents/notifications/README.md +151 -0
- package/proagents/notifications/channels.md +457 -0
- package/proagents/notifications/preferences.md +415 -0
- package/proagents/notifications/routing.md +449 -0
- package/proagents/notifications/scheduling.md +425 -0
- package/proagents/notifications/templates.md +446 -0
- package/proagents/offline-mode/README.md +145 -0
- package/proagents/offline-mode/caching.md +344 -0
- package/proagents/offline-mode/offline-operations.md +312 -0
- package/proagents/offline-mode/queue-specifications.md +679 -0
- package/proagents/offline-mode/sync.md +475 -0
- package/proagents/parallel-features/README.md +85 -0
- package/proagents/parallel-features/conflict-detection.md +226 -0
- package/proagents/parallel-features/dependency-management.md +392 -0
- package/proagents/parallel-features/merge-coordination.md +506 -0
- package/proagents/parallel-features/tracking-system.md +416 -0
- package/proagents/patterns/README.md +305 -0
- package/proagents/patterns/api-errors.md +453 -0
- package/proagents/patterns/async-errors.md +521 -0
- package/proagents/patterns/error-types.md +437 -0
- package/proagents/patterns/ui-errors.md +595 -0
- package/proagents/performance/README.md +59 -0
- package/proagents/performance/bundle-analysis.md +375 -0
- package/proagents/performance/load-testing.md +563 -0
- package/proagents/performance/runtime-metrics.md +489 -0
- package/proagents/performance/web-vitals.md +425 -0
- package/proagents/plugins/README.md +139 -0
- package/proagents/plugins/creating-plugins.md +504 -0
- package/proagents/plugins/plugin-api.md +467 -0
- package/proagents/plugins/plugin-registry.md +276 -0
- package/proagents/pm-integration/README.md +151 -0
- package/proagents/pm-integration/asana.md +346 -0
- package/proagents/pm-integration/github-issues.md +308 -0
- package/proagents/pm-integration/gitlab-issues.md +482 -0
- package/proagents/pm-integration/jira.md +364 -0
- package/proagents/pm-integration/linear.md +409 -0
- package/proagents/pm-integration/notion.md +275 -0
- package/proagents/pm-integration/sync-config.md +533 -0
- package/proagents/pm-integration/trello.md +159 -0
- package/proagents/proagents.config.yaml +213 -0
- package/proagents/prompts/00-init-wizard.md +426 -0
- package/proagents/prompts/00-init.md +219 -0
- package/proagents/prompts/01-analysis.md +244 -0
- package/proagents/prompts/02-requirements.md +399 -0
- package/proagents/prompts/03-ui-design.md +493 -0
- package/proagents/prompts/04-planning.md +505 -0
- package/proagents/prompts/05-implementation.md +518 -0
- package/proagents/prompts/06-testing.md +620 -0
- package/proagents/prompts/06.5-code-review.md +512 -0
- package/proagents/prompts/07-documentation.md +673 -0
- package/proagents/prompts/08-deployment.md +539 -0
- package/proagents/prompts/09-rollback.md +554 -0
- package/proagents/prompts/README.md +51 -0
- package/proagents/prompts/accessibility/README.md +146 -0
- package/proagents/prompts/accessibility/aria.md +276 -0
- package/proagents/prompts/accessibility/audit.md +233 -0
- package/proagents/prompts/accessibility/keyboard.md +392 -0
- package/proagents/prompts/accessibility/wcag.md +189 -0
- package/proagents/prompts/debugging/README.md +51 -0
- package/proagents/prompts/debugging/error-analysis.md +385 -0
- package/proagents/prompts/debugging/performance-debug.md +381 -0
- package/proagents/prompts/debugging/systematic.md +270 -0
- package/proagents/prompts/performance/README.md +47 -0
- package/proagents/prompts/performance/analyze.md +265 -0
- package/proagents/prompts/performance/optimize.md +347 -0
- package/proagents/prompts/refactoring/README.md +51 -0
- package/proagents/prompts/refactoring/architecture.md +531 -0
- package/proagents/prompts/refactoring/code-smells.md +174 -0
- package/proagents/prompts/refactoring/patterns.md +516 -0
- package/proagents/prompts/security-audit/README.md +197 -0
- package/proagents/prompts/security-audit/code-review.md +260 -0
- package/proagents/prompts/security-audit/vulnerability-scan.md +288 -0
- package/proagents/reporting/README.md +158 -0
- package/proagents/reporting/dashboards.md +366 -0
- package/proagents/reporting/exports.md +524 -0
- package/proagents/reporting/quality-metrics.md +385 -0
- package/proagents/reporting/templates/README.md +56 -0
- package/proagents/reporting/templates/dashboard-config.json +187 -0
- package/proagents/reporting/templates/metrics-queries.md +427 -0
- package/proagents/reporting/templates/react-dashboard.tsx +544 -0
- package/proagents/reporting/templates/widgets.md +451 -0
- package/proagents/reporting/velocity-metrics.md +340 -0
- package/proagents/reverse-engineering/README.md +151 -0
- package/proagents/reverse-engineering/architecture-extraction.md +325 -0
- package/proagents/reverse-engineering/code-analysis.md +377 -0
- package/proagents/reverse-engineering/dependency-mapping.md +567 -0
- package/proagents/reverse-engineering/diagram-generation.md +586 -0
- package/proagents/reverse-engineering/documentation-generation.md +468 -0
- package/proagents/reverse-engineering/pattern-detection.md +569 -0
- package/proagents/reverse-engineering/quality-assessment.md +733 -0
- package/proagents/rules/README.md +179 -0
- package/proagents/rules/custom-rules-template.yaml +286 -0
- package/proagents/rules/custom-rules.md +754 -0
- package/proagents/rules/validation-rules-template.yaml +517 -0
- package/proagents/runbooks/README.md +219 -0
- package/proagents/runbooks/dependency-vulnerability.md +505 -0
- package/proagents/runbooks/incident-response.md +451 -0
- package/proagents/runbooks/performance-degradation.md +584 -0
- package/proagents/runbooks/production-debugging.md +489 -0
- package/proagents/scaffolding/README.md +64 -0
- package/proagents/scaffolding/nextjs/README.md +578 -0
- package/proagents/scaffolding/nextjs/templates/api-route.ts.template +185 -0
- package/proagents/scaffolding/nextjs/templates/page.tsx.template +109 -0
- package/proagents/scaffolding/nextjs/templates/server-action.ts.template +204 -0
- package/proagents/scaffolding/nodejs/README.md +558 -0
- package/proagents/scaffolding/nodejs/templates/controller.ts.template +167 -0
- package/proagents/scaffolding/nodejs/templates/repository.ts.template +155 -0
- package/proagents/scaffolding/nodejs/templates/service.ts.template +207 -0
- package/proagents/scaffolding/project-types.md +401 -0
- package/proagents/scaffolding/react/README.md +399 -0
- package/proagents/scaffolding/react/templates/component.tsx.template +88 -0
- package/proagents/scaffolding/react/templates/hook.ts.template +127 -0
- package/proagents/scaffolding/react/templates/service.ts.template +155 -0
- package/proagents/scaffolding/react/templates/test.tsx.template +149 -0
- package/proagents/scaffolding/react-native/README.md +476 -0
- package/proagents/scaffolding/react-native/templates/hook.ts.template +226 -0
- package/proagents/scaffolding/react-native/templates/screen.tsx.template +247 -0
- package/proagents/secrets/README.md +278 -0
- package/proagents/secrets/access-control.md +443 -0
- package/proagents/secrets/rotation.md +403 -0
- package/proagents/secrets/scanning.md +487 -0
- package/proagents/secrets/storage.md +394 -0
- package/proagents/security/README.md +71 -0
- package/proagents/security/owasp-checklist.md +390 -0
- package/proagents/security/sast-guide.md +473 -0
- package/proagents/security/security-report-template.md +343 -0
- package/proagents/security/vulnerability-scanning.md +329 -0
- package/proagents/slash-commands.json +161 -0
- package/proagents/standards/README.md +120 -0
- package/proagents/standards/architecture-patterns.md +728 -0
- package/proagents/standards/architecture-rules-template.md +489 -0
- package/proagents/standards/coding-standards-template.md +489 -0
- package/proagents/standards/examples/README.md +61 -0
- package/proagents/standards/examples/nodejs-api.md +560 -0
- package/proagents/standards/examples/react-nextjs.md +428 -0
- package/proagents/standards/naming-conventions-template.md +526 -0
- package/proagents/standards/override-system.md +717 -0
- package/proagents/standards/testing-standards-template.md +220 -0
- package/proagents/team/README.md +256 -0
- package/proagents/team/code-ownership.md +306 -0
- package/proagents/team/communication-templates.md +441 -0
- package/proagents/team/handoff-protocol.md +380 -0
- package/proagents/team/ide-setup/README.md +103 -0
- package/proagents/team/ide-setup/cursor.md +276 -0
- package/proagents/team/ide-setup/jetbrains.md +330 -0
- package/proagents/team/ide-setup/neovim.md +640 -0
- package/proagents/team/ide-setup/vscode.md +348 -0
- package/proagents/team/onboarding.md +278 -0
- package/proagents/templates/README.md +57 -0
- package/proagents/templates/code-review-report.md +255 -0
- package/proagents/templates/codebase-analysis-report.md +315 -0
- package/proagents/templates/deployment-checklist.md +277 -0
- package/proagents/templates/feature-requirements.md +142 -0
- package/proagents/templates/feature-status.md +231 -0
- package/proagents/templates/implementation-plan.md +373 -0
- package/proagents/templates/rollback-plan.md +331 -0
- package/proagents/templates/test-plan.md +336 -0
- package/proagents/templates/ui-specification.md +431 -0
- package/proagents/testing-standards/README.md +229 -0
- package/proagents/testing-standards/coverage-requirements.md +198 -0
- package/proagents/testing-standards/mocking-guidelines.md +478 -0
- package/proagents/testing-standards/test-naming.md +485 -0
- package/proagents/testing-standards/test-patterns.md +488 -0
- package/proagents/troubleshooting/README.md +730 -0
- package/proagents/troubleshooting/ai-issues.md +601 -0
- package/proagents/troubleshooting/workflow-issues.md +571 -0
- package/proagents/ui-integration/README.md +77 -0
- package/proagents/ui-integration/figma-guide.md +217 -0
- package/proagents/ui-integration/manual-export-guide.md +358 -0
- package/proagents/ui-integration/sketch-interpretation.md +471 -0
- package/proagents/webhooks/README.md +126 -0
- package/proagents/webhooks/endpoints.md +298 -0
- package/proagents/webhooks/events.md +316 -0
- package/proagents/webhooks/payloads.md +325 -0
- package/proagents/webhooks/reliability.md +363 -0
- package/proagents/webhooks/security.md +380 -0
- package/proagents/workflow-modes/README.md +136 -0
- package/proagents/workflow-modes/deferred-tracking.md +405 -0
- package/proagents/workflow-modes/entry-modes.md +397 -0
- package/proagents/workflow-modes/guardrails.md +405 -0
- package/proagents/workflow-modes/mode-detection.md +358 -0
- package/proagents/workflow-modes/mode-switching.md +372 -0
|
@@ -0,0 +1,410 @@
|
|
|
1
|
+
# Migrating from Custom Workflows
|
|
2
|
+
|
|
3
|
+
Integrate your existing development workflows with ProAgents.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
If you have custom development workflows, scripts, or processes, ProAgents can:
|
|
10
|
+
|
|
11
|
+
- Preserve your existing practices
|
|
12
|
+
- Add structure and automation
|
|
13
|
+
- Enhance with AI assistance
|
|
14
|
+
- Provide consistency across projects
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Assessment
|
|
19
|
+
|
|
20
|
+
### Step 1: Document Current Workflow
|
|
21
|
+
|
|
22
|
+
Answer these questions:
|
|
23
|
+
|
|
24
|
+
1. **How do features start?**
|
|
25
|
+
- Ticket/issue creation?
|
|
26
|
+
- Branch naming convention?
|
|
27
|
+
- Documentation requirements?
|
|
28
|
+
|
|
29
|
+
2. **What's your development process?**
|
|
30
|
+
- Code review requirements?
|
|
31
|
+
- Testing expectations?
|
|
32
|
+
- Documentation standards?
|
|
33
|
+
|
|
34
|
+
3. **How do you deploy?**
|
|
35
|
+
- CI/CD pipeline?
|
|
36
|
+
- Environment promotion?
|
|
37
|
+
- Rollback procedures?
|
|
38
|
+
|
|
39
|
+
4. **What tools do you use?**
|
|
40
|
+
- Issue tracking (Jira, Linear)?
|
|
41
|
+
- Communication (Slack, Teams)?
|
|
42
|
+
- Monitoring (Datadog, Sentry)?
|
|
43
|
+
|
|
44
|
+
### Step 2: Create Workflow Inventory
|
|
45
|
+
|
|
46
|
+
```markdown
|
|
47
|
+
# Current Workflow Inventory
|
|
48
|
+
|
|
49
|
+
## Feature Development
|
|
50
|
+
1. Create Jira ticket
|
|
51
|
+
2. Create feature branch (feature/PROJ-123-description)
|
|
52
|
+
3. Implement with PR
|
|
53
|
+
4. Code review by 2 reviewers
|
|
54
|
+
5. QA testing
|
|
55
|
+
6. Merge to develop
|
|
56
|
+
|
|
57
|
+
## Coding Standards
|
|
58
|
+
- ESLint + Prettier
|
|
59
|
+
- TypeScript strict mode
|
|
60
|
+
- Jest for testing
|
|
61
|
+
|
|
62
|
+
## Deployment
|
|
63
|
+
- GitHub Actions CI
|
|
64
|
+
- Auto-deploy to staging on merge to develop
|
|
65
|
+
- Manual promotion to production
|
|
66
|
+
|
|
67
|
+
## Communication
|
|
68
|
+
- Slack for notifications
|
|
69
|
+
- Daily standups
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Migration Strategy
|
|
75
|
+
|
|
76
|
+
### Option 1: Full Adoption
|
|
77
|
+
|
|
78
|
+
Replace your workflow entirely with ProAgents.
|
|
79
|
+
|
|
80
|
+
```yaml
|
|
81
|
+
# proagents.config.yaml
|
|
82
|
+
project:
|
|
83
|
+
name: "My Project"
|
|
84
|
+
type: "fullstack"
|
|
85
|
+
|
|
86
|
+
# Full workflow enabled
|
|
87
|
+
workflow:
|
|
88
|
+
phases:
|
|
89
|
+
- init
|
|
90
|
+
- analysis
|
|
91
|
+
- requirements
|
|
92
|
+
- design
|
|
93
|
+
- planning
|
|
94
|
+
- implementation
|
|
95
|
+
- testing
|
|
96
|
+
- review
|
|
97
|
+
- documentation
|
|
98
|
+
- deployment
|
|
99
|
+
|
|
100
|
+
checkpoints:
|
|
101
|
+
after_analysis: true
|
|
102
|
+
after_design: true
|
|
103
|
+
before_deployment: true
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### Option 2: Gradual Integration
|
|
107
|
+
|
|
108
|
+
Keep existing tools, add ProAgents incrementally.
|
|
109
|
+
|
|
110
|
+
```yaml
|
|
111
|
+
# proagents.config.yaml
|
|
112
|
+
workflow:
|
|
113
|
+
# Start with just a few phases
|
|
114
|
+
phases:
|
|
115
|
+
- analysis
|
|
116
|
+
- implementation
|
|
117
|
+
- testing
|
|
118
|
+
|
|
119
|
+
# Disable checkpoints initially
|
|
120
|
+
checkpoints:
|
|
121
|
+
all: false
|
|
122
|
+
|
|
123
|
+
# Keep existing integrations
|
|
124
|
+
integrations:
|
|
125
|
+
jira:
|
|
126
|
+
enabled: true
|
|
127
|
+
# ProAgents syncs with your Jira
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Option 3: AI Enhancement Only
|
|
131
|
+
|
|
132
|
+
Use ProAgents just for AI assistance without workflow changes.
|
|
133
|
+
|
|
134
|
+
```yaml
|
|
135
|
+
# proagents.config.yaml
|
|
136
|
+
workflow:
|
|
137
|
+
enabled: false # No workflow management
|
|
138
|
+
|
|
139
|
+
# Just use standards and AI prompts
|
|
140
|
+
standards:
|
|
141
|
+
enabled: true
|
|
142
|
+
|
|
143
|
+
prompts:
|
|
144
|
+
enabled: true
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Mapping Your Workflow
|
|
150
|
+
|
|
151
|
+
### Phase Mapping
|
|
152
|
+
|
|
153
|
+
| Your Process | ProAgents Phase |
|
|
154
|
+
|--------------|-----------------|
|
|
155
|
+
| Requirements gathering | Phase 2: Requirements |
|
|
156
|
+
| Technical design | Phase 3: UI Design + Phase 4: Planning |
|
|
157
|
+
| Development | Phase 5: Implementation |
|
|
158
|
+
| Testing | Phase 6: Testing |
|
|
159
|
+
| Code review | Phase 6.5: Code Review |
|
|
160
|
+
| Documentation | Phase 7: Documentation |
|
|
161
|
+
| Deployment | Phase 8: Deployment |
|
|
162
|
+
|
|
163
|
+
### Tool Integration
|
|
164
|
+
|
|
165
|
+
```yaml
|
|
166
|
+
# proagents.config.yaml
|
|
167
|
+
integrations:
|
|
168
|
+
# Issue tracking
|
|
169
|
+
jira:
|
|
170
|
+
enabled: true
|
|
171
|
+
base_url: "${JIRA_URL}"
|
|
172
|
+
auto_create_tickets: false # Use existing workflow
|
|
173
|
+
auto_update_status: true # Sync status to ProAgents
|
|
174
|
+
|
|
175
|
+
# CI/CD
|
|
176
|
+
github:
|
|
177
|
+
enabled: true
|
|
178
|
+
auto_create_pr: false # Manual PR creation
|
|
179
|
+
pr_template: "./proagents/templates/pr-template.md"
|
|
180
|
+
|
|
181
|
+
# Notifications
|
|
182
|
+
slack:
|
|
183
|
+
enabled: true
|
|
184
|
+
channel: "#dev-notifications"
|
|
185
|
+
events:
|
|
186
|
+
- feature_complete
|
|
187
|
+
- deployment_success
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Script Integration
|
|
191
|
+
|
|
192
|
+
Wrap existing scripts in ProAgents hooks:
|
|
193
|
+
|
|
194
|
+
```yaml
|
|
195
|
+
# proagents.config.yaml
|
|
196
|
+
hooks:
|
|
197
|
+
pre_implementation:
|
|
198
|
+
- script: "./scripts/setup-feature.sh"
|
|
199
|
+
|
|
200
|
+
post_testing:
|
|
201
|
+
- script: "./scripts/run-e2e.sh"
|
|
202
|
+
|
|
203
|
+
pre_deployment:
|
|
204
|
+
- script: "./scripts/build.sh"
|
|
205
|
+
- script: "./scripts/validate.sh"
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
## Preserving Conventions
|
|
211
|
+
|
|
212
|
+
### Git Conventions
|
|
213
|
+
|
|
214
|
+
```yaml
|
|
215
|
+
# proagents.config.yaml
|
|
216
|
+
git:
|
|
217
|
+
# Keep your existing branch naming
|
|
218
|
+
branch_prefix: "feature/"
|
|
219
|
+
branch_format: "{prefix}{ticket}-{description}"
|
|
220
|
+
|
|
221
|
+
# Keep your commit convention
|
|
222
|
+
commit_convention: "conventional" # or "custom"
|
|
223
|
+
commit_format: "{type}({scope}): {message}"
|
|
224
|
+
|
|
225
|
+
# PR settings
|
|
226
|
+
require_pr: true
|
|
227
|
+
pr_template: ".github/pull_request_template.md" # Use existing
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
### Coding Standards
|
|
231
|
+
|
|
232
|
+
Import existing ESLint/Prettier config:
|
|
233
|
+
|
|
234
|
+
```yaml
|
|
235
|
+
# proagents.config.yaml
|
|
236
|
+
standards:
|
|
237
|
+
import_from:
|
|
238
|
+
eslint: "./.eslintrc.js"
|
|
239
|
+
prettier: "./.prettierrc"
|
|
240
|
+
typescript: "./tsconfig.json"
|
|
241
|
+
|
|
242
|
+
# Generate standards docs from these configs
|
|
243
|
+
auto_document: true
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### Testing Standards
|
|
247
|
+
|
|
248
|
+
```yaml
|
|
249
|
+
# proagents.config.yaml
|
|
250
|
+
testing:
|
|
251
|
+
# Use existing test setup
|
|
252
|
+
framework: "jest"
|
|
253
|
+
config_path: "./jest.config.js"
|
|
254
|
+
|
|
255
|
+
# Preserve your coverage requirements
|
|
256
|
+
coverage:
|
|
257
|
+
threshold: 80
|
|
258
|
+
include: ["src/**/*.ts"]
|
|
259
|
+
exclude: ["**/*.test.ts"]
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
## Hybrid Workflow Example
|
|
265
|
+
|
|
266
|
+
Keep existing processes while adding ProAgents AI assistance:
|
|
267
|
+
|
|
268
|
+
```yaml
|
|
269
|
+
# proagents.config.yaml
|
|
270
|
+
project:
|
|
271
|
+
name: "Enterprise App"
|
|
272
|
+
type: "fullstack"
|
|
273
|
+
|
|
274
|
+
# Minimal workflow - just tracking
|
|
275
|
+
workflow:
|
|
276
|
+
phases:
|
|
277
|
+
- analysis # AI helps understand code
|
|
278
|
+
- implementation # AI assists coding
|
|
279
|
+
- testing # AI helps write tests
|
|
280
|
+
|
|
281
|
+
checkpoints:
|
|
282
|
+
all: false # No blocking checkpoints
|
|
283
|
+
|
|
284
|
+
# AI assistance settings
|
|
285
|
+
ai:
|
|
286
|
+
assist_mode: true
|
|
287
|
+
auto_suggest: true
|
|
288
|
+
explain_changes: true
|
|
289
|
+
|
|
290
|
+
# Keep your existing processes
|
|
291
|
+
integrations:
|
|
292
|
+
# Continue using Jira as source of truth
|
|
293
|
+
jira:
|
|
294
|
+
enabled: true
|
|
295
|
+
sync_mode: "read" # Read from Jira, don't write
|
|
296
|
+
|
|
297
|
+
# Keep GitHub Actions
|
|
298
|
+
github:
|
|
299
|
+
enabled: true
|
|
300
|
+
use_existing_workflows: true
|
|
301
|
+
|
|
302
|
+
# Learning from your patterns
|
|
303
|
+
learning:
|
|
304
|
+
enabled: true
|
|
305
|
+
learn_from_codebase: true
|
|
306
|
+
learn_from_prs: true
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
---
|
|
310
|
+
|
|
311
|
+
## Migration Steps
|
|
312
|
+
|
|
313
|
+
### Step 1: Install ProAgents
|
|
314
|
+
|
|
315
|
+
```bash
|
|
316
|
+
npm install -g proagents
|
|
317
|
+
proagents init --minimal
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
### Step 2: Import Existing Config
|
|
321
|
+
|
|
322
|
+
```bash
|
|
323
|
+
# Import from ESLint, Prettier, etc.
|
|
324
|
+
proagents import --from eslint .eslintrc.js
|
|
325
|
+
proagents import --from prettier .prettierrc
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
### Step 3: Document Standards
|
|
329
|
+
|
|
330
|
+
```bash
|
|
331
|
+
# Auto-generate standards docs
|
|
332
|
+
proagents analyze --generate-docs
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
### Step 4: Set Up Integration
|
|
336
|
+
|
|
337
|
+
```bash
|
|
338
|
+
# Configure integrations
|
|
339
|
+
proagents config set integrations.jira.enabled true
|
|
340
|
+
proagents config set integrations.slack.enabled true
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
### Step 5: Test Integration
|
|
344
|
+
|
|
345
|
+
```bash
|
|
346
|
+
# Start a test feature
|
|
347
|
+
proagents feature start "Test integration" --dry-run
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
### Step 6: Gradual Rollout
|
|
351
|
+
|
|
352
|
+
1. Start with one developer
|
|
353
|
+
2. Expand to one team
|
|
354
|
+
3. Roll out organization-wide
|
|
355
|
+
|
|
356
|
+
---
|
|
357
|
+
|
|
358
|
+
## Troubleshooting
|
|
359
|
+
|
|
360
|
+
### Conflict with Existing Tools
|
|
361
|
+
|
|
362
|
+
```yaml
|
|
363
|
+
# Disable conflicting features
|
|
364
|
+
proagents:
|
|
365
|
+
git:
|
|
366
|
+
auto_commit: false # Don't auto-commit if CI does this
|
|
367
|
+
deployment:
|
|
368
|
+
enabled: false # Use existing deployment
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
### Team Resistance
|
|
372
|
+
|
|
373
|
+
Start with opt-in features:
|
|
374
|
+
|
|
375
|
+
```yaml
|
|
376
|
+
workflow:
|
|
377
|
+
mandatory: false
|
|
378
|
+
features:
|
|
379
|
+
- ai_assistance # Most valuable, least disruptive
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
### Performance Issues
|
|
383
|
+
|
|
384
|
+
```yaml
|
|
385
|
+
# Optimize for large codebases
|
|
386
|
+
analysis:
|
|
387
|
+
incremental: true
|
|
388
|
+
cache: true
|
|
389
|
+
exclude:
|
|
390
|
+
- "node_modules"
|
|
391
|
+
- "dist"
|
|
392
|
+
- ".git"
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
---
|
|
396
|
+
|
|
397
|
+
## Success Metrics
|
|
398
|
+
|
|
399
|
+
Track migration success:
|
|
400
|
+
|
|
401
|
+
1. **Developer Productivity**: Time to complete features
|
|
402
|
+
2. **Code Quality**: Bug rates, review feedback
|
|
403
|
+
3. **Consistency**: Pattern adherence
|
|
404
|
+
4. **Satisfaction**: Team feedback surveys
|
|
405
|
+
|
|
406
|
+
```bash
|
|
407
|
+
# View ProAgents metrics
|
|
408
|
+
proagents report velocity
|
|
409
|
+
proagents report quality
|
|
410
|
+
```
|
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
# Monitoring Setup
|
|
2
|
+
|
|
3
|
+
Application monitoring, alerting, and observability.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
Comprehensive monitoring for application health, performance, and business metrics.
|
|
10
|
+
|
|
11
|
+
## Documentation
|
|
12
|
+
|
|
13
|
+
| Document | Description |
|
|
14
|
+
|----------|-------------|
|
|
15
|
+
| [Health Checks](./health-checks.md) | Endpoint health monitoring |
|
|
16
|
+
| [Metrics](./metrics.md) | Application metrics |
|
|
17
|
+
| [Alerting](./alerting.md) | Alert configuration |
|
|
18
|
+
| [Dashboards](./dashboards.md) | Visualization setup |
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Monitoring Stack
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
26
|
+
│ Monitoring Stack │
|
|
27
|
+
├─────────────────────────────────────────────────────────────┤
|
|
28
|
+
│ │
|
|
29
|
+
│ Application │
|
|
30
|
+
│ │ │
|
|
31
|
+
│ ├──▶ Metrics ──▶ Prometheus/DataDog │
|
|
32
|
+
│ │ │ │
|
|
33
|
+
│ ├──▶ Logs ────▶ ELK/CloudWatch │
|
|
34
|
+
│ │ │ │
|
|
35
|
+
│ └──▶ Traces ──▶ Jaeger/X-Ray │
|
|
36
|
+
│ │ │
|
|
37
|
+
│ ▼ │
|
|
38
|
+
│ Dashboards │
|
|
39
|
+
│ Alerting │
|
|
40
|
+
│ │
|
|
41
|
+
└─────────────────────────────────────────────────────────────┘
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Health Checks
|
|
47
|
+
|
|
48
|
+
### Health Endpoint
|
|
49
|
+
|
|
50
|
+
```typescript
|
|
51
|
+
// src/routes/health.ts
|
|
52
|
+
app.get('/health', async (req, res) => {
|
|
53
|
+
const health = {
|
|
54
|
+
status: 'healthy',
|
|
55
|
+
timestamp: new Date().toISOString(),
|
|
56
|
+
version: process.env.APP_VERSION,
|
|
57
|
+
checks: {
|
|
58
|
+
database: await checkDatabase(),
|
|
59
|
+
redis: await checkRedis(),
|
|
60
|
+
externalApi: await checkExternalApi(),
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const isHealthy = Object.values(health.checks)
|
|
65
|
+
.every(check => check.status === 'healthy');
|
|
66
|
+
|
|
67
|
+
res.status(isHealthy ? 200 : 503).json(health);
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
async function checkDatabase() {
|
|
71
|
+
try {
|
|
72
|
+
await db.query('SELECT 1');
|
|
73
|
+
return { status: 'healthy', latency: '5ms' };
|
|
74
|
+
} catch (error) {
|
|
75
|
+
return { status: 'unhealthy', error: error.message };
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Health Response
|
|
81
|
+
|
|
82
|
+
```json
|
|
83
|
+
{
|
|
84
|
+
"status": "healthy",
|
|
85
|
+
"timestamp": "2024-01-15T10:30:00Z",
|
|
86
|
+
"version": "1.2.3",
|
|
87
|
+
"checks": {
|
|
88
|
+
"database": { "status": "healthy", "latency": "5ms" },
|
|
89
|
+
"redis": { "status": "healthy", "latency": "2ms" },
|
|
90
|
+
"externalApi": { "status": "healthy", "latency": "150ms" }
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Metrics
|
|
98
|
+
|
|
99
|
+
### Key Metrics
|
|
100
|
+
|
|
101
|
+
| Category | Metrics |
|
|
102
|
+
|----------|---------|
|
|
103
|
+
| **Requests** | Rate, latency, error rate |
|
|
104
|
+
| **Resources** | CPU, memory, disk, connections |
|
|
105
|
+
| **Business** | Users, orders, revenue |
|
|
106
|
+
| **Dependencies** | External API latency, availability |
|
|
107
|
+
|
|
108
|
+
### Prometheus Metrics
|
|
109
|
+
|
|
110
|
+
```typescript
|
|
111
|
+
import { Counter, Histogram, Gauge } from 'prom-client';
|
|
112
|
+
|
|
113
|
+
// Request counter
|
|
114
|
+
const httpRequests = new Counter({
|
|
115
|
+
name: 'http_requests_total',
|
|
116
|
+
help: 'Total HTTP requests',
|
|
117
|
+
labelNames: ['method', 'path', 'status'],
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
// Response time histogram
|
|
121
|
+
const httpDuration = new Histogram({
|
|
122
|
+
name: 'http_request_duration_seconds',
|
|
123
|
+
help: 'HTTP request duration',
|
|
124
|
+
labelNames: ['method', 'path'],
|
|
125
|
+
buckets: [0.1, 0.5, 1, 2, 5],
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
// Active connections gauge
|
|
129
|
+
const activeConnections = new Gauge({
|
|
130
|
+
name: 'active_connections',
|
|
131
|
+
help: 'Active database connections',
|
|
132
|
+
});
|
|
133
|
+
|
|
134
|
+
// Middleware to track metrics
|
|
135
|
+
app.use((req, res, next) => {
|
|
136
|
+
const end = httpDuration.startTimer({ method: req.method, path: req.path });
|
|
137
|
+
|
|
138
|
+
res.on('finish', () => {
|
|
139
|
+
httpRequests.inc({ method: req.method, path: req.path, status: res.statusCode });
|
|
140
|
+
end();
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
next();
|
|
144
|
+
});
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Alerting
|
|
150
|
+
|
|
151
|
+
### Alert Configuration
|
|
152
|
+
|
|
153
|
+
```yaml
|
|
154
|
+
# proagents.config.yaml
|
|
155
|
+
monitoring:
|
|
156
|
+
alerts:
|
|
157
|
+
# High error rate
|
|
158
|
+
- name: "high_error_rate"
|
|
159
|
+
condition: "error_rate > 5%"
|
|
160
|
+
duration: "5m"
|
|
161
|
+
severity: "critical"
|
|
162
|
+
channels: ["pagerduty", "slack:#alerts"]
|
|
163
|
+
|
|
164
|
+
# High latency
|
|
165
|
+
- name: "high_latency"
|
|
166
|
+
condition: "p99_latency > 3s"
|
|
167
|
+
duration: "10m"
|
|
168
|
+
severity: "warning"
|
|
169
|
+
channels: ["slack:#alerts"]
|
|
170
|
+
|
|
171
|
+
# Service down
|
|
172
|
+
- name: "service_down"
|
|
173
|
+
condition: "health_check_failed"
|
|
174
|
+
duration: "1m"
|
|
175
|
+
severity: "critical"
|
|
176
|
+
channels: ["pagerduty", "slack:#incidents"]
|
|
177
|
+
|
|
178
|
+
# Low disk space
|
|
179
|
+
- name: "low_disk"
|
|
180
|
+
condition: "disk_usage > 85%"
|
|
181
|
+
duration: "15m"
|
|
182
|
+
severity: "warning"
|
|
183
|
+
channels: ["slack:#ops"]
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
### Alert Channels
|
|
187
|
+
|
|
188
|
+
```yaml
|
|
189
|
+
monitoring:
|
|
190
|
+
channels:
|
|
191
|
+
slack:
|
|
192
|
+
webhook_url_env: "SLACK_WEBHOOK_URL"
|
|
193
|
+
|
|
194
|
+
pagerduty:
|
|
195
|
+
api_key_env: "PAGERDUTY_API_KEY"
|
|
196
|
+
service_id: "P123ABC"
|
|
197
|
+
|
|
198
|
+
email:
|
|
199
|
+
smtp_host: "smtp.example.com"
|
|
200
|
+
recipients:
|
|
201
|
+
- "oncall@example.com"
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## Dashboards
|
|
207
|
+
|
|
208
|
+
### Key Dashboard Panels
|
|
209
|
+
|
|
210
|
+
```
|
|
211
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
212
|
+
│ Application Dashboard │
|
|
213
|
+
├─────────────────────────────────────────────────────────────┤
|
|
214
|
+
│ │
|
|
215
|
+
│ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐ │
|
|
216
|
+
│ │ Request Rate │ │ Error Rate │ │ P99 Latency │ │
|
|
217
|
+
│ │ 1,234/s │ │ 0.5% │ │ 250ms │ │
|
|
218
|
+
│ │ ▲ 5% │ │ ▼ 0.1% │ │ ▼ 10ms │ │
|
|
219
|
+
│ └───────────────┘ └───────────────┘ └───────────────┘ │
|
|
220
|
+
│ │
|
|
221
|
+
│ ┌─────────────────────────────────────────────────────────┐│
|
|
222
|
+
│ │ Request Rate Over Time ││
|
|
223
|
+
│ │ [Chart showing requests per second over 24 hours] ││
|
|
224
|
+
│ └─────────────────────────────────────────────────────────┘│
|
|
225
|
+
│ │
|
|
226
|
+
│ ┌─────────────────────────────────────────────────────────┐│
|
|
227
|
+
│ │ Error Rate by Endpoint ││
|
|
228
|
+
│ │ /api/users ████░░░░░░ 2% ││
|
|
229
|
+
│ │ /api/orders ██░░░░░░░░ 0.5% ││
|
|
230
|
+
│ │ /api/payments ███░░░░░░░ 1% ││
|
|
231
|
+
│ └─────────────────────────────────────────────────────────┘│
|
|
232
|
+
│ │
|
|
233
|
+
│ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐ │
|
|
234
|
+
│ │ CPU Usage │ │ Memory │ │ DB Pool │ │
|
|
235
|
+
│ │ 45% │ │ 2.1 GB │ │ 12/20 │ │
|
|
236
|
+
│ └───────────────┘ └───────────────┘ └───────────────┘ │
|
|
237
|
+
│ │
|
|
238
|
+
└─────────────────────────────────────────────────────────────┘
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
---
|
|
242
|
+
|
|
243
|
+
## Commands
|
|
244
|
+
|
|
245
|
+
```bash
|
|
246
|
+
# Check application health
|
|
247
|
+
proagents monitor health
|
|
248
|
+
|
|
249
|
+
# View current metrics
|
|
250
|
+
proagents monitor metrics
|
|
251
|
+
|
|
252
|
+
# Test alerting
|
|
253
|
+
proagents monitor test-alert high_error_rate
|
|
254
|
+
|
|
255
|
+
# View active alerts
|
|
256
|
+
proagents monitor alerts
|
|
257
|
+
|
|
258
|
+
# Export dashboard config
|
|
259
|
+
proagents monitor export-dashboard --format grafana
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
## Configuration
|
|
265
|
+
|
|
266
|
+
```yaml
|
|
267
|
+
# proagents.config.yaml
|
|
268
|
+
monitoring:
|
|
269
|
+
enabled: true
|
|
270
|
+
|
|
271
|
+
# Metrics
|
|
272
|
+
metrics:
|
|
273
|
+
enabled: true
|
|
274
|
+
endpoint: "/metrics"
|
|
275
|
+
provider: "prometheus" # prometheus, datadog, cloudwatch
|
|
276
|
+
|
|
277
|
+
# Health checks
|
|
278
|
+
health:
|
|
279
|
+
endpoint: "/health"
|
|
280
|
+
interval: "30s"
|
|
281
|
+
timeout: "10s"
|
|
282
|
+
|
|
283
|
+
# Tracing
|
|
284
|
+
tracing:
|
|
285
|
+
enabled: true
|
|
286
|
+
provider: "jaeger"
|
|
287
|
+
sample_rate: 0.1 # 10% of requests
|
|
288
|
+
|
|
289
|
+
# Uptime monitoring
|
|
290
|
+
uptime:
|
|
291
|
+
provider: "pingdom"
|
|
292
|
+
check_interval: "1m"
|
|
293
|
+
endpoints:
|
|
294
|
+
- "https://api.example.com/health"
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
299
|
+
## Best Practices
|
|
300
|
+
|
|
301
|
+
1. **Monitor the Four Golden Signals**: Latency, traffic, errors, saturation
|
|
302
|
+
2. **Set Meaningful Alerts**: Actionable, not noisy
|
|
303
|
+
3. **Use Dashboards**: Visualize trends and patterns
|
|
304
|
+
4. **Track Business Metrics**: Not just technical metrics
|
|
305
|
+
5. **Implement Distributed Tracing**: For microservices
|
|
306
|
+
6. **Monitor Dependencies**: External services and databases
|
|
307
|
+
7. **Test Alerting**: Regularly verify alerts work
|
|
308
|
+
8. **Document Runbooks**: What to do when alerts fire
|