proagents 1.6.15 → 1.6.17

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.
@@ -42,8 +42,8 @@ These show the actual back-and-forth interaction between user and AI.
42
42
  # View example for your project type
43
43
  proagents example show react
44
44
 
45
- # Initialize with example config
46
- proagents init --template react
45
+ # Initialize ProAgents
46
+ npx proagents init
47
47
  ```
48
48
 
49
49
  ## Contributing Examples
package/README.md CHANGED
@@ -9,34 +9,29 @@ A portable, universal development workflow framework that works with **any AI pl
9
9
 
10
10
  ---
11
11
 
12
- ## Installation
12
+ ### šŸ“š [COMMANDS.md](COMMANDS.md) - Complete Command Reference (100+ Commands)
13
13
 
14
- No install required. Just run:
14
+ CLI commands, AI commands (pa:), workflow phases, debugging, testing, deployment, and more.
15
15
 
16
- ```bash
17
- npx proagents init
18
- ```
16
+ ---
19
17
 
20
- Or with a template:
18
+ ## Why ProAgents?
21
19
 
22
- ```bash
23
- npx proagents init --template nextjs-saas
24
- ```
20
+ - **AI-Agnostic**: Works with Claude, ChatGPT, Gemini, Cursor, Copilot - switch AI tools anytime without losing context
21
+ - **Multi-AI Collaboration**: Multiple AIs can work on the same project with shared context and conflict detection
22
+ - **Guided Workflow**: 10-phase development process from Analysis to Deployment with quality gates
23
+ - **Learning System**: AI learns from your corrections and never repeats the same mistakes
25
24
 
26
- ### Upgrading from v1.5.x
25
+ ---
27
26
 
28
- Version 1.6.0 renamed `proagents/` to `.proagents/` (following `.github`, `.vscode` convention).
27
+ ## Installation
28
+
29
+ No install required. Just run:
29
30
 
30
31
  ```bash
31
- cd your-project
32
- npx proagents migrate
32
+ npx proagents init
33
33
  ```
34
34
 
35
- **What migration does:**
36
- - Renames `proagents/` → `.proagents/`
37
- - Updates paths in `README.md`, `CLAUDE.md`, `.cursorrules`
38
- - Preserves all your existing configurations
39
-
40
35
  ---
41
36
 
42
37
  ## Quick Start
@@ -48,26 +43,37 @@ cd your-project
48
43
  npx proagents init
49
44
  ```
50
45
 
51
- This creates a `./.proagents/` folder with workflow files, and prompts for:
52
- - Project name and type (auto-detected)
53
- - Tech stack (API style, database, styling, auth, etc.)
54
- - AI platforms to use (Claude, Cursor, Gemini, etc.)
46
+ **What happens:**
47
+ - Creates `./.proagents/` folder with workflow files
48
+ - Prompts for project name and type (auto-detected)
49
+ - Prompts for tech stack (API style, database, styling, auth)
50
+ - Creates AI instruction files (CLAUDE.md, .cursorrules, etc.)
55
51
 
56
52
  ### 2. Use Commands in Any AI
57
53
 
58
- Type `pa:` commands in your AI assistant:
54
+ Open your AI assistant (Claude, ChatGPT, Cursor, etc.) and type:
59
55
 
60
56
  ```
61
57
  pa:feature "Add user authentication"
62
- pa:fix "Login button not working"
63
- pa:status
64
58
  ```
65
59
 
66
- ### 3. AI Follows the Guided Workflow
60
+ **What happens:**
61
+ - AI loads project context automatically
62
+ - Guides you through 10-phase workflow
63
+ - Logs all changes for other AIs to see
64
+
65
+ ### 3. See Progress
66
+
67
+ ```
68
+ pa:status
69
+ ```
67
70
 
71
+ **Example output:**
68
72
  ```
69
- Init → Analysis → Requirements → Design → Planning →
70
- Implementation → Testing → Review → Documentation → Deployment
73
+ Feature: Add user authentication
74
+ Phase: Implementation (5/10)
75
+ Progress: ā–ˆā–ˆā–ˆā–ˆā–ˆā–ˆā–ˆā–ˆā–‘ā–‘ā–‘ā–‘ 50%
76
+ Next: pa:test
71
77
  ```
72
78
 
73
79
  ---
@@ -106,22 +112,6 @@ pa:fix "bug in auth" # AI auto-loads context, then fixes
106
112
  pa:undo-last # Revert last AI's entire session
107
113
  ```
108
114
 
109
- ### Project Templates
110
-
111
- Pre-configured settings for common stacks:
112
-
113
- ```bash
114
- npx proagents init --template nextjs-saas # Next.js SaaS
115
- npx proagents init --template react-spa # React SPA
116
- npx proagents init --template react-native-app # React Native
117
- npx proagents init --template express-api # Express API
118
- npx proagents init --template nestjs-api # NestJS API
119
- npx proagents init --template vue-spa # Vue.js SPA
120
- npx proagents init --template python-fastapi # Python FastAPI
121
-
122
- npx proagents init --list-templates # Show all templates
123
- ```
124
-
125
115
  ### AI Learning & Feedback
126
116
 
127
117
  - **Feedback Log** - AI learns from corrections, doesn't repeat mistakes
@@ -155,514 +145,54 @@ ProAgents follows **"ALWAYS DO, NEVER JUST TELL"** principle:
155
145
  ## CLI Commands
156
146
 
157
147
  ```bash
158
- # Initialization
159
- npx proagents init # Initialize in project
160
- npx proagents init --template <name> # Use a project template
161
- npx proagents init --list-templates # List available templates
162
-
163
- # Features & Fixes
164
- proagents feature start "name" # Start a new feature
165
- proagents feature status # Check feature status
166
- proagents fix "bug description" # Quick bug fix mode
148
+ # Initialize
149
+ npx proagents init # Initialize or update ProAgents
167
150
 
168
- # Maintenance
169
- proagents doctor # Health check installation
170
- proagents doctor --full # Extended checks (branches, logs, features)
151
+ # Daily Use
171
152
  proagents status # Show ProAgents status
172
- proagents version # Show detailed version info
173
-
174
- # Release Notes
175
- proagents release # Interactive release note generator
176
- proagents release -t detailed # Full comprehensive notes
177
- proagents release -t short # Quick summary
178
- proagents release -t client # Business-focused, non-technical
179
- proagents release -t developer # Technical details for devs
180
- proagents release -t hotfix # Urgent patch notes
181
- proagents release -t prerelease # Beta/RC notes
182
- proagents release --include fixes # Only include bug fixes
183
- proagents release --include features # Only include features
184
- proagents release --append -o FILE # Append to existing notes
185
- proagents release --bump # Suggest version bump
186
- proagents release --module auth # Filter by module name
187
- proagents release --changelog # Update CHANGELOG.md
188
- proagents release --tag # Create git tag
189
- proagents release --json # JSON output for CI/CD
190
-
191
- # Updating ProAgents
192
- npx proagents init # Smart update (recommended)
193
- proagents upgrade # Full replace (use with caution)
153
+ proagents doctor # Health check installation
154
+ proagents stats # Show project & AI usage stats
194
155
 
195
156
  # AI Platforms
196
157
  proagents ai list # List installed AI platforms
197
158
  proagents ai add # Add more platforms
198
- proagents ai remove # Remove platforms
199
159
 
200
- # Configuration
201
- proagents config show # Show current config
202
- proagents config setup # Interactive config wizard
203
- proagents config export # Export config for sharing
204
- proagents config import <file> # Import config from file
205
-
206
- # Statistics & Monitoring
207
- proagents stats # Show project & AI usage stats
208
- proagents stats --json # JSON output for scripting
209
-
210
- # Changelog Management
211
- proagents changelog view # View recent changelog entries
212
- proagents changelog add "entry" # Add new changelog entry
213
- proagents changelog list # List available changelogs
214
- proagents changelog export # Export to CHANGELOG.md
215
- proagents changelog git # View git history as changelog
216
-
217
- # Backup & Restore
218
- proagents restore <backup.json> # Restore from uninstall backup
219
-
220
- # Shell Completions
221
- proagents completion bash # Generate bash completions
222
- proagents completion zsh # Generate zsh completions
223
- proagents completion fish # Generate fish completions
224
-
225
- # Quick File Access
226
- proagents open # Show available shortcuts
227
- proagents open config # Open proagents.config.yaml
228
- proagents open changelog # Open recent changelog
229
- proagents open activity # Open activity log
230
- proagents open context # Open worklog context
231
-
232
- # Other
233
- proagents docs # Open documentation
234
- proagents commands # Show all commands
235
- proagents uninstall # Remove ProAgents
160
+ # Release
161
+ proagents release # Generate release notes
162
+ proagents release --changelog # Update CHANGELOG.md
236
163
  ```
237
164
 
238
- ### Updating ProAgents
239
-
240
- | Command | What It Does | When to Use |
241
- |---------|--------------|-------------|
242
- | `npx proagents init` | **Smart update** - Updates 60 framework folders, merges config, preserves your work | **Recommended** for regular updates |
243
- | `proagents upgrade` | **Full replace** - Removes everything, installs fresh, restores backups | Only when you need a complete reset |
244
-
245
- **What's preserved with `init` (smart update):**
246
- - `active-features/` - Your work in progress
247
- - `changelog/` - Your change history (_recent.md, modules/, features/)
248
- - `worklog/` - Your work context (_context.md, ai-stats.json)
249
- - `.learning/` - Learned patterns
250
- - `cache/` - Analysis cache
251
- - `proagents.config.yaml` - Your values kept, new options merged
252
-
253
- **What's preserved with `upgrade` (full replace):**
254
- - `proagents.config.yaml`, `activity.log`, `handoff.md`, `.lock`
255
- - `active-features/` - All files
256
- - `changelog/` - _recent.md, modules/, features/, yearly folders
257
- - `worklog/` - _context.md, ai-stats.json
165
+ šŸ“– **Want more?** See [COMMANDS.md](COMMANDS.md) for 30+ CLI commands (release notes, stats, config, backups, shell completions...)
258
166
 
259
167
  ---
260
168
 
261
- ## AI Commands (pa:)
169
+ ## Essential AI Commands (pa:)
262
170
 
263
171
  Type these in any AI assistant (Claude, ChatGPT, Gemini, Cursor, etc.):
264
172
 
265
- ### Quick Aliases
266
- | Alias | Expands To |
267
- |-------|------------|
268
- | `pa:f` | `pa:feature` |
269
- | `pa:s` | `pa:status` |
270
- | `pa:h` | `pa:help` |
271
- | `pa:d` | `pa:doc` |
272
- | `pa:t` | `pa:test` |
273
- | `pa:q` | `pa:qa` |
274
- | `pa:a` | `pa:analyze` |
275
- | `pa:r` | `pa:requirements` |
276
- | `pa:p` | `pa:plan` |
277
- | `pa:i` | `pa:implement` |
278
- | `pa:rev` | `pa:review` |
279
- | `pa:dbg` | `pa:debug` |
280
- | `pa:l` | `pa:logs` |
281
-
282
- ### Core Commands
283
173
  | Command | Description |
284
174
  |---------|-------------|
285
175
  | `pa:feature "name"` | Start new feature workflow (all phases) |
286
176
  | `pa:fix "description"` | Quick bug fix mode |
287
177
  | `pa:status` | Show current progress |
178
+ | `pa:sync` | Load project context (usually auto) |
179
+ | `pa:test` | Run tests |
180
+ | `pa:review` | Code review workflow |
181
+ | `pa:deploy` | Deployment preparation |
288
182
  | `pa:help` | Show all commands |
183
+ | `pa:undo-last` | Revert last AI's changes |
184
+ | `pa:handoff` | Create notes for another AI |
289
185
 
290
- ### Workflow Phase Commands
291
- | Command | Phase | Description |
292
- |---------|-------|-------------|
293
- | `pa:analyze` | Analysis | Deep codebase analysis |
294
- | `pa:requirements` | Requirements | Gather feature requirements |
295
- | `pa:design` | Design | UI/Architecture design |
296
- | `pa:plan` | Planning | Create implementation plan |
297
- | `pa:implement` | Implementation | Execute code changes |
298
- | `pa:test` | Testing | Create and run tests |
299
- | `pa:review` | Review | Code review workflow |
300
- | `pa:doc` | Documentation | Generate documentation |
301
- | `pa:deploy` | Deployment | Deployment preparation |
302
-
303
- ### Documentation
304
- | Command | Description |
305
- |---------|-------------|
306
- | `pa:doc` | Generate documentation |
307
- | `pa:changelog` | Update CHANGELOG.md |
308
- | `pa:release` | Generate release notes |
309
-
310
- ### Quality & Testing
311
- | Command | Description |
312
- |---------|-------------|
313
- | `pa:qa` | Run quality assurance checks |
314
- | `pa:rollback` | Rollback procedures |
315
-
316
- ### Cross-AI Continuity
317
- | Command | Description |
318
- |---------|-------------|
319
- | `pa:sync` | **Run first** - Load project context |
320
- | `pa:resume` | Quick resume - shows last session + next action |
321
- | `pa:session-start` | Begin new work session |
322
- | `pa:session-end` | Finalize session, update logs |
323
- | `pa:conflict-check` | Check if files modified by other AI |
324
- | `pa:undo-last` | Undo last AI's entire session (revert all changes) |
325
- | `pa:undo-file "path"` | Undo changes to specific file |
326
- | `pa:changelog` | Update all changelogs |
327
- | `pa:changelog --from-git` | Auto-populate from git commits |
328
- | `pa:changelog-feature X` | View feature changelog |
329
- | `pa:changelog-module X` | View module changelog |
330
- | `pa:history` | View command history |
331
- | `pa:activity` | Show recent AI activity |
332
- | `pa:handoff` | Create handoff notes |
333
-
334
- ### Learning & Tracking
335
- | Command | Description |
336
- |---------|-------------|
337
- | `pa:decision "title"` | Log architectural decision |
338
- | `pa:decisions` | Show all decisions |
339
- | `pa:error "description"` | Log error and solution |
340
- | `pa:errors` | Search past errors |
341
- | `pa:feedback "description"` | Log feedback for AI learning |
342
-
343
- ### AI Platform Management
344
- | Command | Description |
345
- |---------|-------------|
346
- | `pa:ai-list` | List installed AI platforms |
347
- | `pa:ai-add` | Add more AI platforms |
348
- | `pa:ai-sync` | Sync config with files |
349
-
350
- ### Navigation & Flow
351
- | Command | Description |
352
- |---------|-------------|
353
- | `pa:next` | Show next step in workflow |
354
- | `pa:resume` | Resume paused feature |
355
- | `pa:skip` | Skip current phase |
356
- | `pa:back` | Go to previous phase |
357
- | `pa:progress` | Show visual progress bar |
358
-
359
- ### Context & History
360
- | Command | Description |
361
- |---------|-------------|
362
- | `pa:context` | View project context |
363
- | `pa:diff` | Show changes since last session |
364
- | `pa:history` | Show command history |
365
- | `pa:checkpoint` | Create restore point |
366
- | `pa:undo` | Undo last action |
186
+ **Quick aliases:** `pa:f` (feature), `pa:s` (status), `pa:t` (test), `pa:h` (help)
367
187
 
368
- ### Sprint & Estimation
369
- | Command | Description |
370
- |---------|-------------|
371
- | `pa:sprint-start` | Start new sprint |
372
- | `pa:sprint-end` | End sprint with summary |
373
- | `pa:estimate` | Estimate task complexity |
374
- | `pa:velocity` | Show velocity metrics |
375
-
376
- ### Integration
377
- | Command | Description |
378
- |---------|-------------|
379
- | `pa:github` | GitHub integration |
380
- | `pa:github-pr` | Create pull request |
381
- | `pa:jira` | Sync with Jira |
382
- | `pa:notify` | Send notification |
383
-
384
- ### Code Quality
385
- | Command | Description |
386
- |---------|-------------|
387
- | `pa:metrics` | Code quality metrics |
388
- | `pa:coverage` | Test coverage report |
389
- | `pa:deps` | Analyze dependencies |
390
- | `pa:deps-outdated` | Find outdated packages |
391
- | `pa:deps-security` | Security scan |
392
-
393
- ### Code Generation
394
- | Command | Description |
395
- |---------|-------------|
396
- | `pa:generate` | Show generation options |
397
- | `pa:generate-component` | Generate component |
398
- | `pa:generate-api` | Generate API endpoint |
399
- | `pa:generate-test` | Generate test file |
400
-
401
- ### Refactoring
402
- | Command | Description |
403
- |---------|-------------|
404
- | `pa:refactor` | Suggest refactoring |
405
- | `pa:rename` | Rename across codebase |
406
- | `pa:extract` | Extract function/component |
407
- | `pa:cleanup` | Remove dead code |
408
-
409
- ### Time Tracking
410
- | Command | Description |
411
- |---------|-------------|
412
- | `pa:time-start` | Start time tracking |
413
- | `pa:time-stop` | Stop tracking |
414
- | `pa:time-report` | Show time report |
415
-
416
- ### Environment & Database
417
- | Command | Description |
418
- |---------|-------------|
419
- | `pa:env-check` | Verify environment |
420
- | `pa:secrets-scan` | Scan for secrets |
421
- | `pa:db-migrate` | Run migrations |
422
- | `pa:db-seed` | Seed database |
423
-
424
- ### Accessibility & Performance
425
- | Command | Description |
426
- |---------|-------------|
427
- | `pa:a11y` | Accessibility audit |
428
- | `pa:lighthouse` | Lighthouse audit |
429
- | `pa:perf` | Performance analysis |
430
-
431
- ### Export & Learning
432
- | Command | Description |
433
- |---------|-------------|
434
- | `pa:export` | Export config/data |
435
- | `pa:import` | Import data |
436
- | `pa:backup` | Backup proagents |
437
- | `pa:learn` | Teach AI a pattern |
438
- | `pa:suggestions` | Show AI suggestions |
439
-
440
- ### API & Documentation
441
- | Command | Description |
442
- |---------|-------------|
443
- | `pa:api-docs` | Generate OpenAPI/Swagger docs |
444
- | `pa:storybook` | Generate Storybook stories |
445
- | `pa:readme` | Auto-generate/update README |
446
- | `pa:types` | Generate TypeScript types |
447
-
448
- ### Git Advanced
449
- | Command | Description |
450
- |---------|-------------|
451
- | `pa:branch` | Branch management |
452
- | `pa:merge` | Smart merge with conflict preview |
453
- | `pa:conflict` | Resolve merge conflicts with AI |
454
- | `pa:changelog-gen` | Auto-generate changelog |
455
-
456
- ### Search & Code Navigation
457
- | Command | Description |
458
- |---------|-------------|
459
- | `pa:find` | Find code patterns/usage |
460
- | `pa:todo` | Find all TODOs in code |
461
- | `pa:fixme` | Find FIXMEs and critical issues |
462
- | `pa:unused` | Find unused code/exports |
463
-
464
- ### Code Analysis
465
- | Command | Description |
466
- |---------|-------------|
467
- | `pa:complexity` | Cyclomatic complexity analysis |
468
- | `pa:duplication` | Find duplicate code blocks |
469
- | `pa:hotspots` | Find frequently changed files |
470
-
471
- ### Debug & Logs
472
- | Command | Description |
473
- |---------|-------------|
474
- | `pa:debug` | Start debug session |
475
- | `pa:debug-add` | Add debug logs to code |
476
- | `pa:debug-add "file"` | Add logs to specific file |
477
- | `pa:debug-trace "func"` | Add entry/exit logs to function |
478
- | `pa:debug-var "var"` | Track variable changes |
479
- | `pa:debug-api` | Add API request/response logging |
480
- | `pa:debug-state` | Add state change logging |
481
- | `pa:debug-error` | Add error boundary logging |
482
- | `pa:debug-web` | Web console debugging |
483
- | `pa:debug-rn` | React Native debugging |
484
- | `pa:debug-android` | Android native (logcat) |
485
- | `pa:debug-ios` | iOS native debugging |
486
- | `pa:logs` | View recent logs |
487
- | `pa:logs-filter "term"` | Filter logs by term |
488
- | `pa:debug-clean` | Remove all debug statements |
489
-
490
- ### Testing Advanced
491
- | Command | Description |
492
- |---------|-------------|
493
- | `pa:test-e2e` | Create/run E2E tests |
494
- | `pa:test-unit` | Generate unit tests |
495
- | `pa:mock` | Generate mocks/stubs |
496
- | `pa:snapshot` | Snapshot testing management |
497
-
498
- ### DevOps & Infrastructure
499
- | Command | Description |
500
- |---------|-------------|
501
- | `pa:docker` | Docker commands |
502
- | `pa:ci` | CI/CD pipeline management |
503
- | `pa:deploy-preview` | Deploy preview environment |
504
-
505
- ### Release Management
506
- | Command | Description |
507
- |---------|-------------|
508
- | `pa:version` | Show/bump version |
509
- | `pa:tag` | Create git tag |
510
- | `pa:publish` | Publish package to registry |
511
-
512
- ### Code Review & PR
513
- | Command | Description |
514
- |---------|-------------|
515
- | `pa:review-request` | Request code review from team |
516
- | `pa:review-comments` | Show PR review comments |
517
- | `pa:review-approve` | Approve current PR |
518
-
519
- ### Architecture
520
- | Command | Description |
521
- |---------|-------------|
522
- | `pa:architecture` | Show architecture overview |
523
- | `pa:architecture-diagram` | Generate diagram (Mermaid) |
524
- | `pa:architecture-export` | Export diagram (SVG/PNG) |
525
-
526
- ### API Testing
527
- | Command | Description |
528
- |---------|-------------|
529
- | `pa:api-test` | Test API endpoints |
530
- | `pa:curl` | Generate curl commands |
531
- | `pa:postman` | Generate Postman collection |
532
-
533
- ### Health & Monitoring
534
- | Command | Description |
535
- |---------|-------------|
536
- | `pa:health` | Project health check |
537
- | `pa:monitor` | Show monitoring status |
538
- | `pa:uptime` | Service uptime check |
539
-
540
- ### Quick Actions
541
- | Command | Description |
542
- |---------|-------------|
543
- | `pa:quick` | Show quick actions menu |
544
- | `pa:alias` | Manage command aliases |
545
- | `pa:alias-add` | Add custom alias |
546
- | `pa:alias-remove` | Remove custom alias |
547
-
548
- ### Platform-Specific Test Suites
549
-
550
- **Fully automated**: Auto-install tools, run tests, auto-fix failures, loop until all pass.
551
-
552
- | Command | Description |
553
- |---------|-------------|
554
- | `pa:test-mobile` | Full mobile test suite (React Native, Android, iOS, Flutter) |
555
- | `pa:test-web` | Full web test suite (React/Next.js/Vue) |
556
- | `pa:test-api` | Full API test suite (Node.js/Python) |
557
- | `pa:test-visual` | Visual/design comparison testing |
558
- | `pa:test-auto-fix` | Auto-fix failing tests |
559
- | `pa:test-loop` | Test → Fix → Retest until all pass |
560
- | `pa:compare-figma` | Compare UI against Figma design |
561
- | `pa:compare-image` | Compare UI against image/sketch |
562
- | `pa:screenshot` | Capture app screenshots |
563
-
564
- **What these commands do:**
565
- - Check required tools → Auto-install if missing
566
- - Run all tests (unit, integration, e2e)
567
- - Auto-fix failures (no confirmation needed)
568
- - Loop until all pass or fix is impossible
569
-
570
- ### Custom Commands
571
- | Command | Description |
572
- |---------|-------------|
573
- | `pa:standup` | Generate daily standup |
574
- | `pa:tech-debt` | Scan for technical debt |
575
- | `pa:security-scan` | Run security checklist |
576
-
577
- Define your own in `./.proagents/custom-commands.yaml`
578
-
579
- ---
580
-
581
- ## Key Files
582
-
583
- After initialization, these files help AI understand your project:
584
-
585
- | File | Purpose | AI Should |
586
- |------|---------|-----------|
587
- | `.proagents/context.md` | Persistent project knowledge | **Read first every session!** |
588
- | `.proagents/feedback.md` | Past corrections & preferences | Learn from mistakes |
589
- | `.proagents/watchlist.yaml` | Protected files list | Ask before modifying |
590
- | `.proagents/activity.log` | AI activity history | Check for conflicts |
591
- | `.proagents/decisions.md` | Architectural decisions | Understand why choices were made |
592
- | `.proagents/errors.md` | Past errors & solutions | Find solutions faster |
593
- | `.proagents/handoff.md` | Handoff notes | Continue where another AI left off |
594
-
595
- ---
596
-
597
- ## Project Structure
598
-
599
- ```
600
- your-project/
601
- ā”œā”€ā”€ .proagents/
602
- │ ā”œā”€ā”€ proagents.config.yaml # Project configuration
603
- │ ā”œā”€ā”€ AI_INSTRUCTIONS.md # Instructions for all AIs
604
- │ ā”œā”€ā”€ PROAGENTS.md # Quick command reference
605
- │ ā”œā”€ā”€ context.md # Persistent project context
606
- │ ā”œā”€ā”€ feedback.md # AI learning from corrections
607
- │ ā”œā”€ā”€ watchlist.yaml # Protected files
608
- │ ā”œā”€ā”€ activity.log # AI activity log
609
- │ ā”œā”€ā”€ decisions.md # Decision log
610
- │ ā”œā”€ā”€ errors.md # Error tracker
611
- │ ā”œā”€ā”€ handoff.md # Handoff notes
612
- │ ā”œā”€ā”€ custom-commands.yaml # Custom pa: commands
613
- │ ā”œā”€ā”€ worklog/ # Cross-AI session tracking
614
- │ │ ā”œā”€ā”€ _context.md # Quick context for any AI
615
- │ │ ā”œā”€ā”€ ai-stats.json # AI performance stats
616
- │ │ └── YYYY-MM-DD-ai-*.md # Session logs
617
- │ ā”œā”€ā”€ changelog/ # Detailed changelogs
618
- │ │ ā”œā”€ā”€ _recent.md # Last 10 changes
619
- │ │ ā”œā”€ā”€ features/ # Per-feature changelogs
620
- │ │ └── modules/ # Per-module changelogs
621
- │ ā”œā”€ā”€ active-features/ # Feature tracking
622
- │ ā”œā”€ā”€ prompts/ # Workflow prompts
623
- │ ā”œā”€ā”€ templates/ # Document templates
624
- │ ā”œā”€ā”€ checklists/ # Quality checklists
625
- │ └── ...
626
- ā”œā”€ā”€ CLAUDE.md # Claude-specific instructions
627
- ā”œā”€ā”€ .cursorrules # Cursor-specific instructions
628
- ā”œā”€ā”€ GEMINI.md # Gemini-specific instructions
629
- └── proagents.config.yaml # Main config (project root)
630
- ```
631
-
632
- ---
633
-
634
- ## Configuration
635
-
636
- `proagents.config.yaml` stores your project settings:
637
-
638
- ```yaml
639
- project:
640
- name: my-app
641
- type: nextjs
642
-
643
- automation:
644
- decisions:
645
- architecture:
646
- api_style: rest
647
- state_management: zustand
648
- styling: tailwind
649
- database: postgresql
650
- orm: prisma
651
- auth_method: jwt
652
- testing:
653
- framework: vitest
654
- coverage_target: 80
655
-
656
- platforms:
657
- - claude
658
- - cursor
659
- - copilot
660
- ```
188
+ šŸ“– **Want more?** See [COMMANDS.md](COMMANDS.md) for 100+ AI commands (debugging, testing, refactoring, code generation, sprints...)
661
189
 
662
190
  ---
663
191
 
664
192
  ## Supported AI Platforms
665
193
 
194
+ ProAgents works with **any AI that has agentic capability** (can read files and execute commands). Pre-configured instruction files are available for:
195
+
666
196
  | Platform | Instruction File |
667
197
  |----------|-----------------|
668
198
  | Claude Code | `CLAUDE.md` |
@@ -677,17 +207,7 @@ platforms:
677
207
  | Kiro | `KIRO.md` |
678
208
  | Groq | `GROQ.md` |
679
209
 
680
- ---
681
-
682
- ## Integrations
683
-
684
- **Project Management:** Jira, Linear, GitHub Issues, GitLab Issues, Asana, Trello, Notion
685
-
686
- **Version Control:** GitHub, GitLab
687
-
688
- **Communication:** Slack
689
-
690
- **CI/CD:** GitHub Actions, GitLab CI, Jenkins, Azure DevOps
210
+ **Using a different AI?** Point it to `.proagents/AI_INSTRUCTIONS.md` - it contains everything needed to work with ProAgents.
691
211
 
692
212
  ---
693
213
 
@@ -695,6 +215,7 @@ platforms:
695
215
 
696
216
  | Document | Description |
697
217
  |----------|-------------|
218
+ | šŸ“š **[COMMANDS.md](COMMANDS.md)** | **100+ CLI & AI commands** |
698
219
  | [Getting Started Story](./.proagents/GETTING-STARTED-STORY.md) | Narrative walkthrough |
699
220
  | [Complete Workflow](./.proagents/WORKFLOW.md) | 10-phase workflow guide |
700
221
  | [AI Instructions](./.proagents/AI_INSTRUCTIONS.md) | Full AI command reference |
package/bin/proagents.js CHANGED
@@ -12,7 +12,7 @@ import { configListCommand, configShowCommand, configEditCommand, configSetComma
12
12
  import { doctorCommand } from '../lib/commands/doctor.js';
13
13
  import { upgradeCommand } from '../lib/commands/upgrade.js';
14
14
  import { migrateCommand } from '../lib/commands/migrate.js';
15
- import { versionCommand } from '../lib/commands/version.js';
15
+ import { versionCommand, checkForUpdates } from '../lib/commands/version.js';
16
16
  import { releaseCommand } from '../lib/commands/release.js';
17
17
  import { statsCommand } from '../lib/commands/stats.js';
18
18
  import { restoreCommand } from '../lib/commands/restore.js';
@@ -42,8 +42,6 @@ program
42
42
  .description('Initialize ProAgents in the current project')
43
43
  .option('-f, --force', 'Overwrite existing proagents folder')
44
44
  .option('--skip-config', 'Skip creating config file')
45
- .option('-t, --template <name>', 'Use a project template (e.g., nextjs-saas, react-spa)')
46
- .option('--list-templates', 'List available project templates')
47
45
  .action(initCommand);
48
46
 
49
47
  // Feature commands
@@ -314,3 +312,11 @@ program
314
312
  .action(openCommand);
315
313
 
316
314
  program.parse();
315
+
316
+ // Check for updates after command completes (non-blocking)
317
+ // Skip for version command (it already shows version info)
318
+ const commandName = program.args[0];
319
+ if (commandName !== 'version' && commandName !== '--version' && commandName !== '-V') {
320
+ // Run update check in background without blocking
321
+ checkForUpdates().catch(() => {});
322
+ }
@@ -316,115 +316,6 @@ const PROJECT_TYPES = [
316
316
  }
317
317
  ];
318
318
 
319
- // Project templates - pre-configured settings for common stacks
320
- const PROJECT_TEMPLATES = {
321
- 'nextjs-saas': {
322
- name: 'Next.js SaaS Starter',
323
- description: 'Full-stack SaaS with authentication, database, and payments',
324
- project: { type: 'nextjs' },
325
- techStack: {
326
- api_style: 'rest',
327
- state_management: 'zustand',
328
- styling: 'tailwind',
329
- database: 'postgresql',
330
- orm: 'prisma',
331
- auth_method: 'nextauth',
332
- test_framework: 'vitest'
333
- },
334
- platforms: ['claude', 'cursor', 'copilot']
335
- },
336
- 'react-spa': {
337
- name: 'React Single Page App',
338
- description: 'Frontend-focused React application with modern tooling',
339
- project: { type: 'react' },
340
- techStack: {
341
- api_style: 'rest',
342
- state_management: 'zustand',
343
- styling: 'tailwind',
344
- database: 'none',
345
- orm: 'none',
346
- auth_method: 'jwt',
347
- test_framework: 'vitest'
348
- },
349
- platforms: ['claude', 'cursor']
350
- },
351
- 'react-native-app': {
352
- name: 'React Native Mobile App',
353
- description: 'Cross-platform mobile app with Expo',
354
- project: { type: 'react-native' },
355
- techStack: {
356
- api_style: 'rest',
357
- state_management: 'zustand',
358
- styling: 'tailwind',
359
- database: 'supabase',
360
- orm: 'none',
361
- auth_method: 'supabase',
362
- test_framework: 'jest'
363
- },
364
- platforms: ['claude', 'cursor']
365
- },
366
- 'express-api': {
367
- name: 'Express.js REST API',
368
- description: 'Backend API with Express, PostgreSQL, and JWT auth',
369
- project: { type: 'express' },
370
- techStack: {
371
- api_style: 'rest',
372
- state_management: 'none',
373
- styling: 'none',
374
- database: 'postgresql',
375
- orm: 'prisma',
376
- auth_method: 'jwt',
377
- test_framework: 'jest'
378
- },
379
- platforms: ['claude', 'cursor']
380
- },
381
- 'nestjs-api': {
382
- name: 'NestJS Enterprise API',
383
- description: 'Enterprise-grade API with NestJS and TypeORM',
384
- project: { type: 'nestjs' },
385
- techStack: {
386
- api_style: 'rest',
387
- state_management: 'none',
388
- styling: 'none',
389
- database: 'postgresql',
390
- orm: 'typeorm',
391
- auth_method: 'jwt',
392
- test_framework: 'jest'
393
- },
394
- platforms: ['claude', 'cursor']
395
- },
396
- 'vue-spa': {
397
- name: 'Vue.js Single Page App',
398
- description: 'Vue 3 with Composition API and Pinia',
399
- project: { type: 'vue' },
400
- techStack: {
401
- api_style: 'rest',
402
- state_management: 'none',
403
- styling: 'tailwind',
404
- database: 'none',
405
- orm: 'none',
406
- auth_method: 'jwt',
407
- test_framework: 'vitest'
408
- },
409
- platforms: ['claude', 'cursor']
410
- },
411
- 'python-fastapi': {
412
- name: 'Python FastAPI',
413
- description: 'Modern Python API with FastAPI and SQLAlchemy',
414
- project: { type: 'python' },
415
- techStack: {
416
- api_style: 'rest',
417
- state_management: 'none',
418
- styling: 'none',
419
- database: 'postgresql',
420
- orm: 'none',
421
- auth_method: 'jwt',
422
- test_framework: 'pytest'
423
- },
424
- platforms: ['claude', 'cursor']
425
- }
426
- };
427
-
428
319
  // Tech stack configuration options
429
320
  const TECH_STACK_OPTIONS = {
430
321
  api_style: {
@@ -963,41 +854,6 @@ async function promptProjectConfig(targetDir, existingConfig = {}) {
963
854
  };
964
855
  }
965
856
 
966
- /**
967
- * List available templates
968
- */
969
- export function listTemplates() {
970
- console.log(chalk.bold('\nAvailable Project Templates'));
971
- console.log(chalk.gray('─'.repeat(50)));
972
-
973
- for (const [id, template] of Object.entries(PROJECT_TEMPLATES)) {
974
- console.log(`\n ${chalk.cyan(id)}`);
975
- console.log(` ${template.name}`);
976
- console.log(chalk.gray(` ${template.description}`));
977
- }
978
-
979
- console.log(chalk.gray('\n\nUsage: npx proagents init --template <name>\n'));
980
- }
981
-
982
- /**
983
- * Apply a project template
984
- */
985
- function applyTemplate(templateId, targetDir) {
986
- const template = PROJECT_TEMPLATES[templateId];
987
- if (!template) {
988
- return null;
989
- }
990
-
991
- // Return config object that matches what promptProjectConfig returns
992
- return {
993
- name: basename(targetDir),
994
- type: template.project.type,
995
- typeName: PROJECT_TYPES.find(t => t.id === template.project.type)?.name || template.project.type,
996
- techStack: template.techStack,
997
- platforms: template.platforms
998
- };
999
- }
1000
-
1001
857
  /**
1002
858
  * Load existing partial config (for resume after interrupted setup)
1003
859
  */
@@ -1331,27 +1187,8 @@ No releases yet. Use \`pa:release\` to generate release notes.
1331
1187
  console.log(chalk.green('āœ“ Created RELEASE_NOTES.md'));
1332
1188
  }
1333
1189
 
1334
- // Project configuration - either from template or interactive prompt
1335
- let projectConfig;
1336
-
1337
- if (options.listTemplates) {
1338
- listTemplates();
1339
- return;
1340
- }
1341
-
1342
- if (options.template) {
1343
- // Use template
1344
- projectConfig = applyTemplate(options.template, targetDir);
1345
- if (!projectConfig) {
1346
- console.log(chalk.red(`\nError: Template "${options.template}" not found.`));
1347
- listTemplates();
1348
- return;
1349
- }
1350
- console.log(chalk.green(`\nāœ“ Using template: ${PROJECT_TEMPLATES[options.template].name}`));
1351
- } else {
1352
- // Interactive prompts - pass existing config for pre-filling
1353
- projectConfig = await promptProjectConfig(targetDir, existingConfig);
1354
- }
1190
+ // Project configuration - interactive prompts with auto-detection
1191
+ const projectConfig = await promptProjectConfig(targetDir, existingConfig);
1355
1192
 
1356
1193
  // Save progress after project config
1357
1194
  savePartialConfig(configPath, {
@@ -1394,15 +1231,8 @@ For detailed commands, see \`./.proagents/PROAGENTS.md\`
1394
1231
  console.log(chalk.green('āœ“ Created README.md with ProAgents commands'));
1395
1232
  }
1396
1233
 
1397
- // AI platform selection - from template or interactive
1398
- let selectedPlatforms;
1399
- if (options.template && projectConfig.platforms) {
1400
- selectedPlatforms = projectConfig.platforms;
1401
- console.log(chalk.gray(` Using template platforms: ${selectedPlatforms.join(', ')}`));
1402
- } else {
1403
- // Pass existing config for pre-selection
1404
- selectedPlatforms = await selectPlatforms(existingConfig.ai_platforms);
1405
- }
1234
+ // AI platform selection - interactive with auto-detection
1235
+ const selectedPlatforms = await selectPlatforms(existingConfig.ai_platforms);
1406
1236
 
1407
1237
  // Save progress after platform selection
1408
1238
  savePartialConfig(configPath, {
@@ -9,7 +9,7 @@ const __dirname = dirname(__filename);
9
9
  /**
10
10
  * Get CLI version from package.json
11
11
  */
12
- function getCliVersion() {
12
+ export function getCliVersion() {
13
13
  try {
14
14
  const packagePath = join(__dirname, '..', '..', 'package.json');
15
15
  const packageJson = JSON.parse(readFileSync(packagePath, 'utf-8'));
@@ -41,7 +41,7 @@ function getProjectVersion(targetDir) {
41
41
  /**
42
42
  * Fetch latest version from npm
43
43
  */
44
- async function getLatestVersion() {
44
+ export async function getLatestVersion() {
45
45
  try {
46
46
  const controller = new AbortController();
47
47
  const timeout = setTimeout(() => controller.abort(), 5000);
@@ -66,7 +66,7 @@ async function getLatestVersion() {
66
66
  * Compare semantic versions
67
67
  * Returns: -1 if v1 < v2, 0 if equal, 1 if v1 > v2
68
68
  */
69
- function compareVersions(v1, v2) {
69
+ export function compareVersions(v1, v2) {
70
70
  const parts1 = v1.split('.').map(Number);
71
71
  const parts2 = v2.split('.').map(Number);
72
72
 
@@ -79,6 +79,27 @@ function compareVersions(v1, v2) {
79
79
  return 0;
80
80
  }
81
81
 
82
+ /**
83
+ * Check for updates and display notification if available
84
+ * Non-blocking - runs asynchronously
85
+ */
86
+ export async function checkForUpdates() {
87
+ try {
88
+ const cliVersion = getCliVersion();
89
+ const latestVersion = await getLatestVersion();
90
+
91
+ if (latestVersion && compareVersions(cliVersion, latestVersion) < 0) {
92
+ console.log('');
93
+ console.log(chalk.yellow(` ╭───────────────────────────────────────────────╮`));
94
+ console.log(chalk.yellow(` │ Update available: ${chalk.gray('v' + cliVersion)} → ${chalk.green('v' + latestVersion)} │`));
95
+ console.log(chalk.yellow(` │ Run: ${chalk.cyan('npx proagents init')} to update │`));
96
+ console.log(chalk.yellow(` ╰───────────────────────────────────────────────╯`));
97
+ }
98
+ } catch (error) {
99
+ // Silently ignore update check errors
100
+ }
101
+ }
102
+
82
103
  /**
83
104
  * Version command - show detailed version information
84
105
  */
@@ -118,7 +139,7 @@ export async function versionCommand(options = {}) {
118
139
  console.log(chalk.green('v' + latestVersion + ' (up to date)'));
119
140
  } else {
120
141
  console.log(chalk.yellow('v' + latestVersion + ' (update available)'));
121
- console.log(chalk.yellow(` ↳ Run 'npm update -g proagents' to update`));
142
+ console.log(chalk.yellow(` ↳ Run 'npx proagents init' to update`));
122
143
  }
123
144
  } else {
124
145
  console.log(chalk.gray('Could not fetch (offline or npm unavailable)'));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "proagents",
3
- "version": "1.6.15",
3
+ "version": "1.6.17",
4
4
  "description": "AI-agnostic development workflow framework that automates the full software development lifecycle",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",