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,787 @@
|
|
|
1
|
+
# Monorepo Setup Walkthrough
|
|
2
|
+
|
|
3
|
+
A complete step-by-step guide to setting up a monorepo with ProAgents.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Scenario
|
|
8
|
+
|
|
9
|
+
We're building **TaskFlow**, a task management platform with:
|
|
10
|
+
- **Web App** (Next.js)
|
|
11
|
+
- **API Server** (Node.js/Express)
|
|
12
|
+
- **Mobile App** (React Native)
|
|
13
|
+
- **Shared Packages** (Types, Utils, UI Components)
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Step 1: Create Directory Structure
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
# Create the monorepo root
|
|
21
|
+
mkdir taskflow && cd taskflow
|
|
22
|
+
|
|
23
|
+
# Initialize git
|
|
24
|
+
git init
|
|
25
|
+
|
|
26
|
+
# Create the structure
|
|
27
|
+
mkdir -p apps/{web,api,mobile}
|
|
28
|
+
mkdir -p packages/{types,utils,ui}
|
|
29
|
+
mkdir -p shared/proagents/{standards,rules,templates}
|
|
30
|
+
mkdir -p .proagents
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Result:**
|
|
34
|
+
```
|
|
35
|
+
taskflow/
|
|
36
|
+
├── apps/
|
|
37
|
+
│ ├── web/
|
|
38
|
+
│ ├── api/
|
|
39
|
+
│ └── mobile/
|
|
40
|
+
├── packages/
|
|
41
|
+
│ ├── types/
|
|
42
|
+
│ ├── utils/
|
|
43
|
+
│ └── ui/
|
|
44
|
+
├── shared/
|
|
45
|
+
│ └── proagents/
|
|
46
|
+
│ ├── standards/
|
|
47
|
+
│ ├── rules/
|
|
48
|
+
│ └── templates/
|
|
49
|
+
└── .proagents/
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Step 2: Initialize Package Manager (pnpm/yarn/npm)
|
|
55
|
+
|
|
56
|
+
Using pnpm (recommended for monorepos):
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
# Initialize pnpm workspace
|
|
60
|
+
cat > pnpm-workspace.yaml << 'EOF'
|
|
61
|
+
packages:
|
|
62
|
+
- 'apps/*'
|
|
63
|
+
- 'packages/*'
|
|
64
|
+
EOF
|
|
65
|
+
|
|
66
|
+
# Initialize root package.json
|
|
67
|
+
cat > package.json << 'EOF'
|
|
68
|
+
{
|
|
69
|
+
"name": "taskflow",
|
|
70
|
+
"private": true,
|
|
71
|
+
"scripts": {
|
|
72
|
+
"dev": "turbo run dev",
|
|
73
|
+
"build": "turbo run build",
|
|
74
|
+
"test": "turbo run test",
|
|
75
|
+
"lint": "turbo run lint"
|
|
76
|
+
},
|
|
77
|
+
"devDependencies": {
|
|
78
|
+
"turbo": "^1.10.0"
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
EOF
|
|
82
|
+
|
|
83
|
+
# Install dependencies
|
|
84
|
+
pnpm install
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Step 3: Initialize ProAgents Workspace
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
# Create workspace configuration
|
|
93
|
+
cat > proagents.workspace.yaml << 'EOF'
|
|
94
|
+
# ProAgents Workspace Configuration
|
|
95
|
+
# TaskFlow Monorepo
|
|
96
|
+
|
|
97
|
+
workspace:
|
|
98
|
+
name: "TaskFlow"
|
|
99
|
+
description: "Task management platform monorepo"
|
|
100
|
+
version: "1.0.0"
|
|
101
|
+
|
|
102
|
+
projects:
|
|
103
|
+
# Web Application
|
|
104
|
+
- name: web
|
|
105
|
+
path: ./apps/web
|
|
106
|
+
type: web-frontend
|
|
107
|
+
framework: nextjs
|
|
108
|
+
port: 3000
|
|
109
|
+
description: "Next.js web application"
|
|
110
|
+
|
|
111
|
+
# API Server
|
|
112
|
+
- name: api
|
|
113
|
+
path: ./apps/api
|
|
114
|
+
type: nodejs
|
|
115
|
+
framework: express
|
|
116
|
+
port: 4000
|
|
117
|
+
description: "Express REST API server"
|
|
118
|
+
|
|
119
|
+
# Mobile Application
|
|
120
|
+
- name: mobile
|
|
121
|
+
path: ./apps/mobile
|
|
122
|
+
type: react-native
|
|
123
|
+
description: "React Native mobile app"
|
|
124
|
+
|
|
125
|
+
# Shared Packages
|
|
126
|
+
- name: types
|
|
127
|
+
path: ./packages/types
|
|
128
|
+
type: library
|
|
129
|
+
description: "Shared TypeScript types"
|
|
130
|
+
|
|
131
|
+
- name: utils
|
|
132
|
+
path: ./packages/utils
|
|
133
|
+
type: library
|
|
134
|
+
description: "Shared utility functions"
|
|
135
|
+
|
|
136
|
+
- name: ui
|
|
137
|
+
path: ./packages/ui
|
|
138
|
+
type: library
|
|
139
|
+
description: "Shared UI components"
|
|
140
|
+
|
|
141
|
+
# Shared Configuration
|
|
142
|
+
shared:
|
|
143
|
+
standards: ./shared/proagents/standards/
|
|
144
|
+
rules: ./shared/proagents/rules/
|
|
145
|
+
templates: ./shared/proagents/templates/
|
|
146
|
+
|
|
147
|
+
# Cross-Project Configuration
|
|
148
|
+
cross_project:
|
|
149
|
+
dependency_tracking: true
|
|
150
|
+
unified_changelog: true
|
|
151
|
+
shared_analysis_cache: true
|
|
152
|
+
coordinated_deployments: true
|
|
153
|
+
|
|
154
|
+
# Deployment Configuration
|
|
155
|
+
deployment:
|
|
156
|
+
environments:
|
|
157
|
+
- name: development
|
|
158
|
+
auto_deploy: true
|
|
159
|
+
- name: staging
|
|
160
|
+
auto_deploy: false
|
|
161
|
+
require_approval: true
|
|
162
|
+
- name: production
|
|
163
|
+
auto_deploy: false
|
|
164
|
+
require_approval: true
|
|
165
|
+
approval_roles:
|
|
166
|
+
- tech_lead
|
|
167
|
+
- devops
|
|
168
|
+
EOF
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## Step 4: Create Shared Standards
|
|
174
|
+
|
|
175
|
+
### 4.1 Coding Standards
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
cat > shared/proagents/standards/coding-standards.md << 'EOF'
|
|
179
|
+
# TaskFlow Coding Standards
|
|
180
|
+
|
|
181
|
+
## TypeScript
|
|
182
|
+
- Strict mode enabled
|
|
183
|
+
- No `any` types (use `unknown` instead)
|
|
184
|
+
- Explicit return types for functions
|
|
185
|
+
|
|
186
|
+
## Naming Conventions
|
|
187
|
+
- Components: PascalCase (e.g., `TaskCard.tsx`)
|
|
188
|
+
- Hooks: camelCase with `use` prefix (e.g., `useTaskList.ts`)
|
|
189
|
+
- Types/Interfaces: PascalCase with descriptive names
|
|
190
|
+
- Files: kebab-case for utilities, PascalCase for components
|
|
191
|
+
|
|
192
|
+
## Import Order
|
|
193
|
+
1. React/Node built-ins
|
|
194
|
+
2. External dependencies
|
|
195
|
+
3. Internal packages (@taskflow/*)
|
|
196
|
+
4. Relative imports
|
|
197
|
+
5. Styles
|
|
198
|
+
|
|
199
|
+
## Code Style
|
|
200
|
+
- Max line length: 100 characters
|
|
201
|
+
- 2 space indentation
|
|
202
|
+
- Single quotes for strings
|
|
203
|
+
- Semicolons required
|
|
204
|
+
EOF
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
### 4.2 Architecture Rules
|
|
208
|
+
|
|
209
|
+
```bash
|
|
210
|
+
cat > shared/proagents/standards/architecture-rules.md << 'EOF'
|
|
211
|
+
# TaskFlow Architecture Rules
|
|
212
|
+
|
|
213
|
+
## Dependency Rules
|
|
214
|
+
|
|
215
|
+
### Apps can import from:
|
|
216
|
+
- @taskflow/types (shared types)
|
|
217
|
+
- @taskflow/utils (shared utilities)
|
|
218
|
+
- @taskflow/ui (shared UI - web and mobile only)
|
|
219
|
+
|
|
220
|
+
### Packages cannot import from:
|
|
221
|
+
- apps/* (no app code in packages)
|
|
222
|
+
- Each other (unless explicitly declared)
|
|
223
|
+
|
|
224
|
+
## API Patterns
|
|
225
|
+
|
|
226
|
+
### All API calls must:
|
|
227
|
+
1. Go through the API client in @taskflow/utils
|
|
228
|
+
2. Use typed request/response from @taskflow/types
|
|
229
|
+
3. Handle errors consistently
|
|
230
|
+
|
|
231
|
+
## State Management
|
|
232
|
+
|
|
233
|
+
- Web: Zustand for global state
|
|
234
|
+
- Mobile: Zustand for global state
|
|
235
|
+
- API: No state (stateless)
|
|
236
|
+
|
|
237
|
+
## Authentication
|
|
238
|
+
|
|
239
|
+
- JWT tokens stored securely
|
|
240
|
+
- Refresh token rotation enabled
|
|
241
|
+
- Auth context/hooks for all apps
|
|
242
|
+
EOF
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
### 4.3 Custom Rules
|
|
246
|
+
|
|
247
|
+
```bash
|
|
248
|
+
cat > shared/proagents/rules/workspace-rules.yaml << 'EOF'
|
|
249
|
+
# TaskFlow Workspace Rules
|
|
250
|
+
|
|
251
|
+
rules:
|
|
252
|
+
# Enforce package boundaries
|
|
253
|
+
- id: no-cross-app-imports
|
|
254
|
+
type: import
|
|
255
|
+
pattern: "apps/*/src/**"
|
|
256
|
+
disallow: "apps/*/src/**"
|
|
257
|
+
message: "Apps cannot import from other apps directly"
|
|
258
|
+
severity: error
|
|
259
|
+
|
|
260
|
+
# Require shared types
|
|
261
|
+
- id: use-shared-types
|
|
262
|
+
type: import
|
|
263
|
+
condition: "defines types used across projects"
|
|
264
|
+
requires: "import from @taskflow/types"
|
|
265
|
+
message: "Shared types must be in @taskflow/types"
|
|
266
|
+
severity: warning
|
|
267
|
+
|
|
268
|
+
# API versioning
|
|
269
|
+
- id: api-versioning
|
|
270
|
+
type: pattern
|
|
271
|
+
applies_to: "apps/api/src/routes/**"
|
|
272
|
+
pattern: "/api/v[0-9]+"
|
|
273
|
+
message: "API routes must be versioned"
|
|
274
|
+
severity: error
|
|
275
|
+
EOF
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
---
|
|
279
|
+
|
|
280
|
+
## Step 5: Initialize Each Project
|
|
281
|
+
|
|
282
|
+
### 5.1 Web App (Next.js)
|
|
283
|
+
|
|
284
|
+
```bash
|
|
285
|
+
cd apps/web
|
|
286
|
+
|
|
287
|
+
# Initialize Next.js app (or copy existing)
|
|
288
|
+
pnpm create next-app . --typescript --tailwind --eslint
|
|
289
|
+
|
|
290
|
+
# Create project-specific ProAgents config
|
|
291
|
+
mkdir proagents
|
|
292
|
+
cat > proagents/proagents.config.yaml << 'EOF'
|
|
293
|
+
# Web App Configuration
|
|
294
|
+
# Inherits from workspace, adds project-specific settings
|
|
295
|
+
|
|
296
|
+
project:
|
|
297
|
+
name: "TaskFlow Web"
|
|
298
|
+
type: "web-frontend"
|
|
299
|
+
framework: "nextjs"
|
|
300
|
+
|
|
301
|
+
extends:
|
|
302
|
+
- "../../shared/proagents/standards"
|
|
303
|
+
- "../../shared/proagents/rules"
|
|
304
|
+
|
|
305
|
+
# Project-specific overrides
|
|
306
|
+
checkpoints:
|
|
307
|
+
after_ui_design: true
|
|
308
|
+
after_implementation: true
|
|
309
|
+
|
|
310
|
+
testing:
|
|
311
|
+
framework: "jest"
|
|
312
|
+
coverage_threshold: 80
|
|
313
|
+
e2e:
|
|
314
|
+
framework: "playwright"
|
|
315
|
+
|
|
316
|
+
deployment:
|
|
317
|
+
platform: "vercel"
|
|
318
|
+
preview_on_pr: true
|
|
319
|
+
EOF
|
|
320
|
+
|
|
321
|
+
cd ../..
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
### 5.2 API Server (Express)
|
|
325
|
+
|
|
326
|
+
```bash
|
|
327
|
+
cd apps/api
|
|
328
|
+
|
|
329
|
+
# Initialize package
|
|
330
|
+
cat > package.json << 'EOF'
|
|
331
|
+
{
|
|
332
|
+
"name": "@taskflow/api",
|
|
333
|
+
"version": "1.0.0",
|
|
334
|
+
"main": "dist/index.js",
|
|
335
|
+
"scripts": {
|
|
336
|
+
"dev": "tsx watch src/index.ts",
|
|
337
|
+
"build": "tsc",
|
|
338
|
+
"start": "node dist/index.js",
|
|
339
|
+
"test": "jest"
|
|
340
|
+
},
|
|
341
|
+
"dependencies": {
|
|
342
|
+
"express": "^4.18.2",
|
|
343
|
+
"@taskflow/types": "workspace:*",
|
|
344
|
+
"@taskflow/utils": "workspace:*"
|
|
345
|
+
},
|
|
346
|
+
"devDependencies": {
|
|
347
|
+
"typescript": "^5.0.0",
|
|
348
|
+
"tsx": "^4.0.0",
|
|
349
|
+
"@types/express": "^4.17.0"
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
EOF
|
|
353
|
+
|
|
354
|
+
# Create ProAgents config
|
|
355
|
+
mkdir proagents
|
|
356
|
+
cat > proagents/proagents.config.yaml << 'EOF'
|
|
357
|
+
# API Server Configuration
|
|
358
|
+
|
|
359
|
+
project:
|
|
360
|
+
name: "TaskFlow API"
|
|
361
|
+
type: "nodejs"
|
|
362
|
+
framework: "express"
|
|
363
|
+
|
|
364
|
+
extends:
|
|
365
|
+
- "../../shared/proagents/standards"
|
|
366
|
+
- "../../shared/proagents/rules"
|
|
367
|
+
|
|
368
|
+
# API-specific settings
|
|
369
|
+
api:
|
|
370
|
+
versioning: "url"
|
|
371
|
+
documentation: "openapi"
|
|
372
|
+
|
|
373
|
+
security:
|
|
374
|
+
require_auth_review: true
|
|
375
|
+
scan_dependencies: "daily"
|
|
376
|
+
|
|
377
|
+
testing:
|
|
378
|
+
framework: "jest"
|
|
379
|
+
coverage_threshold: 85
|
|
380
|
+
integration_tests: true
|
|
381
|
+
|
|
382
|
+
deployment:
|
|
383
|
+
platform: "railway"
|
|
384
|
+
auto_scale: true
|
|
385
|
+
EOF
|
|
386
|
+
|
|
387
|
+
cd ../..
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
### 5.3 Mobile App (React Native)
|
|
391
|
+
|
|
392
|
+
```bash
|
|
393
|
+
cd apps/mobile
|
|
394
|
+
|
|
395
|
+
# Initialize React Native (or use existing)
|
|
396
|
+
# npx react-native init TaskFlowMobile --template react-native-template-typescript
|
|
397
|
+
|
|
398
|
+
# Create ProAgents config
|
|
399
|
+
mkdir proagents
|
|
400
|
+
cat > proagents/proagents.config.yaml << 'EOF'
|
|
401
|
+
# Mobile App Configuration
|
|
402
|
+
|
|
403
|
+
project:
|
|
404
|
+
name: "TaskFlow Mobile"
|
|
405
|
+
type: "react-native"
|
|
406
|
+
|
|
407
|
+
extends:
|
|
408
|
+
- "../../shared/proagents/standards"
|
|
409
|
+
- "../../shared/proagents/rules"
|
|
410
|
+
|
|
411
|
+
# Mobile-specific settings
|
|
412
|
+
platforms:
|
|
413
|
+
- ios
|
|
414
|
+
- android
|
|
415
|
+
|
|
416
|
+
testing:
|
|
417
|
+
framework: "jest"
|
|
418
|
+
coverage_threshold: 75
|
|
419
|
+
detox: true
|
|
420
|
+
|
|
421
|
+
deployment:
|
|
422
|
+
ios:
|
|
423
|
+
platform: "app-store-connect"
|
|
424
|
+
testflight: true
|
|
425
|
+
android:
|
|
426
|
+
platform: "google-play"
|
|
427
|
+
internal_testing: true
|
|
428
|
+
EOF
|
|
429
|
+
|
|
430
|
+
cd ../..
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
### 5.4 Shared Packages
|
|
434
|
+
|
|
435
|
+
```bash
|
|
436
|
+
# Types package
|
|
437
|
+
cd packages/types
|
|
438
|
+
cat > package.json << 'EOF'
|
|
439
|
+
{
|
|
440
|
+
"name": "@taskflow/types",
|
|
441
|
+
"version": "1.0.0",
|
|
442
|
+
"main": "dist/index.js",
|
|
443
|
+
"types": "dist/index.d.ts",
|
|
444
|
+
"scripts": {
|
|
445
|
+
"build": "tsc"
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
EOF
|
|
449
|
+
|
|
450
|
+
mkdir src
|
|
451
|
+
cat > src/index.ts << 'EOF'
|
|
452
|
+
// Task types
|
|
453
|
+
export interface Task {
|
|
454
|
+
id: string;
|
|
455
|
+
title: string;
|
|
456
|
+
description?: string;
|
|
457
|
+
status: TaskStatus;
|
|
458
|
+
priority: TaskPriority;
|
|
459
|
+
assigneeId?: string;
|
|
460
|
+
createdAt: Date;
|
|
461
|
+
updatedAt: Date;
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
export type TaskStatus = 'todo' | 'in_progress' | 'review' | 'done';
|
|
465
|
+
export type TaskPriority = 'low' | 'medium' | 'high' | 'urgent';
|
|
466
|
+
|
|
467
|
+
// User types
|
|
468
|
+
export interface User {
|
|
469
|
+
id: string;
|
|
470
|
+
email: string;
|
|
471
|
+
name: string;
|
|
472
|
+
avatarUrl?: string;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
// API types
|
|
476
|
+
export interface ApiResponse<T> {
|
|
477
|
+
data: T;
|
|
478
|
+
meta?: {
|
|
479
|
+
page?: number;
|
|
480
|
+
total?: number;
|
|
481
|
+
};
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
export interface ApiError {
|
|
485
|
+
code: string;
|
|
486
|
+
message: string;
|
|
487
|
+
details?: Record<string, unknown>;
|
|
488
|
+
}
|
|
489
|
+
EOF
|
|
490
|
+
|
|
491
|
+
cd ../..
|
|
492
|
+
|
|
493
|
+
# Utils package
|
|
494
|
+
cd packages/utils
|
|
495
|
+
cat > package.json << 'EOF'
|
|
496
|
+
{
|
|
497
|
+
"name": "@taskflow/utils",
|
|
498
|
+
"version": "1.0.0",
|
|
499
|
+
"main": "dist/index.js",
|
|
500
|
+
"scripts": {
|
|
501
|
+
"build": "tsc",
|
|
502
|
+
"test": "jest"
|
|
503
|
+
},
|
|
504
|
+
"dependencies": {
|
|
505
|
+
"@taskflow/types": "workspace:*"
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
EOF
|
|
509
|
+
|
|
510
|
+
mkdir src
|
|
511
|
+
cat > src/index.ts << 'EOF'
|
|
512
|
+
export * from './api-client';
|
|
513
|
+
export * from './formatters';
|
|
514
|
+
export * from './validators';
|
|
515
|
+
EOF
|
|
516
|
+
|
|
517
|
+
cat > src/api-client.ts << 'EOF'
|
|
518
|
+
import type { ApiResponse, ApiError } from '@taskflow/types';
|
|
519
|
+
|
|
520
|
+
const API_BASE_URL = process.env.API_URL || 'http://localhost:4000/api/v1';
|
|
521
|
+
|
|
522
|
+
export async function apiRequest<T>(
|
|
523
|
+
endpoint: string,
|
|
524
|
+
options?: RequestInit
|
|
525
|
+
): Promise<ApiResponse<T>> {
|
|
526
|
+
const response = await fetch(`${API_BASE_URL}${endpoint}`, {
|
|
527
|
+
...options,
|
|
528
|
+
headers: {
|
|
529
|
+
'Content-Type': 'application/json',
|
|
530
|
+
...options?.headers,
|
|
531
|
+
},
|
|
532
|
+
});
|
|
533
|
+
|
|
534
|
+
if (!response.ok) {
|
|
535
|
+
const error: ApiError = await response.json();
|
|
536
|
+
throw new Error(error.message);
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
return response.json();
|
|
540
|
+
}
|
|
541
|
+
EOF
|
|
542
|
+
|
|
543
|
+
cd ../..
|
|
544
|
+
```
|
|
545
|
+
|
|
546
|
+
---
|
|
547
|
+
|
|
548
|
+
## Step 6: Define Cross-Project Dependencies
|
|
549
|
+
|
|
550
|
+
```bash
|
|
551
|
+
cat > .proagents/cross-project-deps.json << 'EOF'
|
|
552
|
+
{
|
|
553
|
+
"version": "1.0",
|
|
554
|
+
"dependencies": [
|
|
555
|
+
{
|
|
556
|
+
"from": "web",
|
|
557
|
+
"to": "api",
|
|
558
|
+
"type": "api_consumer",
|
|
559
|
+
"contract": "openapi",
|
|
560
|
+
"description": "Web app consumes REST API"
|
|
561
|
+
},
|
|
562
|
+
{
|
|
563
|
+
"from": "mobile",
|
|
564
|
+
"to": "api",
|
|
565
|
+
"type": "api_consumer",
|
|
566
|
+
"contract": "openapi",
|
|
567
|
+
"description": "Mobile app consumes REST API"
|
|
568
|
+
},
|
|
569
|
+
{
|
|
570
|
+
"from": "web",
|
|
571
|
+
"to": "types",
|
|
572
|
+
"type": "package",
|
|
573
|
+
"description": "Web uses shared types"
|
|
574
|
+
},
|
|
575
|
+
{
|
|
576
|
+
"from": "api",
|
|
577
|
+
"to": "types",
|
|
578
|
+
"type": "package",
|
|
579
|
+
"description": "API uses shared types"
|
|
580
|
+
},
|
|
581
|
+
{
|
|
582
|
+
"from": "mobile",
|
|
583
|
+
"to": "types",
|
|
584
|
+
"type": "package",
|
|
585
|
+
"description": "Mobile uses shared types"
|
|
586
|
+
}
|
|
587
|
+
],
|
|
588
|
+
"deployment_order": [
|
|
589
|
+
{
|
|
590
|
+
"environment": "production",
|
|
591
|
+
"order": ["types", "utils", "ui", "api", "web", "mobile"]
|
|
592
|
+
}
|
|
593
|
+
]
|
|
594
|
+
}
|
|
595
|
+
EOF
|
|
596
|
+
```
|
|
597
|
+
|
|
598
|
+
---
|
|
599
|
+
|
|
600
|
+
## Step 7: Create Unified Changelog
|
|
601
|
+
|
|
602
|
+
```bash
|
|
603
|
+
mkdir -p .proagents/changelog
|
|
604
|
+
|
|
605
|
+
cat > .proagents/changelog/CHANGELOG.md << 'EOF'
|
|
606
|
+
# TaskFlow Changelog
|
|
607
|
+
|
|
608
|
+
All notable changes across all projects.
|
|
609
|
+
|
|
610
|
+
## [Unreleased]
|
|
611
|
+
|
|
612
|
+
### Web
|
|
613
|
+
- Initial setup
|
|
614
|
+
|
|
615
|
+
### API
|
|
616
|
+
- Initial setup
|
|
617
|
+
|
|
618
|
+
### Mobile
|
|
619
|
+
- Initial setup
|
|
620
|
+
|
|
621
|
+
---
|
|
622
|
+
|
|
623
|
+
## Format
|
|
624
|
+
|
|
625
|
+
Each entry includes:
|
|
626
|
+
- **[project]** Change description
|
|
627
|
+
- Links to commits/PRs
|
|
628
|
+
- Breaking change indicators
|
|
629
|
+
EOF
|
|
630
|
+
```
|
|
631
|
+
|
|
632
|
+
---
|
|
633
|
+
|
|
634
|
+
## Step 8: Verify Setup
|
|
635
|
+
|
|
636
|
+
```bash
|
|
637
|
+
# Check workspace status
|
|
638
|
+
proagents workspace status
|
|
639
|
+
|
|
640
|
+
# Expected output:
|
|
641
|
+
# ┌─────────────────────────────────────────────────┐
|
|
642
|
+
# │ TaskFlow Workspace │
|
|
643
|
+
# ├─────────────────────────────────────────────────┤
|
|
644
|
+
# │ Projects: 6 │
|
|
645
|
+
# │ │
|
|
646
|
+
# │ ✓ web (Next.js) apps/web │
|
|
647
|
+
# │ ✓ api (Express) apps/api │
|
|
648
|
+
# │ ✓ mobile (RN) apps/mobile │
|
|
649
|
+
# │ ✓ types (Library) packages/types │
|
|
650
|
+
# │ ✓ utils (Library) packages/utils │
|
|
651
|
+
# │ ✓ ui (Library) packages/ui │
|
|
652
|
+
# │ │
|
|
653
|
+
# │ Shared Config: ✓ Loaded │
|
|
654
|
+
# │ Dependencies: 5 defined │
|
|
655
|
+
# └─────────────────────────────────────────────────┘
|
|
656
|
+
|
|
657
|
+
# Validate workspace configuration
|
|
658
|
+
proagents workspace validate
|
|
659
|
+
|
|
660
|
+
# Check cross-project dependencies
|
|
661
|
+
proagents workspace deps --graph
|
|
662
|
+
```
|
|
663
|
+
|
|
664
|
+
---
|
|
665
|
+
|
|
666
|
+
## Step 9: Working with the Monorepo
|
|
667
|
+
|
|
668
|
+
### Start a Cross-Project Feature
|
|
669
|
+
|
|
670
|
+
```bash
|
|
671
|
+
# Start a feature that spans multiple projects
|
|
672
|
+
proagents feature start "Add task comments" --projects web,api,types
|
|
673
|
+
|
|
674
|
+
# ProAgents will:
|
|
675
|
+
# 1. Create branches in all affected projects
|
|
676
|
+
# 2. Track dependencies between changes
|
|
677
|
+
# 3. Coordinate commits and PRs
|
|
678
|
+
```
|
|
679
|
+
|
|
680
|
+
### Run Commands Across Projects
|
|
681
|
+
|
|
682
|
+
```bash
|
|
683
|
+
# Build all projects
|
|
684
|
+
proagents workspace run build
|
|
685
|
+
|
|
686
|
+
# Test specific projects
|
|
687
|
+
proagents workspace run test --filter web,api
|
|
688
|
+
|
|
689
|
+
# Lint all with shared rules
|
|
690
|
+
proagents workspace run lint
|
|
691
|
+
```
|
|
692
|
+
|
|
693
|
+
### Deploy Coordinated Changes
|
|
694
|
+
|
|
695
|
+
```bash
|
|
696
|
+
# Deploy to staging (respects deployment order)
|
|
697
|
+
proagents workspace deploy staging
|
|
698
|
+
|
|
699
|
+
# Deploy order: types → utils → api → web → mobile
|
|
700
|
+
```
|
|
701
|
+
|
|
702
|
+
---
|
|
703
|
+
|
|
704
|
+
## Common Operations
|
|
705
|
+
|
|
706
|
+
### Add a New Package
|
|
707
|
+
|
|
708
|
+
```bash
|
|
709
|
+
# Create new shared package
|
|
710
|
+
proagents workspace add-package hooks --path packages/hooks
|
|
711
|
+
|
|
712
|
+
# This will:
|
|
713
|
+
# 1. Create package structure
|
|
714
|
+
# 2. Add to workspace config
|
|
715
|
+
# 3. Configure with shared standards
|
|
716
|
+
```
|
|
717
|
+
|
|
718
|
+
### Sync Configuration Changes
|
|
719
|
+
|
|
720
|
+
```bash
|
|
721
|
+
# After updating shared standards
|
|
722
|
+
proagents workspace sync
|
|
723
|
+
|
|
724
|
+
# Validates all projects against updated standards
|
|
725
|
+
```
|
|
726
|
+
|
|
727
|
+
### Check for Breaking Changes
|
|
728
|
+
|
|
729
|
+
```bash
|
|
730
|
+
# Before merging a feature
|
|
731
|
+
proagents workspace check-breaking
|
|
732
|
+
|
|
733
|
+
# Reports any cross-project breaking changes
|
|
734
|
+
```
|
|
735
|
+
|
|
736
|
+
---
|
|
737
|
+
|
|
738
|
+
## Troubleshooting
|
|
739
|
+
|
|
740
|
+
### Issue: Package not found
|
|
741
|
+
|
|
742
|
+
```
|
|
743
|
+
Error: Cannot find module '@taskflow/types'
|
|
744
|
+
```
|
|
745
|
+
|
|
746
|
+
**Solution:**
|
|
747
|
+
```bash
|
|
748
|
+
# Rebuild packages
|
|
749
|
+
pnpm build --filter @taskflow/types
|
|
750
|
+
# Or build all
|
|
751
|
+
pnpm build
|
|
752
|
+
```
|
|
753
|
+
|
|
754
|
+
### Issue: Circular dependency detected
|
|
755
|
+
|
|
756
|
+
```
|
|
757
|
+
Error: Circular dependency: web → utils → types → web
|
|
758
|
+
```
|
|
759
|
+
|
|
760
|
+
**Solution:**
|
|
761
|
+
- Review the dependency graph
|
|
762
|
+
- Extract shared code to a lower-level package
|
|
763
|
+
- Use dependency injection to break cycles
|
|
764
|
+
|
|
765
|
+
### Issue: Workspace config not loading
|
|
766
|
+
|
|
767
|
+
```
|
|
768
|
+
Error: proagents.workspace.yaml not found
|
|
769
|
+
```
|
|
770
|
+
|
|
771
|
+
**Solution:**
|
|
772
|
+
```bash
|
|
773
|
+
# Ensure you're in workspace root
|
|
774
|
+
cd /path/to/taskflow
|
|
775
|
+
|
|
776
|
+
# Verify file exists
|
|
777
|
+
cat proagents.workspace.yaml
|
|
778
|
+
```
|
|
779
|
+
|
|
780
|
+
---
|
|
781
|
+
|
|
782
|
+
## Next Steps
|
|
783
|
+
|
|
784
|
+
1. **Add CI/CD**: Set up GitHub Actions for the monorepo
|
|
785
|
+
2. **Add More Packages**: As needed for shared code
|
|
786
|
+
3. **Configure Environments**: Set up dev, staging, production
|
|
787
|
+
4. **Team Onboarding**: Use this guide to onboard new developers
|