aidp 0.10.0 → 0.11.0

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 (95) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +194 -25
  3. data/lib/aidp/analyze/kb_inspector.rb +2 -15
  4. data/lib/aidp/analyze/progress.rb +2 -1
  5. data/lib/aidp/analyze/ruby_maat_integration.rb +2 -15
  6. data/lib/aidp/analyze/runner.rb +64 -20
  7. data/lib/aidp/analyze/steps.rb +10 -8
  8. data/lib/aidp/analyze/tree_sitter_grammar_loader.rb +2 -13
  9. data/lib/aidp/analyze/tree_sitter_scan.rb +2 -13
  10. data/lib/aidp/cli/checkpoint_command.rb +98 -0
  11. data/lib/aidp/cli/first_run_wizard.rb +65 -94
  12. data/lib/aidp/cli/jobs_command.rb +249 -34
  13. data/lib/aidp/cli.rb +312 -38
  14. data/lib/aidp/config.rb +5 -8
  15. data/lib/aidp/debug_logger.rb +4 -4
  16. data/lib/aidp/debug_mixin.rb +11 -4
  17. data/lib/aidp/execute/checkpoint.rb +282 -0
  18. data/lib/aidp/execute/checkpoint_display.rb +221 -0
  19. data/lib/aidp/execute/progress.rb +2 -1
  20. data/lib/aidp/execute/prompt_manager.rb +62 -0
  21. data/lib/aidp/execute/runner.rb +53 -24
  22. data/lib/aidp/execute/steps.rb +36 -27
  23. data/lib/aidp/execute/work_loop_runner.rb +308 -0
  24. data/lib/aidp/execute/workflow_selector.rb +26 -17
  25. data/lib/aidp/harness/condition_detector.rb +4 -4
  26. data/lib/aidp/harness/config_schema.rb +40 -0
  27. data/lib/aidp/harness/config_validator.rb +3 -6
  28. data/lib/aidp/harness/configuration.rb +35 -1
  29. data/lib/aidp/harness/enhanced_runner.rb +22 -1
  30. data/lib/aidp/harness/error_handler.rb +103 -28
  31. data/lib/aidp/harness/provider_factory.rb +4 -1
  32. data/lib/aidp/harness/provider_manager.rb +250 -15
  33. data/lib/aidp/harness/runner.rb +3 -14
  34. data/lib/aidp/harness/simple_user_interface.rb +2 -15
  35. data/lib/aidp/harness/status_display.rb +12 -17
  36. data/lib/aidp/harness/test_runner.rb +83 -0
  37. data/lib/aidp/harness/ui/enhanced_tui.rb +2 -0
  38. data/lib/aidp/harness/ui/enhanced_workflow_selector.rb +22 -4
  39. data/lib/aidp/harness/ui/error_handler.rb +4 -0
  40. data/lib/aidp/harness/ui/frame_manager.rb +10 -8
  41. data/lib/aidp/harness/ui/job_monitor.rb +2 -0
  42. data/lib/aidp/harness/ui/navigation/main_menu.rb +4 -2
  43. data/lib/aidp/harness/ui/navigation/menu_item.rb +1 -0
  44. data/lib/aidp/harness/ui/navigation/menu_state.rb +1 -0
  45. data/lib/aidp/harness/ui/navigation/submenu.rb +1 -0
  46. data/lib/aidp/harness/ui/navigation/workflow_selector.rb +2 -0
  47. data/lib/aidp/harness/ui/progress_display.rb +8 -12
  48. data/lib/aidp/harness/ui/question_collector.rb +2 -0
  49. data/lib/aidp/harness/ui/spinner_group.rb +2 -0
  50. data/lib/aidp/harness/ui/spinner_helper.rb +1 -1
  51. data/lib/aidp/harness/ui/status_manager.rb +4 -2
  52. data/lib/aidp/harness/ui/status_widget.rb +3 -1
  53. data/lib/aidp/harness/ui/workflow_controller.rb +2 -0
  54. data/lib/aidp/harness/user_interface.rb +12 -17
  55. data/lib/aidp/jobs/background_runner.rb +278 -0
  56. data/lib/aidp/message_display.rb +48 -0
  57. data/lib/aidp/provider_manager.rb +3 -1
  58. data/lib/aidp/providers/anthropic.rb +100 -17
  59. data/lib/aidp/providers/base.rb +42 -11
  60. data/lib/aidp/providers/codex.rb +248 -0
  61. data/lib/aidp/providers/cursor.rb +35 -42
  62. data/lib/aidp/providers/gemini.rb +25 -15
  63. data/lib/aidp/providers/github_copilot.rb +41 -42
  64. data/lib/aidp/providers/opencode.rb +34 -41
  65. data/lib/aidp/version.rb +1 -1
  66. data/lib/aidp/workflows/definitions.rb +357 -0
  67. data/lib/aidp/workflows/selector.rb +171 -0
  68. data/lib/aidp.rb +12 -0
  69. data/templates/planning/generate_llm_style_guide.md +119 -0
  70. metadata +38 -26
  71. /data/templates/{ANALYZE/02_ARCHITECTURE_ANALYSIS.md → analysis/analyze_architecture.md} +0 -0
  72. /data/templates/{ANALYZE/05_DOCUMENTATION_ANALYSIS.md → analysis/analyze_documentation.md} +0 -0
  73. /data/templates/{ANALYZE/04_FUNCTIONALITY_ANALYSIS.md → analysis/analyze_functionality.md} +0 -0
  74. /data/templates/{ANALYZE/01_REPOSITORY_ANALYSIS.md → analysis/analyze_repository.md} +0 -0
  75. /data/templates/{ANALYZE/06_STATIC_ANALYSIS.md → analysis/analyze_static_code.md} +0 -0
  76. /data/templates/{ANALYZE/03_TEST_ANALYSIS.md → analysis/analyze_tests.md} +0 -0
  77. /data/templates/{ANALYZE/07_REFACTORING_RECOMMENDATIONS.md → analysis/recommend_refactoring.md} +0 -0
  78. /data/templates/{ANALYZE/06a_tree_sitter_scan.md → analysis/scan_with_tree_sitter.md} +0 -0
  79. /data/templates/{EXECUTE/11_STATIC_ANALYSIS.md → implementation/configure_static_analysis.md} +0 -0
  80. /data/templates/{EXECUTE/14_DOCS_PORTAL.md → implementation/create_documentation_portal.md} +0 -0
  81. /data/templates/{EXECUTE/10_IMPLEMENTATION_AGENT.md → implementation/implement_features.md} +0 -0
  82. /data/templates/{EXECUTE/13_DELIVERY_ROLLOUT.md → implementation/plan_delivery.md} +0 -0
  83. /data/templates/{EXECUTE/15_POST_RELEASE.md → implementation/review_post_release.md} +0 -0
  84. /data/templates/{EXECUTE/09_SCAFFOLDING_DEVEX.md → implementation/setup_scaffolding.md} +0 -0
  85. /data/templates/{EXECUTE/02A_ARCH_GATE_QUESTIONS.md → planning/ask_architecture_questions.md} +0 -0
  86. /data/templates/{EXECUTE/00_PRD.md → planning/create_prd.md} +0 -0
  87. /data/templates/{EXECUTE/08_TASKS.md → planning/create_tasks.md} +0 -0
  88. /data/templates/{EXECUTE/04_DOMAIN_DECOMPOSITION.md → planning/decompose_domain.md} +0 -0
  89. /data/templates/{EXECUTE/01_NFRS.md → planning/define_nfrs.md} +0 -0
  90. /data/templates/{EXECUTE/05_CONTRACTS.md → planning/design_apis.md} +0 -0
  91. /data/templates/{EXECUTE/02_ARCHITECTURE.md → planning/design_architecture.md} +0 -0
  92. /data/templates/{EXECUTE/06_THREAT_MODEL.md → planning/design_data_model.md} +0 -0
  93. /data/templates/{EXECUTE/03_ADR_FACTORY.md → planning/generate_adrs.md} +0 -0
  94. /data/templates/{EXECUTE/12_OBSERVABILITY_SLOS.md → planning/plan_observability.md} +0 -0
  95. /data/templates/{EXECUTE/07_TEST_PLAN.md → planning/plan_testing.md} +0 -0
data/lib/aidp.rb CHANGED
@@ -7,7 +7,13 @@ require_relative "aidp/core_ext/class_attribute"
7
7
  require_relative "aidp/version"
8
8
  require_relative "aidp/config"
9
9
  require_relative "aidp/util"
10
+ require_relative "aidp/message_display"
10
11
  require_relative "aidp/cli"
12
+
13
+ # Jobs and background execution
14
+ require_relative "aidp/jobs/background_runner"
15
+
16
+ # CLI commands
11
17
  require_relative "aidp/cli/jobs_command"
12
18
 
13
19
  # Providers
@@ -38,10 +44,16 @@ require_relative "aidp/analyze/seams"
38
44
  require_relative "aidp/analyze/tree_sitter_scan"
39
45
  require_relative "aidp/analyze/kb_inspector"
40
46
 
47
+ # Workflows
48
+ require_relative "aidp/workflows/definitions"
49
+ require_relative "aidp/workflows/selector"
50
+
41
51
  # Execute mode
42
52
  require_relative "aidp/execute/steps"
43
53
  require_relative "aidp/execute/runner"
44
54
  require_relative "aidp/execute/progress"
55
+ require_relative "aidp/execute/checkpoint"
56
+ require_relative "aidp/execute/checkpoint_display"
45
57
 
46
58
  # Harness mode
47
59
  require_relative "aidp/harness/configuration"
@@ -0,0 +1,119 @@
1
+ # Generate LLM Style Guide
2
+
3
+ Your task is to create a project-specific **LLM_STYLE_GUIDE.md** that will be used by AI agents working on this project. This guide should be concise, actionable, and tailored to this specific codebase.
4
+
5
+ ## Context
6
+
7
+ You have access to the project directory. Examine the codebase to understand:
8
+
9
+ - Programming language(s) used
10
+ - Existing code style and patterns
11
+ - Testing framework and patterns
12
+ - Build tools and configuration
13
+ - Project structure
14
+ - Dependencies and frameworks
15
+
16
+ ## Requirements
17
+
18
+ Create a file at `docs/LLM_STYLE_GUIDE.md` with the following sections:
19
+
20
+ ### 1. Core Engineering Rules
21
+
22
+ - Single Responsibility Principle applications
23
+ - Code organization patterns specific to this project
24
+ - When to extract methods/classes/modules
25
+ - Dead code and TODO policies
26
+
27
+ ### 2. Naming & Structure
28
+
29
+ - Language-specific naming conventions (if not standard)
30
+ - File organization patterns
31
+ - Module/package structure guidelines
32
+ - Public API design principles
33
+
34
+ ### 3. Parameters & Data
35
+
36
+ - Parameter passing conventions
37
+ - Data structure preferences
38
+ - Configuration management patterns
39
+
40
+ ### 4. Error Handling
41
+
42
+ - Error handling strategy for this project
43
+ - Logging patterns
44
+ - Exception types and when to use them
45
+ - Recovery strategies
46
+
47
+ ### 5. Testing Contracts
48
+
49
+ - Testing philosophy for this project
50
+ - What to test vs what not to test
51
+ - Mocking/stubbing guidelines
52
+ - Test organization and naming
53
+ - Code coverage expectations
54
+
55
+ ### 6. Framework-Specific Guidelines
56
+
57
+ - Key patterns from the frameworks used
58
+ - Anti-patterns to avoid
59
+ - Performance considerations
60
+ - Security guidelines
61
+
62
+ ### 7. Dependencies & External Services
63
+
64
+ - Dependency injection patterns
65
+ - External service interaction patterns
66
+ - API client patterns
67
+ - Database interaction patterns (if applicable)
68
+
69
+ ### 8. Build & Development
70
+
71
+ - Build commands and what they do
72
+ - Linting and formatting tools
73
+ - Pre-commit hooks (if any)
74
+ - Development workflow
75
+
76
+ ### 9. Performance
77
+
78
+ - Performance considerations for this codebase
79
+ - Optimization strategies
80
+ - Caching patterns
81
+ - Resource management
82
+
83
+ ### 10. Project-Specific Anti-Patterns
84
+
85
+ - Known anti-patterns in this codebase to avoid
86
+ - Previous mistakes to learn from
87
+ - Deprecated patterns to avoid
88
+
89
+ ## Output Format
90
+
91
+ The LLM_STYLE_GUIDE.md should be:
92
+
93
+ - **Concise**: Use bullet points and tables where possible
94
+ - **Specific**: Reference actual code patterns from this project
95
+ - **Actionable**: Provide clear do's and don'ts
96
+ - **Scannable**: Use headers, lists, and formatting for easy reference
97
+
98
+ ## Example Structure
99
+
100
+ ```markdown
101
+ # Project LLM Style Guide
102
+
103
+ > Concise rules for AI agents working on [Project Name]. Based on [Language/Framework].
104
+
105
+ ## 1. Core Engineering Rules
106
+ - [Specific rule based on this project]
107
+ - [Another specific rule]
108
+
109
+ ## 2. Naming & Structure
110
+ - Classes: [convention]
111
+ - Files: [convention]
112
+ - [etc.]
113
+
114
+ [Continue with all sections...]
115
+ ```
116
+
117
+ ## Deliverable
118
+
119
+ Create `docs/LLM_STYLE_GUIDE.md` with all the sections above, tailored specifically to this project's codebase, languages, and frameworks.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aidp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bart Agapinan
@@ -247,6 +247,7 @@ files:
247
247
  - lib/aidp/analyze/tree_sitter_grammar_loader.rb
248
248
  - lib/aidp/analyze/tree_sitter_scan.rb
249
249
  - lib/aidp/cli.rb
250
+ - lib/aidp/cli/checkpoint_command.rb
250
251
  - lib/aidp/cli/first_run_wizard.rb
251
252
  - lib/aidp/cli/jobs_command.rb
252
253
  - lib/aidp/cli/terminal_io.rb
@@ -254,9 +255,13 @@ files:
254
255
  - lib/aidp/core_ext/class_attribute.rb
255
256
  - lib/aidp/debug_logger.rb
256
257
  - lib/aidp/debug_mixin.rb
258
+ - lib/aidp/execute/checkpoint.rb
259
+ - lib/aidp/execute/checkpoint_display.rb
257
260
  - lib/aidp/execute/progress.rb
261
+ - lib/aidp/execute/prompt_manager.rb
258
262
  - lib/aidp/execute/runner.rb
259
263
  - lib/aidp/execute/steps.rb
264
+ - lib/aidp/execute/work_loop_runner.rb
260
265
  - lib/aidp/execute/workflow_selector.rb
261
266
  - lib/aidp/harness/completion_checker.rb
262
267
  - lib/aidp/harness/condition_detector.rb
@@ -281,6 +286,7 @@ files:
281
286
  - lib/aidp/harness/state/workflow_state.rb
282
287
  - lib/aidp/harness/state_manager.rb
283
288
  - lib/aidp/harness/status_display.rb
289
+ - lib/aidp/harness/test_runner.rb
284
290
  - lib/aidp/harness/ui/base.rb
285
291
  - lib/aidp/harness/ui/enhanced_tui.rb
286
292
  - lib/aidp/harness/ui/enhanced_workflow_selector.rb
@@ -301,9 +307,12 @@ files:
301
307
  - lib/aidp/harness/ui/status_widget.rb
302
308
  - lib/aidp/harness/ui/workflow_controller.rb
303
309
  - lib/aidp/harness/user_interface.rb
310
+ - lib/aidp/jobs/background_runner.rb
311
+ - lib/aidp/message_display.rb
304
312
  - lib/aidp/provider_manager.rb
305
313
  - lib/aidp/providers/anthropic.rb
306
314
  - lib/aidp/providers/base.rb
315
+ - lib/aidp/providers/codex.rb
307
316
  - lib/aidp/providers/cursor.rb
308
317
  - lib/aidp/providers/gemini.rb
309
318
  - lib/aidp/providers/github_copilot.rb
@@ -314,14 +323,8 @@ files:
314
323
  - lib/aidp/storage/json_storage.rb
315
324
  - lib/aidp/util.rb
316
325
  - lib/aidp/version.rb
317
- - templates/ANALYZE/01_REPOSITORY_ANALYSIS.md
318
- - templates/ANALYZE/02_ARCHITECTURE_ANALYSIS.md
319
- - templates/ANALYZE/03_TEST_ANALYSIS.md
320
- - templates/ANALYZE/04_FUNCTIONALITY_ANALYSIS.md
321
- - templates/ANALYZE/05_DOCUMENTATION_ANALYSIS.md
322
- - templates/ANALYZE/06_STATIC_ANALYSIS.md
323
- - templates/ANALYZE/06a_tree_sitter_scan.md
324
- - templates/ANALYZE/07_REFACTORING_RECOMMENDATIONS.md
326
+ - lib/aidp/workflows/definitions.rb
327
+ - lib/aidp/workflows/selector.rb
325
328
  - templates/COMMON/AGENT_BASE.md
326
329
  - templates/COMMON/CONVENTIONS.md
327
330
  - templates/COMMON/TEMPLATES/ADR_TEMPLATE.md
@@ -329,28 +332,37 @@ files:
329
332
  - templates/COMMON/TEMPLATES/EVENT_EXAMPLE.yaml
330
333
  - templates/COMMON/TEMPLATES/MERMAID_C4.md
331
334
  - templates/COMMON/TEMPLATES/OPENAPI_STUB.yaml
332
- - templates/EXECUTE/00_PRD.md
333
- - templates/EXECUTE/01_NFRS.md
334
- - templates/EXECUTE/02A_ARCH_GATE_QUESTIONS.md
335
- - templates/EXECUTE/02_ARCHITECTURE.md
336
- - templates/EXECUTE/03_ADR_FACTORY.md
337
- - templates/EXECUTE/04_DOMAIN_DECOMPOSITION.md
338
- - templates/EXECUTE/05_CONTRACTS.md
339
- - templates/EXECUTE/06_THREAT_MODEL.md
340
- - templates/EXECUTE/07_TEST_PLAN.md
341
- - templates/EXECUTE/08_TASKS.md
342
- - templates/EXECUTE/09_SCAFFOLDING_DEVEX.md
343
- - templates/EXECUTE/10_IMPLEMENTATION_AGENT.md
344
- - templates/EXECUTE/11_STATIC_ANALYSIS.md
345
- - templates/EXECUTE/12_OBSERVABILITY_SLOS.md
346
- - templates/EXECUTE/13_DELIVERY_ROLLOUT.md
347
- - templates/EXECUTE/14_DOCS_PORTAL.md
348
- - templates/EXECUTE/15_POST_RELEASE.md
349
335
  - templates/README.md
350
336
  - templates/aidp-development.yml.example
351
337
  - templates/aidp-minimal.yml.example
352
338
  - templates/aidp-production.yml.example
353
339
  - templates/aidp.yml.example
340
+ - templates/analysis/analyze_architecture.md
341
+ - templates/analysis/analyze_documentation.md
342
+ - templates/analysis/analyze_functionality.md
343
+ - templates/analysis/analyze_repository.md
344
+ - templates/analysis/analyze_static_code.md
345
+ - templates/analysis/analyze_tests.md
346
+ - templates/analysis/recommend_refactoring.md
347
+ - templates/analysis/scan_with_tree_sitter.md
348
+ - templates/implementation/configure_static_analysis.md
349
+ - templates/implementation/create_documentation_portal.md
350
+ - templates/implementation/implement_features.md
351
+ - templates/implementation/plan_delivery.md
352
+ - templates/implementation/review_post_release.md
353
+ - templates/implementation/setup_scaffolding.md
354
+ - templates/planning/ask_architecture_questions.md
355
+ - templates/planning/create_prd.md
356
+ - templates/planning/create_tasks.md
357
+ - templates/planning/decompose_domain.md
358
+ - templates/planning/define_nfrs.md
359
+ - templates/planning/design_apis.md
360
+ - templates/planning/design_architecture.md
361
+ - templates/planning/design_data_model.md
362
+ - templates/planning/generate_adrs.md
363
+ - templates/planning/generate_llm_style_guide.md
364
+ - templates/planning/plan_observability.md
365
+ - templates/planning/plan_testing.md
354
366
  homepage: https://github.com/viamin/aidp
355
367
  licenses:
356
368
  - MIT