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.
Files changed (444) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +170 -0
  3. package/bin/proagents.js +90 -0
  4. package/lib/commands/feature.js +125 -0
  5. package/lib/commands/fix.js +60 -0
  6. package/lib/commands/help.js +76 -0
  7. package/lib/commands/init.js +64 -0
  8. package/lib/commands/status.js +91 -0
  9. package/lib/index.js +28 -0
  10. package/package.json +52 -0
  11. package/proagents/.learning/global/common-patterns.json +77 -0
  12. package/proagents/.learning/global/user-preferences.json +76 -0
  13. package/proagents/.learning/projects/example-project/corrections.json +99 -0
  14. package/proagents/.learning/projects/example-project/feedback.json +109 -0
  15. package/proagents/.learning/projects/example-project/metrics.json +101 -0
  16. package/proagents/.learning/projects/example-project/patterns.json +102 -0
  17. package/proagents/.learning/schemas/README.md +48 -0
  18. package/proagents/.learning/schemas/corrections-schema.json +100 -0
  19. package/proagents/.learning/schemas/feedback-schema.json +144 -0
  20. package/proagents/.learning/schemas/metrics-schema.json +96 -0
  21. package/proagents/.learning/schemas/patterns-schema.json +82 -0
  22. package/proagents/.learning/schemas/project-patterns-schema.json +125 -0
  23. package/proagents/.learning/schemas/user-preferences-schema.json +136 -0
  24. package/proagents/GETTING-STARTED-STORY.md +708 -0
  25. package/proagents/README.md +99 -0
  26. package/proagents/WORKFLOW.md +1234 -0
  27. package/proagents/active-features/.gitkeep +0 -0
  28. package/proagents/active-features/README.md +176 -0
  29. package/proagents/active-features/_index.json +74 -0
  30. package/proagents/active-features/feature-user-auth/dependencies.json +81 -0
  31. package/proagents/active-features/feature-user-auth/files-modified.json +126 -0
  32. package/proagents/active-features/feature-user-auth/status.json +122 -0
  33. package/proagents/active-features/schemas/dependencies-schema.json +119 -0
  34. package/proagents/active-features/schemas/feature-schema.json +132 -0
  35. package/proagents/active-features/schemas/files-schema.json +100 -0
  36. package/proagents/active-features/schemas/index-schema.json +95 -0
  37. package/proagents/adr/README.md +302 -0
  38. package/proagents/adr/examples/api-versioning.md +297 -0
  39. package/proagents/adr/examples/database-choice.md +264 -0
  40. package/proagents/adr/template.md +273 -0
  41. package/proagents/ai-models/README.md +141 -0
  42. package/proagents/ai-models/cost-management.md +362 -0
  43. package/proagents/ai-models/fallbacks.md +342 -0
  44. package/proagents/ai-models/model-config.md +318 -0
  45. package/proagents/ai-models/task-routing.md +503 -0
  46. package/proagents/ai-training/README.md +155 -0
  47. package/proagents/ai-training/continuous-learning.md +413 -0
  48. package/proagents/ai-training/domain-knowledge.md +378 -0
  49. package/proagents/ai-training/pattern-learning.md +455 -0
  50. package/proagents/ai-training/training-data.md +337 -0
  51. package/proagents/ai-training/user-preferences.md +346 -0
  52. package/proagents/api-versioning/README.md +257 -0
  53. package/proagents/api-versioning/changelog-template.md +225 -0
  54. package/proagents/api-versioning/deprecation-workflow.md +470 -0
  55. package/proagents/api-versioning/versioning-strategy.md +291 -0
  56. package/proagents/approval-workflows/README.md +146 -0
  57. package/proagents/approval-workflows/approval-config.md +332 -0
  58. package/proagents/approval-workflows/approval-stages.md +503 -0
  59. package/proagents/approval-workflows/emergency-bypass.md +351 -0
  60. package/proagents/approval-workflows/examples.md +859 -0
  61. package/proagents/approval-workflows/notifications.md +320 -0
  62. package/proagents/automation/README.md +38 -0
  63. package/proagents/automation/ai-behavior-rules.md +339 -0
  64. package/proagents/automation/ai-prompt-injection.md +331 -0
  65. package/proagents/automation/auto-decisions.md +535 -0
  66. package/proagents/automation/decision-defaults.yaml +317 -0
  67. package/proagents/cache/README.md +110 -0
  68. package/proagents/cache/analysis-metadata.json +76 -0
  69. package/proagents/cache/conventions.json +125 -0
  70. package/proagents/cache/dependencies.json +85 -0
  71. package/proagents/cache/features.json +115 -0
  72. package/proagents/cache/patterns.json +105 -0
  73. package/proagents/cache/schemas/conventions-schema.json +138 -0
  74. package/proagents/cache/schemas/dependencies-schema.json +95 -0
  75. package/proagents/cache/schemas/features-schema.json +104 -0
  76. package/proagents/cache/schemas/metadata-schema.json +83 -0
  77. package/proagents/cache/schemas/patterns-schema.json +136 -0
  78. package/proagents/cache/schemas/structure-schema.json +72 -0
  79. package/proagents/cache/structure.json +109 -0
  80. package/proagents/changelog/2024/01/2024-01-10-api-url-config.md +41 -0
  81. package/proagents/changelog/2024/01/2024-01-12-login-bug-fix.md +69 -0
  82. package/proagents/changelog/2024/01/2024-01-15-user-auth-feature.md +99 -0
  83. package/proagents/changelog/CHANGELOG.md +82 -0
  84. package/proagents/changelog/README.md +327 -0
  85. package/proagents/changelog/entry-template.md +283 -0
  86. package/proagents/checklists/README.md +261 -0
  87. package/proagents/checklists/code-quality.md +137 -0
  88. package/proagents/checklists/code-review.md +148 -0
  89. package/proagents/checklists/pr-checklist.md +78 -0
  90. package/proagents/checklists/pre-deployment.md +132 -0
  91. package/proagents/checklists/pre-implementation.md +80 -0
  92. package/proagents/checklists/testing.md +120 -0
  93. package/proagents/cicd/README.md +338 -0
  94. package/proagents/cicd/azure-devops.md +267 -0
  95. package/proagents/cicd/github-actions.md +375 -0
  96. package/proagents/cicd/gitlab-ci.md +278 -0
  97. package/proagents/cicd/jenkins.md +317 -0
  98. package/proagents/cli/README.md +392 -0
  99. package/proagents/cli/commands-reference.md +893 -0
  100. package/proagents/cli/ide-integration.md +584 -0
  101. package/proagents/cli/shortcuts.md +394 -0
  102. package/proagents/cli/slash-commands.md +507 -0
  103. package/proagents/collaboration/README.md +143 -0
  104. package/proagents/collaboration/roles.md +248 -0
  105. package/proagents/collaboration/sessions.md +390 -0
  106. package/proagents/collaboration/sync.md +358 -0
  107. package/proagents/compliance/README.md +206 -0
  108. package/proagents/compliance/access-control.md +310 -0
  109. package/proagents/compliance/audit-logging.md +444 -0
  110. package/proagents/compliance/compliance-frameworks.md +429 -0
  111. package/proagents/compliance/reports.md +491 -0
  112. package/proagents/compliance/retention-policies.md +454 -0
  113. package/proagents/config/README.md +181 -0
  114. package/proagents/config/integrations/README.md +68 -0
  115. package/proagents/config/integrations/github.yaml +211 -0
  116. package/proagents/config/integrations/jira.yaml +144 -0
  117. package/proagents/config/integrations/linear.yaml +157 -0
  118. package/proagents/config/integrations/notion.yaml +203 -0
  119. package/proagents/config/integrations/slack.yaml +230 -0
  120. package/proagents/config/rules/README.md +73 -0
  121. package/proagents/config/rules/custom-rules.template.yaml +188 -0
  122. package/proagents/config/rules/validation-rules.template.yaml +177 -0
  123. package/proagents/config/standards/README.md +58 -0
  124. package/proagents/config/standards/architecture-rules.template.md +124 -0
  125. package/proagents/config/standards/coding-standards.template.md +107 -0
  126. package/proagents/config/standards/naming-conventions.template.md +114 -0
  127. package/proagents/config/standards/testing-standards.template.md +213 -0
  128. package/proagents/config/templates/README.md +74 -0
  129. package/proagents/config/templates/api-route.template.ts +142 -0
  130. package/proagents/config/templates/component.template.tsx +55 -0
  131. package/proagents/config/templates/hook.template.ts +93 -0
  132. package/proagents/config/templates/test.template.ts +171 -0
  133. package/proagents/config-versioning/README.md +120 -0
  134. package/proagents/config-versioning/changelog.md +300 -0
  135. package/proagents/config-versioning/rollback.md +283 -0
  136. package/proagents/config-versioning/versioning.md +330 -0
  137. package/proagents/contract-testing/README.md +223 -0
  138. package/proagents/contract-testing/contract-testing.md +614 -0
  139. package/proagents/contract-testing/pact-integration.md +507 -0
  140. package/proagents/contract-testing/schema-validation.md +565 -0
  141. package/proagents/cost/README.md +48 -0
  142. package/proagents/cost/cost-template.md +283 -0
  143. package/proagents/cost/estimation-framework.md +287 -0
  144. package/proagents/database/README.md +72 -0
  145. package/proagents/database/examples/001-create-users.sql +129 -0
  146. package/proagents/database/examples/002-add-preferences.sql +94 -0
  147. package/proagents/database/examples/003-add-index.sql +105 -0
  148. package/proagents/database/examples/004-rename-column.sql +122 -0
  149. package/proagents/database/examples/005-add-foreign-key.sql +142 -0
  150. package/proagents/database/examples/006-data-migration.sql +196 -0
  151. package/proagents/database/examples/007-drop-column.sql +163 -0
  152. package/proagents/database/examples/README.md +89 -0
  153. package/proagents/database/migration-workflow.md +478 -0
  154. package/proagents/database/rollback-scripts.md +487 -0
  155. package/proagents/database/safety-checks.md +447 -0
  156. package/proagents/dependency-management/README.md +140 -0
  157. package/proagents/dependency-management/automation.md +363 -0
  158. package/proagents/dependency-management/compatibility.md +319 -0
  159. package/proagents/dependency-management/security-scanning.md +413 -0
  160. package/proagents/dependency-management/update-policies.md +374 -0
  161. package/proagents/disaster-recovery/README.md +247 -0
  162. package/proagents/disaster-recovery/automation.md +366 -0
  163. package/proagents/disaster-recovery/backup-recovery.md +571 -0
  164. package/proagents/disaster-recovery/incident-response.md +565 -0
  165. package/proagents/disaster-recovery/rollback-procedures.md +499 -0
  166. package/proagents/disaster-recovery/runbooks.md +603 -0
  167. package/proagents/disaster-recovery/scenarios.md +892 -0
  168. package/proagents/disaster-recovery/testing.md +438 -0
  169. package/proagents/environments/README.md +244 -0
  170. package/proagents/environments/configuration.md +437 -0
  171. package/proagents/environments/promotion.md +434 -0
  172. package/proagents/environments/setup.md +420 -0
  173. package/proagents/examples/README.md +55 -0
  174. package/proagents/examples/backend-nodejs/README.md +188 -0
  175. package/proagents/examples/backend-nodejs/complete-conversation.md +601 -0
  176. package/proagents/examples/backend-nodejs/proagents.config.yaml +415 -0
  177. package/proagents/examples/backend-nodejs/workflow-example.md +909 -0
  178. package/proagents/examples/fullstack-nextjs/README.md +155 -0
  179. package/proagents/examples/fullstack-nextjs/complete-conversation.md +604 -0
  180. package/proagents/examples/fullstack-nextjs/proagents.config.yaml +287 -0
  181. package/proagents/examples/fullstack-nextjs/workflow-example.md +553 -0
  182. package/proagents/examples/mobile-react-native/README.md +171 -0
  183. package/proagents/examples/mobile-react-native/complete-conversation.md +825 -0
  184. package/proagents/examples/mobile-react-native/proagents.config.yaml +330 -0
  185. package/proagents/examples/mobile-react-native/workflow-example.md +723 -0
  186. package/proagents/examples/web-frontend-react/README.md +125 -0
  187. package/proagents/examples/web-frontend-react/complete-conversation.md +556 -0
  188. package/proagents/examples/web-frontend-react/proagents.config.yaml +183 -0
  189. package/proagents/examples/web-frontend-react/workflow-example.md +603 -0
  190. package/proagents/existing-projects/README.md +65 -0
  191. package/proagents/existing-projects/challenges.md +861 -0
  192. package/proagents/existing-projects/coexistence-mode.md +483 -0
  193. package/proagents/existing-projects/compatibility-assessment.md +541 -0
  194. package/proagents/existing-projects/gradual-adoption.md +515 -0
  195. package/proagents/existing-projects/migration-strategies.md +788 -0
  196. package/proagents/existing-projects/pattern-reconciliation.md +489 -0
  197. package/proagents/existing-projects/team-onboarding.md +617 -0
  198. package/proagents/existing-projects/technical-debt-handling.md +644 -0
  199. package/proagents/feature-flags/README.md +263 -0
  200. package/proagents/feature-flags/ab-testing.md +413 -0
  201. package/proagents/feature-flags/configuration.md +420 -0
  202. package/proagents/feature-flags/kill-switches.md +444 -0
  203. package/proagents/feature-flags/rollout-strategies.md +392 -0
  204. package/proagents/getting-started/README.md +60 -0
  205. package/proagents/getting-started/ai-training-setup.md +380 -0
  206. package/proagents/getting-started/ide-setup.md +195 -0
  207. package/proagents/getting-started/mcp-setup.md +239 -0
  208. package/proagents/getting-started/pm-integration.md +336 -0
  209. package/proagents/getting-started/prompt-engineering.md +478 -0
  210. package/proagents/getting-started/team-onboarding.md +236 -0
  211. package/proagents/git/README.md +68 -0
  212. package/proagents/git/branch-strategy.md +164 -0
  213. package/proagents/git/commit-conventions.md +241 -0
  214. package/proagents/git/pr-workflow.md +286 -0
  215. package/proagents/git/rollback-procedures.md +416 -0
  216. package/proagents/i18n/README.md +133 -0
  217. package/proagents/i18n/extraction.md +433 -0
  218. package/proagents/i18n/tms-integration.md +332 -0
  219. package/proagents/i18n/translation-workflow.md +413 -0
  220. package/proagents/i18n/validation.md +355 -0
  221. package/proagents/ide-integration/README.md +124 -0
  222. package/proagents/ide-integration/cline-config.md +429 -0
  223. package/proagents/ide-integration/continue-config.md +380 -0
  224. package/proagents/ide-integration/cursor-rules.md +280 -0
  225. package/proagents/ide-integration/github-copilot.md +384 -0
  226. package/proagents/ide-integration/windsurf-rules.md +314 -0
  227. package/proagents/integrations/README.md +97 -0
  228. package/proagents/integrations/pm/README.md +344 -0
  229. package/proagents/learning/README.md +136 -0
  230. package/proagents/learning/adaptation.md +305 -0
  231. package/proagents/learning/data-collection.md +283 -0
  232. package/proagents/learning/implementation-guide.md +865 -0
  233. package/proagents/learning/reports.md +306 -0
  234. package/proagents/logging/README.md +276 -0
  235. package/proagents/logging/aggregation.md +475 -0
  236. package/proagents/logging/log-levels.md +376 -0
  237. package/proagents/logging/sensitive-data.md +423 -0
  238. package/proagents/logging/structured-logging.md +406 -0
  239. package/proagents/mcp/README.md +133 -0
  240. package/proagents/mcp/context-providers.md +442 -0
  241. package/proagents/mcp/server-config.md +306 -0
  242. package/proagents/mcp/tools-definition.md +513 -0
  243. package/proagents/metrics/README.md +174 -0
  244. package/proagents/metrics/code-quality-kpis.md +461 -0
  245. package/proagents/metrics/deployment-metrics.md +517 -0
  246. package/proagents/metrics/developer-productivity.md +368 -0
  247. package/proagents/metrics/learning-effectiveness.md +478 -0
  248. package/proagents/migrations/README.md +77 -0
  249. package/proagents/migrations/from-claude-projects.md +312 -0
  250. package/proagents/migrations/from-cursor-rules.md +345 -0
  251. package/proagents/migrations/from-custom-workflows.md +410 -0
  252. package/proagents/monitoring/README.md +308 -0
  253. package/proagents/monitoring/alerting.md +449 -0
  254. package/proagents/monitoring/dashboards.md +454 -0
  255. package/proagents/monitoring/health-checks.md +436 -0
  256. package/proagents/monitoring/metrics.md +434 -0
  257. package/proagents/multi-project/README.md +170 -0
  258. package/proagents/multi-project/coordinated-deploy.md +510 -0
  259. package/proagents/multi-project/cross-project-deps.md +395 -0
  260. package/proagents/multi-project/unified-changelog.md +477 -0
  261. package/proagents/multi-project/walkthroughs/monorepo-setup.md +787 -0
  262. package/proagents/multi-project/workspace-config.md +408 -0
  263. package/proagents/notifications/README.md +151 -0
  264. package/proagents/notifications/channels.md +457 -0
  265. package/proagents/notifications/preferences.md +415 -0
  266. package/proagents/notifications/routing.md +449 -0
  267. package/proagents/notifications/scheduling.md +425 -0
  268. package/proagents/notifications/templates.md +446 -0
  269. package/proagents/offline-mode/README.md +145 -0
  270. package/proagents/offline-mode/caching.md +344 -0
  271. package/proagents/offline-mode/offline-operations.md +312 -0
  272. package/proagents/offline-mode/queue-specifications.md +679 -0
  273. package/proagents/offline-mode/sync.md +475 -0
  274. package/proagents/parallel-features/README.md +85 -0
  275. package/proagents/parallel-features/conflict-detection.md +226 -0
  276. package/proagents/parallel-features/dependency-management.md +392 -0
  277. package/proagents/parallel-features/merge-coordination.md +506 -0
  278. package/proagents/parallel-features/tracking-system.md +416 -0
  279. package/proagents/patterns/README.md +305 -0
  280. package/proagents/patterns/api-errors.md +453 -0
  281. package/proagents/patterns/async-errors.md +521 -0
  282. package/proagents/patterns/error-types.md +437 -0
  283. package/proagents/patterns/ui-errors.md +595 -0
  284. package/proagents/performance/README.md +59 -0
  285. package/proagents/performance/bundle-analysis.md +375 -0
  286. package/proagents/performance/load-testing.md +563 -0
  287. package/proagents/performance/runtime-metrics.md +489 -0
  288. package/proagents/performance/web-vitals.md +425 -0
  289. package/proagents/plugins/README.md +139 -0
  290. package/proagents/plugins/creating-plugins.md +504 -0
  291. package/proagents/plugins/plugin-api.md +467 -0
  292. package/proagents/plugins/plugin-registry.md +276 -0
  293. package/proagents/pm-integration/README.md +151 -0
  294. package/proagents/pm-integration/asana.md +346 -0
  295. package/proagents/pm-integration/github-issues.md +308 -0
  296. package/proagents/pm-integration/gitlab-issues.md +482 -0
  297. package/proagents/pm-integration/jira.md +364 -0
  298. package/proagents/pm-integration/linear.md +409 -0
  299. package/proagents/pm-integration/notion.md +275 -0
  300. package/proagents/pm-integration/sync-config.md +533 -0
  301. package/proagents/pm-integration/trello.md +159 -0
  302. package/proagents/proagents.config.yaml +213 -0
  303. package/proagents/prompts/00-init-wizard.md +426 -0
  304. package/proagents/prompts/00-init.md +219 -0
  305. package/proagents/prompts/01-analysis.md +244 -0
  306. package/proagents/prompts/02-requirements.md +399 -0
  307. package/proagents/prompts/03-ui-design.md +493 -0
  308. package/proagents/prompts/04-planning.md +505 -0
  309. package/proagents/prompts/05-implementation.md +518 -0
  310. package/proagents/prompts/06-testing.md +620 -0
  311. package/proagents/prompts/06.5-code-review.md +512 -0
  312. package/proagents/prompts/07-documentation.md +673 -0
  313. package/proagents/prompts/08-deployment.md +539 -0
  314. package/proagents/prompts/09-rollback.md +554 -0
  315. package/proagents/prompts/README.md +51 -0
  316. package/proagents/prompts/accessibility/README.md +146 -0
  317. package/proagents/prompts/accessibility/aria.md +276 -0
  318. package/proagents/prompts/accessibility/audit.md +233 -0
  319. package/proagents/prompts/accessibility/keyboard.md +392 -0
  320. package/proagents/prompts/accessibility/wcag.md +189 -0
  321. package/proagents/prompts/debugging/README.md +51 -0
  322. package/proagents/prompts/debugging/error-analysis.md +385 -0
  323. package/proagents/prompts/debugging/performance-debug.md +381 -0
  324. package/proagents/prompts/debugging/systematic.md +270 -0
  325. package/proagents/prompts/performance/README.md +47 -0
  326. package/proagents/prompts/performance/analyze.md +265 -0
  327. package/proagents/prompts/performance/optimize.md +347 -0
  328. package/proagents/prompts/refactoring/README.md +51 -0
  329. package/proagents/prompts/refactoring/architecture.md +531 -0
  330. package/proagents/prompts/refactoring/code-smells.md +174 -0
  331. package/proagents/prompts/refactoring/patterns.md +516 -0
  332. package/proagents/prompts/security-audit/README.md +197 -0
  333. package/proagents/prompts/security-audit/code-review.md +260 -0
  334. package/proagents/prompts/security-audit/vulnerability-scan.md +288 -0
  335. package/proagents/reporting/README.md +158 -0
  336. package/proagents/reporting/dashboards.md +366 -0
  337. package/proagents/reporting/exports.md +524 -0
  338. package/proagents/reporting/quality-metrics.md +385 -0
  339. package/proagents/reporting/templates/README.md +56 -0
  340. package/proagents/reporting/templates/dashboard-config.json +187 -0
  341. package/proagents/reporting/templates/metrics-queries.md +427 -0
  342. package/proagents/reporting/templates/react-dashboard.tsx +544 -0
  343. package/proagents/reporting/templates/widgets.md +451 -0
  344. package/proagents/reporting/velocity-metrics.md +340 -0
  345. package/proagents/reverse-engineering/README.md +151 -0
  346. package/proagents/reverse-engineering/architecture-extraction.md +325 -0
  347. package/proagents/reverse-engineering/code-analysis.md +377 -0
  348. package/proagents/reverse-engineering/dependency-mapping.md +567 -0
  349. package/proagents/reverse-engineering/diagram-generation.md +586 -0
  350. package/proagents/reverse-engineering/documentation-generation.md +468 -0
  351. package/proagents/reverse-engineering/pattern-detection.md +569 -0
  352. package/proagents/reverse-engineering/quality-assessment.md +733 -0
  353. package/proagents/rules/README.md +179 -0
  354. package/proagents/rules/custom-rules-template.yaml +286 -0
  355. package/proagents/rules/custom-rules.md +754 -0
  356. package/proagents/rules/validation-rules-template.yaml +517 -0
  357. package/proagents/runbooks/README.md +219 -0
  358. package/proagents/runbooks/dependency-vulnerability.md +505 -0
  359. package/proagents/runbooks/incident-response.md +451 -0
  360. package/proagents/runbooks/performance-degradation.md +584 -0
  361. package/proagents/runbooks/production-debugging.md +489 -0
  362. package/proagents/scaffolding/README.md +64 -0
  363. package/proagents/scaffolding/nextjs/README.md +578 -0
  364. package/proagents/scaffolding/nextjs/templates/api-route.ts.template +185 -0
  365. package/proagents/scaffolding/nextjs/templates/page.tsx.template +109 -0
  366. package/proagents/scaffolding/nextjs/templates/server-action.ts.template +204 -0
  367. package/proagents/scaffolding/nodejs/README.md +558 -0
  368. package/proagents/scaffolding/nodejs/templates/controller.ts.template +167 -0
  369. package/proagents/scaffolding/nodejs/templates/repository.ts.template +155 -0
  370. package/proagents/scaffolding/nodejs/templates/service.ts.template +207 -0
  371. package/proagents/scaffolding/project-types.md +401 -0
  372. package/proagents/scaffolding/react/README.md +399 -0
  373. package/proagents/scaffolding/react/templates/component.tsx.template +88 -0
  374. package/proagents/scaffolding/react/templates/hook.ts.template +127 -0
  375. package/proagents/scaffolding/react/templates/service.ts.template +155 -0
  376. package/proagents/scaffolding/react/templates/test.tsx.template +149 -0
  377. package/proagents/scaffolding/react-native/README.md +476 -0
  378. package/proagents/scaffolding/react-native/templates/hook.ts.template +226 -0
  379. package/proagents/scaffolding/react-native/templates/screen.tsx.template +247 -0
  380. package/proagents/secrets/README.md +278 -0
  381. package/proagents/secrets/access-control.md +443 -0
  382. package/proagents/secrets/rotation.md +403 -0
  383. package/proagents/secrets/scanning.md +487 -0
  384. package/proagents/secrets/storage.md +394 -0
  385. package/proagents/security/README.md +71 -0
  386. package/proagents/security/owasp-checklist.md +390 -0
  387. package/proagents/security/sast-guide.md +473 -0
  388. package/proagents/security/security-report-template.md +343 -0
  389. package/proagents/security/vulnerability-scanning.md +329 -0
  390. package/proagents/slash-commands.json +161 -0
  391. package/proagents/standards/README.md +120 -0
  392. package/proagents/standards/architecture-patterns.md +728 -0
  393. package/proagents/standards/architecture-rules-template.md +489 -0
  394. package/proagents/standards/coding-standards-template.md +489 -0
  395. package/proagents/standards/examples/README.md +61 -0
  396. package/proagents/standards/examples/nodejs-api.md +560 -0
  397. package/proagents/standards/examples/react-nextjs.md +428 -0
  398. package/proagents/standards/naming-conventions-template.md +526 -0
  399. package/proagents/standards/override-system.md +717 -0
  400. package/proagents/standards/testing-standards-template.md +220 -0
  401. package/proagents/team/README.md +256 -0
  402. package/proagents/team/code-ownership.md +306 -0
  403. package/proagents/team/communication-templates.md +441 -0
  404. package/proagents/team/handoff-protocol.md +380 -0
  405. package/proagents/team/ide-setup/README.md +103 -0
  406. package/proagents/team/ide-setup/cursor.md +276 -0
  407. package/proagents/team/ide-setup/jetbrains.md +330 -0
  408. package/proagents/team/ide-setup/neovim.md +640 -0
  409. package/proagents/team/ide-setup/vscode.md +348 -0
  410. package/proagents/team/onboarding.md +278 -0
  411. package/proagents/templates/README.md +57 -0
  412. package/proagents/templates/code-review-report.md +255 -0
  413. package/proagents/templates/codebase-analysis-report.md +315 -0
  414. package/proagents/templates/deployment-checklist.md +277 -0
  415. package/proagents/templates/feature-requirements.md +142 -0
  416. package/proagents/templates/feature-status.md +231 -0
  417. package/proagents/templates/implementation-plan.md +373 -0
  418. package/proagents/templates/rollback-plan.md +331 -0
  419. package/proagents/templates/test-plan.md +336 -0
  420. package/proagents/templates/ui-specification.md +431 -0
  421. package/proagents/testing-standards/README.md +229 -0
  422. package/proagents/testing-standards/coverage-requirements.md +198 -0
  423. package/proagents/testing-standards/mocking-guidelines.md +478 -0
  424. package/proagents/testing-standards/test-naming.md +485 -0
  425. package/proagents/testing-standards/test-patterns.md +488 -0
  426. package/proagents/troubleshooting/README.md +730 -0
  427. package/proagents/troubleshooting/ai-issues.md +601 -0
  428. package/proagents/troubleshooting/workflow-issues.md +571 -0
  429. package/proagents/ui-integration/README.md +77 -0
  430. package/proagents/ui-integration/figma-guide.md +217 -0
  431. package/proagents/ui-integration/manual-export-guide.md +358 -0
  432. package/proagents/ui-integration/sketch-interpretation.md +471 -0
  433. package/proagents/webhooks/README.md +126 -0
  434. package/proagents/webhooks/endpoints.md +298 -0
  435. package/proagents/webhooks/events.md +316 -0
  436. package/proagents/webhooks/payloads.md +325 -0
  437. package/proagents/webhooks/reliability.md +363 -0
  438. package/proagents/webhooks/security.md +380 -0
  439. package/proagents/workflow-modes/README.md +136 -0
  440. package/proagents/workflow-modes/deferred-tracking.md +405 -0
  441. package/proagents/workflow-modes/entry-modes.md +397 -0
  442. package/proagents/workflow-modes/guardrails.md +405 -0
  443. package/proagents/workflow-modes/mode-detection.md +358 -0
  444. package/proagents/workflow-modes/mode-switching.md +372 -0
@@ -0,0 +1,453 @@
1
+ # API Error Handling
2
+
3
+ Standardized error responses for REST and GraphQL APIs.
4
+
5
+ ---
6
+
7
+ ## REST API Errors
8
+
9
+ ### Response Format
10
+
11
+ ```json
12
+ {
13
+ "error": {
14
+ "code": "VALIDATION_ERROR",
15
+ "message": "Invalid input data",
16
+ "details": [
17
+ {
18
+ "field": "email",
19
+ "message": "Invalid email format",
20
+ "value": "invalid-email"
21
+ }
22
+ ],
23
+ "requestId": "req-abc123",
24
+ "timestamp": "2024-01-15T10:30:00Z",
25
+ "documentation": "https://api.example.com/docs/errors#VALIDATION_ERROR"
26
+ }
27
+ }
28
+ ```
29
+
30
+ ### HTTP Status Code Mapping
31
+
32
+ | Status | Use Case | Example |
33
+ |--------|----------|---------|
34
+ | 400 | Bad Request | Malformed JSON, invalid parameters |
35
+ | 401 | Unauthorized | Missing/invalid authentication |
36
+ | 403 | Forbidden | Valid auth, insufficient permissions |
37
+ | 404 | Not Found | Resource doesn't exist |
38
+ | 409 | Conflict | Duplicate entry, version conflict |
39
+ | 422 | Unprocessable | Valid format, business rule violation |
40
+ | 429 | Too Many Requests | Rate limit exceeded |
41
+ | 500 | Internal Error | Unexpected server error |
42
+ | 502 | Bad Gateway | External service error |
43
+ | 503 | Service Unavailable | Maintenance, overload |
44
+
45
+ ---
46
+
47
+ ## Error Handler Configuration
48
+
49
+ ### Express Middleware
50
+
51
+ ```yaml
52
+ # proagents.config.yaml
53
+ patterns:
54
+ api_errors:
55
+ framework: "express"
56
+
57
+ handler:
58
+ # Error response format
59
+ format:
60
+ wrapper: "error"
61
+ include:
62
+ - code
63
+ - message
64
+ - details
65
+ - requestId
66
+ - timestamp
67
+ exclude_in_production:
68
+ - stack
69
+ - internalMessage
70
+
71
+ # Status code mapping
72
+ status_mapping:
73
+ ValidationError: 400
74
+ NotFoundError: 404
75
+ AuthenticationError: 401
76
+ AuthorizationError: 403
77
+ BusinessLogicError: 422
78
+ RateLimitError: 429
79
+ ExternalAPIError: 502
80
+ default: 500
81
+ ```
82
+
83
+ ### Implementation
84
+
85
+ ```typescript
86
+ // middleware/errorHandler.ts
87
+ import { Request, Response, NextFunction } from 'express';
88
+ import { BaseError } from '../errors';
89
+ import { logger } from '../logging';
90
+
91
+ export function errorHandler(
92
+ error: Error,
93
+ req: Request,
94
+ res: Response,
95
+ next: NextFunction
96
+ ) {
97
+ // Log the error
98
+ if (error instanceof BaseError && error.isOperational) {
99
+ logger.warn('Operational error', { error: error.toJSON(), requestId: req.id });
100
+ } else {
101
+ logger.error('Unexpected error', { error, requestId: req.id });
102
+ }
103
+
104
+ // Determine status code
105
+ const statusCode = error instanceof BaseError
106
+ ? error.statusCode
107
+ : 500;
108
+
109
+ // Build response
110
+ const response = {
111
+ error: {
112
+ code: error instanceof BaseError ? error.code : 'INTERNAL_ERROR',
113
+ message: error.message,
114
+ ...(error instanceof ValidationError && { details: error.details }),
115
+ requestId: req.id,
116
+ timestamp: new Date().toISOString(),
117
+ },
118
+ };
119
+
120
+ // Add stack in development
121
+ if (process.env.NODE_ENV === 'development') {
122
+ response.error.stack = error.stack;
123
+ }
124
+
125
+ res.status(statusCode).json(response);
126
+ }
127
+
128
+ // Usage
129
+ app.use(errorHandler);
130
+ ```
131
+
132
+ ---
133
+
134
+ ## Validation Errors
135
+
136
+ ### Field-Level Errors
137
+
138
+ ```typescript
139
+ // errors/validation.ts
140
+ export interface ValidationDetail {
141
+ field: string;
142
+ message: string;
143
+ code: string;
144
+ value?: unknown;
145
+ constraints?: Record<string, unknown>;
146
+ }
147
+
148
+ export class ValidationError extends BaseError {
149
+ readonly code = 'VALIDATION_ERROR';
150
+ readonly statusCode = 400;
151
+ readonly isOperational = true;
152
+
153
+ readonly details: ValidationDetail[];
154
+
155
+ constructor(message: string, details: ValidationDetail[]) {
156
+ super(message);
157
+ this.details = details;
158
+ }
159
+ }
160
+
161
+ // Usage
162
+ throw new ValidationError('Validation failed', [
163
+ { field: 'email', message: 'Invalid email format', code: 'INVALID_FORMAT' },
164
+ { field: 'password', message: 'Too short', code: 'MIN_LENGTH', constraints: { min: 8 } },
165
+ ]);
166
+ ```
167
+
168
+ ### Response Example
169
+
170
+ ```json
171
+ {
172
+ "error": {
173
+ "code": "VALIDATION_ERROR",
174
+ "message": "Validation failed",
175
+ "details": [
176
+ {
177
+ "field": "email",
178
+ "message": "Invalid email format",
179
+ "code": "INVALID_FORMAT"
180
+ },
181
+ {
182
+ "field": "password",
183
+ "message": "Password must be at least 8 characters",
184
+ "code": "MIN_LENGTH",
185
+ "constraints": {
186
+ "min": 8
187
+ }
188
+ }
189
+ ],
190
+ "requestId": "req-abc123",
191
+ "timestamp": "2024-01-15T10:30:00Z"
192
+ }
193
+ }
194
+ ```
195
+
196
+ ---
197
+
198
+ ## GraphQL Errors
199
+
200
+ ### Error Extensions
201
+
202
+ ```typescript
203
+ // graphql/errors.ts
204
+ import { GraphQLError } from 'graphql';
205
+
206
+ export class GraphQLAPIError extends GraphQLError {
207
+ constructor(
208
+ message: string,
209
+ code: string,
210
+ statusCode: number,
211
+ details?: Record<string, unknown>
212
+ ) {
213
+ super(message, {
214
+ extensions: {
215
+ code,
216
+ statusCode,
217
+ ...details,
218
+ },
219
+ });
220
+ }
221
+ }
222
+
223
+ // Specific errors
224
+ export class GraphQLValidationError extends GraphQLAPIError {
225
+ constructor(message: string, details: ValidationDetail[]) {
226
+ super(message, 'VALIDATION_ERROR', 400, { details });
227
+ }
228
+ }
229
+
230
+ export class GraphQLNotFoundError extends GraphQLAPIError {
231
+ constructor(resource: string, id: string) {
232
+ super(`${resource} not found`, 'NOT_FOUND', 404, { resource, id });
233
+ }
234
+ }
235
+ ```
236
+
237
+ ### GraphQL Response Format
238
+
239
+ ```json
240
+ {
241
+ "data": null,
242
+ "errors": [
243
+ {
244
+ "message": "User not found",
245
+ "path": ["user"],
246
+ "extensions": {
247
+ "code": "NOT_FOUND",
248
+ "statusCode": 404,
249
+ "resource": "User",
250
+ "id": "user-123"
251
+ }
252
+ }
253
+ ]
254
+ }
255
+ ```
256
+
257
+ ### Apollo Error Handler
258
+
259
+ ```typescript
260
+ // graphql/errorHandler.ts
261
+ import { ApolloServerPlugin } from '@apollo/server';
262
+
263
+ export const errorPlugin: ApolloServerPlugin = {
264
+ async requestDidStart() {
265
+ return {
266
+ async didEncounterErrors({ errors, request }) {
267
+ for (const error of errors) {
268
+ // Log errors
269
+ if (error.extensions?.code === 'INTERNAL_SERVER_ERROR') {
270
+ logger.error('GraphQL error', {
271
+ message: error.message,
272
+ path: error.path,
273
+ stack: error.originalError?.stack,
274
+ });
275
+ }
276
+ }
277
+ },
278
+ };
279
+ },
280
+ };
281
+
282
+ // Format error for response
283
+ export function formatError(error: GraphQLError) {
284
+ // Don't expose internal errors
285
+ if (error.extensions?.code === 'INTERNAL_SERVER_ERROR') {
286
+ return {
287
+ message: 'An unexpected error occurred',
288
+ extensions: {
289
+ code: 'INTERNAL_SERVER_ERROR',
290
+ },
291
+ };
292
+ }
293
+
294
+ return error;
295
+ }
296
+ ```
297
+
298
+ ---
299
+
300
+ ## Error Documentation
301
+
302
+ ### OpenAPI Specification
303
+
304
+ ```yaml
305
+ # openapi.yaml
306
+ components:
307
+ schemas:
308
+ Error:
309
+ type: object
310
+ required:
311
+ - error
312
+ properties:
313
+ error:
314
+ type: object
315
+ required:
316
+ - code
317
+ - message
318
+ properties:
319
+ code:
320
+ type: string
321
+ example: "VALIDATION_ERROR"
322
+ message:
323
+ type: string
324
+ example: "Invalid input data"
325
+ details:
326
+ type: array
327
+ items:
328
+ $ref: '#/components/schemas/ErrorDetail'
329
+ requestId:
330
+ type: string
331
+ example: "req-abc123"
332
+ timestamp:
333
+ type: string
334
+ format: date-time
335
+
336
+ ErrorDetail:
337
+ type: object
338
+ properties:
339
+ field:
340
+ type: string
341
+ message:
342
+ type: string
343
+ code:
344
+ type: string
345
+
346
+ responses:
347
+ BadRequest:
348
+ description: Invalid request
349
+ content:
350
+ application/json:
351
+ schema:
352
+ $ref: '#/components/schemas/Error'
353
+
354
+ Unauthorized:
355
+ description: Authentication required
356
+ content:
357
+ application/json:
358
+ schema:
359
+ $ref: '#/components/schemas/Error'
360
+
361
+ NotFound:
362
+ description: Resource not found
363
+ content:
364
+ application/json:
365
+ schema:
366
+ $ref: '#/components/schemas/Error'
367
+ ```
368
+
369
+ ---
370
+
371
+ ## Client Handling
372
+
373
+ ### TypeScript API Client
374
+
375
+ ```typescript
376
+ // client/errors.ts
377
+ export interface APIErrorResponse {
378
+ error: {
379
+ code: string;
380
+ message: string;
381
+ details?: Array<{
382
+ field: string;
383
+ message: string;
384
+ }>;
385
+ requestId: string;
386
+ };
387
+ }
388
+
389
+ export class APIError extends Error {
390
+ readonly code: string;
391
+ readonly statusCode: number;
392
+ readonly details?: APIErrorResponse['error']['details'];
393
+ readonly requestId: string;
394
+
395
+ constructor(response: APIErrorResponse, statusCode: number) {
396
+ super(response.error.message);
397
+ this.code = response.error.code;
398
+ this.statusCode = statusCode;
399
+ this.details = response.error.details;
400
+ this.requestId = response.error.requestId;
401
+ }
402
+
403
+ isValidationError(): boolean {
404
+ return this.code === 'VALIDATION_ERROR';
405
+ }
406
+
407
+ isAuthError(): boolean {
408
+ return this.statusCode === 401 || this.statusCode === 403;
409
+ }
410
+
411
+ getFieldError(field: string): string | undefined {
412
+ return this.details?.find(d => d.field === field)?.message;
413
+ }
414
+ }
415
+
416
+ // API client wrapper
417
+ async function apiRequest<T>(url: string, options?: RequestInit): Promise<T> {
418
+ const response = await fetch(url, options);
419
+
420
+ if (!response.ok) {
421
+ const errorData: APIErrorResponse = await response.json();
422
+ throw new APIError(errorData, response.status);
423
+ }
424
+
425
+ return response.json();
426
+ }
427
+ ```
428
+
429
+ ---
430
+
431
+ ## Commands
432
+
433
+ ```bash
434
+ # Generate error documentation
435
+ proagents errors generate-docs
436
+
437
+ # Validate error responses
438
+ proagents errors validate
439
+
440
+ # Test error handling
441
+ proagents errors test --endpoint /api/users
442
+ ```
443
+
444
+ ---
445
+
446
+ ## Best Practices
447
+
448
+ 1. **Consistent Format**: Use the same error structure everywhere
449
+ 2. **Meaningful Codes**: Error codes should be self-explanatory
450
+ 3. **Field-Level Details**: Include specific field errors for validation
451
+ 4. **Request ID**: Always include for debugging
452
+ 5. **Don't Expose Internals**: Hide stack traces in production
453
+ 6. **Document Errors**: Include errors in API documentation