proagents 1.6.11 → 1.6.13
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/.proagents/.cursorrules +16 -2
- package/.proagents/.windsurfrules +16 -2
- package/.proagents/AI_INSTRUCTIONS.md +1248 -53
- package/.proagents/ANTIGRAVITY.md +16 -2
- package/.proagents/BOLT.md +16 -2
- package/.proagents/CHATGPT.md +16 -2
- package/.proagents/CLAUDE.md +16 -2
- package/.proagents/GEMINI.md +16 -2
- package/.proagents/GROQ.md +16 -2
- package/.proagents/KIRO.md +16 -2
- package/.proagents/LOVABLE.md +16 -2
- package/.proagents/PROAGENTS.md +56 -21
- package/.proagents/REPLIT.md +16 -2
- package/.proagents/docs/command-details.md +985 -82
- package/.proagents/prompts/11-session-tracking.md +11 -5
- package/.proagents/worklog/_context.md +31 -1
- package/.proagents/worklog/ai-stats.json +19 -0
- package/README.md +92 -9
- package/bin/proagents.js +132 -1
- package/lib/commands/changelog.js +389 -0
- package/lib/commands/completion.js +413 -0
- package/lib/commands/config.js +248 -0
- package/lib/commands/doctor.js +222 -25
- package/lib/commands/help.js +22 -2
- package/lib/commands/init.js +2 -1
- package/lib/commands/open.js +188 -0
- package/lib/commands/release.js +1007 -0
- package/lib/commands/restore.js +150 -0
- package/lib/commands/stats.js +320 -0
- package/lib/commands/uninstall.js +98 -4
- package/lib/commands/upgrade.js +102 -10
- package/lib/commands/version.js +140 -0
- package/package.json +1 -1
|
@@ -2,6 +2,47 @@
|
|
|
2
2
|
|
|
3
3
|
This project uses ProAgents - an AI-agnostic development workflow framework.
|
|
4
4
|
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## ⚠️ MANDATORY: Auto-Sync on EVERY pa: Command
|
|
8
|
+
|
|
9
|
+
**BEFORE executing ANY `pa:` command, AI MUST run these steps FIRST:**
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# STEP 1: Load context (REQUIRED - do this FIRST)
|
|
13
|
+
cat .proagents/worklog/_context.md 2>/dev/null
|
|
14
|
+
cat .proagents/changelog/_recent.md 2>/dev/null | head -30
|
|
15
|
+
tail -10 .proagents/activity.log 2>/dev/null
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
**This applies to ALL commands including:**
|
|
19
|
+
- `pa:fix "bug"` - Load context FIRST, then fix
|
|
20
|
+
- `pa:feature "name"` - Load context FIRST, then start feature
|
|
21
|
+
- `pa:test` - Load context FIRST, then run tests
|
|
22
|
+
- `pa:doc` - Load context FIRST, then generate docs
|
|
23
|
+
- **EVERY pa: command** - Load context FIRST
|
|
24
|
+
|
|
25
|
+
**AFTER executing ANY `pa:` command that changes files, AI MUST:**
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
# Update worklogs and changelogs
|
|
29
|
+
# 1. Prepend to .proagents/changelog/_recent.md
|
|
30
|
+
# 2. Update .proagents/worklog/_context.md
|
|
31
|
+
# 3. Update .proagents/changelog/modules/[module].md
|
|
32
|
+
# 4. Log to .proagents/activity.log
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**Example flow for `pa:fix "login bug"`:**
|
|
36
|
+
```
|
|
37
|
+
1. AI reads _context.md, _recent.md, activity.log ← AUTO-SYNC FIRST
|
|
38
|
+
2. AI analyzes and fixes the bug ← DO THE WORK
|
|
39
|
+
3. AI updates _recent.md with fix details ← LOG THE CHANGE
|
|
40
|
+
4. AI updates _context.md with current state ← UPDATE CONTEXT
|
|
41
|
+
5. AI logs to activity.log ← LOG ACTIVITY
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
5
46
|
## CRITICAL PRINCIPLE: ALWAYS DO, NEVER JUST TELL
|
|
6
47
|
|
|
7
48
|
**ProAgents automates development. The AI must EXECUTE actions, not give instructions for users to follow.**
|
|
@@ -31,12 +72,32 @@ This project uses ProAgents - an AI-agnostic development workflow framework.
|
|
|
31
72
|
|
|
32
73
|
**Multiple AI tools may work on this project simultaneously. They do NOT share context.**
|
|
33
74
|
|
|
75
|
+
### AUTOMATIC Context Loading (EVERY pa: Command)
|
|
76
|
+
|
|
77
|
+
**On EVERY `pa:` command, AI MUST FIRST load context:**
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
# MANDATORY FIRST STEP - Run before ANY pa: command
|
|
81
|
+
cat .proagents/worklog/_context.md 2>/dev/null
|
|
82
|
+
cat .proagents/changelog/_recent.md 2>/dev/null | head -30
|
|
83
|
+
tail -10 .proagents/activity.log 2>/dev/null
|
|
84
|
+
|
|
85
|
+
# Also check for conflicts
|
|
86
|
+
cat .proagents/.active-files 2>/dev/null
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
**This is NOT optional. This is NOT just for "first command".**
|
|
90
|
+
**EVERY pa: command = Load context FIRST, then execute.**
|
|
91
|
+
|
|
92
|
+
**User does NOT need to type pa:sync - AI does it automatically on EVERY pa: command.**
|
|
93
|
+
|
|
34
94
|
### Before ANY `pa:` command:
|
|
35
95
|
|
|
36
|
-
1. **
|
|
96
|
+
1. **Auto-load context** - Read `worklog/_context.md` and `changelog/_recent.md`
|
|
37
97
|
2. **Check activity log** - `./.proagents/activity.log`
|
|
38
98
|
3. **Check feedback** - `./.proagents/feedback.md` (learn from past corrections!)
|
|
39
99
|
4. **Check watchlist** - `./.proagents/watchlist.yaml` (files requiring confirmation)
|
|
100
|
+
5. **Check file locks** - `./.proagents/.active-files`
|
|
40
101
|
|
|
41
102
|
### After ANY `pa:` command:
|
|
42
103
|
|
|
@@ -169,21 +230,109 @@ When removing or correcting previous changes, also log:
|
|
|
169
230
|
|
|
170
231
|
---
|
|
171
232
|
|
|
172
|
-
##
|
|
233
|
+
## Smart Context Features (AUTO)
|
|
234
|
+
|
|
235
|
+
### 1. Quick Summary (Top of _context.md)
|
|
236
|
+
|
|
237
|
+
After EVERY change, AI regenerates Quick Summary (max 5 lines):
|
|
238
|
+
|
|
239
|
+
```
|
|
240
|
+
## Quick Summary
|
|
241
|
+
Last: Claude fixed login bug #123 (2 hrs ago)
|
|
242
|
+
Active: user-auth feature (70%)
|
|
243
|
+
Pending: 2 tasks
|
|
244
|
+
Tests: ✓ Passing
|
|
245
|
+
```
|
|
173
246
|
|
|
174
|
-
|
|
247
|
+
### 2. Context Changed Alert
|
|
175
248
|
|
|
176
|
-
|
|
249
|
+
On first pa: command, check if another AI worked:
|
|
177
250
|
|
|
178
|
-
|
|
251
|
+
```bash
|
|
252
|
+
# AI compares last session vs _recent.md
|
|
253
|
+
LAST_AI=$(grep "Last AI:" .proagents/worklog/_context.md | cut -d: -f2)
|
|
254
|
+
RECENT_AI=$(head -20 .proagents/changelog/_recent.md | grep "AI:" | head -1)
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
If different AI made changes, show:
|
|
258
|
+
```
|
|
259
|
+
⚠️ CONTEXT CHANGED
|
|
260
|
+
Gemini made 3 changes 1 hour ago:
|
|
261
|
+
- Fixed API endpoint
|
|
262
|
+
- Updated auth flow
|
|
263
|
+
Review before continuing? [Y/n]
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
### 3. Test Status Auto-Update
|
|
267
|
+
|
|
268
|
+
After ANY test command, update _context.md:
|
|
269
|
+
|
|
270
|
+
```
|
|
271
|
+
## Test Status
|
|
272
|
+
Status: ✓ 45 passing | ✗ 2 failing
|
|
273
|
+
Last Run: 2024-03-11 15:30
|
|
274
|
+
Failing: auth.test.ts (line 45)
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
### 4. Feature Progress Auto-Calculate
|
|
278
|
+
|
|
279
|
+
```
|
|
280
|
+
## Feature Progress
|
|
281
|
+
Feature: user-auth
|
|
282
|
+
Progress: ████████░░ 80%
|
|
283
|
+
Completed: 8/10 tasks
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
Calculate: (completed tasks / total tasks) × 100
|
|
287
|
+
|
|
288
|
+
### 5. Auto-Archive Old Logs (7+ days)
|
|
289
|
+
|
|
290
|
+
```bash
|
|
291
|
+
mkdir -p .proagents/worklog/archive
|
|
292
|
+
# Move files older than 7 days
|
|
293
|
+
find .proagents/worklog -maxdepth 1 -name "2*.md" -mtime +7 -exec mv {} .proagents/worklog/archive/ \;
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
### 6. AI Performance Stats
|
|
297
|
+
|
|
298
|
+
Update `worklog/ai-stats.json` after each session:
|
|
299
|
+
|
|
300
|
+
```json
|
|
301
|
+
{
|
|
302
|
+
"Claude": { "sessions": 15, "tasks": 45, "reverts": 2 }
|
|
303
|
+
}
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## Cross-AI Session Tracking (AUTOMATIC)
|
|
309
|
+
|
|
310
|
+
**All session tracking is AUTOMATIC. User does NOT need to run these commands manually.**
|
|
311
|
+
|
|
312
|
+
### Automatic Behavior:
|
|
313
|
+
|
|
314
|
+
| What | When | User Action Needed |
|
|
315
|
+
|------|------|-------------------|
|
|
316
|
+
| Load context | First pa: command | **None** - Auto |
|
|
317
|
+
| Log changes | After each edit | **None** - Auto |
|
|
318
|
+
| Update _context.md | After each edit | **None** - Auto |
|
|
319
|
+
| Check conflicts | Before editing files | **None** - Auto |
|
|
320
|
+
| Update Quick Summary | After each edit | **None** - Auto |
|
|
321
|
+
| Context changed alert | First pa: command | **None** - Auto |
|
|
322
|
+
| Update test status | After tests | **None** - Auto |
|
|
323
|
+
| Update AI stats | After session | **None** - Auto |
|
|
324
|
+
|
|
325
|
+
### On First pa: Command (Auto-Sync):
|
|
326
|
+
|
|
327
|
+
AI automatically reads context (no manual pa:sync needed):
|
|
179
328
|
```bash
|
|
180
329
|
cat .proagents/worklog/_context.md # Current state
|
|
181
330
|
cat .proagents/changelog/_recent.md # Recent changes
|
|
182
|
-
|
|
183
|
-
cat .proagents
|
|
331
|
+
tail -10 .proagents/activity.log # Recent commands
|
|
332
|
+
cat .proagents/.active-files 2>/dev/null # Check file locks
|
|
184
333
|
```
|
|
185
334
|
|
|
186
|
-
### During Work:
|
|
335
|
+
### During Work (Auto-Log):
|
|
187
336
|
|
|
188
337
|
After ANY code modification, AI must update:
|
|
189
338
|
|
|
@@ -373,11 +522,14 @@ Auto-detect issue numbers from user input and include in changelog:
|
|
|
373
522
|
### Collaboration
|
|
374
523
|
| Command | Action |
|
|
375
524
|
|---------|--------|
|
|
376
|
-
| `pa:activity` | Show AI activity
|
|
525
|
+
| `pa:activity` | **Show ALL AI platforms activity** (not just yours!) |
|
|
377
526
|
| `pa:lock` | Show lock status |
|
|
378
527
|
| `pa:handoff` | Create handoff notes |
|
|
379
528
|
| `pa:feedback "text"` | Log feedback for AI learning |
|
|
380
529
|
| `pa:decision "title"` | Log architectural decision |
|
|
530
|
+
| `pa:learn "pattern"` | Teach AI a pattern → `.learning/patterns.json` |
|
|
531
|
+
| `pa:forget "pattern"` | Remove learned pattern |
|
|
532
|
+
| `pa:learning` | Show learning report (patterns, corrections, stats) |
|
|
381
533
|
|
|
382
534
|
### Cross-AI Continuity (CRITICAL)
|
|
383
535
|
| Command | Action |
|
|
@@ -407,7 +559,7 @@ Auto-detect issue numbers from user input and include in changelog:
|
|
|
407
559
|
|---------|--------|
|
|
408
560
|
| `pa:history` | Show command history (read activity.log) |
|
|
409
561
|
| `pa:progress` | Show feature progress |
|
|
410
|
-
| `pa:activity` | Show
|
|
562
|
+
| `pa:activity` | **Show ALL AI platforms activity** (cross-AI visibility) |
|
|
411
563
|
|
|
412
564
|
---
|
|
413
565
|
|
|
@@ -442,34 +594,189 @@ When user types a `pa:` command:
|
|
|
442
594
|
|
|
443
595
|
---
|
|
444
596
|
|
|
597
|
+
## pa:help Execution
|
|
598
|
+
|
|
599
|
+
**Show comprehensive help with examples and categories.**
|
|
600
|
+
|
|
601
|
+
**Command variations:**
|
|
602
|
+
```
|
|
603
|
+
pa:help # Full help with examples
|
|
604
|
+
pa:help <command> # Detailed help for specific command
|
|
605
|
+
pa:help --quick # Quick reference only
|
|
606
|
+
pa:help --examples # Show more examples
|
|
607
|
+
```
|
|
608
|
+
|
|
609
|
+
**Output format:**
|
|
610
|
+
```
|
|
611
|
+
ProAgents Help
|
|
612
|
+
══════════════════════════════════════════════════════════
|
|
613
|
+
|
|
614
|
+
🚀 Quick Start Examples
|
|
615
|
+
───────────────────────
|
|
616
|
+
pa:feature "user authentication" Start a new feature
|
|
617
|
+
pa:fix "login button not working" Quick bug fix
|
|
618
|
+
pa:status Check current progress
|
|
619
|
+
pa:resume Continue where you left off
|
|
620
|
+
|
|
621
|
+
📋 Common Workflows
|
|
622
|
+
───────────────────
|
|
623
|
+
Feature Development:
|
|
624
|
+
pa:feature → pa:analyze → pa:design → pa:implement → pa:test → pa:deploy
|
|
625
|
+
|
|
626
|
+
Bug Fix (fast track):
|
|
627
|
+
pa:fix "description" → auto-analyze → fix → test → done
|
|
628
|
+
|
|
629
|
+
Returning to Work:
|
|
630
|
+
pa:sync → pa:resume → continue working
|
|
631
|
+
|
|
632
|
+
📂 Commands by Category
|
|
633
|
+
───────────────────────
|
|
634
|
+
|
|
635
|
+
Core Commands:
|
|
636
|
+
pa:feature "name" Start new feature with full workflow
|
|
637
|
+
pa:fix "bug" Quick bug fix mode
|
|
638
|
+
pa:status Show current progress (enhanced)
|
|
639
|
+
pa:help Show this help
|
|
640
|
+
|
|
641
|
+
Workflow Phases:
|
|
642
|
+
pa:analyze Deep codebase analysis
|
|
643
|
+
pa:requirements Gather requirements
|
|
644
|
+
pa:design UI/Architecture design
|
|
645
|
+
pa:plan Create implementation plan
|
|
646
|
+
pa:implement Execute implementation
|
|
647
|
+
pa:test Create and run tests
|
|
648
|
+
pa:review Code review workflow
|
|
649
|
+
pa:doc Generate documentation
|
|
650
|
+
pa:deploy Deployment preparation
|
|
651
|
+
|
|
652
|
+
Progress & History:
|
|
653
|
+
pa:progress Visual progress (all features)
|
|
654
|
+
pa:status Detailed status (current feature)
|
|
655
|
+
pa:activity All AI activity with filters
|
|
656
|
+
pa:history Command history with stats
|
|
657
|
+
|
|
658
|
+
Cross-AI Collaboration:
|
|
659
|
+
pa:sync Load context + visual diff
|
|
660
|
+
pa:resume Quick resume with next action
|
|
661
|
+
pa:handoff Create handoff notes
|
|
662
|
+
pa:conflict-check Check for conflicts
|
|
663
|
+
|
|
664
|
+
Learning & Tracking:
|
|
665
|
+
pa:feedback "text" Log feedback for AI learning
|
|
666
|
+
pa:decision "title" Log architectural decision
|
|
667
|
+
pa:error "desc" Log error and solution
|
|
668
|
+
pa:learn "pattern" Teach AI a pattern
|
|
669
|
+
pa:forget "pattern" Remove learned pattern
|
|
670
|
+
pa:learning Show learning report
|
|
671
|
+
|
|
672
|
+
💡 Tips
|
|
673
|
+
───────
|
|
674
|
+
• Use aliases: pa:f (feature), pa:s (status), pa:h (help)
|
|
675
|
+
• AI auto-syncs on every command - no manual sync needed
|
|
676
|
+
• Changes are auto-logged to changelog
|
|
677
|
+
|
|
678
|
+
Type "pa:help <command>" for detailed help on a specific command.
|
|
679
|
+
Example: pa:help feature
|
|
680
|
+
```
|
|
681
|
+
|
|
682
|
+
**For specific command help (pa:help feature):**
|
|
683
|
+
```
|
|
684
|
+
pa:feature - Start New Feature
|
|
685
|
+
══════════════════════════════════════════════════════════
|
|
686
|
+
|
|
687
|
+
Usage:
|
|
688
|
+
pa:feature "feature name"
|
|
689
|
+
pa:feature "user authentication"
|
|
690
|
+
|
|
691
|
+
What it does:
|
|
692
|
+
1. Creates feature folder in .proagents/active-features/
|
|
693
|
+
2. Analyzes codebase for relevant files
|
|
694
|
+
3. Guides through full workflow phases
|
|
695
|
+
4. Tracks progress and tasks
|
|
696
|
+
|
|
697
|
+
Workflow phases:
|
|
698
|
+
Analysis → Requirements → Design → Planning →
|
|
699
|
+
Implementation → Testing → Review → Documentation → Deployment
|
|
700
|
+
|
|
701
|
+
Options:
|
|
702
|
+
pa:feature "name" --fast Skip optional phases
|
|
703
|
+
pa:feature "name" --no-tests Skip test generation
|
|
704
|
+
|
|
705
|
+
Related commands:
|
|
706
|
+
pa:feature-list List all features
|
|
707
|
+
pa:feature-complete Mark feature as complete
|
|
708
|
+
pa:status Check feature status
|
|
709
|
+
```
|
|
710
|
+
|
|
711
|
+
---
|
|
712
|
+
|
|
445
713
|
## pa:history Execution
|
|
446
714
|
|
|
447
715
|
**AI MUST read and display the actual log file content.**
|
|
448
716
|
|
|
717
|
+
**Command variations:**
|
|
718
|
+
```
|
|
719
|
+
pa:history # All recent history (default)
|
|
720
|
+
pa:history --today # Today's commands only
|
|
721
|
+
pa:history --ai Claude # Filter by AI platform
|
|
722
|
+
pa:history --command pa:fix # Filter by command type
|
|
723
|
+
pa:history --search "auth" # Search in descriptions
|
|
724
|
+
pa:history --stats # Show command statistics
|
|
725
|
+
```
|
|
726
|
+
|
|
727
|
+
**Steps:**
|
|
449
728
|
1. Read `./.proagents/activity.log`
|
|
450
|
-
2. Filter
|
|
451
|
-
3. Display entries
|
|
729
|
+
2. Filter based on options (if provided)
|
|
730
|
+
3. Display entries with grouping and icons
|
|
452
731
|
4. NEVER say "no commands yet" without reading the file
|
|
453
732
|
|
|
454
733
|
```bash
|
|
455
734
|
# AI runs this:
|
|
456
|
-
grep -v "^#" .proagents/activity.log | grep -v "^$" | grep -v "Activity Log Start" | tail -
|
|
735
|
+
grep -v "^#" .proagents/activity.log | grep -v "^$" | grep -v "Activity Log Start" | tail -50
|
|
457
736
|
```
|
|
458
737
|
|
|
459
|
-
|
|
738
|
+
**Enhanced output format:**
|
|
460
739
|
```
|
|
461
|
-
|
|
462
|
-
|
|
740
|
+
Command History
|
|
741
|
+
══════════════════════════════════════════════════════════
|
|
742
|
+
|
|
743
|
+
Today (12 commands)
|
|
744
|
+
───────────────────
|
|
745
|
+
[16:00] [Gemini] ✅ pa:test - 12 tests passed
|
|
746
|
+
[15:30] [Cursor] 🐛 pa:fix - Fixed login validation
|
|
747
|
+
[15:15] [Claude] 🔍 pa:analyze - Analyzed 45 files
|
|
748
|
+
[15:10] [Claude] ✨ pa:feature - Started "user-auth"
|
|
749
|
+
|
|
750
|
+
Yesterday (8 commands)
|
|
751
|
+
──────────────────────
|
|
752
|
+
[18:00] [ChatGPT] 📝 pa:doc - Updated README
|
|
753
|
+
[16:30] [Claude] 🔨 pa:implement - Created UserService
|
|
754
|
+
|
|
755
|
+
──────────────────────────────────────────────────────────
|
|
756
|
+
Stats: 20 commands | 4 AIs | Most used: pa:implement (6)
|
|
463
757
|
```
|
|
464
758
|
|
|
465
|
-
**
|
|
759
|
+
**With --stats option:**
|
|
466
760
|
```
|
|
467
|
-
Command
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
761
|
+
Command Statistics
|
|
762
|
+
══════════════════════════════════════════════════════════
|
|
763
|
+
|
|
764
|
+
By Command:
|
|
765
|
+
pa:implement ████████████████ 12
|
|
766
|
+
pa:fix ████████ 6
|
|
767
|
+
pa:test ██████ 4
|
|
768
|
+
pa:analyze ████ 3
|
|
769
|
+
|
|
770
|
+
By AI Platform:
|
|
771
|
+
Claude ████████████████ 14
|
|
772
|
+
Cursor ████████ 7
|
|
773
|
+
Gemini ████ 3
|
|
774
|
+
ChatGPT ██ 1
|
|
775
|
+
|
|
776
|
+
By Day:
|
|
777
|
+
Today ████████████████ 12
|
|
778
|
+
Yesterday ████████ 8
|
|
779
|
+
Earlier ████ 5
|
|
473
780
|
```
|
|
474
781
|
|
|
475
782
|
---
|
|
@@ -480,25 +787,50 @@ Command History
|
|
|
480
787
|
|
|
481
788
|
1. Read `./.proagents/active-features/_index.json`
|
|
482
789
|
2. Read each feature's `status.json`
|
|
483
|
-
3.
|
|
790
|
+
3. Read `./.proagents/activity.log` for last AI info
|
|
791
|
+
4. Calculate progress and display enhanced output
|
|
484
792
|
|
|
485
793
|
```bash
|
|
486
794
|
# AI runs this:
|
|
487
795
|
cat .proagents/active-features/_index.json
|
|
488
796
|
cat .proagents/active-features/feature-*/status.json
|
|
797
|
+
cat .proagents/activity.log | tail -50
|
|
489
798
|
```
|
|
490
799
|
|
|
491
|
-
**Output format:**
|
|
800
|
+
**Output format (enhanced):**
|
|
801
|
+
```
|
|
802
|
+
Feature Progress
|
|
803
|
+
════════════════════════════════════════════════════════════
|
|
804
|
+
|
|
805
|
+
user-auth ████████████████░░░░ 80% (8/10 tasks) 3d Claude
|
|
806
|
+
└─ Analysis ✓ → Requirements ✓ → Design ✓ → Implementation ✓ → Testing ● → Review ○
|
|
807
|
+
|
|
808
|
+
dashboard ████████░░░░░░░░░░░░ 40% (4/10 tasks) 5d Cursor
|
|
809
|
+
└─ Analysis ✓ → Requirements ✓ → Design ● → Implementation ○ → Testing ○ → Review ○
|
|
810
|
+
|
|
811
|
+
notifications ██░░░░░░░░░░░░░░░░░░ 10% (1/10 tasks) 1d ChatGPT
|
|
812
|
+
└─ Analysis ● → Requirements ○ → Design ○ → Implementation ○ → Testing ○ → Review ○
|
|
813
|
+
|
|
814
|
+
────────────────────────────────────────────────────────────
|
|
815
|
+
Summary: 3 active | 5 completed | Avg: 4.2 days/feature
|
|
816
|
+
```
|
|
817
|
+
|
|
818
|
+
**Legend:**
|
|
819
|
+
- `✓` = Phase completed
|
|
820
|
+
- `●` = Current phase (in progress)
|
|
821
|
+
- `○` = Phase not started
|
|
822
|
+
- `(8/10 tasks)` = Completed tasks / Total tasks
|
|
823
|
+
- `3d` = Days since feature started
|
|
824
|
+
- `Claude` = Last AI that worked on this feature
|
|
825
|
+
|
|
826
|
+
**If no features exist:**
|
|
492
827
|
```
|
|
493
828
|
Feature Progress
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
Last: Ran 12 unit tests
|
|
829
|
+
════════════════════════════════════════════════════════════
|
|
830
|
+
|
|
831
|
+
No active features.
|
|
498
832
|
|
|
499
|
-
|
|
500
|
-
Phase: implementation
|
|
501
|
-
Last: Created 3 components
|
|
833
|
+
Start one with: pa:feature "feature name"
|
|
502
834
|
```
|
|
503
835
|
|
|
504
836
|
---
|
|
@@ -507,28 +839,888 @@ dashboard [████░░░░░░] 40%
|
|
|
507
839
|
|
|
508
840
|
**IMPORTANT:** Show REAL data only, never example data.
|
|
509
841
|
|
|
842
|
+
**Steps:**
|
|
510
843
|
1. Read `./.proagents/active-features/_index.json`
|
|
511
|
-
2.
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
844
|
+
2. Read current feature's `status.json`
|
|
845
|
+
3. Run: `git status` and `git log --oneline -5`
|
|
846
|
+
4. Read `./.proagents/activity.log | tail -20`
|
|
847
|
+
5. Display enhanced status
|
|
848
|
+
|
|
849
|
+
**If no features:**
|
|
850
|
+
```
|
|
851
|
+
Project Status
|
|
852
|
+
══════════════════════════════════════════════════════════
|
|
853
|
+
|
|
854
|
+
No active features.
|
|
855
|
+
|
|
856
|
+
Start with:
|
|
857
|
+
→ pa:feature "feature name"
|
|
858
|
+
→ pa:fix "bug description"
|
|
859
|
+
```
|
|
860
|
+
|
|
861
|
+
**If has features (enhanced output):**
|
|
862
|
+
```
|
|
863
|
+
Project Status
|
|
864
|
+
══════════════════════════════════════════════════════════
|
|
865
|
+
|
|
866
|
+
Feature: user-auth Branch: feature/user-auth
|
|
867
|
+
Phase: Implementation (4/6) Started: 3d ago
|
|
868
|
+
Progress: ████████████░░░░░░░░ 60% Time: ~4.5h
|
|
869
|
+
|
|
870
|
+
Tasks: 3/5 completed
|
|
871
|
+
✓ Create auth service
|
|
872
|
+
✓ Add login endpoint
|
|
873
|
+
✓ Add register endpoint
|
|
874
|
+
→ Implement JWT tokens (in progress)
|
|
875
|
+
○ Add password reset
|
|
876
|
+
|
|
877
|
+
Files: 8 modified (+245, -32) Tests: 12 ✓ | 2 ✗ | 80% cov
|
|
878
|
+
Contributors: Claude (60%), Cursor (40%)
|
|
879
|
+
|
|
880
|
+
──────────────────────────────────────────────────────────
|
|
881
|
+
Next: Complete JWT token implementation
|
|
882
|
+
```
|
|
883
|
+
|
|
884
|
+
**Status indicators:**
|
|
885
|
+
- `✓` = Task completed
|
|
886
|
+
- `→` = In progress
|
|
887
|
+
- `○` = Not started
|
|
888
|
+
- `⚠️ BLOCKED:` = Show if blockers exist
|
|
889
|
+
|
|
890
|
+
**Summary line (for multiple features):**
|
|
891
|
+
```
|
|
892
|
+
──────────────────────────────────────────────────────────
|
|
893
|
+
Summary: 2 active | 1 paused | 5 completed
|
|
894
|
+
```
|
|
895
|
+
|
|
896
|
+
---
|
|
897
|
+
|
|
898
|
+
## pa:activity Execution
|
|
899
|
+
|
|
900
|
+
**CRITICAL: Show ALL AI platforms, not just your own!**
|
|
901
|
+
|
|
902
|
+
The purpose of `pa:activity` is cross-AI visibility. Users need to see what ALL AIs have done.
|
|
903
|
+
|
|
904
|
+
**Command variations:**
|
|
905
|
+
```
|
|
906
|
+
pa:activity # All recent activity (default)
|
|
907
|
+
pa:activity --today # Today's activity only
|
|
908
|
+
pa:activity --ai Claude # Filter by AI platform
|
|
909
|
+
pa:activity --command pa:fix # Filter by command type
|
|
910
|
+
pa:activity --files # Show files changed per action
|
|
911
|
+
```
|
|
912
|
+
|
|
913
|
+
**Steps:**
|
|
914
|
+
1. Run: `cat .proagents/activity.log | tail -50`
|
|
915
|
+
2. Display ALL entries (Claude, Cursor, ChatGPT, Gemini, Copilot, etc.)
|
|
916
|
+
3. Group by time period (Today, Yesterday, Earlier)
|
|
917
|
+
4. Add action icons based on command type
|
|
918
|
+
5. Show summary with action count per platform
|
|
919
|
+
|
|
920
|
+
**Action icons:**
|
|
921
|
+
| Command | Icon | Description |
|
|
922
|
+
|---------|------|-------------|
|
|
923
|
+
| `pa:feature` | ✨ | New feature |
|
|
924
|
+
| `pa:fix` | 🐛 | Bug fix |
|
|
925
|
+
| `pa:test` | ✅ | Testing |
|
|
926
|
+
| `pa:doc` | 📝 | Documentation |
|
|
927
|
+
| `pa:implement` | 🔨 | Implementation |
|
|
928
|
+
| `pa:analyze` | 🔍 | Analysis |
|
|
929
|
+
| `pa:design` | 🎨 | Design |
|
|
930
|
+
| `pa:review` | 👀 | Code review |
|
|
931
|
+
| `pa:deploy` | 🚀 | Deployment |
|
|
932
|
+
|
|
933
|
+
**Output format (enhanced):**
|
|
934
|
+
```
|
|
935
|
+
Recent Activity (All AI Platforms)
|
|
936
|
+
══════════════════════════════════════════════════════════
|
|
937
|
+
|
|
938
|
+
Today (5 actions)
|
|
939
|
+
─────────────────
|
|
940
|
+
[16:00] [Claude] ✨ pa:feature - Started user-auth
|
|
941
|
+
└─ 2 files: feature.json, status.json
|
|
942
|
+
[15:30] [Cursor] 🐛 pa:fix - Fixed login validation bug
|
|
943
|
+
└─ 1 file: auth.service.ts (+12, -3)
|
|
944
|
+
[15:00] [Gemini] ✅ pa:test - 12 tests passed, 2 failing
|
|
945
|
+
[14:30] [Claude] 🔨 pa:implement - Created UserService
|
|
946
|
+
└─ 3 files: user.service.ts, user.controller.ts, user.module.ts
|
|
947
|
+
[14:00] [ChatGPT] 🔍 pa:analyze - Analyzed auth module
|
|
948
|
+
|
|
949
|
+
Yesterday (8 actions)
|
|
950
|
+
─────────────────────
|
|
951
|
+
[18:00] [Claude] 🎨 pa:design - Created component diagram
|
|
952
|
+
[16:30] [Cursor] 📝 pa:doc - Updated API documentation
|
|
953
|
+
...
|
|
954
|
+
|
|
955
|
+
──────────────────────────────────────────────────────────
|
|
956
|
+
Summary: 13 actions | 4 AIs active | Last 48h
|
|
957
|
+
Claude: 5 | Cursor: 4 | Gemini: 2 | ChatGPT: 2
|
|
958
|
+
```
|
|
959
|
+
|
|
960
|
+
**IMPORTANT:**
|
|
961
|
+
- Show ALL platforms in the log, not just yours
|
|
962
|
+
- This enables cross-AI collaboration
|
|
963
|
+
- Users switch between AIs and need full visibility
|
|
964
|
+
- Group by time for better readability
|
|
965
|
+
- Show files changed when available (from changelog)
|
|
966
|
+
|
|
967
|
+
---
|
|
968
|
+
|
|
969
|
+
## pa:deploy Execution
|
|
970
|
+
|
|
971
|
+
**Show interactive deployment checklist with real-time status.**
|
|
972
|
+
|
|
973
|
+
**Command variations:**
|
|
974
|
+
```
|
|
975
|
+
pa:deploy # Full deployment workflow
|
|
976
|
+
pa:deploy-check # Pre-deployment checklist only
|
|
977
|
+
pa:deploy-staging # Deploy to staging
|
|
978
|
+
pa:deploy-prod # Deploy to production
|
|
979
|
+
```
|
|
980
|
+
|
|
981
|
+
**Steps:**
|
|
982
|
+
1. Read `./.proagents/prompts/08-deployment.md`
|
|
983
|
+
2. Run pre-deployment checks (tests, lint, build)
|
|
984
|
+
3. Display interactive checklist with real-time status
|
|
985
|
+
4. Guide through deployment steps
|
|
986
|
+
5. Show post-deployment verification
|
|
987
|
+
|
|
988
|
+
**Output format (enhanced checklist):**
|
|
989
|
+
```
|
|
990
|
+
Deployment Checklist
|
|
991
|
+
═══════════════════════════════════════════════════════════
|
|
992
|
+
|
|
993
|
+
📋 Pre-Deployment
|
|
994
|
+
─────────────────
|
|
995
|
+
✓ All tests passing 12/12 tests
|
|
996
|
+
✓ No linting errors 0 errors
|
|
997
|
+
✓ Build successful 2.3s
|
|
998
|
+
✓ No console.log statements cleaned
|
|
999
|
+
○ Version bumped pending
|
|
1000
|
+
○ Changelog updated pending
|
|
1001
|
+
|
|
1002
|
+
🔒 Security
|
|
1003
|
+
───────────
|
|
1004
|
+
✓ No hardcoded secrets scanned
|
|
1005
|
+
✓ Dependencies audited 0 vulnerabilities
|
|
1006
|
+
○ Security review approved awaiting
|
|
1007
|
+
|
|
1008
|
+
📦 Build & Assets
|
|
1009
|
+
─────────────────
|
|
1010
|
+
✓ Bundle size acceptable 245kb (limit: 300kb)
|
|
1011
|
+
✓ Assets optimized images compressed
|
|
1012
|
+
○ Source maps generated pending
|
|
1013
|
+
|
|
1014
|
+
📝 Documentation
|
|
1015
|
+
────────────────
|
|
1016
|
+
✓ README updated current
|
|
1017
|
+
○ API docs updated pending
|
|
1018
|
+
○ Release notes prepared pending
|
|
1019
|
+
|
|
1020
|
+
🚀 Ready to Deploy?
|
|
1021
|
+
───────────────────
|
|
1022
|
+
Status: 8/14 checks passed
|
|
1023
|
+
|
|
1024
|
+
Blockers:
|
|
1025
|
+
⚠️ Version not bumped - run: npm version patch
|
|
1026
|
+
⚠️ Changelog needs update - run: pa:changelog
|
|
1027
|
+
⚠️ Security review pending
|
|
1028
|
+
|
|
1029
|
+
Run "pa:deploy --fix" to auto-fix resolvable issues.
|
|
1030
|
+
```
|
|
1031
|
+
|
|
1032
|
+
**During deployment:**
|
|
1033
|
+
```
|
|
1034
|
+
Deploying to Staging
|
|
1035
|
+
═══════════════════════════════════════════════════════════
|
|
1036
|
+
|
|
1037
|
+
[1/5] Building application... ✓ Complete (2.3s)
|
|
1038
|
+
[2/5] Running migrations... ✓ Complete (0.5s)
|
|
1039
|
+
[3/5] Deploying to staging... ● In progress...
|
|
1040
|
+
[4/5] Running smoke tests... ○ Pending
|
|
1041
|
+
[5/5] Verifying health checks... ○ Pending
|
|
1042
|
+
|
|
1043
|
+
Progress: ██████████░░░░░░░░░░ 50%
|
|
1044
|
+
```
|
|
1045
|
+
|
|
1046
|
+
**Post-deployment verification:**
|
|
1047
|
+
```
|
|
1048
|
+
Post-Deployment Verification
|
|
1049
|
+
═══════════════════════════════════════════════════════════
|
|
1050
|
+
|
|
1051
|
+
🏥 Health Checks
|
|
1052
|
+
────────────────
|
|
1053
|
+
✓ API responding 200 OK (45ms)
|
|
1054
|
+
✓ Database connected healthy
|
|
1055
|
+
✓ Cache working redis OK
|
|
1056
|
+
✓ External services all reachable
|
|
1057
|
+
|
|
1058
|
+
📊 Metrics (last 5 min)
|
|
1059
|
+
───────────────────────
|
|
1060
|
+
Error rate: 0.1% (baseline: 0.2%) ✓ OK
|
|
1061
|
+
Response time: 120ms (baseline: 150ms) ✓ OK
|
|
1062
|
+
Requests/sec: 450 (baseline: 400) ✓ OK
|
|
1063
|
+
|
|
1064
|
+
🔍 Smoke Tests
|
|
1065
|
+
──────────────
|
|
1066
|
+
✓ Homepage loads 200ms
|
|
1067
|
+
✓ Login works passed
|
|
1068
|
+
✓ API endpoints responding 12/12 OK
|
|
1069
|
+
✓ Critical flows working all passed
|
|
1070
|
+
|
|
1071
|
+
══════════════════════════════════════════════════════════
|
|
1072
|
+
✅ Deployment Successful!
|
|
1073
|
+
|
|
1074
|
+
Next steps:
|
|
1075
|
+
• Monitor metrics for 30 min
|
|
1076
|
+
• Check error logs: pa:logs --errors
|
|
1077
|
+
• If issues, rollback: pa:rollback
|
|
1078
|
+
```
|
|
1079
|
+
|
|
1080
|
+
**Rollback available:**
|
|
1081
|
+
```
|
|
1082
|
+
⚠️ Issues Detected - Rollback Available
|
|
1083
|
+
═══════════════════════════════════════════════════════════
|
|
1084
|
+
|
|
1085
|
+
Problem: Error rate increased to 5% (threshold: 2%)
|
|
1086
|
+
|
|
1087
|
+
Options:
|
|
1088
|
+
[1] Rollback to previous version (v1.2.3)
|
|
1089
|
+
[2] Investigate and fix forward
|
|
1090
|
+
[3] Disable feature flag only
|
|
1091
|
+
|
|
1092
|
+
Rollback command: pa:rollback --to v1.2.3
|
|
1093
|
+
```
|
|
1094
|
+
|
|
1095
|
+
**Legend:**
|
|
1096
|
+
- `✓` = Check passed
|
|
1097
|
+
- `●` = In progress
|
|
1098
|
+
- `○` = Pending
|
|
1099
|
+
- `✗` = Failed
|
|
1100
|
+
- `⚠️` = Warning/Blocker
|
|
1101
|
+
|
|
1102
|
+
---
|
|
1103
|
+
|
|
1104
|
+
## pa:test Execution
|
|
1105
|
+
|
|
1106
|
+
**Run tests with enhanced coverage visualization.**
|
|
1107
|
+
|
|
1108
|
+
**Command variations:**
|
|
1109
|
+
```
|
|
1110
|
+
pa:test # Run all tests with coverage
|
|
1111
|
+
pa:test-unit # Unit tests only
|
|
1112
|
+
pa:test-e2e # E2E tests only
|
|
1113
|
+
pa:test-watch # Watch mode
|
|
1114
|
+
pa:test "file" # Test specific file
|
|
1115
|
+
```
|
|
1116
|
+
|
|
1117
|
+
**Steps:**
|
|
1118
|
+
1. Read `./.proagents/prompts/06-testing.md`
|
|
1119
|
+
2. Detect test framework (Jest, Vitest, Mocha, etc.)
|
|
1120
|
+
3. Run tests with coverage
|
|
1121
|
+
4. Display enhanced results with visualization
|
|
1122
|
+
5. Update `.proagents/worklog/_context.md` with test status
|
|
1123
|
+
|
|
1124
|
+
**Output format (enhanced):**
|
|
1125
|
+
```
|
|
1126
|
+
Test Results
|
|
1127
|
+
═══════════════════════════════════════════════════════════
|
|
1128
|
+
|
|
1129
|
+
Summary: 45 passed | 2 failed | 3 skipped 2.3s
|
|
1130
|
+
|
|
1131
|
+
Coverage
|
|
1132
|
+
────────
|
|
1133
|
+
Overall: ████████████████░░░░ 78% (target: 80%)
|
|
1134
|
+
|
|
1135
|
+
By Module:
|
|
1136
|
+
src/auth/ ████████████████████ 95% ✓
|
|
1137
|
+
src/api/ ████████████████░░░░ 80% ✓
|
|
1138
|
+
src/services/ ██████████████░░░░░░ 72% ⚠️
|
|
1139
|
+
src/utils/ ██████████░░░░░░░░░░ 52% ✗ below target
|
|
1140
|
+
|
|
1141
|
+
Failing Tests
|
|
1142
|
+
─────────────
|
|
1143
|
+
✗ auth.test.ts:45
|
|
1144
|
+
└─ login validation: expected true, got false
|
|
1145
|
+
|
|
1146
|
+
✗ api.test.ts:102
|
|
1147
|
+
└─ user endpoint: timeout after 5000ms
|
|
1148
|
+
|
|
1149
|
+
Slow Tests (>1s)
|
|
1150
|
+
────────────────
|
|
1151
|
+
⚠️ e2e/checkout.test.ts 3.2s
|
|
1152
|
+
⚠️ integration/api.test.ts 1.8s
|
|
1153
|
+
|
|
1154
|
+
═══════════════════════════════════════════════════════════
|
|
1155
|
+
Next: Fix failing tests or run "pa:test --update-snapshots"
|
|
1156
|
+
```
|
|
1157
|
+
|
|
1158
|
+
**If all tests pass:**
|
|
1159
|
+
```
|
|
1160
|
+
Test Results
|
|
1161
|
+
═══════════════════════════════════════════════════════════
|
|
1162
|
+
|
|
1163
|
+
✅ All 47 tests passed! 1.8s
|
|
1164
|
+
|
|
1165
|
+
Coverage: ████████████████░░░░ 82% (target: 80%) ✓
|
|
1166
|
+
|
|
1167
|
+
═══════════════════════════════════════════════════════════
|
|
1168
|
+
Ready for: pa:review or pa:deploy
|
|
1169
|
+
```
|
|
1170
|
+
|
|
1171
|
+
---
|
|
1172
|
+
|
|
1173
|
+
## pa:qa Execution
|
|
1174
|
+
|
|
1175
|
+
**Show quality dashboard with all metrics.**
|
|
1176
|
+
|
|
1177
|
+
**Command variations:**
|
|
1178
|
+
```
|
|
1179
|
+
pa:qa # Full quality dashboard
|
|
1180
|
+
pa:qa-security # Security audit only
|
|
1181
|
+
pa:qa-performance # Performance check only
|
|
1182
|
+
pa:qa-lint # Lint check only
|
|
1183
|
+
```
|
|
1184
|
+
|
|
1185
|
+
**Steps:**
|
|
1186
|
+
1. Run linter (ESLint, etc.)
|
|
1187
|
+
2. Run security scan (npm audit, etc.)
|
|
1188
|
+
3. Check test coverage
|
|
1189
|
+
4. Analyze bundle size
|
|
1190
|
+
5. Check documentation coverage
|
|
1191
|
+
6. Display unified dashboard
|
|
1192
|
+
|
|
1193
|
+
**Output format (quality dashboard):**
|
|
1194
|
+
```
|
|
1195
|
+
Code Quality Dashboard
|
|
1196
|
+
═══════════════════════════════════════════════════════════
|
|
1197
|
+
|
|
1198
|
+
Overall Score: ████████████████░░░░ 85% (Good)
|
|
1199
|
+
|
|
1200
|
+
🔒 Security
|
|
1201
|
+
───────────
|
|
1202
|
+
Status: ✓ No vulnerabilities
|
|
1203
|
+
Dependencies: 142 packages scanned
|
|
1204
|
+
Secrets: ✓ No hardcoded secrets found
|
|
1205
|
+
Last audit: 2 hours ago
|
|
1206
|
+
|
|
1207
|
+
📏 Linting
|
|
1208
|
+
──────────
|
|
1209
|
+
Errors: 0 ✓
|
|
1210
|
+
Warnings: 3 ⚠️
|
|
1211
|
+
└─ unused variable (2), missing return type (1)
|
|
1212
|
+
Auto-fixable: 2
|
|
1213
|
+
|
|
1214
|
+
🧪 Test Coverage
|
|
1215
|
+
────────────────
|
|
1216
|
+
Coverage: ████████████████░░░░ 78%
|
|
1217
|
+
Target: 80%
|
|
1218
|
+
Status: ⚠️ 2% below target
|
|
1219
|
+
Untested: src/utils/helpers.ts, src/api/legacy.ts
|
|
1220
|
+
|
|
1221
|
+
📦 Bundle Size
|
|
1222
|
+
──────────────
|
|
1223
|
+
Current: 245kb
|
|
1224
|
+
Limit: 300kb
|
|
1225
|
+
Status: ✓ Within limit
|
|
1226
|
+
Largest: react-dom (42kb), lodash (24kb)
|
|
1227
|
+
|
|
1228
|
+
📝 Documentation
|
|
1229
|
+
────────────────
|
|
1230
|
+
Documented: ████████████░░░░░░░░ 60%
|
|
1231
|
+
Missing: 15 functions, 3 components
|
|
1232
|
+
README: ✓ Up to date
|
|
1233
|
+
|
|
1234
|
+
🔄 Code Complexity
|
|
1235
|
+
──────────────────
|
|
1236
|
+
Average: 8.2 (Good)
|
|
1237
|
+
High (>15): 2 functions
|
|
1238
|
+
└─ processPayment() = 18, validateForm() = 16
|
|
1239
|
+
|
|
1240
|
+
═══════════════════════════════════════════════════════════
|
|
1241
|
+
Issues: 3 warnings | Suggestions: Run "pa:qa --fix" for auto-fixes
|
|
1242
|
+
```
|
|
1243
|
+
|
|
1244
|
+
---
|
|
1245
|
+
|
|
1246
|
+
## pa:review Execution
|
|
1247
|
+
|
|
1248
|
+
**Show code review checklist for current changes.**
|
|
1249
|
+
|
|
1250
|
+
**Command variations:**
|
|
1251
|
+
```
|
|
1252
|
+
pa:review # Review current changes
|
|
1253
|
+
pa:review --staged # Review staged files only
|
|
1254
|
+
pa:review --pr # PR review mode
|
|
1255
|
+
```
|
|
1256
|
+
|
|
1257
|
+
**Steps:**
|
|
1258
|
+
1. Read `./.proagents/prompts/06.5-code-review.md`
|
|
1259
|
+
2. Get list of changed files (git diff)
|
|
1260
|
+
3. Analyze code for common issues
|
|
1261
|
+
4. Display interactive checklist
|
|
1262
|
+
5. Highlight issues that need attention
|
|
1263
|
+
|
|
1264
|
+
**Output format (review checklist):**
|
|
1265
|
+
```
|
|
1266
|
+
Code Review Checklist
|
|
1267
|
+
═══════════════════════════════════════════════════════════
|
|
1268
|
+
|
|
1269
|
+
Files Changed: 8 (+342, -89)
|
|
1270
|
+
──────────────────────────────
|
|
1271
|
+
|
|
1272
|
+
📋 Code Quality
|
|
1273
|
+
───────────────
|
|
1274
|
+
✓ No console.log statements cleaned
|
|
1275
|
+
✓ No debugger statements cleaned
|
|
1276
|
+
✓ No commented-out code cleaned
|
|
1277
|
+
✓ No TODO without issue number checked
|
|
1278
|
+
⚠️ Complex function detected see below
|
|
1279
|
+
|
|
1280
|
+
🔒 Security
|
|
1281
|
+
───────────
|
|
1282
|
+
✓ No hardcoded credentials scanned
|
|
1283
|
+
✓ Input validation present checked
|
|
1284
|
+
✓ No SQL injection risks analyzed
|
|
1285
|
+
○ Auth checks on new endpoints needs review
|
|
1286
|
+
|
|
1287
|
+
🧪 Testing
|
|
1288
|
+
──────────
|
|
1289
|
+
✓ Tests added for new functions 4 new tests
|
|
1290
|
+
⚠️ Test coverage decreased -3% (78% → 75%)
|
|
1291
|
+
○ Edge cases covered needs review
|
|
1292
|
+
|
|
1293
|
+
📝 Documentation
|
|
1294
|
+
────────────────
|
|
1295
|
+
✓ JSDoc on public functions present
|
|
1296
|
+
○ README update needed new feature
|
|
1297
|
+
○ API docs update needed new endpoint
|
|
1298
|
+
|
|
1299
|
+
🎨 Style & Conventions
|
|
1300
|
+
──────────────────────
|
|
1301
|
+
✓ Follows naming conventions checked
|
|
1302
|
+
✓ Consistent formatting prettier OK
|
|
1303
|
+
✓ Import order correct sorted
|
|
1304
|
+
|
|
1305
|
+
⚠️ Attention Required
|
|
1306
|
+
─────────────────────
|
|
1307
|
+
src/services/payment.ts:45
|
|
1308
|
+
└─ Cyclomatic complexity: 18 (max: 15)
|
|
1309
|
+
└─ Consider breaking into smaller functions
|
|
1310
|
+
|
|
1311
|
+
src/api/users.ts:102
|
|
1312
|
+
└─ Missing error handling for async call
|
|
1313
|
+
|
|
1314
|
+
═══════════════════════════════════════════════════════════
|
|
1315
|
+
Status: 12/16 checks passed | 2 warnings | 2 need review
|
|
1316
|
+
|
|
1317
|
+
Ready to commit? Address warnings first or run "pa:review --approve"
|
|
1318
|
+
```
|
|
1319
|
+
|
|
1320
|
+
---
|
|
1321
|
+
|
|
1322
|
+
## pa:fix Execution
|
|
1323
|
+
|
|
1324
|
+
**Fix bugs with before/after diff and affected tests.**
|
|
1325
|
+
|
|
1326
|
+
**Steps:**
|
|
1327
|
+
1. Read `./.proagents/workflow-modes/entry-modes.md`
|
|
1328
|
+
2. Load context and recent changes
|
|
1329
|
+
3. Analyze the bug description
|
|
1330
|
+
4. Find and fix the issue
|
|
1331
|
+
5. Show before/after diff
|
|
1332
|
+
6. Identify affected tests
|
|
1333
|
+
7. Run affected tests
|
|
1334
|
+
8. Update changelogs
|
|
1335
|
+
|
|
1336
|
+
**Output format (bug fix summary):**
|
|
1337
|
+
```
|
|
1338
|
+
Bug Fix Summary
|
|
1339
|
+
═══════════════════════════════════════════════════════════
|
|
1340
|
+
|
|
1341
|
+
🐛 Issue: Login validation not checking email format
|
|
1342
|
+
|
|
1343
|
+
📁 File: src/auth/login.ts
|
|
1344
|
+
|
|
1345
|
+
📝 Changes
|
|
1346
|
+
──────────
|
|
1347
|
+
Line 45:
|
|
1348
|
+
Before: if (email) {
|
|
1349
|
+
After: if (email && email.includes('@')) {
|
|
1350
|
+
|
|
1351
|
+
Line 52:
|
|
1352
|
+
Before: return { success: true }
|
|
1353
|
+
After: return { success: true, validated: true }
|
|
1354
|
+
|
|
1355
|
+
Diff: +3 lines, -1 line
|
|
1356
|
+
|
|
1357
|
+
🧪 Affected Tests
|
|
1358
|
+
─────────────────
|
|
1359
|
+
→ auth.test.ts (3 tests affected)
|
|
1360
|
+
→ validation.test.ts (2 tests affected)
|
|
1361
|
+
|
|
1362
|
+
Running affected tests...
|
|
1363
|
+
✓ auth.test.ts 5/5 passed
|
|
1364
|
+
✓ validation.test.ts 4/4 passed
|
|
1365
|
+
|
|
1366
|
+
📋 Related
|
|
1367
|
+
──────────
|
|
1368
|
+
Issue: #123 (if detected from description)
|
|
1369
|
+
Similar fixes: login.ts (2 weeks ago)
|
|
1370
|
+
|
|
1371
|
+
═══════════════════════════════════════════════════════════
|
|
1372
|
+
✅ Fix applied and verified!
|
|
1373
|
+
|
|
1374
|
+
Changelog updated: .proagents/changelog/_recent.md
|
|
1375
|
+
Next: pa:test (full suite) or pa:commit
|
|
1376
|
+
```
|
|
1377
|
+
|
|
1378
|
+
**If fix causes test failures:**
|
|
1379
|
+
```
|
|
1380
|
+
Bug Fix Summary
|
|
1381
|
+
═══════════════════════════════════════════════════════════
|
|
1382
|
+
|
|
1383
|
+
🐛 Issue: Login validation not checking email format
|
|
1384
|
+
|
|
1385
|
+
📁 File: src/auth/login.ts
|
|
1386
|
+
...
|
|
1387
|
+
|
|
1388
|
+
🧪 Affected Tests
|
|
1389
|
+
─────────────────
|
|
1390
|
+
✗ auth.test.ts 3/5 passed, 2 failed
|
|
1391
|
+
└─ test "allows empty email" now fails (expected behavior?)
|
|
1392
|
+
└─ test "validates email" now fails (needs update)
|
|
1393
|
+
|
|
1394
|
+
⚠️ Fix applied but tests failing!
|
|
1395
|
+
|
|
1396
|
+
Options:
|
|
1397
|
+
[1] Update tests to match new behavior
|
|
1398
|
+
[2] Revert fix and investigate
|
|
1399
|
+
[3] Keep fix, mark tests as TODO
|
|
1400
|
+
|
|
1401
|
+
Run "pa:fix --update-tests" to auto-update test expectations
|
|
1402
|
+
```
|
|
1403
|
+
|
|
1404
|
+
---
|
|
1405
|
+
|
|
1406
|
+
## pa:standup Execution
|
|
1407
|
+
|
|
1408
|
+
**Generate daily standup summary automatically.**
|
|
1409
|
+
|
|
1410
|
+
**Command variations:**
|
|
1411
|
+
```
|
|
1412
|
+
pa:standup # Today's standup
|
|
1413
|
+
pa:standup --yesterday # What was done yesterday
|
|
1414
|
+
pa:standup --week # Weekly summary
|
|
1415
|
+
pa:standup --team # All AI activity (team view)
|
|
1416
|
+
```
|
|
1417
|
+
|
|
1418
|
+
**Steps:**
|
|
1419
|
+
1. Read `.proagents/activity.log` for recent activity
|
|
1420
|
+
2. Read `.proagents/changelog/_recent.md` for changes
|
|
1421
|
+
3. Read current feature status from `active-features/`
|
|
1422
|
+
4. Identify blockers from context
|
|
1423
|
+
5. Generate formatted standup
|
|
1424
|
+
|
|
1425
|
+
**Output format:**
|
|
1426
|
+
```
|
|
1427
|
+
Daily Standup - March 13, 2026
|
|
1428
|
+
═══════════════════════════════════════════════════════════
|
|
1429
|
+
|
|
1430
|
+
👤 Your Session (Claude)
|
|
1431
|
+
────────────────────────
|
|
1432
|
+
|
|
1433
|
+
✅ Yesterday / Last Session:
|
|
1434
|
+
• Completed JWT token implementation
|
|
1435
|
+
• Fixed 2 login validation bugs (#123, #124)
|
|
1436
|
+
• Added 8 unit tests for auth module
|
|
1437
|
+
• Updated API documentation
|
|
1438
|
+
|
|
1439
|
+
📋 Today / Current:
|
|
1440
|
+
• Password reset feature (in progress - 40%)
|
|
1441
|
+
└─ Next: Email template integration
|
|
1442
|
+
• API rate limiting implementation
|
|
1443
|
+
• Review PR #45 (user dashboard)
|
|
1444
|
+
|
|
1445
|
+
🚧 Blockers:
|
|
1446
|
+
• None currently
|
|
1447
|
+
|
|
1448
|
+
📊 Stats:
|
|
1449
|
+
Files changed: 12 | Tests: +8 | Coverage: 78% → 82%
|
|
1450
|
+
|
|
1451
|
+
──────────────────────────────────────────────────────────
|
|
1452
|
+
|
|
1453
|
+
👥 Team Activity (All AIs) - Last 24h
|
|
1454
|
+
─────────────────────────────────────
|
|
1455
|
+
Claude: 5 tasks │ auth module, API docs
|
|
1456
|
+
Cursor: 3 tasks │ UI components, styling
|
|
1457
|
+
Gemini: 2 tasks │ database optimization
|
|
1458
|
+
|
|
1459
|
+
═══════════════════════════════════════════════════════════
|
|
1460
|
+
Active Features: user-auth (80%), dashboard (40%)
|
|
1461
|
+
```
|
|
1462
|
+
|
|
1463
|
+
**Weekly summary (pa:standup --week):**
|
|
1464
|
+
```
|
|
1465
|
+
Weekly Summary - Week of March 10, 2026
|
|
1466
|
+
═══════════════════════════════════════════════════════════
|
|
1467
|
+
|
|
1468
|
+
📈 Progress
|
|
1469
|
+
───────────
|
|
1470
|
+
Features completed: 2
|
|
1471
|
+
Features in progress: 3
|
|
1472
|
+
Bugs fixed: 8
|
|
1473
|
+
Tests added: 24
|
|
1474
|
+
|
|
1475
|
+
📊 By AI Platform
|
|
1476
|
+
─────────────────
|
|
1477
|
+
Claude ████████████████░░░░ 45% (18 tasks)
|
|
1478
|
+
Cursor ████████████░░░░░░░░ 32% (13 tasks)
|
|
1479
|
+
Gemini ████████░░░░░░░░░░░░ 23% (9 tasks)
|
|
1480
|
+
|
|
1481
|
+
✅ Completed
|
|
1482
|
+
────────────
|
|
1483
|
+
• User authentication feature
|
|
1484
|
+
• Dashboard redesign
|
|
1485
|
+
• 8 bug fixes
|
|
1486
|
+
|
|
1487
|
+
🚀 Shipped
|
|
1488
|
+
──────────
|
|
1489
|
+
• v1.2.0 deployed to production (March 12)
|
|
1490
|
+
|
|
1491
|
+
📋 Next Week
|
|
1492
|
+
────────────
|
|
1493
|
+
• Password reset feature
|
|
1494
|
+
• Payment integration
|
|
1495
|
+
• Performance optimization
|
|
1496
|
+
|
|
1497
|
+
═══════════════════════════════════════════════════════════
|
|
1498
|
+
Total: 40 tasks | 156 files changed | Coverage: 75% → 82%
|
|
1499
|
+
```
|
|
1500
|
+
|
|
1501
|
+
---
|
|
1502
|
+
|
|
1503
|
+
## Self-Learning System
|
|
1504
|
+
|
|
1505
|
+
**ProAgents learns from user interactions. AI MUST read and write learning data.**
|
|
1506
|
+
|
|
1507
|
+
### Learning Data Location
|
|
1508
|
+
|
|
1509
|
+
```
|
|
1510
|
+
.proagents/.learning/
|
|
1511
|
+
├── global/ # Cross-project preferences
|
|
1512
|
+
│ ├── user-preferences.json # Checkpoint & workflow preferences
|
|
1513
|
+
│ └── common-patterns.json # Common code patterns
|
|
1514
|
+
│
|
|
1515
|
+
└── projects/ # Per-project learnings
|
|
1516
|
+
└── {project-id}/
|
|
1517
|
+
├── patterns.json # Project-specific code patterns
|
|
1518
|
+
├── corrections.json # User corrections to AI output
|
|
1519
|
+
├── metrics.json # Performance metrics
|
|
1520
|
+
└── feedback.json # User feedback
|
|
1521
|
+
```
|
|
1522
|
+
|
|
1523
|
+
### On Session Start - Load Learning Data
|
|
1524
|
+
|
|
1525
|
+
**AI MUST read learning data at start of session:**
|
|
1526
|
+
|
|
1527
|
+
```bash
|
|
1528
|
+
# Load user preferences
|
|
1529
|
+
cat .proagents/.learning/global/user-preferences.json 2>/dev/null
|
|
1530
|
+
|
|
1531
|
+
# Load project patterns
|
|
1532
|
+
cat .proagents/.learning/projects/*/patterns.json 2>/dev/null
|
|
1533
|
+
|
|
1534
|
+
# Load past corrections (DON'T REPEAT THESE MISTAKES!)
|
|
1535
|
+
cat .proagents/.learning/projects/*/corrections.json 2>/dev/null
|
|
1536
|
+
```
|
|
1537
|
+
|
|
1538
|
+
### Apply Learned Patterns
|
|
1539
|
+
|
|
1540
|
+
**Before generating code, check learned patterns:**
|
|
1541
|
+
|
|
1542
|
+
```json
|
|
1543
|
+
// From user-preferences.json
|
|
1544
|
+
{
|
|
1545
|
+
"code_preferences": {
|
|
1546
|
+
"naming_style": { "components": "PascalCase" },
|
|
1547
|
+
"patterns": { "state_management": "zustand" }
|
|
1548
|
+
}
|
|
1549
|
+
}
|
|
1550
|
+
```
|
|
1551
|
+
|
|
1552
|
+
**AI should say:**
|
|
1553
|
+
```
|
|
1554
|
+
"I see this project uses PascalCase for components and Zustand for state.
|
|
1555
|
+
I'll follow those patterns."
|
|
1556
|
+
```
|
|
1557
|
+
|
|
1558
|
+
### When to Write Learning Data
|
|
1559
|
+
|
|
1560
|
+
**1. User Corrects AI Output**
|
|
1561
|
+
|
|
1562
|
+
When user modifies AI-generated code, log to `corrections.json`:
|
|
1563
|
+
|
|
1564
|
+
```json
|
|
1565
|
+
{
|
|
1566
|
+
"corrections": [
|
|
1567
|
+
{
|
|
1568
|
+
"timestamp": "2024-03-13T10:30:00Z",
|
|
1569
|
+
"ai": "Claude",
|
|
1570
|
+
"type": "naming",
|
|
1571
|
+
"original": "getData",
|
|
1572
|
+
"corrected": "fetchUserData",
|
|
1573
|
+
"context": "User prefers descriptive function names",
|
|
1574
|
+
"occurrences": 1
|
|
1575
|
+
}
|
|
1576
|
+
]
|
|
1577
|
+
}
|
|
1578
|
+
```
|
|
1579
|
+
|
|
1580
|
+
**2. User Skips/Reviews Checkpoints**
|
|
1581
|
+
|
|
1582
|
+
Track checkpoint preferences in `user-preferences.json`:
|
|
1583
|
+
|
|
1584
|
+
```json
|
|
1585
|
+
{
|
|
1586
|
+
"checkpoint_preferences": {
|
|
1587
|
+
"usually_skips": ["after_requirements"],
|
|
1588
|
+
"always_reviews": ["before_deployment"]
|
|
1589
|
+
}
|
|
1590
|
+
}
|
|
1591
|
+
```
|
|
1592
|
+
|
|
1593
|
+
**3. User Provides Explicit Feedback**
|
|
1594
|
+
|
|
1595
|
+
When user says "that's wrong" or corrects approach, log to `feedback.json`:
|
|
1596
|
+
|
|
1597
|
+
```json
|
|
1598
|
+
{
|
|
1599
|
+
"feedback": [
|
|
1600
|
+
{
|
|
1601
|
+
"timestamp": "2024-03-13T10:30:00Z",
|
|
1602
|
+
"type": "correction",
|
|
1603
|
+
"context": "API call pattern",
|
|
1604
|
+
"feedback": "Always use try-catch for API calls",
|
|
1605
|
+
"applied": true
|
|
1606
|
+
}
|
|
1607
|
+
]
|
|
1608
|
+
}
|
|
1609
|
+
```
|
|
1610
|
+
|
|
1611
|
+
### pa:learn Command
|
|
1612
|
+
|
|
1613
|
+
**User can explicitly teach AI a pattern:**
|
|
1614
|
+
|
|
1615
|
+
```
|
|
1616
|
+
pa:learn "Always use async/await instead of .then()"
|
|
1617
|
+
pa:learn "Components go in src/components/, not src/ui/"
|
|
1618
|
+
pa:learn "Use date-fns, not moment.js"
|
|
1619
|
+
```
|
|
1620
|
+
|
|
1621
|
+
**AI logs to patterns.json:**
|
|
1622
|
+
```json
|
|
1623
|
+
{
|
|
1624
|
+
"learned_patterns": [
|
|
1625
|
+
{
|
|
1626
|
+
"timestamp": "2024-03-13T10:30:00Z",
|
|
1627
|
+
"pattern": "Always use async/await instead of .then()",
|
|
1628
|
+
"source": "explicit",
|
|
1629
|
+
"confidence": 1.0
|
|
1630
|
+
}
|
|
1631
|
+
]
|
|
1632
|
+
}
|
|
1633
|
+
```
|
|
1634
|
+
|
|
1635
|
+
### pa:forget Command
|
|
1636
|
+
|
|
1637
|
+
**User can remove a learned pattern:**
|
|
1638
|
+
|
|
1639
|
+
```
|
|
1640
|
+
pa:forget "Use moment.js for dates"
|
|
1641
|
+
```
|
|
1642
|
+
|
|
1643
|
+
**AI removes from patterns.json and confirms.**
|
|
1644
|
+
|
|
1645
|
+
### Auto-Apply Rules
|
|
1646
|
+
|
|
1647
|
+
| Correction Count | Action |
|
|
1648
|
+
|------------------|--------|
|
|
1649
|
+
| 1-2 times | Remember but don't auto-apply |
|
|
1650
|
+
| 3-4 times | Warn: "Should I always do this?" |
|
|
1651
|
+
| 5+ times | Auto-apply without asking |
|
|
1652
|
+
|
|
1653
|
+
### Example: Learning in Action
|
|
1654
|
+
|
|
1655
|
+
**Session 1:**
|
|
1656
|
+
```
|
|
1657
|
+
User: Fix the login function
|
|
1658
|
+
AI: [generates code with getData()]
|
|
1659
|
+
User: [changes getData() to fetchUserData()]
|
|
1660
|
+
AI: [logs correction to corrections.json]
|
|
1661
|
+
```
|
|
1662
|
+
|
|
1663
|
+
**Session 2 (same or different AI):**
|
|
1664
|
+
```
|
|
1665
|
+
AI: [reads corrections.json]
|
|
1666
|
+
AI: "I see you prefer descriptive names like fetchUserData.
|
|
1667
|
+
I'll use that pattern."
|
|
1668
|
+
AI: [generates code with fetchUserData()]
|
|
1669
|
+
```
|
|
1670
|
+
|
|
1671
|
+
### Learning Report (pa:learning)
|
|
1672
|
+
|
|
1673
|
+
```
|
|
1674
|
+
pa:learning
|
|
1675
|
+
```
|
|
1676
|
+
|
|
1677
|
+
**Output:**
|
|
1678
|
+
```
|
|
1679
|
+
Learning Report
|
|
1680
|
+
═══════════════════════════════════════════════════════════
|
|
1681
|
+
|
|
1682
|
+
📊 Summary
|
|
1683
|
+
──────────
|
|
1684
|
+
Patterns learned: 12
|
|
1685
|
+
Corrections logged: 8
|
|
1686
|
+
Auto-apply rules: 3
|
|
1687
|
+
|
|
1688
|
+
🎯 Top Patterns
|
|
1689
|
+
───────────────
|
|
1690
|
+
• Naming: Use descriptive function names (5 corrections)
|
|
1691
|
+
• State: Use Zustand for state management
|
|
1692
|
+
• API: Always use try-catch for API calls
|
|
1693
|
+
• Testing: Use describe/it pattern for tests
|
|
1694
|
+
|
|
1695
|
+
⚠️ Recent Corrections
|
|
1696
|
+
─────────────────────
|
|
1697
|
+
• getData → fetchUserData (3 times)
|
|
1698
|
+
• Component → src/components/ not src/ui/
|
|
1699
|
+
|
|
1700
|
+
✅ Auto-Apply Rules (5+ corrections)
|
|
1701
|
+
────────────────────────────────────
|
|
1702
|
+
• Use PascalCase for components
|
|
1703
|
+
• Use camelCase for functions
|
|
1704
|
+
• Add error handling to API calls
|
|
1705
|
+
|
|
1706
|
+
═══════════════════════════════════════════════════════════
|
|
1707
|
+
```
|
|
1708
|
+
|
|
1709
|
+
### CRITICAL: Don't Repeat Mistakes
|
|
1710
|
+
|
|
1711
|
+
**Before generating code, AI MUST check:**
|
|
1712
|
+
|
|
1713
|
+
1. `corrections.json` - Don't make same mistakes
|
|
1714
|
+
2. `feedback.json` - Follow user feedback
|
|
1715
|
+
3. `patterns.json` - Use learned patterns
|
|
1716
|
+
|
|
1717
|
+
**Example check:**
|
|
1718
|
+
```bash
|
|
1719
|
+
# Check if similar code was corrected before
|
|
1720
|
+
grep -i "getData" .proagents/.learning/projects/*/corrections.json
|
|
1721
|
+
```
|
|
1722
|
+
|
|
1723
|
+
If found, apply the correction pattern automatically.
|
|
532
1724
|
|
|
533
1725
|
---
|
|
534
1726
|
|
|
@@ -557,6 +1749,9 @@ Or ask user: "Should I read the detailed docs for [topic]?"
|
|
|
557
1749
|
| `watchlist.yaml` | Files requiring confirmation |
|
|
558
1750
|
| `proagents.config.yaml` | Project config |
|
|
559
1751
|
| `active-features/_index.json` | Feature status |
|
|
1752
|
+
| `.learning/global/user-preferences.json` | User workflow preferences |
|
|
1753
|
+
| `.learning/projects/*/patterns.json` | Learned code patterns |
|
|
1754
|
+
| `.learning/projects/*/corrections.json` | Past corrections (DON'T REPEAT!) |
|
|
560
1755
|
|
|
561
1756
|
---
|
|
562
1757
|
|