proagents 1.6.17 → 1.6.19

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