agileflow 2.94.1 → 2.95.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +3 -3
  3. package/lib/colors.generated.js +117 -0
  4. package/lib/colors.js +59 -109
  5. package/lib/generator-factory.js +333 -0
  6. package/lib/path-utils.js +49 -0
  7. package/lib/session-registry.js +25 -15
  8. package/lib/smart-json-file.js +40 -32
  9. package/lib/state-machine.js +286 -0
  10. package/package.json +1 -1
  11. package/scripts/agileflow-configure.js +7 -6
  12. package/scripts/archive-completed-stories.sh +86 -11
  13. package/scripts/babysit-context-restore.js +89 -0
  14. package/scripts/claude-tmux.sh +111 -5
  15. package/scripts/damage-control/bash-tool-damage-control.js +11 -247
  16. package/scripts/damage-control/edit-tool-damage-control.js +9 -249
  17. package/scripts/damage-control/write-tool-damage-control.js +9 -244
  18. package/scripts/generate-colors.js +314 -0
  19. package/scripts/lib/colors.generated.sh +82 -0
  20. package/scripts/lib/colors.sh +10 -70
  21. package/scripts/lib/configure-features.js +401 -0
  22. package/scripts/lib/context-loader.js +181 -52
  23. package/scripts/precompact-context.sh +54 -17
  24. package/scripts/session-coordinator.sh +2 -2
  25. package/scripts/session-manager.js +653 -10
  26. package/src/core/commands/audit.md +93 -0
  27. package/src/core/commands/auto.md +73 -0
  28. package/src/core/commands/babysit.md +169 -13
  29. package/src/core/commands/baseline.md +73 -0
  30. package/src/core/commands/batch.md +64 -0
  31. package/src/core/commands/blockers.md +60 -0
  32. package/src/core/commands/board.md +66 -0
  33. package/src/core/commands/choose.md +77 -0
  34. package/src/core/commands/ci.md +77 -0
  35. package/src/core/commands/compress.md +27 -1
  36. package/src/core/commands/configure.md +126 -10
  37. package/src/core/commands/council.md +74 -0
  38. package/src/core/commands/debt.md +72 -0
  39. package/src/core/commands/deploy.md +73 -0
  40. package/src/core/commands/deps.md +68 -0
  41. package/src/core/commands/docs.md +60 -0
  42. package/src/core/commands/feedback.md +68 -0
  43. package/src/core/commands/ideate.md +74 -0
  44. package/src/core/commands/impact.md +74 -0
  45. package/src/core/commands/install.md +529 -0
  46. package/src/core/commands/maintain.md +558 -0
  47. package/src/core/commands/metrics.md +75 -0
  48. package/src/core/commands/multi-expert.md +74 -0
  49. package/src/core/commands/packages.md +69 -0
  50. package/src/core/commands/readme-sync.md +64 -0
  51. package/src/core/commands/research/analyze.md +285 -121
  52. package/src/core/commands/research/import.md +281 -109
  53. package/src/core/commands/retro.md +76 -0
  54. package/src/core/commands/review.md +72 -0
  55. package/src/core/commands/rlm.md +83 -0
  56. package/src/core/commands/rpi.md +90 -0
  57. package/src/core/commands/session/cleanup.md +214 -12
  58. package/src/core/commands/session/end.md +155 -17
  59. package/src/core/commands/sprint.md +72 -0
  60. package/src/core/commands/story-validate.md +68 -0
  61. package/src/core/commands/template.md +69 -0
  62. package/src/core/commands/tests.md +83 -0
  63. package/src/core/commands/update.md +59 -0
  64. package/src/core/commands/validate-expertise.md +76 -0
  65. package/src/core/commands/velocity.md +74 -0
  66. package/src/core/commands/verify.md +91 -0
  67. package/src/core/commands/whats-new.md +69 -0
  68. package/src/core/commands/workflow.md +88 -0
  69. package/src/core/templates/command-documentation.md +187 -0
  70. package/tools/cli/commands/session.js +1171 -0
  71. package/tools/cli/commands/setup.js +2 -81
  72. package/tools/cli/installers/core/installer.js +0 -5
  73. package/tools/cli/installers/ide/claude-code.js +6 -0
  74. package/tools/cli/lib/config-manager.js +42 -5
@@ -343,6 +343,83 @@ Use `/agileflow:choose` for decisions that:
343
343
 
344
344
  ---
345
345
 
346
+ ## Expected Output
347
+
348
+ ### Success - Decision Analysis
349
+
350
+ ```
351
+ 🤔 Decision Analysis: Database Selection
352
+ ══════════════════════════════════════════════════════════════
353
+
354
+ Context: New microservice needs persistent storage for user data
355
+
356
+ 📊 Options Evaluated:
357
+
358
+ ┌─────────────────────────────────────────────────────────────┐
359
+ │ Option A: PostgreSQL │
360
+ ├─────────────────────────────────────────────────────────────┤
361
+ │ ✅ Pros: │
362
+ │ - ACID compliance │
363
+ │ - Rich query capabilities │
364
+ │ - Team expertise exists │
365
+ │ ❌ Cons: │
366
+ │ - Scaling complexity │
367
+ │ - Higher operational overhead │
368
+ │ Score: 8/10 │
369
+ └─────────────────────────────────────────────────────────────┘
370
+
371
+ ┌─────────────────────────────────────────────────────────────┐
372
+ │ Option B: MongoDB │
373
+ ├─────────────────────────────────────────────────────────────┤
374
+ │ ✅ Pros: │
375
+ │ - Flexible schema │
376
+ │ - Horizontal scaling │
377
+ │ ❌ Cons: │
378
+ │ - No ACID by default │
379
+ │ - Learning curve │
380
+ │ Score: 6/10 │
381
+ └─────────────────────────────────────────────────────────────┘
382
+
383
+ 🎯 Recommendation: PostgreSQL
384
+
385
+ Rationale: Given team expertise and ACID requirements,
386
+ PostgreSQL provides better fit despite scaling concerns.
387
+
388
+ Document this decision?
389
+ → /agileflow:adr TITLE="Database Selection for User Service"
390
+ ```
391
+
392
+ ### Success - Quick Choice
393
+
394
+ ```
395
+ 🤔 Quick Choice: Testing Framework
396
+
397
+ Options: Jest vs Vitest vs Mocha
398
+
399
+ ✅ Recommended: Jest
400
+ - Industry standard
401
+ - Great TypeScript support
402
+ - Existing config in project
403
+
404
+ Accept recommendation? [Y/n]
405
+ ```
406
+
407
+ ### Error - Insufficient Context
408
+
409
+ ```
410
+ ❌ Error: Cannot make recommendation without context
411
+
412
+ Please provide:
413
+ - QUESTION: What decision needs to be made?
414
+ - OPTIONS: At least 2 alternatives
415
+ - CONTEXT: Relevant constraints and requirements
416
+
417
+ Example:
418
+ /agileflow:choose QUESTION="Which CI provider?" OPTIONS="GitHub Actions, CircleCI, Jenkins"
419
+ ```
420
+
421
+ ---
422
+
346
423
  ## Related Commands
347
424
 
348
425
  - `/agileflow:adr` - Create Architecture Decision Records
@@ -243,6 +243,83 @@ Diff-first; YES/NO.
243
243
 
244
244
  ---
245
245
 
246
+ ## Expected Output
247
+
248
+ ### Success - CI Workflow Created
249
+
250
+ ```
251
+ 🔧 CI/CD Setup
252
+ ══════════════════════════════════════════════════════════════
253
+
254
+ Creating workflow configuration...
255
+
256
+ ✓ Created .github/workflows/ci.yml
257
+ - lint: ESLint + Prettier check
258
+ - typecheck: TypeScript compilation
259
+ - test: Jest with coverage
260
+ - Concurrency: cancel-in-progress enabled
261
+
262
+ ✓ Created CODEOWNERS
263
+ /src/ @team-lead @senior-dev
264
+ /docs/03-decisions/ @tech-lead
265
+
266
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
267
+ ✅ CI/CD Setup Complete
268
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
269
+
270
+ Next steps:
271
+ 1. Push workflow: git add . && git push
272
+ 2. Enable branch protection in GitHub settings
273
+ 3. Set required checks: lint, typecheck, test
274
+
275
+ View workflow: .github/workflows/ci.yml
276
+ ```
277
+
278
+ ### Success - Workflow Updated
279
+
280
+ ```
281
+ 🔧 CI/CD Update
282
+ ══════════════════════════════════════════════════════════════
283
+
284
+ Existing workflow detected. Updating...
285
+
286
+ Changes:
287
+ + Added code coverage threshold (80%)
288
+ + Added security audit job
289
+ ~ Updated Node.js version to 20
290
+
291
+ ✓ Updated .github/workflows/ci.yml
292
+
293
+ Review changes before committing:
294
+ git diff .github/workflows/ci.yml
295
+ ```
296
+
297
+ ### Error - Missing OWNERS
298
+
299
+ ```
300
+ ❌ Error: OWNERS parameter required
301
+
302
+ Specify code owners for CODEOWNERS file:
303
+
304
+ /agileflow:ci OWNERS="@username1, @username2"
305
+
306
+ These users will be required reviewers for PR changes.
307
+ ```
308
+
309
+ ### Error - Invalid Workflow
310
+
311
+ ```
312
+ ❌ Error: Invalid workflow configuration
313
+
314
+ .github/workflows/ci.yml has syntax errors:
315
+ Line 15: Invalid job name 'test!'
316
+ Line 23: Missing 'runs-on' field
317
+
318
+ Fix errors or run with FORCE=true to overwrite.
319
+ ```
320
+
321
+ ---
322
+
246
323
  ## Related Commands
247
324
 
248
325
  - `/agileflow:configure` - Manage AgileFlow features and hooks
@@ -251,7 +251,9 @@ bash .agileflow/scripts/compress-status.sh
251
251
  - `/agileflow:status` - View current story statuses
252
252
  - `/agileflow:validate` - Validate AgileFlow system health
253
253
 
254
- ## Example Output
254
+ ## Expected Output
255
+
256
+ ### Success - Compression Complete
255
257
 
256
258
  ```
257
259
  🗜️ AgileFlow Status Compression
@@ -298,6 +300,30 @@ bash .agileflow/scripts/compress-status.sh
298
300
  💾 To restore original: cp docs/09-agents/status.json.backup docs/09-agents/status.json
299
301
  ```
300
302
 
303
+ ### Error - File Not Found
304
+
305
+ ```
306
+ ❌ Error: status.json not found
307
+
308
+ Expected location: docs/09-agents/status.json
309
+
310
+ Run /agileflow:setup to initialize AgileFlow structure.
311
+ ```
312
+
313
+ ### Error - Invalid JSON
314
+
315
+ ```
316
+ ❌ Error: Invalid JSON in status.json
317
+
318
+ Parse error at line 42: Unexpected token
319
+
320
+ Fix the JSON syntax error and try again.
321
+ Backup your current file first:
322
+ cp docs/09-agents/status.json docs/09-agents/status.json.broken
323
+ ```
324
+
325
+ ---
326
+
301
327
  ## Technical Notes
302
328
 
303
329
  **Token Estimation**:
@@ -177,18 +177,43 @@ After handling issues (or if none), present the main category menu:
177
177
  {"label": "Full (Recommended)", "description": "All features: hooks, archival, status line, AskUserQuestion, TmuxAutoSpawn"},
178
178
  {"label": "Basic", "description": "SessionStart + PreCompact + Archival + AskUserQuestion + TmuxAutoSpawn"},
179
179
  {"label": "Minimal", "description": "SessionStart + Archival only"},
180
- {"label": "None", "description": "Disable all AgileFlow features"}
180
+ {"label": "Experimental ⚠️", "description": "All features + full file injection during compact (CONTEXT HEAVY)"}
181
181
  ]
182
182
  }]</parameter>
183
183
  </invoke>
184
184
  ```
185
185
 
186
+ **Note:** If user needs "None" (disable all), show as second page or via "Other" option.
187
+
186
188
  Then run:
187
189
  - "Full" → `node .agileflow/scripts/agileflow-configure.js --profile=full`
188
190
  - "Basic" → `node .agileflow/scripts/agileflow-configure.js --profile=basic`
189
191
  - "Minimal" → `node .agileflow/scripts/agileflow-configure.js --profile=minimal`
192
+ - "Experimental" → `node .agileflow/scripts/agileflow-configure.js --profile=experimental`
190
193
  - "None" → `node .agileflow/scripts/agileflow-configure.js --profile=none`
191
194
 
195
+ ### Experimental Profile Details
196
+
197
+ The **Experimental** profile enables all features like "Full", but changes how context is preserved during conversation compaction:
198
+
199
+ | Aspect | Full Profile | Experimental Profile |
200
+ |--------|--------------|---------------------|
201
+ | Features | All enabled | All enabled |
202
+ | PreCompact behavior | Extracts `COMPACT_SUMMARY` sections | Injects **entire command files** |
203
+ | Context usage | ~200-500 tokens per command | ~2000-5000 tokens per command |
204
+ | Reliability | Good for most cases | May improve instruction adherence |
205
+
206
+ **When to use Experimental:**
207
+ - Commands aren't being followed well after compaction
208
+ - You have plenty of context budget
209
+ - Working on long sessions with complex commands (babysit, mentor)
210
+
211
+ **Trade-offs:**
212
+ - ⚠️ Uses significantly more context tokens
213
+ - ⚠️ May hit context limits faster
214
+ - ✅ Full command instructions preserved
215
+ - ✅ No loss of nuance from summarization
216
+
192
217
  #### If "Apply custom profile" selected
193
218
 
194
219
  First, check if custom profiles exist:
@@ -305,20 +330,37 @@ First, ask about hooks:
305
330
  </invoke>
306
331
  ```
307
332
 
308
- Then ask about other features:
333
+ Then ask about other features (page 1):
309
334
 
310
335
  ```xml
311
336
  <invoke name="AskUserQuestion">
312
337
  <parameter name="questions">[{
313
- "question": "Which other features?",
338
+ "question": "Which other features? (Page 1/2)",
314
339
  "header": "Features",
315
340
  "multiSelect": true,
316
341
  "options": [
317
342
  {"label": "Archival", "description": "Auto-archive completed stories older than threshold"},
318
343
  {"label": "Status Line", "description": "Custom status bar showing story/epic info"},
319
344
  {"label": "Auto-Update", "description": "Automatically update AgileFlow on session start"},
345
+ {"label": "More options...", "description": "View additional features"}
346
+ ]
347
+ }]</parameter>
348
+ </invoke>
349
+ ```
350
+
351
+ If "More options..." selected, show page 2:
352
+
353
+ ```xml
354
+ <invoke name="AskUserQuestion">
355
+ <parameter name="questions">[{
356
+ "question": "Which other features? (Page 2/2)",
357
+ "header": "Features",
358
+ "multiSelect": true,
359
+ "options": [
320
360
  {"label": "AskUserQuestion Mode", "description": "End responses with guided options"},
321
- {"label": "Tmux Auto-Spawn", "description": "Auto-start Claude in tmux session when using af/agileflow wrapper"}
361
+ {"label": "Tmux Auto-Spawn", "description": "Auto-start Claude in tmux session when using af/agileflow"},
362
+ {"label": "Shell Aliases", "description": "Add af/agileflow commands to ~/.bashrc and ~/.zshrc"},
363
+ {"label": "CLAUDE.md Rules", "description": "Add /babysit context preservation rules to CLAUDE.md"}
322
364
  ]
323
365
  }]</parameter>
324
366
  </invoke>
@@ -334,6 +376,8 @@ Map selections to commands:
334
376
  - Auto-Update → `autoupdate`
335
377
  - AskUserQuestion Mode → `askuserquestion`
336
378
  - Tmux Auto-Spawn → `tmuxautospawn`
379
+ - Shell Aliases → `shellaliases`
380
+ - CLAUDE.md Rules → `claudemdreinforcement`
337
381
 
338
382
  Then run:
339
383
  ```bash
@@ -490,12 +534,20 @@ If no new options: "✅ All configuration options are up to date!"
490
534
 
491
535
  ## Profile Details
492
536
 
493
- | Profile | SessionStart | PreCompact | RalphLoop | SelfImprove | Archival | StatusLine | AskUserQuestion |
494
- |---------|-------------|------------|-----------|-------------|----------|------------|-----------------|
495
- | `full` | ✅ | ✅ | ✅ | ✅ | ✅ 30 days | ✅ | ✅ |
496
- | `basic` | ✅ | ✅ | ❌ | ❌ | ✅ 30 days | ❌ | ✅ |
497
- | `minimal` | ✅ | ❌ | ❌ | ❌ | ✅ 30 days | ❌ | ❌ |
498
- | `none` | | | | | | | |
537
+ | Profile | SessionStart | PreCompact | RalphLoop | SelfImprove | Archival | StatusLine | AskUserQuestion | Full File Injection |
538
+ |---------|-------------|------------|-----------|-------------|----------|------------|-----------------|---------------------|
539
+ | `full` | ✅ | ✅ | ✅ | ✅ | ✅ 30 days | ✅ | ✅ | ❌ |
540
+ | `basic` | ✅ | ✅ | ❌ | ❌ | ✅ 30 days | ❌ | ✅ | ❌ |
541
+ | `minimal` | ✅ | ❌ | ❌ | ❌ | ✅ 30 days | ❌ | ❌ | ❌ |
542
+ | `experimental` | | | | | 30 days | | | ⚠️ **YES** |
543
+ | `none` | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
544
+
545
+ **⚠️ Experimental Profile Warning:**
546
+ The `experimental` profile enables **Full File Injection** during context compaction. Instead of injecting compact summaries (~200-500 tokens), it injects the **entire command file** (~2000-5000+ tokens per command). This is very context-heavy but may improve instruction adherence for complex commands like `/babysit`.
547
+
548
+ **Note:** Shell Aliases and CLAUDE.md Rules are **not** included in any profile. These are per-user preferences that must be explicitly enabled:
549
+ - `--enable=shellaliases` - Adds `af` and `agileflow` commands to ~/.bashrc and ~/.zshrc
550
+ - `--enable=claudemdreinforcement` - Adds /babysit context preservation rules to CLAUDE.md
499
551
 
500
552
  ## CLI Commands Reference
501
553
 
@@ -504,6 +556,7 @@ If no new options: "✅ All configuration options are up to date!"
504
556
  node .agileflow/scripts/agileflow-configure.js --profile=full
505
557
  node .agileflow/scripts/agileflow-configure.js --profile=basic
506
558
  node .agileflow/scripts/agileflow-configure.js --profile=minimal
559
+ node .agileflow/scripts/agileflow-configure.js --profile=experimental
507
560
  node .agileflow/scripts/agileflow-configure.js --profile=none
508
561
 
509
562
  # Custom Profiles
@@ -521,6 +574,8 @@ node .agileflow/scripts/agileflow-configure.js --import-profile=my-setup.json
521
574
  node .agileflow/scripts/agileflow-configure.js --enable=sessionstart,precompact
522
575
  node .agileflow/scripts/agileflow-configure.js --disable=statusline
523
576
  node .agileflow/scripts/agileflow-configure.js --enable=archival --archival-days=14
577
+ node .agileflow/scripts/agileflow-configure.js --enable=shellaliases
578
+ node .agileflow/scripts/agileflow-configure.js --enable=claudemdreinforcement
524
579
 
525
580
  # Maintenance
526
581
  node .agileflow/scripts/agileflow-configure.js --detect
@@ -897,6 +952,67 @@ Repaired: 1, Errors: 0, Skipped: 18
897
952
 
898
953
  ---
899
954
 
955
+ ## Expected Output
956
+
957
+ ### Success - Feature Enabled
958
+
959
+ ```
960
+ 🔧 AgileFlow Configuration
961
+ ══════════════════════════════════════════════════════════════
962
+
963
+ Enabling feature: damage-control
964
+
965
+ ✓ Created .claude/hooks/PreToolUse/damage-control-bash.js
966
+ ✓ Created .claude/hooks/PreToolUse/damage-control-edit.js
967
+ ✓ Created .claude/hooks/patterns.yaml
968
+ ✓ Updated settings.json
969
+
970
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
971
+ ✅ damage-control enabled
972
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
973
+
974
+ 31 protection patterns active.
975
+ Test: Try running a blocked command to verify.
976
+ ```
977
+
978
+ ### Success - List Features
979
+
980
+ ```
981
+ 🔧 AgileFlow Configuration
982
+ ══════════════════════════════════════════════════════════════
983
+
984
+ Installed Features:
985
+ ✅ damage-control (v2.94.1) - 31 patterns
986
+ ✅ precompact (v2.94.1) - context preservation
987
+ ✅ status-line (v2.94.1) - story tracking
988
+ ⚪ visual-e2e (not installed)
989
+ ⚪ hooks (not installed)
990
+
991
+ Scripts:
992
+ ✅ obtain-context.js (v2.94.1)
993
+ ✅ archive-completed-stories.sh (v2.94.1)
994
+
995
+ Run /agileflow:configure FEATURE=<name> to install features.
996
+ ```
997
+
998
+ ### Error - Unknown Feature
999
+
1000
+ ```
1001
+ ❌ Error: Unknown feature: super-ai
1002
+
1003
+ Available features:
1004
+ - damage-control: Protect against destructive commands
1005
+ - precompact: Context preservation during compaction
1006
+ - status-line: Story status in Claude Code UI
1007
+ - visual-e2e: Screenshot-based testing
1008
+ - hooks: Event-driven automation
1009
+ - ci: CI/CD workflow setup
1010
+
1011
+ Usage: /agileflow:configure FEATURE=damage-control
1012
+ ```
1013
+
1014
+ ---
1015
+
900
1016
  ## Related Commands
901
1017
 
902
1018
  - `/agileflow:ci` - Bootstrap CI/CD workflow
@@ -515,3 +515,77 @@ Final: Synthesized recommendation with confidence
515
515
  ```
516
516
 
517
517
  The council evaluates from three angles to provide balanced guidance.
518
+
519
+ ---
520
+
521
+ ## Expected Output
522
+
523
+ ### Success - Council Decision
524
+
525
+ ```
526
+ 🏛️ AI Council Convened
527
+ ══════════════════════════════════════════════════════════════
528
+ Question: Should we migrate to microservices?
529
+ Mode: standard (3 perspectives)
530
+
531
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
532
+
533
+ 🌟 OPTIMIST PERSPECTIVE
534
+ Microservices offer significant benefits:
535
+ - Independent scaling per service
536
+ - Technology flexibility
537
+ - Team autonomy and faster releases
538
+ Recommendation: Proceed with migration
539
+
540
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
541
+
542
+ 😈 ADVOCATE PERSPECTIVE
543
+ Critical concerns to address:
544
+ - Distributed systems complexity
545
+ - Network latency overhead
546
+ - Operational burden (monitoring, debugging)
547
+ - Team may lack experience
548
+ Recommendation: Caution - validate team readiness
549
+
550
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
551
+
552
+ ⚖️ ANALYST SYNTHESIS
553
+ Balanced assessment:
554
+ - Current monolith pain points are real
555
+ - Full migration is high-risk
556
+ - Incremental approach reduces risk
557
+
558
+ Recommendation: Start with one bounded context
559
+ Confidence: 75%
560
+
561
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
562
+ 🎯 COUNCIL VERDICT: Proceed with caution
563
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
564
+
565
+ Document decision? /agileflow:adr TITLE="Microservices Migration"
566
+ ```
567
+
568
+ ### Success - Debate Mode
569
+
570
+ ```
571
+ 🏛️ AI Council Debate (Round 2 of 2)
572
+ ══════════════════════════════════════════════════════════════
573
+
574
+ [Optimist responds to Advocate's concerns...]
575
+ [Advocate counters with specific risks...]
576
+ [Analyst synthesizes final position...]
577
+
578
+ Final Verdict: GraphQL for internal APIs, REST for public
579
+ Confidence: 85%
580
+ ```
581
+
582
+ ### Error - Question Too Vague
583
+
584
+ ```
585
+ ❌ Error: Question too vague for meaningful analysis
586
+
587
+ "Should we do it?" - What is "it"?
588
+
589
+ Please provide specific context:
590
+ /agileflow:council "Should we use Redis or Memcached for session caching given our 10k DAU scale?"
591
+ ```
@@ -400,6 +400,78 @@ OUTPUT
400
400
 
401
401
  ---
402
402
 
403
+ ## Expected Output
404
+
405
+ ### Success - Debt Report
406
+
407
+ ```
408
+ 📊 Technical Debt Analysis
409
+ ══════════════════════════════════════════════════════════════
410
+ Scan date: 2026-01-29
411
+ Files analyzed: 127
412
+
413
+ 🔴 HIGH PRIORITY (3)
414
+ ┌──────────────────────────────────────────────────────────────┐
415
+ │ 1. Legacy auth module (src/auth/legacy.js) │
416
+ │ Impact: Security risk, blocks OAuth work │
417
+ │ Effort: 3 days │
418
+ │ ROI: High (unblocks US-0053, US-0054) │
419
+ ├──────────────────────────────────────────────────────────────┤
420
+ │ 2. Untyped API responses │
421
+ │ Impact: Runtime errors, poor DX │
422
+ │ Effort: 2 days │
423
+ │ ROI: High (prevents bugs) │
424
+ ├──────────────────────────────────────────────────────────────┤
425
+ │ 3. Test coverage gap in /api/orders │
426
+ │ Impact: 23% coverage vs 80% target │
427
+ │ Effort: 1 day │
428
+ │ ROI: Medium (risk reduction) │
429
+ └──────────────────────────────────────────────────────────────┘
430
+
431
+ 🟡 MEDIUM PRIORITY (5)
432
+ - Deprecated dependencies (lodash 3.x)
433
+ - Console.log statements in production
434
+ - Missing error boundaries
435
+ - Hardcoded configuration
436
+ - Duplicate validation logic
437
+
438
+ 📈 Trend: +2 items since last scan (2026-01-22)
439
+
440
+ Create stories for high-priority items? [Y/n]
441
+ ```
442
+
443
+ ### Success - Debt Reduced
444
+
445
+ ```
446
+ 📊 Technical Debt Update
447
+ ══════════════════════════════════════════════════════════════
448
+
449
+ ✓ Resolved: Legacy auth module
450
+ ✓ Resolved: Test coverage gap
451
+
452
+ Debt Score: 15 → 9 (-40%)
453
+ Sprint Impact: Unblocked 2 stories
454
+
455
+ 🎉 Great progress on debt reduction!
456
+ ```
457
+
458
+ ### Error - No Analysis Available
459
+
460
+ ```
461
+ ⚠️ No technical debt analysis found
462
+
463
+ Run initial scan first:
464
+ /agileflow:debt SCAN=true
465
+
466
+ This will analyze:
467
+ - Code complexity
468
+ - Test coverage
469
+ - Dependency freshness
470
+ - Security vulnerabilities
471
+ ```
472
+
473
+ ---
474
+
403
475
  ## Related Commands
404
476
 
405
477
  - `/agileflow:diagnose` - System health diagnostics
@@ -781,6 +781,79 @@ OUTPUT
781
781
 
782
782
  ---
783
783
 
784
+ ## Expected Output
785
+
786
+ ### Success - Deployment Configured
787
+
788
+ ```
789
+ 🚀 Deployment Setup
790
+ ══════════════════════════════════════════════════════════════
791
+
792
+ Analyzing project...
793
+ ✓ Detected: Next.js application
794
+ ✓ Package manager: npm
795
+ ✓ Build command: npm run build
796
+ ✓ Output: .next/
797
+
798
+ Platform Recommendation: Vercel (optimal for Next.js)
799
+
800
+ Creating configuration...
801
+ ✓ Created vercel.json
802
+ ✓ Created .github/workflows/deploy.yml
803
+ ✓ Updated package.json scripts
804
+
805
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
806
+ ✅ Deployment Setup Complete
807
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
808
+
809
+ Next steps:
810
+ 1. Connect GitHub repo to Vercel dashboard
811
+ 2. Set environment variables in Vercel
812
+ 3. Push to trigger first deployment
813
+
814
+ Environments:
815
+ - Preview: Automatic on PR
816
+ - Production: On merge to main
817
+
818
+ Rollback: vercel rollback <deployment-id>
819
+ ```
820
+
821
+ ### Success - Multi-Environment
822
+
823
+ ```
824
+ 🚀 Deployment Setup (Multi-Environment)
825
+ ══════════════════════════════════════════════════════════════
826
+
827
+ Environments configured:
828
+ ┌─────────────┬─────────────────────┬──────────────────┐
829
+ │ Environment │ URL │ Trigger │
830
+ ├─────────────┼─────────────────────┼──────────────────┤
831
+ │ Development │ dev.example.com │ Push to dev/* │
832
+ │ Staging │ staging.example.com │ Push to staging │
833
+ │ Production │ example.com │ Push to main │
834
+ └─────────────┴─────────────────────┴──────────────────┘
835
+
836
+ ✓ All environments configured
837
+ ```
838
+
839
+ ### Error - Unsupported Project
840
+
841
+ ```
842
+ ❌ Error: Could not detect project type
843
+
844
+ No supported framework found. Supported:
845
+ - Next.js
846
+ - Remix
847
+ - Vite
848
+ - Create React App
849
+ - Node.js API
850
+
851
+ Specify manually:
852
+ /agileflow:deploy TYPE=nodejs PLATFORM=railway
853
+ ```
854
+
855
+ ---
856
+
784
857
  ## Related Commands
785
858
 
786
859
  - `/agileflow:configure` - Manage AgileFlow features and hooks