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,516 @@
1
+ # Refactoring Patterns Prompt
2
+
3
+ Common refactoring techniques and patterns.
4
+
5
+ ---
6
+
7
+ ## Prompt Template
8
+
9
+ ```markdown
10
+ ## Refactoring Request
11
+
12
+ Refactor the following code using {{pattern}} pattern:
13
+
14
+ ```{{language}}
15
+ {{code}}
16
+ ```
17
+
18
+ ### Goals:
19
+ - [ ] Improve readability
20
+ - [ ] Reduce complexity
21
+ - [ ] Improve testability
22
+ - [ ] Remove duplication
23
+ - [ ] Better separation of concerns
24
+
25
+ ### Constraints:
26
+ - Must maintain backward compatibility
27
+ - Must not change public API (unless requested)
28
+ - Must include tests for refactored code
29
+ ```
30
+
31
+ ---
32
+
33
+ ## Extract Method
34
+
35
+ Transform long methods into smaller, focused functions.
36
+
37
+ ### Before
38
+
39
+ ```typescript
40
+ function processUserOrder(user, items) {
41
+ // Validate user
42
+ if (!user.email || !user.email.includes('@')) {
43
+ throw new Error('Invalid email');
44
+ }
45
+ if (!user.address || !user.address.street) {
46
+ throw new Error('Invalid address');
47
+ }
48
+
49
+ // Calculate totals
50
+ let subtotal = 0;
51
+ for (const item of items) {
52
+ subtotal += item.price * item.quantity;
53
+ }
54
+ const tax = subtotal * 0.1;
55
+ const shipping = subtotal > 100 ? 0 : 10;
56
+ const total = subtotal + tax + shipping;
57
+
58
+ // Create order
59
+ const order = {
60
+ userId: user.id,
61
+ items: items,
62
+ subtotal,
63
+ tax,
64
+ shipping,
65
+ total,
66
+ createdAt: new Date()
67
+ };
68
+
69
+ // Save and notify
70
+ database.save('orders', order);
71
+ emailService.send(user.email, 'Order Confirmation', `Total: $${total}`);
72
+
73
+ return order;
74
+ }
75
+ ```
76
+
77
+ ### After
78
+
79
+ ```typescript
80
+ function processUserOrder(user, items) {
81
+ validateUser(user);
82
+ const totals = calculateTotals(items);
83
+ const order = createOrder(user, items, totals);
84
+ saveAndNotify(order, user);
85
+ return order;
86
+ }
87
+
88
+ function validateUser(user) {
89
+ if (!user.email || !user.email.includes('@')) {
90
+ throw new Error('Invalid email');
91
+ }
92
+ if (!user.address || !user.address.street) {
93
+ throw new Error('Invalid address');
94
+ }
95
+ }
96
+
97
+ function calculateTotals(items) {
98
+ const subtotal = items.reduce((sum, item) =>
99
+ sum + item.price * item.quantity, 0
100
+ );
101
+ const tax = subtotal * 0.1;
102
+ const shipping = subtotal > 100 ? 0 : 10;
103
+ const total = subtotal + tax + shipping;
104
+
105
+ return { subtotal, tax, shipping, total };
106
+ }
107
+
108
+ function createOrder(user, items, totals) {
109
+ return {
110
+ userId: user.id,
111
+ items,
112
+ ...totals,
113
+ createdAt: new Date()
114
+ };
115
+ }
116
+
117
+ function saveAndNotify(order, user) {
118
+ database.save('orders', order);
119
+ emailService.send(user.email, 'Order Confirmation', `Total: $${order.total}`);
120
+ }
121
+ ```
122
+
123
+ ---
124
+
125
+ ## Replace Conditional with Polymorphism
126
+
127
+ Replace type-based conditionals with polymorphic behavior.
128
+
129
+ ### Before
130
+
131
+ ```typescript
132
+ function calculateShipping(order) {
133
+ switch (order.shippingType) {
134
+ case 'standard':
135
+ return order.weight * 0.5;
136
+ case 'express':
137
+ return order.weight * 0.5 + 10;
138
+ case 'overnight':
139
+ return order.weight * 0.5 + 25;
140
+ case 'international':
141
+ return order.weight * 2 + 50;
142
+ default:
143
+ throw new Error(`Unknown shipping type: ${order.shippingType}`);
144
+ }
145
+ }
146
+ ```
147
+
148
+ ### After
149
+
150
+ ```typescript
151
+ interface ShippingStrategy {
152
+ calculate(weight: number): number;
153
+ }
154
+
155
+ class StandardShipping implements ShippingStrategy {
156
+ calculate(weight: number): number {
157
+ return weight * 0.5;
158
+ }
159
+ }
160
+
161
+ class ExpressShipping implements ShippingStrategy {
162
+ calculate(weight: number): number {
163
+ return weight * 0.5 + 10;
164
+ }
165
+ }
166
+
167
+ class OvernightShipping implements ShippingStrategy {
168
+ calculate(weight: number): number {
169
+ return weight * 0.5 + 25;
170
+ }
171
+ }
172
+
173
+ class InternationalShipping implements ShippingStrategy {
174
+ calculate(weight: number): number {
175
+ return weight * 2 + 50;
176
+ }
177
+ }
178
+
179
+ const shippingStrategies: Record<string, ShippingStrategy> = {
180
+ standard: new StandardShipping(),
181
+ express: new ExpressShipping(),
182
+ overnight: new OvernightShipping(),
183
+ international: new InternationalShipping()
184
+ };
185
+
186
+ function calculateShipping(order): number {
187
+ const strategy = shippingStrategies[order.shippingType];
188
+ if (!strategy) {
189
+ throw new Error(`Unknown shipping type: ${order.shippingType}`);
190
+ }
191
+ return strategy.calculate(order.weight);
192
+ }
193
+ ```
194
+
195
+ ---
196
+
197
+ ## Extract Class
198
+
199
+ Split a large class into multiple focused classes.
200
+
201
+ ### Before
202
+
203
+ ```typescript
204
+ class User {
205
+ id: string;
206
+ email: string;
207
+ password: string;
208
+
209
+ // Authentication methods
210
+ login(password: string): boolean { /* ... */ }
211
+ logout(): void { /* ... */ }
212
+ resetPassword(newPassword: string): void { /* ... */ }
213
+
214
+ // Profile methods
215
+ updateProfile(data: ProfileData): void { /* ... */ }
216
+ getFullName(): string { /* ... */ }
217
+ getAvatar(): string { /* ... */ }
218
+
219
+ // Notification methods
220
+ sendEmail(subject: string, body: string): void { /* ... */ }
221
+ sendSMS(message: string): void { /* ... */ }
222
+ getNotificationPreferences(): Preferences { /* ... */ }
223
+
224
+ // Subscription methods
225
+ subscribe(plan: string): void { /* ... */ }
226
+ cancelSubscription(): void { /* ... */ }
227
+ getBillingHistory(): Bill[] { /* ... */ }
228
+ }
229
+ ```
230
+
231
+ ### After
232
+
233
+ ```typescript
234
+ class User {
235
+ id: string;
236
+ email: string;
237
+
238
+ profile: UserProfile;
239
+ auth: UserAuth;
240
+ notifications: UserNotifications;
241
+ subscription: UserSubscription;
242
+
243
+ constructor(data: UserData) {
244
+ this.id = data.id;
245
+ this.email = data.email;
246
+ this.profile = new UserProfile(data);
247
+ this.auth = new UserAuth(data);
248
+ this.notifications = new UserNotifications(this);
249
+ this.subscription = new UserSubscription(this);
250
+ }
251
+ }
252
+
253
+ class UserProfile {
254
+ private firstName: string;
255
+ private lastName: string;
256
+ private avatar: string;
257
+
258
+ updateProfile(data: ProfileData): void { /* ... */ }
259
+ getFullName(): string { return `${this.firstName} ${this.lastName}`; }
260
+ getAvatar(): string { return this.avatar; }
261
+ }
262
+
263
+ class UserAuth {
264
+ private passwordHash: string;
265
+
266
+ login(password: string): boolean { /* ... */ }
267
+ logout(): void { /* ... */ }
268
+ resetPassword(newPassword: string): void { /* ... */ }
269
+ }
270
+
271
+ class UserNotifications {
272
+ private user: User;
273
+
274
+ sendEmail(subject: string, body: string): void { /* ... */ }
275
+ sendSMS(message: string): void { /* ... */ }
276
+ getPreferences(): Preferences { /* ... */ }
277
+ }
278
+
279
+ class UserSubscription {
280
+ private user: User;
281
+
282
+ subscribe(plan: string): void { /* ... */ }
283
+ cancel(): void { /* ... */ }
284
+ getBillingHistory(): Bill[] { /* ... */ }
285
+ }
286
+ ```
287
+
288
+ ---
289
+
290
+ ## Replace Magic Numbers with Constants
291
+
292
+ Replace literal values with named constants.
293
+
294
+ ### Before
295
+
296
+ ```typescript
297
+ function calculateDiscount(price, userType) {
298
+ if (userType === 1) {
299
+ return price * 0.9; // 10% off
300
+ } else if (userType === 2) {
301
+ return price * 0.85; // 15% off
302
+ } else if (userType === 3) {
303
+ return price * 0.8; // 20% off
304
+ }
305
+ return price;
306
+ }
307
+
308
+ function isEligibleForFreeShipping(total) {
309
+ return total >= 100;
310
+ }
311
+ ```
312
+
313
+ ### After
314
+
315
+ ```typescript
316
+ const UserType = {
317
+ REGULAR: 1,
318
+ PREMIUM: 2,
319
+ VIP: 3
320
+ } as const;
321
+
322
+ const Discount = {
323
+ [UserType.REGULAR]: 0.10,
324
+ [UserType.PREMIUM]: 0.15,
325
+ [UserType.VIP]: 0.20
326
+ } as const;
327
+
328
+ const FREE_SHIPPING_THRESHOLD = 100;
329
+
330
+ function calculateDiscount(price: number, userType: number): number {
331
+ const discountRate = Discount[userType] ?? 0;
332
+ return price * (1 - discountRate);
333
+ }
334
+
335
+ function isEligibleForFreeShipping(total: number): boolean {
336
+ return total >= FREE_SHIPPING_THRESHOLD;
337
+ }
338
+ ```
339
+
340
+ ---
341
+
342
+ ## Introduce Parameter Object
343
+
344
+ Replace multiple parameters with a single object.
345
+
346
+ ### Before
347
+
348
+ ```typescript
349
+ function createUser(
350
+ firstName: string,
351
+ lastName: string,
352
+ email: string,
353
+ phone: string,
354
+ street: string,
355
+ city: string,
356
+ state: string,
357
+ zipCode: string,
358
+ country: string
359
+ ) {
360
+ // ...
361
+ }
362
+
363
+ createUser('John', 'Doe', 'john@example.com', '555-1234',
364
+ '123 Main St', 'Anytown', 'CA', '12345', 'USA');
365
+ ```
366
+
367
+ ### After
368
+
369
+ ```typescript
370
+ interface CreateUserParams {
371
+ name: {
372
+ first: string;
373
+ last: string;
374
+ };
375
+ email: string;
376
+ phone: string;
377
+ address: {
378
+ street: string;
379
+ city: string;
380
+ state: string;
381
+ zipCode: string;
382
+ country: string;
383
+ };
384
+ }
385
+
386
+ function createUser(params: CreateUserParams) {
387
+ // ...
388
+ }
389
+
390
+ createUser({
391
+ name: { first: 'John', last: 'Doe' },
392
+ email: 'john@example.com',
393
+ phone: '555-1234',
394
+ address: {
395
+ street: '123 Main St',
396
+ city: 'Anytown',
397
+ state: 'CA',
398
+ zipCode: '12345',
399
+ country: 'USA'
400
+ }
401
+ });
402
+ ```
403
+
404
+ ---
405
+
406
+ ## Replace Nested Conditionals with Guard Clauses
407
+
408
+ Flatten deeply nested conditionals.
409
+
410
+ ### Before
411
+
412
+ ```typescript
413
+ function processPayment(order, payment) {
414
+ if (order) {
415
+ if (order.status === 'pending') {
416
+ if (payment) {
417
+ if (payment.amount >= order.total) {
418
+ if (validatePaymentMethod(payment.method)) {
419
+ // Actually process payment
420
+ return processTransaction(order, payment);
421
+ } else {
422
+ throw new Error('Invalid payment method');
423
+ }
424
+ } else {
425
+ throw new Error('Insufficient payment amount');
426
+ }
427
+ } else {
428
+ throw new Error('No payment provided');
429
+ }
430
+ } else {
431
+ throw new Error('Order is not pending');
432
+ }
433
+ } else {
434
+ throw new Error('No order provided');
435
+ }
436
+ }
437
+ ```
438
+
439
+ ### After
440
+
441
+ ```typescript
442
+ function processPayment(order, payment) {
443
+ // Guard clauses - early returns for invalid cases
444
+ if (!order) {
445
+ throw new Error('No order provided');
446
+ }
447
+
448
+ if (order.status !== 'pending') {
449
+ throw new Error('Order is not pending');
450
+ }
451
+
452
+ if (!payment) {
453
+ throw new Error('No payment provided');
454
+ }
455
+
456
+ if (payment.amount < order.total) {
457
+ throw new Error('Insufficient payment amount');
458
+ }
459
+
460
+ if (!validatePaymentMethod(payment.method)) {
461
+ throw new Error('Invalid payment method');
462
+ }
463
+
464
+ // Happy path - main logic
465
+ return processTransaction(order, payment);
466
+ }
467
+ ```
468
+
469
+ ---
470
+
471
+ ## Refactoring Commands
472
+
473
+ ```bash
474
+ # Apply specific refactoring pattern
475
+ /refactor apply extract-method --function processOrder
476
+
477
+ # Apply polymorphism
478
+ /refactor apply polymorphism --switch-statement line:45
479
+
480
+ # Extract class
481
+ /refactor apply extract-class --class User --extract Profile,Auth
482
+
483
+ # Replace magic numbers
484
+ /refactor apply constants --file config.ts
485
+
486
+ # Introduce parameter object
487
+ /refactor apply param-object --function createUser
488
+
489
+ # Flatten conditionals
490
+ /refactor apply guard-clauses --function processPayment
491
+ ```
492
+
493
+ ---
494
+
495
+ ## Refactoring Checklist
496
+
497
+ ```markdown
498
+ ### Before Refactoring
499
+ - [ ] Tests pass
500
+ - [ ] Code coverage adequate
501
+ - [ ] Behavior documented
502
+ - [ ] Performance baseline captured
503
+
504
+ ### During Refactoring
505
+ - [ ] Small, incremental changes
506
+ - [ ] Tests still pass after each change
507
+ - [ ] No behavior changes (unless intended)
508
+ - [ ] Git commits for each refactoring step
509
+
510
+ ### After Refactoring
511
+ - [ ] All tests pass
512
+ - [ ] Coverage maintained or improved
513
+ - [ ] No performance regression
514
+ - [ ] Code reviewed
515
+ - [ ] Documentation updated
516
+ ```
@@ -0,0 +1,197 @@
1
+ # Security Audit Prompts
2
+
3
+ AI-assisted security review and vulnerability detection.
4
+
5
+ ---
6
+
7
+ ## Overview
8
+
9
+ These prompts help identify and fix security vulnerabilities in your code. ProAgents integrates security checks throughout the development workflow, with special focus on OWASP Top 10 vulnerabilities.
10
+
11
+ ---
12
+
13
+ ## Available Prompts
14
+
15
+ | Prompt | Use Case | When to Use |
16
+ |--------|----------|-------------|
17
+ | [vulnerability-scan.md](./vulnerability-scan.md) | Comprehensive vulnerability scan | During reviews, before deployment |
18
+ | [code-review.md](./code-review.md) | Security-focused code review | During Phase 6.5 |
19
+ | [owasp-check.md](./owasp-check.md) | OWASP Top 10 compliance | Regular audits |
20
+ | [auth-review.md](./auth-review.md) | Authentication flow review | Auth features |
21
+ | [data-handling.md](./data-handling.md) | Data security review | Data processing code |
22
+
23
+ ---
24
+
25
+ ## Quick Commands
26
+
27
+ ```bash
28
+ # Full security audit
29
+ /security audit <file_or_directory>
30
+
31
+ # OWASP Top 10 check
32
+ /security owasp <code>
33
+
34
+ # Find hardcoded secrets
35
+ /security secrets <path>
36
+
37
+ # Check dependency vulnerabilities
38
+ /security deps
39
+
40
+ # Review authentication code
41
+ /security auth <file>
42
+
43
+ # Check for injection vulnerabilities
44
+ /security injection <code>
45
+ ```
46
+
47
+ ---
48
+
49
+ ## OWASP Top 10 (2021)
50
+
51
+ | # | Category | Risk Level | Common Examples |
52
+ |---|----------|------------|-----------------|
53
+ | A01 | Broken Access Control | Critical | IDOR, privilege escalation |
54
+ | A02 | Cryptographic Failures | Critical | Weak encryption, exposed data |
55
+ | A03 | Injection | Critical | SQL, XSS, command injection |
56
+ | A04 | Insecure Design | High | Missing threat modeling |
57
+ | A05 | Security Misconfiguration | High | Default credentials, verbose errors |
58
+ | A06 | Vulnerable Components | High | Outdated dependencies |
59
+ | A07 | Authentication Failures | High | Weak passwords, broken sessions |
60
+ | A08 | Data Integrity Failures | Medium | Insecure deserialization |
61
+ | A09 | Logging Failures | Medium | Missing audit logs |
62
+ | A10 | SSRF | Medium | User-controlled URLs |
63
+
64
+ ---
65
+
66
+ ## Integration with Workflow
67
+
68
+ ### During Analysis (Phase 1)
69
+ - Identify existing security patterns
70
+ - Note potential vulnerability areas
71
+ - Assess authentication/authorization
72
+
73
+ ### During Implementation (Phase 5)
74
+ - Real-time security suggestions
75
+ - Injection prevention
76
+ - Secure coding practices
77
+
78
+ ### During Testing (Phase 6)
79
+ - Security test generation
80
+ - Penetration testing guidance
81
+ - Vulnerability scanning
82
+
83
+ ### Before Deployment (Phase 8)
84
+ - Final security audit
85
+ - Dependency vulnerability check
86
+ - Configuration review
87
+
88
+ ---
89
+
90
+ ## Security Severity Levels
91
+
92
+ | Severity | Response Time | Examples |
93
+ |----------|--------------|----------|
94
+ | **Critical** | Immediate | RCE, authentication bypass, data breach |
95
+ | **High** | Within 24h | SQL injection, XSS, CSRF |
96
+ | **Medium** | Within 1 week | Information disclosure, missing headers |
97
+ | **Low** | Next sprint | Minor misconfigurations |
98
+
99
+ ---
100
+
101
+ ## Common Vulnerabilities
102
+
103
+ ### Injection Attacks
104
+
105
+ ```typescript
106
+ // ❌ Vulnerable
107
+ const query = `SELECT * FROM users WHERE id = ${userId}`;
108
+
109
+ // ✅ Secure
110
+ const query = 'SELECT * FROM users WHERE id = $1';
111
+ await db.query(query, [userId]);
112
+ ```
113
+
114
+ ### XSS Prevention
115
+
116
+ ```tsx
117
+ // ❌ Vulnerable
118
+ <div dangerouslySetInnerHTML={{ __html: userInput }} />
119
+
120
+ // ✅ Secure
121
+ import DOMPurify from 'dompurify';
122
+ <div dangerouslySetInnerHTML={{ __html: DOMPurify.sanitize(userInput) }} />
123
+ ```
124
+
125
+ ### Authentication
126
+
127
+ ```typescript
128
+ // ❌ Vulnerable
129
+ const token = jwt.sign(payload, 'hardcoded-secret');
130
+
131
+ // ✅ Secure
132
+ const token = jwt.sign(payload, process.env.JWT_SECRET, {
133
+ expiresIn: '1h',
134
+ algorithm: 'RS256'
135
+ });
136
+ ```
137
+
138
+ ---
139
+
140
+ ## Security Headers
141
+
142
+ Essential headers for web applications:
143
+
144
+ ```typescript
145
+ const securityHeaders = {
146
+ 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains',
147
+ 'X-Content-Type-Options': 'nosniff',
148
+ 'X-Frame-Options': 'DENY',
149
+ 'X-XSS-Protection': '1; mode=block',
150
+ 'Content-Security-Policy': "default-src 'self'",
151
+ 'Referrer-Policy': 'strict-origin-when-cross-origin'
152
+ };
153
+ ```
154
+
155
+ ---
156
+
157
+ ## Automated Security Tools
158
+
159
+ ### Static Analysis (SAST)
160
+ - **SonarQube**: Code quality and security
161
+ - **Semgrep**: Pattern-based scanning
162
+ - **ESLint security plugins**: JavaScript/TypeScript
163
+
164
+ ### Dependency Scanning
165
+ - **npm audit**: Built-in npm scanner
166
+ - **Snyk**: Dependency vulnerabilities
167
+ - **Dependabot**: Automated updates
168
+
169
+ ### Dynamic Analysis (DAST)
170
+ - **OWASP ZAP**: Web app scanner
171
+ - **Burp Suite**: Penetration testing
172
+ - **Nikto**: Web server scanner
173
+
174
+ ---
175
+
176
+ ## Security Checklist
177
+
178
+ ### Before Deployment
179
+ - [ ] No hardcoded secrets in code
180
+ - [ ] Dependencies up to date
181
+ - [ ] Input validation on all user inputs
182
+ - [ ] Output encoding/escaping
183
+ - [ ] Authentication properly implemented
184
+ - [ ] Authorization checks in place
185
+ - [ ] Security headers configured
186
+ - [ ] HTTPS enforced
187
+ - [ ] Sensitive data encrypted
188
+ - [ ] Logging configured (no sensitive data)
189
+
190
+ ---
191
+
192
+ ## Resources
193
+
194
+ - [OWASP Top 10](https://owasp.org/Top10/)
195
+ - [OWASP Cheat Sheet Series](https://cheatsheetseries.owasp.org/)
196
+ - [CWE Top 25](https://cwe.mitre.org/top25/)
197
+ - [Node.js Security Best Practices](https://nodejs.org/en/docs/guides/security/)