proagents 1.6.17 → 1.6.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +169 -0
- package/COMMANDS.md +595 -0
- package/README.md +13 -23
- package/package.json +2 -7
- package/.proagents/ai-models/README.md +0 -141
- package/.proagents/ai-models/cost-management.md +0 -362
- package/.proagents/ai-models/fallbacks.md +0 -342
- package/.proagents/ai-models/model-config.md +0 -318
- package/.proagents/ai-models/task-routing.md +0 -503
- package/.proagents/ai-training/README.md +0 -155
- package/.proagents/ai-training/continuous-learning.md +0 -413
- package/.proagents/ai-training/domain-knowledge.md +0 -378
- package/.proagents/ai-training/pattern-learning.md +0 -455
- package/.proagents/ai-training/training-data.md +0 -337
- package/.proagents/ai-training/user-preferences.md +0 -346
- package/.proagents/approval-workflows/README.md +0 -146
- package/.proagents/approval-workflows/approval-config.md +0 -332
- package/.proagents/approval-workflows/approval-stages.md +0 -503
- package/.proagents/approval-workflows/emergency-bypass.md +0 -351
- package/.proagents/approval-workflows/examples.md +0 -859
- package/.proagents/approval-workflows/notifications.md +0 -320
- package/.proagents/compliance/README.md +0 -206
- package/.proagents/compliance/access-control.md +0 -310
- package/.proagents/compliance/audit-logging.md +0 -444
- package/.proagents/compliance/compliance-frameworks.md +0 -429
- package/.proagents/compliance/reports.md +0 -491
- package/.proagents/compliance/retention-policies.md +0 -454
- package/.proagents/config-versioning/README.md +0 -120
- package/.proagents/config-versioning/changelog.md +0 -300
- package/.proagents/config-versioning/rollback.md +0 -283
- package/.proagents/config-versioning/versioning.md +0 -330
- package/.proagents/contract-testing/README.md +0 -223
- package/.proagents/contract-testing/contract-testing.md +0 -614
- package/.proagents/contract-testing/pact-integration.md +0 -507
- package/.proagents/contract-testing/schema-validation.md +0 -565
- package/.proagents/dependency-management/README.md +0 -140
- package/.proagents/dependency-management/automation.md +0 -363
- package/.proagents/dependency-management/compatibility.md +0 -319
- package/.proagents/dependency-management/security-scanning.md +0 -413
- package/.proagents/dependency-management/update-policies.md +0 -374
- package/.proagents/disaster-recovery/README.md +0 -247
- package/.proagents/disaster-recovery/automation.md +0 -366
- package/.proagents/disaster-recovery/backup-recovery.md +0 -571
- package/.proagents/disaster-recovery/incident-response.md +0 -565
- package/.proagents/disaster-recovery/rollback-procedures.md +0 -499
- package/.proagents/disaster-recovery/runbooks.md +0 -603
- package/.proagents/disaster-recovery/scenarios.md +0 -892
- package/.proagents/disaster-recovery/testing.md +0 -438
- package/.proagents/environments/README.md +0 -244
- package/.proagents/environments/configuration.md +0 -437
- package/.proagents/environments/promotion.md +0 -434
- package/.proagents/environments/setup.md +0 -420
- package/.proagents/examples/README.md +0 -55
- package/.proagents/examples/backend-nodejs/README.md +0 -188
- package/.proagents/examples/backend-nodejs/complete-conversation.md +0 -601
- package/.proagents/examples/backend-nodejs/proagents.config.yaml +0 -415
- package/.proagents/examples/backend-nodejs/workflow-example.md +0 -909
- package/.proagents/examples/fullstack-nextjs/README.md +0 -155
- package/.proagents/examples/fullstack-nextjs/complete-conversation.md +0 -604
- package/.proagents/examples/fullstack-nextjs/proagents.config.yaml +0 -287
- package/.proagents/examples/fullstack-nextjs/workflow-example.md +0 -553
- package/.proagents/examples/mobile-react-native/README.md +0 -171
- package/.proagents/examples/mobile-react-native/complete-conversation.md +0 -825
- package/.proagents/examples/mobile-react-native/proagents.config.yaml +0 -330
- package/.proagents/examples/mobile-react-native/workflow-example.md +0 -723
- package/.proagents/examples/web-frontend-react/README.md +0 -125
- package/.proagents/examples/web-frontend-react/complete-conversation.md +0 -556
- package/.proagents/examples/web-frontend-react/proagents.config.yaml +0 -183
- package/.proagents/examples/web-frontend-react/workflow-example.md +0 -603
- package/.proagents/existing-projects/README.md +0 -65
- package/.proagents/existing-projects/challenges.md +0 -861
- package/.proagents/existing-projects/coexistence-mode.md +0 -483
- package/.proagents/existing-projects/compatibility-assessment.md +0 -541
- package/.proagents/existing-projects/gradual-adoption.md +0 -515
- package/.proagents/existing-projects/migration-strategies.md +0 -788
- package/.proagents/existing-projects/pattern-reconciliation.md +0 -489
- package/.proagents/existing-projects/team-onboarding.md +0 -617
- package/.proagents/existing-projects/technical-debt-handling.md +0 -644
- package/.proagents/feature-flags/README.md +0 -263
- package/.proagents/feature-flags/ab-testing.md +0 -413
- package/.proagents/feature-flags/configuration.md +0 -420
- package/.proagents/feature-flags/kill-switches.md +0 -444
- package/.proagents/feature-flags/rollout-strategies.md +0 -392
- package/.proagents/history.log +0 -12
- package/.proagents/i18n/README.md +0 -133
- package/.proagents/i18n/extraction.md +0 -433
- package/.proagents/i18n/tms-integration.md +0 -332
- package/.proagents/i18n/translation-workflow.md +0 -413
- package/.proagents/i18n/validation.md +0 -355
- package/.proagents/logging/README.md +0 -276
- package/.proagents/logging/aggregation.md +0 -475
- package/.proagents/logging/log-levels.md +0 -376
- package/.proagents/logging/sensitive-data.md +0 -423
- package/.proagents/logging/structured-logging.md +0 -406
- package/.proagents/metrics/README.md +0 -69
- package/.proagents/metrics/code-quality-kpis.md +0 -461
- package/.proagents/metrics/deployment-metrics.md +0 -517
- package/.proagents/metrics/developer-productivity.md +0 -368
- package/.proagents/metrics/learning-effectiveness.md +0 -478
- package/.proagents/migrations/README.md +0 -77
- package/.proagents/migrations/from-claude-projects.md +0 -313
- package/.proagents/migrations/from-cursor-rules.md +0 -345
- package/.proagents/migrations/from-custom-workflows.md +0 -410
- package/.proagents/monitoring/README.md +0 -308
- package/.proagents/monitoring/alerting.md +0 -449
- package/.proagents/monitoring/dashboards.md +0 -454
- package/.proagents/monitoring/health-checks.md +0 -436
- package/.proagents/monitoring/metrics.md +0 -434
- package/.proagents/multi-project/README.md +0 -170
- package/.proagents/multi-project/coordinated-deploy.md +0 -510
- package/.proagents/multi-project/cross-project-deps.md +0 -395
- package/.proagents/multi-project/unified-changelog.md +0 -477
- package/.proagents/multi-project/walkthroughs/monorepo-setup.md +0 -787
- package/.proagents/multi-project/workspace-config.md +0 -408
- package/.proagents/notifications/README.md +0 -151
- package/.proagents/notifications/channels.md +0 -457
- package/.proagents/notifications/preferences.md +0 -415
- package/.proagents/notifications/routing.md +0 -449
- package/.proagents/notifications/scheduling.md +0 -425
- package/.proagents/notifications/templates.md +0 -446
- package/.proagents/offline-mode/README.md +0 -145
- package/.proagents/offline-mode/caching.md +0 -344
- package/.proagents/offline-mode/offline-operations.md +0 -312
- package/.proagents/offline-mode/queue-specifications.md +0 -679
- package/.proagents/offline-mode/sync.md +0 -475
- package/.proagents/parallel-features/README.md +0 -85
- package/.proagents/parallel-features/conflict-detection.md +0 -226
- package/.proagents/parallel-features/dependency-management.md +0 -392
- package/.proagents/parallel-features/merge-coordination.md +0 -506
- package/.proagents/parallel-features/tracking-system.md +0 -416
- package/.proagents/performance/README.md +0 -59
- package/.proagents/performance/bundle-analysis.md +0 -375
- package/.proagents/performance/load-testing.md +0 -563
- package/.proagents/performance/runtime-metrics.md +0 -489
- package/.proagents/performance/web-vitals.md +0 -425
- package/.proagents/plugins/README.md +0 -139
- package/.proagents/plugins/creating-plugins.md +0 -504
- package/.proagents/plugins/plugin-api.md +0 -467
- package/.proagents/plugins/plugin-registry.md +0 -276
- package/.proagents/reporting/README.md +0 -158
- package/.proagents/reporting/dashboards.md +0 -366
- package/.proagents/reporting/exports.md +0 -524
- package/.proagents/reporting/quality-metrics.md +0 -385
- package/.proagents/reporting/templates/README.md +0 -56
- package/.proagents/reporting/templates/dashboard-config.json +0 -187
- package/.proagents/reporting/templates/metrics-queries.md +0 -427
- package/.proagents/reporting/templates/react-dashboard.tsx +0 -544
- package/.proagents/reporting/templates/widgets.md +0 -451
- package/.proagents/reporting/velocity-metrics.md +0 -340
- package/.proagents/reverse-engineering/README.md +0 -151
- package/.proagents/reverse-engineering/architecture-extraction.md +0 -325
- package/.proagents/reverse-engineering/code-analysis.md +0 -377
- package/.proagents/reverse-engineering/dependency-mapping.md +0 -567
- package/.proagents/reverse-engineering/diagram-generation.md +0 -586
- package/.proagents/reverse-engineering/documentation-generation.md +0 -468
- package/.proagents/reverse-engineering/pattern-detection.md +0 -569
- package/.proagents/reverse-engineering/quality-assessment.md +0 -733
- package/.proagents/secrets/README.md +0 -278
- package/.proagents/secrets/access-control.md +0 -443
- package/.proagents/secrets/rotation.md +0 -403
- package/.proagents/secrets/scanning.md +0 -487
- package/.proagents/secrets/storage.md +0 -394
- package/.proagents/webhooks/README.md +0 -126
- package/.proagents/webhooks/endpoints.md +0 -298
- package/.proagents/webhooks/events.md +0 -316
- package/.proagents/webhooks/payloads.md +0 -325
- package/.proagents/webhooks/reliability.md +0 -363
- package/.proagents/webhooks/security.md +0 -380
|
@@ -1,446 +0,0 @@
|
|
|
1
|
-
# Notification Templates
|
|
2
|
-
|
|
3
|
-
Customize notification message formats.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Template System
|
|
8
|
-
|
|
9
|
-
### Template Location
|
|
10
|
-
|
|
11
|
-
```
|
|
12
|
-
/.proagents/
|
|
13
|
-
├── notifications/
|
|
14
|
-
│ └── templates/
|
|
15
|
-
│ ├── slack/
|
|
16
|
-
│ │ ├── feature-completed.json
|
|
17
|
-
│ │ ├── deploy-failed.json
|
|
18
|
-
│ │ └── approval-needed.json
|
|
19
|
-
│ ├── email/
|
|
20
|
-
│ │ ├── feature-completed.html
|
|
21
|
-
│ │ └── weekly-digest.html
|
|
22
|
-
│ └── default/
|
|
23
|
-
│ └── generic.md
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
### Template Variables
|
|
27
|
-
|
|
28
|
-
All templates have access to:
|
|
29
|
-
|
|
30
|
-
```yaml
|
|
31
|
-
# Event data
|
|
32
|
-
event:
|
|
33
|
-
type: "feature.completed"
|
|
34
|
-
timestamp: "2024-01-15T14:30:00Z"
|
|
35
|
-
|
|
36
|
-
# Feature data
|
|
37
|
-
feature:
|
|
38
|
-
id: "feat-123"
|
|
39
|
-
name: "User Authentication"
|
|
40
|
-
branch: "feature/user-auth"
|
|
41
|
-
duration: 240
|
|
42
|
-
|
|
43
|
-
# Project data
|
|
44
|
-
project:
|
|
45
|
-
name: "my-project"
|
|
46
|
-
environment: "production"
|
|
47
|
-
|
|
48
|
-
# User data
|
|
49
|
-
user:
|
|
50
|
-
name: "John Doe"
|
|
51
|
-
email: "john@company.com"
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
## Slack Templates
|
|
57
|
-
|
|
58
|
-
### Block Template
|
|
59
|
-
|
|
60
|
-
```json
|
|
61
|
-
{
|
|
62
|
-
"blocks": [
|
|
63
|
-
{
|
|
64
|
-
"type": "header",
|
|
65
|
-
"text": {
|
|
66
|
-
"type": "plain_text",
|
|
67
|
-
"text": "{{title}}"
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
"type": "section",
|
|
72
|
-
"text": {
|
|
73
|
-
"type": "mrkdwn",
|
|
74
|
-
"text": "{{message}}"
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
{{#if fields}}
|
|
78
|
-
{
|
|
79
|
-
"type": "section",
|
|
80
|
-
"fields": [
|
|
81
|
-
{{#each fields}}
|
|
82
|
-
{
|
|
83
|
-
"type": "mrkdwn",
|
|
84
|
-
"text": "*{{this.label}}:*\n{{this.value}}"
|
|
85
|
-
}{{#unless @last}},{{/unless}}
|
|
86
|
-
{{/each}}
|
|
87
|
-
]
|
|
88
|
-
},
|
|
89
|
-
{{/if}}
|
|
90
|
-
{{#if actions}}
|
|
91
|
-
{
|
|
92
|
-
"type": "actions",
|
|
93
|
-
"elements": [
|
|
94
|
-
{{#each actions}}
|
|
95
|
-
{
|
|
96
|
-
"type": "button",
|
|
97
|
-
"text": {
|
|
98
|
-
"type": "plain_text",
|
|
99
|
-
"text": "{{this.label}}"
|
|
100
|
-
},
|
|
101
|
-
"url": "{{this.url}}"
|
|
102
|
-
}{{#unless @last}},{{/unless}}
|
|
103
|
-
{{/each}}
|
|
104
|
-
]
|
|
105
|
-
}
|
|
106
|
-
{{/if}}
|
|
107
|
-
]
|
|
108
|
-
}
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
### Feature Completed Template
|
|
112
|
-
|
|
113
|
-
```json
|
|
114
|
-
{
|
|
115
|
-
"blocks": [
|
|
116
|
-
{
|
|
117
|
-
"type": "header",
|
|
118
|
-
"text": {
|
|
119
|
-
"type": "plain_text",
|
|
120
|
-
"text": "Feature Completed"
|
|
121
|
-
}
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
"type": "section",
|
|
125
|
-
"text": {
|
|
126
|
-
"type": "mrkdwn",
|
|
127
|
-
"text": "Feature *{{feature.name}}* has been completed!"
|
|
128
|
-
}
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
"type": "section",
|
|
132
|
-
"fields": [
|
|
133
|
-
{
|
|
134
|
-
"type": "mrkdwn",
|
|
135
|
-
"text": "*Branch:*\n`{{feature.branch}}`"
|
|
136
|
-
},
|
|
137
|
-
{
|
|
138
|
-
"type": "mrkdwn",
|
|
139
|
-
"text": "*Duration:*\n{{formatDuration feature.duration}}"
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
"type": "mrkdwn",
|
|
143
|
-
"text": "*Files Changed:*\n{{feature.files_changed}}"
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
"type": "mrkdwn",
|
|
147
|
-
"text": "*Test Coverage:*\n{{feature.coverage}}%"
|
|
148
|
-
}
|
|
149
|
-
]
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
"type": "actions",
|
|
153
|
-
"elements": [
|
|
154
|
-
{
|
|
155
|
-
"type": "button",
|
|
156
|
-
"text": {"type": "plain_text", "text": "View PR"},
|
|
157
|
-
"url": "{{feature.pr_url}}",
|
|
158
|
-
"style": "primary"
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
"type": "button",
|
|
162
|
-
"text": {"type": "plain_text", "text": "View Docs"},
|
|
163
|
-
"url": "{{feature.docs_url}}"
|
|
164
|
-
}
|
|
165
|
-
]
|
|
166
|
-
}
|
|
167
|
-
]
|
|
168
|
-
}
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
---
|
|
172
|
-
|
|
173
|
-
## Email Templates
|
|
174
|
-
|
|
175
|
-
### HTML Template
|
|
176
|
-
|
|
177
|
-
```html
|
|
178
|
-
<!DOCTYPE html>
|
|
179
|
-
<html>
|
|
180
|
-
<head>
|
|
181
|
-
<style>
|
|
182
|
-
.container { max-width: 600px; margin: 0 auto; font-family: Arial, sans-serif; }
|
|
183
|
-
.header { background: #2563eb; color: white; padding: 20px; }
|
|
184
|
-
.content { padding: 20px; }
|
|
185
|
-
.footer { background: #f3f4f6; padding: 10px; text-align: center; }
|
|
186
|
-
.button { background: #2563eb; color: white; padding: 10px 20px; text-decoration: none; border-radius: 4px; }
|
|
187
|
-
.field { margin-bottom: 10px; }
|
|
188
|
-
.label { font-weight: bold; color: #6b7280; }
|
|
189
|
-
</style>
|
|
190
|
-
</head>
|
|
191
|
-
<body>
|
|
192
|
-
<div class="container">
|
|
193
|
-
<div class="header">
|
|
194
|
-
<h1>{{title}}</h1>
|
|
195
|
-
</div>
|
|
196
|
-
<div class="content">
|
|
197
|
-
<p>{{message}}</p>
|
|
198
|
-
|
|
199
|
-
{{#if fields}}
|
|
200
|
-
<div class="fields">
|
|
201
|
-
{{#each fields}}
|
|
202
|
-
<div class="field">
|
|
203
|
-
<span class="label">{{this.label}}:</span>
|
|
204
|
-
<span>{{this.value}}</span>
|
|
205
|
-
</div>
|
|
206
|
-
{{/each}}
|
|
207
|
-
</div>
|
|
208
|
-
{{/if}}
|
|
209
|
-
|
|
210
|
-
{{#if actions}}
|
|
211
|
-
<div class="actions" style="margin-top: 20px;">
|
|
212
|
-
{{#each actions}}
|
|
213
|
-
<a href="{{this.url}}" class="button">{{this.label}}</a>
|
|
214
|
-
{{/each}}
|
|
215
|
-
</div>
|
|
216
|
-
{{/if}}
|
|
217
|
-
</div>
|
|
218
|
-
<div class="footer">
|
|
219
|
-
<p>Sent by ProAgents | <a href="{{unsubscribe_url}}">Unsubscribe</a></p>
|
|
220
|
-
</div>
|
|
221
|
-
</div>
|
|
222
|
-
</body>
|
|
223
|
-
</html>
|
|
224
|
-
```
|
|
225
|
-
|
|
226
|
-
### Weekly Digest Template
|
|
227
|
-
|
|
228
|
-
```html
|
|
229
|
-
<!DOCTYPE html>
|
|
230
|
-
<html>
|
|
231
|
-
<head>
|
|
232
|
-
<style>
|
|
233
|
-
/* styles */
|
|
234
|
-
</style>
|
|
235
|
-
</head>
|
|
236
|
-
<body>
|
|
237
|
-
<div class="container">
|
|
238
|
-
<div class="header">
|
|
239
|
-
<h1>Weekly Development Digest</h1>
|
|
240
|
-
<p>{{formatDate digest.start_date}} - {{formatDate digest.end_date}}</p>
|
|
241
|
-
</div>
|
|
242
|
-
|
|
243
|
-
<div class="content">
|
|
244
|
-
<h2>Summary</h2>
|
|
245
|
-
<div class="stats">
|
|
246
|
-
<div class="stat">
|
|
247
|
-
<span class="number">{{digest.features_completed}}</span>
|
|
248
|
-
<span class="label">Features Completed</span>
|
|
249
|
-
</div>
|
|
250
|
-
<div class="stat">
|
|
251
|
-
<span class="number">{{digest.bugs_fixed}}</span>
|
|
252
|
-
<span class="label">Bugs Fixed</span>
|
|
253
|
-
</div>
|
|
254
|
-
<div class="stat">
|
|
255
|
-
<span class="number">{{digest.deployments}}</span>
|
|
256
|
-
<span class="label">Deployments</span>
|
|
257
|
-
</div>
|
|
258
|
-
</div>
|
|
259
|
-
|
|
260
|
-
{{#if digest.features}}
|
|
261
|
-
<h2>Completed Features</h2>
|
|
262
|
-
<ul>
|
|
263
|
-
{{#each digest.features}}
|
|
264
|
-
<li>
|
|
265
|
-
<strong>{{this.name}}</strong>
|
|
266
|
-
<p>{{this.summary}}</p>
|
|
267
|
-
</li>
|
|
268
|
-
{{/each}}
|
|
269
|
-
</ul>
|
|
270
|
-
{{/if}}
|
|
271
|
-
|
|
272
|
-
{{#if digest.highlights}}
|
|
273
|
-
<h2>Highlights</h2>
|
|
274
|
-
<ul>
|
|
275
|
-
{{#each digest.highlights}}
|
|
276
|
-
<li>{{this}}</li>
|
|
277
|
-
{{/each}}
|
|
278
|
-
</ul>
|
|
279
|
-
{{/if}}
|
|
280
|
-
</div>
|
|
281
|
-
</div>
|
|
282
|
-
</body>
|
|
283
|
-
</html>
|
|
284
|
-
```
|
|
285
|
-
|
|
286
|
-
---
|
|
287
|
-
|
|
288
|
-
## Template Helpers
|
|
289
|
-
|
|
290
|
-
### Built-in Helpers
|
|
291
|
-
|
|
292
|
-
```yaml
|
|
293
|
-
# Date formatting
|
|
294
|
-
{{formatDate timestamp}} # Jan 15, 2024
|
|
295
|
-
{{formatDate timestamp "YYYY-MM-DD"}} # 2024-01-15
|
|
296
|
-
{{formatDate timestamp "relative"}} # 2 hours ago
|
|
297
|
-
|
|
298
|
-
# Duration formatting
|
|
299
|
-
{{formatDuration minutes}} # 4h 30m
|
|
300
|
-
{{formatDuration seconds "seconds"}} # 2m 15s
|
|
301
|
-
|
|
302
|
-
# Number formatting
|
|
303
|
-
{{formatNumber value}} # 1,234
|
|
304
|
-
{{formatPercent value}} # 85.5%
|
|
305
|
-
|
|
306
|
-
# Conditional
|
|
307
|
-
{{#if condition}}...{{/if}}
|
|
308
|
-
{{#unless condition}}...{{/unless}}
|
|
309
|
-
{{#eq value "test"}}...{{/eq}}
|
|
310
|
-
|
|
311
|
-
# Loops
|
|
312
|
-
{{#each items}}{{this}}{{/each}}
|
|
313
|
-
|
|
314
|
-
# String helpers
|
|
315
|
-
{{uppercase text}}
|
|
316
|
-
{{lowercase text}}
|
|
317
|
-
{{truncate text 50}}
|
|
318
|
-
|
|
319
|
-
# Code formatting
|
|
320
|
-
{{code snippet}} # Inline code
|
|
321
|
-
{{codeblock snippet "javascript"}} # Code block
|
|
322
|
-
```
|
|
323
|
-
|
|
324
|
-
### Custom Helpers
|
|
325
|
-
|
|
326
|
-
```yaml
|
|
327
|
-
# proagents.config.yaml
|
|
328
|
-
notifications:
|
|
329
|
-
templates:
|
|
330
|
-
helpers:
|
|
331
|
-
- name: "statusEmoji"
|
|
332
|
-
script: |
|
|
333
|
-
function(status) {
|
|
334
|
-
const emojis = {
|
|
335
|
-
success: '',
|
|
336
|
-
failure: '',
|
|
337
|
-
warning: '',
|
|
338
|
-
info: ''
|
|
339
|
-
};
|
|
340
|
-
return emojis[status] || '';
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
- name: "priortyColor"
|
|
344
|
-
script: |
|
|
345
|
-
function(priority) {
|
|
346
|
-
const colors = {
|
|
347
|
-
critical: '#dc2626',
|
|
348
|
-
high: '#f97316',
|
|
349
|
-
normal: '#2563eb',
|
|
350
|
-
low: '#6b7280'
|
|
351
|
-
};
|
|
352
|
-
return colors[priority] || colors.normal;
|
|
353
|
-
}
|
|
354
|
-
```
|
|
355
|
-
|
|
356
|
-
---
|
|
357
|
-
|
|
358
|
-
## Template Configuration
|
|
359
|
-
|
|
360
|
-
### Default Templates
|
|
361
|
-
|
|
362
|
-
```yaml
|
|
363
|
-
notifications:
|
|
364
|
-
templates:
|
|
365
|
-
# Use built-in templates
|
|
366
|
-
use_defaults: true
|
|
367
|
-
|
|
368
|
-
# Override specific templates
|
|
369
|
-
overrides:
|
|
370
|
-
feature.completed: "./templatespa:feature-completed.json"
|
|
371
|
-
deploy.failed: "./templates/deploy-failed.json"
|
|
372
|
-
|
|
373
|
-
# Template directory
|
|
374
|
-
directory: "./.proagents/notifications/templates"
|
|
375
|
-
```
|
|
376
|
-
|
|
377
|
-
### Per-Channel Templates
|
|
378
|
-
|
|
379
|
-
```yaml
|
|
380
|
-
notifications:
|
|
381
|
-
templates:
|
|
382
|
-
channels:
|
|
383
|
-
slack:
|
|
384
|
-
feature.completed: "./templates/slackpa:feature-completed.json"
|
|
385
|
-
deploy.failed: "./templates/slack/deploy-failed.json"
|
|
386
|
-
|
|
387
|
-
email:
|
|
388
|
-
feature.completed: "./templates/emailpa:feature-completed.html"
|
|
389
|
-
weekly_digest: "./templates/email/weekly-digest.html"
|
|
390
|
-
|
|
391
|
-
# Discord uses default templates
|
|
392
|
-
discord: null
|
|
393
|
-
```
|
|
394
|
-
|
|
395
|
-
---
|
|
396
|
-
|
|
397
|
-
## Template Preview
|
|
398
|
-
|
|
399
|
-
### Preview Command
|
|
400
|
-
|
|
401
|
-
```bash
|
|
402
|
-
# Preview template with sample data
|
|
403
|
-
proagents notifications template preview feature.completed
|
|
404
|
-
|
|
405
|
-
# Preview with custom data
|
|
406
|
-
proagents notifications template preview feature.completed \
|
|
407
|
-
--data '{"feature": {"name": "Test Feature"}}'
|
|
408
|
-
|
|
409
|
-
# Preview for specific channel
|
|
410
|
-
proagents notifications template preview feature.completed --channel slack
|
|
411
|
-
```
|
|
412
|
-
|
|
413
|
-
### Preview Output
|
|
414
|
-
|
|
415
|
-
```
|
|
416
|
-
┌─────────────────────────────────────────────────────────────┐
|
|
417
|
-
│ Template Preview: feature.completed (Slack) │
|
|
418
|
-
├─────────────────────────────────────────────────────────────┤
|
|
419
|
-
│ │
|
|
420
|
-
│ ╔═══════════════════════════════════════════════════════╗ │
|
|
421
|
-
│ ║ Feature Completed ║ │
|
|
422
|
-
│ ╠═══════════════════════════════════════════════════════╣ │
|
|
423
|
-
│ ║ Feature *User Authentication* has been completed! ║ │
|
|
424
|
-
│ ║ ║ │
|
|
425
|
-
│ ║ Branch: Duration: ║ │
|
|
426
|
-
│ ║ `feature/auth` 4h 30m ║ │
|
|
427
|
-
│ ║ ║ │
|
|
428
|
-
│ ║ Files Changed: Coverage: ║ │
|
|
429
|
-
│ ║ 15 85.5% ║ │
|
|
430
|
-
│ ║ ║ │
|
|
431
|
-
│ ║ [View PR] [View Docs] ║ │
|
|
432
|
-
│ ╚═══════════════════════════════════════════════════════╝ │
|
|
433
|
-
│ │
|
|
434
|
-
└─────────────────────────────────────────────────────────────┘
|
|
435
|
-
```
|
|
436
|
-
|
|
437
|
-
---
|
|
438
|
-
|
|
439
|
-
## Best Practices
|
|
440
|
-
|
|
441
|
-
1. **Keep It Concise**: Short, actionable messages
|
|
442
|
-
2. **Include Actions**: Add relevant buttons/links
|
|
443
|
-
3. **Use Formatting**: Make important info stand out
|
|
444
|
-
4. **Be Consistent**: Same style across templates
|
|
445
|
-
5. **Test Templates**: Preview before deploying
|
|
446
|
-
6. **Version Control**: Track template changes
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
# Offline Mode
|
|
2
|
-
|
|
3
|
-
Work without AI connectivity using cached intelligence and local operations.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Overview
|
|
8
|
-
|
|
9
|
-
Offline mode enables continued development when AI services are unavailable.
|
|
10
|
-
|
|
11
|
-
```
|
|
12
|
-
┌─────────────────────────────────────────────────────────────┐
|
|
13
|
-
│ Offline Mode Architecture │
|
|
14
|
-
├─────────────────────────────────────────────────────────────┤
|
|
15
|
-
│ │
|
|
16
|
-
│ Online Mode Offline Mode │
|
|
17
|
-
│ ┌─────────────┐ ┌─────────────┐ │
|
|
18
|
-
│ │ AI │ │ Local │ │
|
|
19
|
-
│ │ Services │ │ Cache │ │
|
|
20
|
-
│ └──────┬──────┘ └──────┬──────┘ │
|
|
21
|
-
│ │ │ │
|
|
22
|
-
│ ▼ ▼ │
|
|
23
|
-
│ ┌─────────────┐ ┌─────────────┐ │
|
|
24
|
-
│ │ Full AI │ Switch To │ Cached │ │
|
|
25
|
-
│ │ Capabilities│ ◄────────────► │ Operations │ │
|
|
26
|
-
│ └─────────────┘ └─────────────┘ │
|
|
27
|
-
│ │
|
|
28
|
-
│ Offline Capabilities: │
|
|
29
|
-
│ ✅ Cached codebase analysis │
|
|
30
|
-
│ ✅ Template generation │
|
|
31
|
-
│ ✅ Standards validation │
|
|
32
|
-
│ ✅ Git operations │
|
|
33
|
-
│ ✅ Local testing │
|
|
34
|
-
│ ✅ Changelog documentation │
|
|
35
|
-
│ ❌ New code generation │
|
|
36
|
-
│ ❌ Complex refactoring │
|
|
37
|
-
│ ❌ Design interpretation │
|
|
38
|
-
│ │
|
|
39
|
-
└─────────────────────────────────────────────────────────────┘
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
## Quick Start
|
|
45
|
-
|
|
46
|
-
### Check Offline Readiness
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
# Check what's cached and available offline
|
|
50
|
-
proagents offline status
|
|
51
|
-
|
|
52
|
-
# Pre-cache for offline work
|
|
53
|
-
proagents offline prepare
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
### Enable Offline Mode
|
|
57
|
-
|
|
58
|
-
```bash
|
|
59
|
-
# Manually switch to offline mode
|
|
60
|
-
proagents offline enable
|
|
61
|
-
|
|
62
|
-
# Auto-detect and switch
|
|
63
|
-
proagents config set offline.auto_detect true
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
---
|
|
67
|
-
|
|
68
|
-
## Features
|
|
69
|
-
|
|
70
|
-
| Feature | Online | Offline |
|
|
71
|
-
|---------|--------|---------|
|
|
72
|
-
| Codebase Analysis | Full | Cached |
|
|
73
|
-
| Code Generation | ✅ | ❌ |
|
|
74
|
-
| Standards Validation | ✅ | ✅ |
|
|
75
|
-
| Template Generation | ✅ | ✅ |
|
|
76
|
-
| Git Operations | ✅ | ✅ |
|
|
77
|
-
| Testing | ✅ | ✅ |
|
|
78
|
-
| Documentation | ✅ | ✅ (templates) |
|
|
79
|
-
| Complex Refactoring | ✅ | ❌ |
|
|
80
|
-
| Code Review | Full AI | Checklist-based |
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
## Documentation Files
|
|
85
|
-
|
|
86
|
-
| File | Description |
|
|
87
|
-
|------|-------------|
|
|
88
|
-
| [caching.md](./caching.md) | Cache management |
|
|
89
|
-
| [offline-operations.md](./offline-operations.md) | Available operations |
|
|
90
|
-
| [sync.md](./sync.md) | Online/offline sync |
|
|
91
|
-
|
|
92
|
-
---
|
|
93
|
-
|
|
94
|
-
## Configuration
|
|
95
|
-
|
|
96
|
-
```yaml
|
|
97
|
-
# proagents.config.yaml
|
|
98
|
-
|
|
99
|
-
offline:
|
|
100
|
-
enabled: true
|
|
101
|
-
|
|
102
|
-
# Auto-detect connectivity
|
|
103
|
-
auto_detect:
|
|
104
|
-
enabled: true
|
|
105
|
-
check_interval: "30s"
|
|
106
|
-
fallback_after: "3 failures"
|
|
107
|
-
|
|
108
|
-
# Caching
|
|
109
|
-
cache:
|
|
110
|
-
enabled: true
|
|
111
|
-
path: ".proagents/cache"
|
|
112
|
-
max_size: "500MB"
|
|
113
|
-
|
|
114
|
-
# What to cache
|
|
115
|
-
include:
|
|
116
|
-
- "analysis"
|
|
117
|
-
- "patterns"
|
|
118
|
-
- "templates"
|
|
119
|
-
- "standards"
|
|
120
|
-
- "glossary"
|
|
121
|
-
|
|
122
|
-
# Queue for when back online
|
|
123
|
-
queue:
|
|
124
|
-
enabled: true
|
|
125
|
-
max_items: 100
|
|
126
|
-
|
|
127
|
-
# Notifications
|
|
128
|
-
notifications:
|
|
129
|
-
on_offline: true
|
|
130
|
-
on_online: true
|
|
131
|
-
channels: ["terminal"]
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
---
|
|
135
|
-
|
|
136
|
-
## Commands
|
|
137
|
-
|
|
138
|
-
| Command | Description |
|
|
139
|
-
|---------|-------------|
|
|
140
|
-
| `proagents offline status` | Check offline readiness |
|
|
141
|
-
| `proagents offline prepare` | Pre-cache for offline |
|
|
142
|
-
| `proagents offline enable` | Switch to offline mode |
|
|
143
|
-
| `proagents offline disable` | Return to online mode |
|
|
144
|
-
| `proagents offline queue` | View queued operations |
|
|
145
|
-
| `proagents offline sync` | Sync when back online |
|