proagents 1.6.20 → 1.6.22
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 +3 -1
- package/.proagents/.cursorrules +1 -1
- package/.proagents/.windsurfrules +1 -1
- package/.proagents/AGENTS.md +1 -1
- package/.proagents/AI_INSTRUCTIONS.md +29 -1
- package/.proagents/BOLT.md +1 -1
- package/.proagents/CLAUDE.md +1 -1
- package/.proagents/GEMINI.md +1 -1
- package/.proagents/KIRO.md +1 -1
- package/.proagents/LOVABLE.md +1 -1
- package/.proagents/REPLIT.md +1 -1
- package/.proagents/custom-commands.yaml +1 -2
- package/.proagents/docs/command-details.md +1 -2
- package/.proagents/getting-started/ai-training-setup.md +0 -1
- package/.proagents/performance/README.md +59 -0
- package/.proagents/performance/bundle-analysis.md +375 -0
- package/.proagents/performance/load-testing.md +563 -0
- package/.proagents/performance/runtime-metrics.md +489 -0
- package/.proagents/performance/web-vitals.md +425 -0
- package/.proagents/proagents.config.yaml +55 -1
- package/.proagents/prompts/11-session-tracking.md +100 -0
- package/.proagents/prompts/13-commit.md +426 -0
- package/.proagents/workflow-modes/entry-modes.md +1 -6
- package/COMMANDS.md +19 -0
- package/lib/commands/init.js +62 -11
- package/package.json +1 -1
- package/.proagents/api-versioning/README.md +0 -257
- package/.proagents/api-versioning/changelog-template.md +0 -225
- package/.proagents/api-versioning/deprecation-workflow.md +0 -470
- package/.proagents/api-versioning/versioning-strategy.md +0 -291
- package/.proagents/automation/README.md +0 -38
- package/.proagents/automation/ai-behavior-rules.md +0 -339
- package/.proagents/automation/ai-prompt-injection.md +0 -331
- package/.proagents/automation/auto-decisions.md +0 -535
- package/.proagents/automation/decision-defaults.yaml +0 -317
- package/.proagents/cache/README.md +0 -110
- package/.proagents/cache/analysis-metadata.json +0 -76
- package/.proagents/cache/conventions.json +0 -125
- package/.proagents/cache/dependencies.json +0 -85
- package/.proagents/cache/features.json +0 -115
- package/.proagents/cache/patterns.json +0 -105
- package/.proagents/cache/schemas/conventions-schema.json +0 -138
- package/.proagents/cache/schemas/dependencies-schema.json +0 -95
- package/.proagents/cache/schemas/features-schema.json +0 -104
- package/.proagents/cache/schemas/metadata-schema.json +0 -83
- package/.proagents/cache/schemas/patterns-schema.json +0 -136
- package/.proagents/cache/schemas/structure-schema.json +0 -72
- package/.proagents/cache/structure.json +0 -109
- package/.proagents/checklists/README.md +0 -261
- package/.proagents/checklists/code-quality.md +0 -137
- package/.proagents/checklists/code-review.md +0 -148
- package/.proagents/checklists/pr-checklist.md +0 -78
- package/.proagents/checklists/pre-deployment.md +0 -132
- package/.proagents/checklists/pre-implementation.md +0 -80
- package/.proagents/checklists/testing.md +0 -120
- package/.proagents/checkpoints.json +0 -13
- package/.proagents/cicd/README.md +0 -338
- package/.proagents/cicd/azure-devops.md +0 -267
- package/.proagents/cicd/github-actions.md +0 -375
- package/.proagents/cicd/gitlab-ci.md +0 -278
- package/.proagents/cicd/jenkins.md +0 -317
- package/.proagents/collaboration/README.md +0 -143
- package/.proagents/collaboration/roles.md +0 -248
- package/.proagents/collaboration/sessions.md +0 -390
- package/.proagents/collaboration/sync.md +0 -358
- package/.proagents/cost/README.md +0 -48
- package/.proagents/cost/cost-template.md +0 -283
- package/.proagents/cost/estimation-framework.md +0 -287
- package/.proagents/database/README.md +0 -72
- package/.proagents/database/examples/001-create-users.sql +0 -129
- package/.proagents/database/examples/002-add-preferences.sql +0 -94
- package/.proagents/database/examples/003-add-index.sql +0 -105
- package/.proagents/database/examples/004-rename-column.sql +0 -122
- package/.proagents/database/examples/005-add-foreign-key.sql +0 -142
- package/.proagents/database/examples/006-data-migration.sql +0 -196
- package/.proagents/database/examples/007-drop-column.sql +0 -163
- package/.proagents/database/examples/README.md +0 -89
- package/.proagents/database/migration-workflow.md +0 -478
- package/.proagents/database/rollback-scripts.md +0 -487
- package/.proagents/database/safety-checks.md +0 -447
- package/.proagents/git/README.md +0 -68
- package/.proagents/git/branch-strategy.md +0 -164
- package/.proagents/git/commit-conventions.md +0 -241
- package/.proagents/git/pr-workflow.md +0 -286
- package/.proagents/git/rollback-procedures.md +0 -416
- package/.proagents/ide-integration/README.md +0 -124
- package/.proagents/ide-integration/cline-config.md +0 -429
- package/.proagents/ide-integration/continue-config.md +0 -380
- package/.proagents/ide-integration/cursor-rules.md +0 -280
- package/.proagents/ide-integration/github-copilot.md +0 -384
- package/.proagents/ide-integration/windsurf-rules.md +0 -314
- package/.proagents/integrations/README.md +0 -97
- package/.proagents/integrations/pm/README.md +0 -344
- package/.proagents/learning/README.md +0 -136
- package/.proagents/learning/adaptation.md +0 -305
- package/.proagents/learning/data-collection.md +0 -283
- package/.proagents/learning/implementation-guide.md +0 -865
- package/.proagents/learning/reports.md +0 -306
- package/.proagents/mcp/README.md +0 -133
- package/.proagents/mcp/context-providers.md +0 -442
- package/.proagents/mcp/server-config.md +0 -306
- package/.proagents/mcp/tools-definition.md +0 -513
- package/.proagents/pm-integration/README.md +0 -151
- package/.proagents/pm-integration/asana.md +0 -346
- package/.proagents/pm-integration/github-issues.md +0 -308
- package/.proagents/pm-integration/gitlab-issues.md +0 -482
- package/.proagents/pm-integration/jira.md +0 -364
- package/.proagents/pm-integration/linear.md +0 -409
- package/.proagents/pm-integration/notion.md +0 -275
- package/.proagents/pm-integration/sync-config.md +0 -533
- package/.proagents/pm-integration/trello.md +0 -159
- package/.proagents/rules/README.md +0 -179
- package/.proagents/rules/custom-rules-template.yaml +0 -286
- package/.proagents/rules/custom-rules.md +0 -754
- package/.proagents/rules/validation-rules-template.yaml +0 -517
- package/.proagents/runbooks/README.md +0 -219
- package/.proagents/runbooks/dependency-vulnerability.md +0 -505
- package/.proagents/runbooks/incident-response.md +0 -451
- package/.proagents/runbooks/performance-degradation.md +0 -584
- package/.proagents/runbooks/production-debugging.md +0 -489
- package/.proagents/sessions/README.md +0 -5
- package/.proagents/sprints/README.md +0 -58
- package/.proagents/team/README.md +0 -256
- package/.proagents/team/code-ownership.md +0 -306
- package/.proagents/team/communication-templates.md +0 -441
- package/.proagents/team/handoff-protocol.md +0 -380
- package/.proagents/team/ide-setup/README.md +0 -103
- package/.proagents/team/ide-setup/cursor.md +0 -276
- package/.proagents/team/ide-setup/jetbrains.md +0 -330
- package/.proagents/team/ide-setup/neovim.md +0 -640
- package/.proagents/team/ide-setup/vscode.md +0 -348
- package/.proagents/team/onboarding.md +0 -278
- package/.proagents/time-tracking.json +0 -19
- package/.proagents/troubleshooting/README.md +0 -730
- package/.proagents/troubleshooting/ai-issues.md +0 -601
- package/.proagents/troubleshooting/workflow-issues.md +0 -571
|
@@ -1,317 +0,0 @@
|
|
|
1
|
-
# Jenkins Pipeline Templates
|
|
2
|
-
|
|
3
|
-
Declarative Jenkins pipeline configurations.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Complete Jenkinsfile
|
|
8
|
-
|
|
9
|
-
```groovy
|
|
10
|
-
// Jenkinsfile
|
|
11
|
-
pipeline {
|
|
12
|
-
agent any
|
|
13
|
-
|
|
14
|
-
environment {
|
|
15
|
-
NODE_VERSION = '20'
|
|
16
|
-
NPM_CONFIG_CACHE = "${WORKSPACE}/.npm"
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
options {
|
|
20
|
-
buildDiscarder(logRotator(numToKeepStr: '10'))
|
|
21
|
-
timeout(time: 30, unit: 'MINUTES')
|
|
22
|
-
disableConcurrentBuilds()
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
tools {
|
|
26
|
-
nodejs 'NodeJS-20'
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
stages {
|
|
30
|
-
stage('Install') {
|
|
31
|
-
steps {
|
|
32
|
-
sh 'npm ci'
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
stage('Validate') {
|
|
37
|
-
parallel {
|
|
38
|
-
stage('Lint') {
|
|
39
|
-
steps {
|
|
40
|
-
sh 'npm run lint'
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
stage('Type Check') {
|
|
44
|
-
steps {
|
|
45
|
-
sh 'npm run type-check'
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
stage('Test') {
|
|
52
|
-
parallel {
|
|
53
|
-
stage('Unit Tests') {
|
|
54
|
-
steps {
|
|
55
|
-
sh 'npm run test:unit -- --coverage'
|
|
56
|
-
}
|
|
57
|
-
post {
|
|
58
|
-
always {
|
|
59
|
-
junit 'junit.xml'
|
|
60
|
-
publishCoverage adapters: [
|
|
61
|
-
coberturaAdapter('coverage/cobertura-coverage.xml')
|
|
62
|
-
]
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
stage('Integration Tests') {
|
|
67
|
-
steps {
|
|
68
|
-
sh 'npm run test:integration'
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
stage('Security Scan') {
|
|
75
|
-
steps {
|
|
76
|
-
sh 'npm audit --audit-level=high'
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
stage('Build') {
|
|
81
|
-
steps {
|
|
82
|
-
sh 'npm run build'
|
|
83
|
-
}
|
|
84
|
-
post {
|
|
85
|
-
success {
|
|
86
|
-
archiveArtifacts artifacts: 'dist/**/*', fingerprint: true
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
stage('Deploy to Staging') {
|
|
92
|
-
when {
|
|
93
|
-
branch 'develop'
|
|
94
|
-
}
|
|
95
|
-
steps {
|
|
96
|
-
script {
|
|
97
|
-
deployToEnvironment('staging')
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
stage('Deploy to Production') {
|
|
103
|
-
when {
|
|
104
|
-
branch 'main'
|
|
105
|
-
}
|
|
106
|
-
input {
|
|
107
|
-
message "Deploy to production?"
|
|
108
|
-
ok "Deploy"
|
|
109
|
-
submitter "admin,deploy-team"
|
|
110
|
-
}
|
|
111
|
-
steps {
|
|
112
|
-
script {
|
|
113
|
-
deployToEnvironment('production')
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
post {
|
|
120
|
-
always {
|
|
121
|
-
cleanWs()
|
|
122
|
-
}
|
|
123
|
-
success {
|
|
124
|
-
slackSend(
|
|
125
|
-
color: 'good',
|
|
126
|
-
message: "Build succeeded: ${env.JOB_NAME} #${env.BUILD_NUMBER}"
|
|
127
|
-
)
|
|
128
|
-
}
|
|
129
|
-
failure {
|
|
130
|
-
slackSend(
|
|
131
|
-
color: 'danger',
|
|
132
|
-
message: "Build failed: ${env.JOB_NAME} #${env.BUILD_NUMBER}"
|
|
133
|
-
)
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
def deployToEnvironment(String environment) {
|
|
139
|
-
withCredentials([string(credentialsId: "${environment}-deploy-token", variable: 'DEPLOY_TOKEN')]) {
|
|
140
|
-
sh "npx proagents deploy --env ${environment}"
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
---
|
|
146
|
-
|
|
147
|
-
## Multibranch Pipeline
|
|
148
|
-
|
|
149
|
-
```groovy
|
|
150
|
-
// Jenkinsfile for multibranch
|
|
151
|
-
pipeline {
|
|
152
|
-
agent any
|
|
153
|
-
|
|
154
|
-
stages {
|
|
155
|
-
stage('Build & Test') {
|
|
156
|
-
steps {
|
|
157
|
-
sh 'npm ci'
|
|
158
|
-
sh 'npm test'
|
|
159
|
-
sh 'npm run build'
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
stage('Deploy') {
|
|
164
|
-
when {
|
|
165
|
-
anyOf {
|
|
166
|
-
branch 'main'
|
|
167
|
-
branch 'develop'
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
steps {
|
|
171
|
-
script {
|
|
172
|
-
def environment = env.BRANCH_NAME == 'main' ? 'production' : 'staging'
|
|
173
|
-
deployToEnvironment(environment)
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
---
|
|
182
|
-
|
|
183
|
-
## Shared Library
|
|
184
|
-
|
|
185
|
-
```groovy
|
|
186
|
-
// vars/nodePipeline.groovy
|
|
187
|
-
def call(Map config = [:]) {
|
|
188
|
-
pipeline {
|
|
189
|
-
agent any
|
|
190
|
-
|
|
191
|
-
tools {
|
|
192
|
-
nodejs config.nodeVersion ?: 'NodeJS-20'
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
stages {
|
|
196
|
-
stage('Install') {
|
|
197
|
-
steps {
|
|
198
|
-
sh 'npm ci'
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
stage('Test') {
|
|
203
|
-
steps {
|
|
204
|
-
sh 'npm test'
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
stage('Build') {
|
|
209
|
-
steps {
|
|
210
|
-
sh 'npm run build'
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
stage('Deploy') {
|
|
215
|
-
when {
|
|
216
|
-
expression { config.deploy == true }
|
|
217
|
-
}
|
|
218
|
-
steps {
|
|
219
|
-
sh "npx proagents deploy --env ${config.environment}"
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
// Usage in Jenkinsfile
|
|
227
|
-
@Library('my-shared-lib') _
|
|
228
|
-
|
|
229
|
-
nodePipeline(
|
|
230
|
-
nodeVersion: 'NodeJS-20',
|
|
231
|
-
deploy: true,
|
|
232
|
-
environment: 'staging'
|
|
233
|
-
)
|
|
234
|
-
```
|
|
235
|
-
|
|
236
|
-
---
|
|
237
|
-
|
|
238
|
-
## Docker Agent
|
|
239
|
-
|
|
240
|
-
```groovy
|
|
241
|
-
pipeline {
|
|
242
|
-
agent {
|
|
243
|
-
docker {
|
|
244
|
-
image 'node:20'
|
|
245
|
-
args '-v $HOME/.npm:/root/.npm'
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
stages {
|
|
250
|
-
stage('Build') {
|
|
251
|
-
steps {
|
|
252
|
-
sh 'npm ci'
|
|
253
|
-
sh 'npm run build'
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
---
|
|
261
|
-
|
|
262
|
-
## Kubernetes Agent
|
|
263
|
-
|
|
264
|
-
```groovy
|
|
265
|
-
pipeline {
|
|
266
|
-
agent {
|
|
267
|
-
kubernetes {
|
|
268
|
-
yaml '''
|
|
269
|
-
apiVersion: v1
|
|
270
|
-
kind: Pod
|
|
271
|
-
spec:
|
|
272
|
-
containers:
|
|
273
|
-
- name: node
|
|
274
|
-
image: node:20
|
|
275
|
-
command:
|
|
276
|
-
- sleep
|
|
277
|
-
args:
|
|
278
|
-
- infinity
|
|
279
|
-
- name: docker
|
|
280
|
-
image: docker:dind
|
|
281
|
-
securityContext:
|
|
282
|
-
privileged: true
|
|
283
|
-
'''
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
stages {
|
|
288
|
-
stage('Build') {
|
|
289
|
-
steps {
|
|
290
|
-
container('node') {
|
|
291
|
-
sh 'npm ci'
|
|
292
|
-
sh 'npm run build'
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
stage('Docker Build') {
|
|
298
|
-
steps {
|
|
299
|
-
container('docker') {
|
|
300
|
-
sh 'docker build -t myapp:latest .'
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
```
|
|
307
|
-
|
|
308
|
-
---
|
|
309
|
-
|
|
310
|
-
## Best Practices
|
|
311
|
-
|
|
312
|
-
1. **Use Declarative Pipelines**: Easier to read and maintain
|
|
313
|
-
2. **Shared Libraries**: DRY with shared pipeline code
|
|
314
|
-
3. **Parallel Stages**: Run independent stages in parallel
|
|
315
|
-
4. **Input Gates**: Require approval for production
|
|
316
|
-
5. **Clean Workspace**: Always clean up after builds
|
|
317
|
-
6. **Credentials Management**: Use Jenkins credentials store
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
# Real-Time Collaboration
|
|
2
|
-
|
|
3
|
-
Enable multiple developers to work together on features.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Overview
|
|
8
|
-
|
|
9
|
-
Real-time collaboration allows team members to work together on the same feature with shared context and synchronized progress.
|
|
10
|
-
|
|
11
|
-
```
|
|
12
|
-
┌─────────────────────────────────────────────────────────────┐
|
|
13
|
-
│ Collaboration Session │
|
|
14
|
-
├─────────────────────────────────────────────────────────────┤
|
|
15
|
-
│ │
|
|
16
|
-
│ Developer 1 ──────┐ │
|
|
17
|
-
│ │ │
|
|
18
|
-
│ Developer 2 ──────┼───► Shared Session ───► Feature │
|
|
19
|
-
│ │ │ │
|
|
20
|
-
│ Reviewer ─────────┘ │ │
|
|
21
|
-
│ ▼ │
|
|
22
|
-
│ ┌─────────────────┐ │
|
|
23
|
-
│ │ Synchronized: │ │
|
|
24
|
-
│ │ • Context │ │
|
|
25
|
-
│ │ • Progress │ │
|
|
26
|
-
│ │ • Decisions │ │
|
|
27
|
-
│ │ • Changes │ │
|
|
28
|
-
│ └─────────────────┘ │
|
|
29
|
-
│ │
|
|
30
|
-
└─────────────────────────────────────────────────────────────┘
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## Quick Start
|
|
36
|
-
|
|
37
|
-
### Start a Session
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
# Start collaboration session
|
|
41
|
-
proagents collab start --feature user-auth
|
|
42
|
-
|
|
43
|
-
# Output:
|
|
44
|
-
Session started: sess_abc123
|
|
45
|
-
Share this link: https://proagents.io/collab/sess_abc123
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
### Join a Session
|
|
49
|
-
|
|
50
|
-
```bash
|
|
51
|
-
# Join by session ID
|
|
52
|
-
proagents collab join sess_abc123
|
|
53
|
-
|
|
54
|
-
# Join by link
|
|
55
|
-
proagents collab join https://proagents.io/collab/sess_abc123
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
---
|
|
59
|
-
|
|
60
|
-
## Collaboration Modes
|
|
61
|
-
|
|
62
|
-
| Mode | Description | Use Case |
|
|
63
|
-
|------|-------------|----------|
|
|
64
|
-
| **Pair Programming** | Two developers, one feature | Complex implementation |
|
|
65
|
-
| **Mob Programming** | Whole team, one feature | Knowledge sharing |
|
|
66
|
-
| **Review Mode** | Developer + reviewer | Code review |
|
|
67
|
-
| **Observer Mode** | Watch without editing | Training, oversight |
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
## Features
|
|
72
|
-
|
|
73
|
-
| Feature | Description |
|
|
74
|
-
|---------|-------------|
|
|
75
|
-
| **Shared Context** | Everyone sees the same codebase state |
|
|
76
|
-
| **Real-Time Sync** | Changes broadcast instantly |
|
|
77
|
-
| **Role-Based Access** | Different permissions per role |
|
|
78
|
-
| **Chat Integration** | In-session communication |
|
|
79
|
-
| **Decision Logging** | Track all decisions made |
|
|
80
|
-
|
|
81
|
-
---
|
|
82
|
-
|
|
83
|
-
## Documentation Files
|
|
84
|
-
|
|
85
|
-
| File | Description |
|
|
86
|
-
|------|-------------|
|
|
87
|
-
| [sessions.md](./sessions.md) | Session management |
|
|
88
|
-
| [roles.md](./roles.md) | Collaboration roles |
|
|
89
|
-
| [sync.md](./sync.md) | Synchronization details |
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
|
-
## Configuration
|
|
94
|
-
|
|
95
|
-
```yaml
|
|
96
|
-
# proagents.config.yaml
|
|
97
|
-
|
|
98
|
-
collaboration:
|
|
99
|
-
enabled: true
|
|
100
|
-
|
|
101
|
-
# Default session settings
|
|
102
|
-
sessions:
|
|
103
|
-
max_participants: 5
|
|
104
|
-
idle_timeout: "30m"
|
|
105
|
-
auto_save_interval: "5m"
|
|
106
|
-
|
|
107
|
-
# Roles
|
|
108
|
-
roles:
|
|
109
|
-
driver:
|
|
110
|
-
can_edit: true
|
|
111
|
-
can_execute: true
|
|
112
|
-
|
|
113
|
-
navigator:
|
|
114
|
-
can_edit: false
|
|
115
|
-
can_suggest: true
|
|
116
|
-
|
|
117
|
-
observer:
|
|
118
|
-
can_edit: false
|
|
119
|
-
can_suggest: false
|
|
120
|
-
|
|
121
|
-
# Communication
|
|
122
|
-
chat:
|
|
123
|
-
enabled: true
|
|
124
|
-
voice: false # Requires external tool
|
|
125
|
-
|
|
126
|
-
# Sync settings
|
|
127
|
-
sync:
|
|
128
|
-
realtime: true
|
|
129
|
-
conflict_resolution: "last_writer_wins"
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
---
|
|
133
|
-
|
|
134
|
-
## Commands
|
|
135
|
-
|
|
136
|
-
| Command | Description |
|
|
137
|
-
|---------|-------------|
|
|
138
|
-
| `proagents collab start` | Start new session |
|
|
139
|
-
| `proagents collab join` | Join existing session |
|
|
140
|
-
| `proagents collab leave` | Leave current session |
|
|
141
|
-
| `proagents collab status` | Show session status |
|
|
142
|
-
| `proagents collab invite` | Invite participant |
|
|
143
|
-
| `proagents collab kick` | Remove participant |
|
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
# Collaboration Roles
|
|
2
|
-
|
|
3
|
-
Define and manage roles for collaborative development sessions.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Role Types
|
|
8
|
-
|
|
9
|
-
### Driver
|
|
10
|
-
|
|
11
|
-
The active coder who controls the keyboard:
|
|
12
|
-
|
|
13
|
-
```yaml
|
|
14
|
-
roles:
|
|
15
|
-
driver:
|
|
16
|
-
description: "Active coder with keyboard control"
|
|
17
|
-
permissions:
|
|
18
|
-
can_edit: true
|
|
19
|
-
can_execute: true
|
|
20
|
-
can_commit: true
|
|
21
|
-
can_push: false # Requires review
|
|
22
|
-
|
|
23
|
-
responsibilities:
|
|
24
|
-
- "Write code based on navigator guidance"
|
|
25
|
-
- "Execute tests and commands"
|
|
26
|
-
- "Implement agreed-upon solutions"
|
|
27
|
-
|
|
28
|
-
rotation:
|
|
29
|
-
enabled: true
|
|
30
|
-
interval: "25m" # Pomodoro-style
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
### Navigator
|
|
34
|
-
|
|
35
|
-
The strategic guide who reviews and directs:
|
|
36
|
-
|
|
37
|
-
```yaml
|
|
38
|
-
roles:
|
|
39
|
-
navigator:
|
|
40
|
-
description: "Strategic reviewer and guide"
|
|
41
|
-
permissions:
|
|
42
|
-
can_edit: false
|
|
43
|
-
can_suggest: true
|
|
44
|
-
can_comment: true
|
|
45
|
-
can_approve: true
|
|
46
|
-
|
|
47
|
-
responsibilities:
|
|
48
|
-
- "Review code as it's written"
|
|
49
|
-
- "Think strategically about approach"
|
|
50
|
-
- "Catch errors and suggest improvements"
|
|
51
|
-
- "Research and provide context"
|
|
52
|
-
|
|
53
|
-
rotation:
|
|
54
|
-
swap_with: "driver"
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### Observer
|
|
58
|
-
|
|
59
|
-
Learning or oversight participant:
|
|
60
|
-
|
|
61
|
-
```yaml
|
|
62
|
-
roles:
|
|
63
|
-
observer:
|
|
64
|
-
description: "Passive participant (learning/oversight)"
|
|
65
|
-
permissions:
|
|
66
|
-
can_edit: false
|
|
67
|
-
can_suggest: false
|
|
68
|
-
can_comment: true
|
|
69
|
-
can_view: true
|
|
70
|
-
|
|
71
|
-
use_cases:
|
|
72
|
-
- "Training new team members"
|
|
73
|
-
- "Management oversight"
|
|
74
|
-
- "Cross-team learning"
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
### Reviewer
|
|
78
|
-
|
|
79
|
-
Code review specialist:
|
|
80
|
-
|
|
81
|
-
```yaml
|
|
82
|
-
roles:
|
|
83
|
-
reviewer:
|
|
84
|
-
description: "Focused code reviewer"
|
|
85
|
-
permissions:
|
|
86
|
-
can_edit: false
|
|
87
|
-
can_comment: true
|
|
88
|
-
can_request_changes: true
|
|
89
|
-
can_approve: true
|
|
90
|
-
|
|
91
|
-
responsibilities:
|
|
92
|
-
- "Review code quality"
|
|
93
|
-
- "Check for bugs and issues"
|
|
94
|
-
- "Ensure standards compliance"
|
|
95
|
-
- "Approve or request changes"
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
---
|
|
99
|
-
|
|
100
|
-
## Role Configuration
|
|
101
|
-
|
|
102
|
-
### Session Roles
|
|
103
|
-
|
|
104
|
-
```yaml
|
|
105
|
-
collaboration:
|
|
106
|
-
sessions:
|
|
107
|
-
pair_programming:
|
|
108
|
-
roles:
|
|
109
|
-
- driver: 1
|
|
110
|
-
- navigator: 1
|
|
111
|
-
rotation: true
|
|
112
|
-
|
|
113
|
-
mob_programming:
|
|
114
|
-
roles:
|
|
115
|
-
- driver: 1
|
|
116
|
-
- navigator: "unlimited"
|
|
117
|
-
- observer: "unlimited"
|
|
118
|
-
rotation: true
|
|
119
|
-
|
|
120
|
-
review_session:
|
|
121
|
-
roles:
|
|
122
|
-
- author: 1
|
|
123
|
-
- reviewer: "1-3"
|
|
124
|
-
rotation: false
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
### Role Assignment
|
|
128
|
-
|
|
129
|
-
```bash
|
|
130
|
-
# Assign role when joining
|
|
131
|
-
proagents collab join sess_abc123 --role navigator
|
|
132
|
-
|
|
133
|
-
# Change role during session
|
|
134
|
-
proagents collab role driver
|
|
135
|
-
|
|
136
|
-
# View current roles
|
|
137
|
-
proagents collab roles
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
---
|
|
141
|
-
|
|
142
|
-
## Role Rotation
|
|
143
|
-
|
|
144
|
-
### Automatic Rotation
|
|
145
|
-
|
|
146
|
-
```yaml
|
|
147
|
-
collaboration:
|
|
148
|
-
rotation:
|
|
149
|
-
enabled: true
|
|
150
|
-
|
|
151
|
-
# Rotation interval
|
|
152
|
-
interval: "25m"
|
|
153
|
-
|
|
154
|
-
# Rotation style
|
|
155
|
-
style: "round_robin" # round_robin, random, volunteer
|
|
156
|
-
|
|
157
|
-
# Notification
|
|
158
|
-
notify_before: "2m"
|
|
159
|
-
|
|
160
|
-
# Pause on
|
|
161
|
-
pause_on:
|
|
162
|
-
- "active_debugging"
|
|
163
|
-
- "complex_implementation"
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
### Manual Rotation
|
|
167
|
-
|
|
168
|
-
```bash
|
|
169
|
-
# Trigger rotation
|
|
170
|
-
proagents collab rotate
|
|
171
|
-
|
|
172
|
-
# Skip rotation
|
|
173
|
-
proagents collab rotate --skip
|
|
174
|
-
|
|
175
|
-
# Extend current turn
|
|
176
|
-
proagents collab rotate --extend 10m
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
### Rotation Notification
|
|
180
|
-
|
|
181
|
-
```
|
|
182
|
-
┌─────────────────────────────────────────────────────────────┐
|
|
183
|
-
│ 🔄 Role Rotation in 2 minutes │
|
|
184
|
-
├─────────────────────────────────────────────────────────────┤
|
|
185
|
-
│ │
|
|
186
|
-
│ Current: Alice (driver) → Bob (navigator) │
|
|
187
|
-
│ Next: Bob (driver) → Alice (navigator) │
|
|
188
|
-
│ │
|
|
189
|
-
│ [Rotate Now] [Extend 5m] [Skip] │
|
|
190
|
-
│ │
|
|
191
|
-
└─────────────────────────────────────────────────────────────┘
|
|
192
|
-
```
|
|
193
|
-
|
|
194
|
-
---
|
|
195
|
-
|
|
196
|
-
## Permission Matrix
|
|
197
|
-
|
|
198
|
-
| Action | Driver | Navigator | Observer | Reviewer |
|
|
199
|
-
|--------|--------|-----------|----------|----------|
|
|
200
|
-
| View code | ✅ | ✅ | ✅ | ✅ |
|
|
201
|
-
| Edit code | ✅ | ❌ | ❌ | ❌ |
|
|
202
|
-
| Run commands | ✅ | ❌ | ❌ | ❌ |
|
|
203
|
-
| Suggest edits | ✅ | ✅ | ❌ | ✅ |
|
|
204
|
-
| Add comments | ✅ | ✅ | ✅ | ✅ |
|
|
205
|
-
| Commit | ✅ | ❌ | ❌ | ❌ |
|
|
206
|
-
| Approve | ❌ | ✅ | ❌ | ✅ |
|
|
207
|
-
|
|
208
|
-
---
|
|
209
|
-
|
|
210
|
-
## Custom Roles
|
|
211
|
-
|
|
212
|
-
### Define Custom Role
|
|
213
|
-
|
|
214
|
-
```yaml
|
|
215
|
-
collaboration:
|
|
216
|
-
custom_roles:
|
|
217
|
-
security_reviewer:
|
|
218
|
-
description: "Security-focused reviewer"
|
|
219
|
-
base: "reviewer"
|
|
220
|
-
permissions:
|
|
221
|
-
can_block_on_security: true
|
|
222
|
-
focus_areas:
|
|
223
|
-
- "authentication"
|
|
224
|
-
- "authorization"
|
|
225
|
-
- "data_handling"
|
|
226
|
-
- "input_validation"
|
|
227
|
-
|
|
228
|
-
documentation_writer:
|
|
229
|
-
description: "Documentation specialist"
|
|
230
|
-
permissions:
|
|
231
|
-
can_edit: true
|
|
232
|
-
scope: "docs/**"
|
|
233
|
-
responsibilities:
|
|
234
|
-
- "Write documentation"
|
|
235
|
-
- "Update README"
|
|
236
|
-
- "Add code comments"
|
|
237
|
-
```
|
|
238
|
-
|
|
239
|
-
---
|
|
240
|
-
|
|
241
|
-
## Role Best Practices
|
|
242
|
-
|
|
243
|
-
1. **Rotate Regularly**: Prevents fatigue, shares knowledge
|
|
244
|
-
2. **Clear Responsibilities**: Everyone knows their role
|
|
245
|
-
3. **Respect Permissions**: Driver drives, navigator navigates
|
|
246
|
-
4. **Communicate**: Constant dialogue between roles
|
|
247
|
-
5. **Take Breaks**: Rotate includes break opportunities
|
|
248
|
-
6. **Flexibility**: Adjust roles based on task needs
|