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,420 @@
|
|
|
1
|
+
# Environment Setup
|
|
2
|
+
|
|
3
|
+
Guide to setting up and configuring different environments.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Environment Types
|
|
8
|
+
|
|
9
|
+
| Environment | Purpose | Data | Access |
|
|
10
|
+
|-------------|---------|------|--------|
|
|
11
|
+
| **Local** | Developer workstation | Mock/seed data | Individual |
|
|
12
|
+
| **Development** | Shared development | Synthetic data | Team |
|
|
13
|
+
| **Staging** | Pre-production testing | Production-like | Team + QA |
|
|
14
|
+
| **Production** | Live system | Real data | Restricted |
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Local Environment Setup
|
|
19
|
+
|
|
20
|
+
### Prerequisites
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# Required tools
|
|
24
|
+
node --version # >= 18.x
|
|
25
|
+
npm --version # >= 9.x
|
|
26
|
+
docker --version # >= 24.x
|
|
27
|
+
git --version # >= 2.x
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### Quick Start
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# Clone repository
|
|
34
|
+
git clone ${REPO_URL}
|
|
35
|
+
cd project
|
|
36
|
+
|
|
37
|
+
# Install dependencies
|
|
38
|
+
npm install
|
|
39
|
+
|
|
40
|
+
# Copy environment file
|
|
41
|
+
cp .env.example .env.local
|
|
42
|
+
|
|
43
|
+
# Start local services
|
|
44
|
+
docker-compose up -d
|
|
45
|
+
|
|
46
|
+
# Run database migrations
|
|
47
|
+
npm run db:migrate
|
|
48
|
+
|
|
49
|
+
# Seed development data
|
|
50
|
+
npm run db:seed
|
|
51
|
+
|
|
52
|
+
# Start development server
|
|
53
|
+
npm run dev
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Local Environment File
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
# .env.local
|
|
60
|
+
NODE_ENV=development
|
|
61
|
+
|
|
62
|
+
# Application
|
|
63
|
+
APP_URL=http://localhost:3000
|
|
64
|
+
API_URL=http://localhost:3001
|
|
65
|
+
|
|
66
|
+
# Database
|
|
67
|
+
DATABASE_URL=postgresql://user:pass@localhost:5432/app_dev
|
|
68
|
+
|
|
69
|
+
# Redis
|
|
70
|
+
REDIS_URL=redis://localhost:6379
|
|
71
|
+
|
|
72
|
+
# Auth (development keys)
|
|
73
|
+
JWT_SECRET=dev-secret-key-change-in-production
|
|
74
|
+
SESSION_SECRET=dev-session-secret
|
|
75
|
+
|
|
76
|
+
# External Services (use mocks)
|
|
77
|
+
USE_MOCK_SERVICES=true
|
|
78
|
+
MOCK_PAYMENT_GATEWAY=true
|
|
79
|
+
|
|
80
|
+
# Debug
|
|
81
|
+
DEBUG=app:*
|
|
82
|
+
LOG_LEVEL=debug
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Docker Compose for Local
|
|
86
|
+
|
|
87
|
+
```yaml
|
|
88
|
+
# docker-compose.yml
|
|
89
|
+
version: '3.8'
|
|
90
|
+
|
|
91
|
+
services:
|
|
92
|
+
postgres:
|
|
93
|
+
image: postgres:15
|
|
94
|
+
environment:
|
|
95
|
+
POSTGRES_DB: app_dev
|
|
96
|
+
POSTGRES_USER: user
|
|
97
|
+
POSTGRES_PASSWORD: pass
|
|
98
|
+
ports:
|
|
99
|
+
- "5432:5432"
|
|
100
|
+
volumes:
|
|
101
|
+
- postgres_data:/var/lib/postgresql/data
|
|
102
|
+
|
|
103
|
+
redis:
|
|
104
|
+
image: redis:7
|
|
105
|
+
ports:
|
|
106
|
+
- "6379:6379"
|
|
107
|
+
|
|
108
|
+
mailhog:
|
|
109
|
+
image: mailhog/mailhog
|
|
110
|
+
ports:
|
|
111
|
+
- "1025:1025" # SMTP
|
|
112
|
+
- "8025:8025" # Web UI
|
|
113
|
+
|
|
114
|
+
volumes:
|
|
115
|
+
postgres_data:
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## Development Environment Setup
|
|
121
|
+
|
|
122
|
+
### Cloud Development Environment
|
|
123
|
+
|
|
124
|
+
```yaml
|
|
125
|
+
# proagents.config.yaml
|
|
126
|
+
environments:
|
|
127
|
+
development:
|
|
128
|
+
type: "cloud"
|
|
129
|
+
provider: "aws" # or gcp, azure
|
|
130
|
+
|
|
131
|
+
infrastructure:
|
|
132
|
+
compute:
|
|
133
|
+
type: "ecs-fargate"
|
|
134
|
+
cpu: 256
|
|
135
|
+
memory: 512
|
|
136
|
+
|
|
137
|
+
database:
|
|
138
|
+
type: "rds-postgres"
|
|
139
|
+
instance: "db.t3.micro"
|
|
140
|
+
storage: 20
|
|
141
|
+
|
|
142
|
+
cache:
|
|
143
|
+
type: "elasticache-redis"
|
|
144
|
+
node_type: "cache.t3.micro"
|
|
145
|
+
|
|
146
|
+
networking:
|
|
147
|
+
vpc: "dev-vpc"
|
|
148
|
+
subnets: ["dev-subnet-1", "dev-subnet-2"]
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### Development Environment Variables
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
# .env.development
|
|
155
|
+
NODE_ENV=development
|
|
156
|
+
|
|
157
|
+
# Application
|
|
158
|
+
APP_URL=https://dev.app.example.com
|
|
159
|
+
API_URL=https://dev-api.app.example.com
|
|
160
|
+
|
|
161
|
+
# Database (from secrets manager)
|
|
162
|
+
DATABASE_URL=${aws:secretsmanager:dev/database/url}
|
|
163
|
+
|
|
164
|
+
# External Services
|
|
165
|
+
STRIPE_API_KEY=${aws:secretsmanager:dev/stripe/key}
|
|
166
|
+
SENDGRID_API_KEY=${aws:secretsmanager:dev/sendgrid/key}
|
|
167
|
+
|
|
168
|
+
# Feature Flags
|
|
169
|
+
FEATURE_FLAGS_ENV=development
|
|
170
|
+
ENABLE_DEBUG_ENDPOINTS=true
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### Development Access
|
|
174
|
+
|
|
175
|
+
```yaml
|
|
176
|
+
environments:
|
|
177
|
+
development:
|
|
178
|
+
access:
|
|
179
|
+
allowed_roles: ["developer", "reviewer", "admin"]
|
|
180
|
+
vpn_required: false
|
|
181
|
+
ip_whitelist: ["office-ip-range"]
|
|
182
|
+
|
|
183
|
+
monitoring:
|
|
184
|
+
log_level: "debug"
|
|
185
|
+
metrics_enabled: true
|
|
186
|
+
error_tracking: true
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Staging Environment Setup
|
|
192
|
+
|
|
193
|
+
### Staging Configuration
|
|
194
|
+
|
|
195
|
+
```yaml
|
|
196
|
+
environments:
|
|
197
|
+
staging:
|
|
198
|
+
type: "cloud"
|
|
199
|
+
provider: "aws"
|
|
200
|
+
|
|
201
|
+
infrastructure:
|
|
202
|
+
compute:
|
|
203
|
+
type: "ecs-fargate"
|
|
204
|
+
cpu: 512
|
|
205
|
+
memory: 1024
|
|
206
|
+
replicas: 2
|
|
207
|
+
|
|
208
|
+
database:
|
|
209
|
+
type: "rds-postgres"
|
|
210
|
+
instance: "db.t3.small"
|
|
211
|
+
storage: 50
|
|
212
|
+
multi_az: false
|
|
213
|
+
|
|
214
|
+
cache:
|
|
215
|
+
type: "elasticache-redis"
|
|
216
|
+
node_type: "cache.t3.small"
|
|
217
|
+
|
|
218
|
+
# Mirror production settings
|
|
219
|
+
settings:
|
|
220
|
+
ssl_enabled: true
|
|
221
|
+
rate_limiting: true
|
|
222
|
+
cdn_enabled: true
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
### Staging Data Strategy
|
|
226
|
+
|
|
227
|
+
```yaml
|
|
228
|
+
environments:
|
|
229
|
+
staging:
|
|
230
|
+
data:
|
|
231
|
+
strategy: "production_subset"
|
|
232
|
+
|
|
233
|
+
# Anonymize production data
|
|
234
|
+
anonymization:
|
|
235
|
+
enabled: true
|
|
236
|
+
rules:
|
|
237
|
+
- table: "users"
|
|
238
|
+
fields:
|
|
239
|
+
email: "faker.email"
|
|
240
|
+
name: "faker.name"
|
|
241
|
+
phone: "mask"
|
|
242
|
+
|
|
243
|
+
- table: "payments"
|
|
244
|
+
fields:
|
|
245
|
+
card_number: "mask"
|
|
246
|
+
cvv: "remove"
|
|
247
|
+
|
|
248
|
+
# Refresh schedule
|
|
249
|
+
refresh:
|
|
250
|
+
schedule: "weekly"
|
|
251
|
+
day: "sunday"
|
|
252
|
+
time: "02:00"
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
### Staging Environment Variables
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
# .env.staging
|
|
259
|
+
NODE_ENV=staging
|
|
260
|
+
|
|
261
|
+
# Application
|
|
262
|
+
APP_URL=https://staging.app.example.com
|
|
263
|
+
API_URL=https://staging-api.app.example.com
|
|
264
|
+
|
|
265
|
+
# Database
|
|
266
|
+
DATABASE_URL=${aws:secretsmanager:staging/database/url}
|
|
267
|
+
|
|
268
|
+
# External Services (sandbox/test accounts)
|
|
269
|
+
STRIPE_API_KEY=${aws:secretsmanager:staging/stripe/key}
|
|
270
|
+
STRIPE_WEBHOOK_SECRET=${aws:secretsmanager:staging/stripe/webhook}
|
|
271
|
+
|
|
272
|
+
# Feature Flags
|
|
273
|
+
FEATURE_FLAGS_ENV=staging
|
|
274
|
+
ENABLE_DEBUG_ENDPOINTS=false
|
|
275
|
+
|
|
276
|
+
# Monitoring
|
|
277
|
+
SENTRY_DSN=${aws:secretsmanager:staging/sentry/dsn}
|
|
278
|
+
DATADOG_API_KEY=${aws:secretsmanager:staging/datadog/key}
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
283
|
+
## Production Environment Setup
|
|
284
|
+
|
|
285
|
+
### Production Infrastructure
|
|
286
|
+
|
|
287
|
+
```yaml
|
|
288
|
+
environments:
|
|
289
|
+
production:
|
|
290
|
+
type: "cloud"
|
|
291
|
+
provider: "aws"
|
|
292
|
+
region: "us-east-1"
|
|
293
|
+
|
|
294
|
+
infrastructure:
|
|
295
|
+
compute:
|
|
296
|
+
type: "ecs-fargate"
|
|
297
|
+
cpu: 1024
|
|
298
|
+
memory: 2048
|
|
299
|
+
replicas:
|
|
300
|
+
min: 3
|
|
301
|
+
max: 10
|
|
302
|
+
autoscaling:
|
|
303
|
+
cpu_threshold: 70
|
|
304
|
+
memory_threshold: 80
|
|
305
|
+
|
|
306
|
+
database:
|
|
307
|
+
type: "rds-postgres"
|
|
308
|
+
instance: "db.r5.large"
|
|
309
|
+
storage: 500
|
|
310
|
+
multi_az: true
|
|
311
|
+
read_replicas: 2
|
|
312
|
+
backup_retention: 30
|
|
313
|
+
|
|
314
|
+
cache:
|
|
315
|
+
type: "elasticache-redis"
|
|
316
|
+
node_type: "cache.r5.large"
|
|
317
|
+
cluster_mode: true
|
|
318
|
+
replicas: 2
|
|
319
|
+
|
|
320
|
+
# High availability
|
|
321
|
+
ha:
|
|
322
|
+
multi_region: true
|
|
323
|
+
dr_region: "us-west-2"
|
|
324
|
+
failover_mode: "automatic"
|
|
325
|
+
|
|
326
|
+
# Security
|
|
327
|
+
security:
|
|
328
|
+
waf_enabled: true
|
|
329
|
+
ddos_protection: true
|
|
330
|
+
encryption_at_rest: true
|
|
331
|
+
encryption_in_transit: true
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
### Production Access Controls
|
|
335
|
+
|
|
336
|
+
```yaml
|
|
337
|
+
environments:
|
|
338
|
+
production:
|
|
339
|
+
access:
|
|
340
|
+
allowed_roles: ["deployer", "admin"]
|
|
341
|
+
vpn_required: true
|
|
342
|
+
mfa_required: true
|
|
343
|
+
ip_whitelist: ["vpn-exit-ips"]
|
|
344
|
+
|
|
345
|
+
# Audit all access
|
|
346
|
+
audit:
|
|
347
|
+
enabled: true
|
|
348
|
+
log_all_commands: true
|
|
349
|
+
retention: "2 years"
|
|
350
|
+
|
|
351
|
+
# Deployment controls
|
|
352
|
+
deployment:
|
|
353
|
+
require_approval: true
|
|
354
|
+
approvers: ["tech-lead", "sre"]
|
|
355
|
+
deployment_window:
|
|
356
|
+
days: ["tuesday", "wednesday", "thursday"]
|
|
357
|
+
hours: ["10:00", "16:00"]
|
|
358
|
+
timezone: "America/New_York"
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
---
|
|
362
|
+
|
|
363
|
+
## Environment Setup Commands
|
|
364
|
+
|
|
365
|
+
```bash
|
|
366
|
+
# Setup new environment
|
|
367
|
+
proagents env setup development
|
|
368
|
+
|
|
369
|
+
# Verify environment configuration
|
|
370
|
+
proagents env verify staging
|
|
371
|
+
|
|
372
|
+
# Sync environment variables
|
|
373
|
+
proagents env sync --from development --to staging
|
|
374
|
+
|
|
375
|
+
# Show environment status
|
|
376
|
+
proagents env status production
|
|
377
|
+
|
|
378
|
+
# Compare environments
|
|
379
|
+
proagents env diff staging production
|
|
380
|
+
|
|
381
|
+
# Export environment config
|
|
382
|
+
proagents env export staging > staging-config.yaml
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
---
|
|
386
|
+
|
|
387
|
+
## Troubleshooting
|
|
388
|
+
|
|
389
|
+
### Common Issues
|
|
390
|
+
|
|
391
|
+
| Issue | Cause | Solution |
|
|
392
|
+
|-------|-------|----------|
|
|
393
|
+
| Database connection failed | Wrong credentials | Verify DATABASE_URL |
|
|
394
|
+
| Service unavailable | Container not running | Check docker-compose logs |
|
|
395
|
+
| SSL errors | Certificate mismatch | Update certificates |
|
|
396
|
+
| Slow performance | Resource limits | Increase CPU/memory |
|
|
397
|
+
|
|
398
|
+
### Health Checks
|
|
399
|
+
|
|
400
|
+
```bash
|
|
401
|
+
# Check all services
|
|
402
|
+
proagents env health development
|
|
403
|
+
|
|
404
|
+
# Check specific service
|
|
405
|
+
proagents env health staging --service api
|
|
406
|
+
|
|
407
|
+
# Detailed diagnostics
|
|
408
|
+
proagents env diagnose production
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
---
|
|
412
|
+
|
|
413
|
+
## Best Practices
|
|
414
|
+
|
|
415
|
+
1. **Parity**: Keep environments as similar as possible
|
|
416
|
+
2. **Secrets**: Never commit secrets to version control
|
|
417
|
+
3. **Infrastructure as Code**: Version control all configurations
|
|
418
|
+
4. **Documentation**: Document environment-specific quirks
|
|
419
|
+
5. **Access Control**: Restrict production access
|
|
420
|
+
6. **Monitoring**: Monitor all environments, not just production
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# Examples
|
|
2
|
+
|
|
3
|
+
Complete workflow examples for different project types.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
Real-world examples showing how to use ProAgents for different project types and scenarios.
|
|
10
|
+
|
|
11
|
+
## Project Type Examples
|
|
12
|
+
|
|
13
|
+
| Example | Description |
|
|
14
|
+
|---------|-------------|
|
|
15
|
+
| [Web Frontend (React)](./web-frontend-react/) | React SPA with component library |
|
|
16
|
+
| [Full-Stack (Next.js)](./fullstack-nextjs/) | Next.js with API routes |
|
|
17
|
+
| [Mobile (React Native)](./mobile-react-native/) | Cross-platform mobile app |
|
|
18
|
+
| [Backend (Node.js)](./backend-nodejs/) | Express/Node.js API |
|
|
19
|
+
|
|
20
|
+
## Each Example Includes
|
|
21
|
+
|
|
22
|
+
- Complete workflow walkthrough
|
|
23
|
+
- Phase-by-phase breakdown
|
|
24
|
+
- Sample prompts and outputs
|
|
25
|
+
- Configuration examples
|
|
26
|
+
- Common patterns
|
|
27
|
+
|
|
28
|
+
## Conversation Examples
|
|
29
|
+
|
|
30
|
+
See how ProAgents works in practice with full AI-user conversation examples:
|
|
31
|
+
|
|
32
|
+
| Example | Feature Built |
|
|
33
|
+
|---------|---------------|
|
|
34
|
+
| [React Conversation](./web-frontend-react/complete-conversation.md) | Notifications system with real-time updates |
|
|
35
|
+
| [Node.js Conversation](./backend-nodejs/complete-conversation.md) | Tiered rate limiting system |
|
|
36
|
+
|
|
37
|
+
These show the actual back-and-forth interaction between user and AI.
|
|
38
|
+
|
|
39
|
+
## Using Examples
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# View example for your project type
|
|
43
|
+
proagents example show react
|
|
44
|
+
|
|
45
|
+
# Initialize with example config
|
|
46
|
+
proagents init --template react
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Contributing Examples
|
|
50
|
+
|
|
51
|
+
To add a new example:
|
|
52
|
+
1. Create directory: `examples/[type]/`
|
|
53
|
+
2. Add `workflow-example.md`
|
|
54
|
+
3. Include sample configs
|
|
55
|
+
4. Document all phases
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
# Backend Node.js Example
|
|
2
|
+
|
|
3
|
+
Complete walkthrough of ProAgents workflow for a Node.js backend API service.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
This example demonstrates how to use ProAgents to build features in a Node.js backend application. It covers API design, database operations, authentication, and service architecture.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Project Type
|
|
14
|
+
|
|
15
|
+
- **Runtime:** Node.js 18+
|
|
16
|
+
- **Framework:** Express / Fastify
|
|
17
|
+
- **Language:** TypeScript
|
|
18
|
+
- **Database:** PostgreSQL + Prisma
|
|
19
|
+
- **Testing:** Vitest + Supertest
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Files in This Example
|
|
24
|
+
|
|
25
|
+
| File | Description |
|
|
26
|
+
|------|-------------|
|
|
27
|
+
| [workflow-example.md](./workflow-example.md) | Step-by-step workflow phases |
|
|
28
|
+
| [complete-conversation.md](./complete-conversation.md) | Full AI conversation example |
|
|
29
|
+
| [proagents.config.yaml](./proagents.config.yaml) | Project-specific configuration |
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## What You'll Learn
|
|
34
|
+
|
|
35
|
+
### 1. Backend Analysis
|
|
36
|
+
- Understanding service architecture
|
|
37
|
+
- API endpoint mapping
|
|
38
|
+
- Database schema analysis
|
|
39
|
+
- Middleware and authentication flows
|
|
40
|
+
|
|
41
|
+
### 2. API Design
|
|
42
|
+
- RESTful endpoint design
|
|
43
|
+
- Request/response schemas (Zod)
|
|
44
|
+
- Error handling patterns
|
|
45
|
+
- API documentation (OpenAPI)
|
|
46
|
+
|
|
47
|
+
### 3. Implementation
|
|
48
|
+
- Controller and service layers
|
|
49
|
+
- Database operations
|
|
50
|
+
- Input validation
|
|
51
|
+
- Error handling and logging
|
|
52
|
+
|
|
53
|
+
### 4. Testing
|
|
54
|
+
- Unit tests for services
|
|
55
|
+
- Integration tests for API routes
|
|
56
|
+
- Database testing with transactions
|
|
57
|
+
- 85% coverage target for backend
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Quick Start
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Copy configuration to your Node.js project
|
|
65
|
+
cp proagents.config.yaml /path/to/your/nodejs-project/
|
|
66
|
+
|
|
67
|
+
# Start a new feature
|
|
68
|
+
proagents feature start "Add user preferences API"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Example Feature: Preferences API
|
|
74
|
+
|
|
75
|
+
The complete-conversation.md shows building a preferences API:
|
|
76
|
+
- CRUD endpoints for user preferences
|
|
77
|
+
- Database schema and migrations
|
|
78
|
+
- Input validation with Zod
|
|
79
|
+
- Comprehensive error handling
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Key Patterns Demonstrated
|
|
84
|
+
|
|
85
|
+
### Project Structure
|
|
86
|
+
```
|
|
87
|
+
src/
|
|
88
|
+
├── controllers/ # Request handlers
|
|
89
|
+
│ └── users.controller.ts
|
|
90
|
+
├── services/ # Business logic
|
|
91
|
+
│ └── users.service.ts
|
|
92
|
+
├── models/ # Database models
|
|
93
|
+
│ └── user.model.ts
|
|
94
|
+
├── routes/ # Route definitions
|
|
95
|
+
│ └── users.routes.ts
|
|
96
|
+
├── middleware/ # Express middleware
|
|
97
|
+
│ ├── auth.ts
|
|
98
|
+
│ ├── validation.ts
|
|
99
|
+
│ └── error-handler.ts
|
|
100
|
+
├── schemas/ # Zod validation schemas
|
|
101
|
+
│ └── user.schema.ts
|
|
102
|
+
├── utils/ # Utilities
|
|
103
|
+
└── types/ # TypeScript types
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### Layered Architecture
|
|
107
|
+
```
|
|
108
|
+
Request → Route → Controller → Service → Database
|
|
109
|
+
↓
|
|
110
|
+
Validation
|
|
111
|
+
↓
|
|
112
|
+
Response
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Configuration Highlights
|
|
118
|
+
|
|
119
|
+
```yaml
|
|
120
|
+
# From proagents.config.yaml
|
|
121
|
+
project:
|
|
122
|
+
type: "backend"
|
|
123
|
+
framework: "express"
|
|
124
|
+
|
|
125
|
+
database:
|
|
126
|
+
orm: "prisma"
|
|
127
|
+
require_migrations: true
|
|
128
|
+
|
|
129
|
+
api:
|
|
130
|
+
versioning: "url" # /api/v1/...
|
|
131
|
+
documentation: "openapi"
|
|
132
|
+
|
|
133
|
+
testing:
|
|
134
|
+
framework: "vitest"
|
|
135
|
+
coverage_threshold: 85
|
|
136
|
+
integration_tests: true
|
|
137
|
+
|
|
138
|
+
security:
|
|
139
|
+
scan_dependencies: true
|
|
140
|
+
require_auth_review: true
|
|
141
|
+
|
|
142
|
+
checkpoints:
|
|
143
|
+
after_analysis: true # Review existing patterns
|
|
144
|
+
after_design: true # Review API design
|
|
145
|
+
before_deployment: true # Security review
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## API Design Workflow
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
# ProAgents guides you through:
|
|
154
|
+
1. Define endpoint structure
|
|
155
|
+
2. Create Zod schemas for validation
|
|
156
|
+
3. Design error responses
|
|
157
|
+
4. Generate OpenAPI documentation
|
|
158
|
+
5. Implement with tests
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## Security Considerations
|
|
164
|
+
|
|
165
|
+
### Authentication
|
|
166
|
+
- JWT token validation
|
|
167
|
+
- Role-based access control
|
|
168
|
+
- Rate limiting
|
|
169
|
+
|
|
170
|
+
### Input Validation
|
|
171
|
+
- Zod schema validation
|
|
172
|
+
- SQL injection prevention
|
|
173
|
+
- XSS protection
|
|
174
|
+
|
|
175
|
+
### Logging & Monitoring
|
|
176
|
+
- Request logging
|
|
177
|
+
- Error tracking
|
|
178
|
+
- Performance metrics
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Related Resources
|
|
183
|
+
|
|
184
|
+
- [Node.js Scaffolding Template](../../scaffolding/nodejs/)
|
|
185
|
+
- [API Versioning Guide](../../api-versioning/)
|
|
186
|
+
- [Database Migrations](../../database/)
|
|
187
|
+
- [Security Scanning](../../security/)
|
|
188
|
+
- [Contract Testing](../../contract-testing/)
|