aidp 0.5.0 → 0.8.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.
- checksums.yaml +4 -4
- data/README.md +128 -151
- data/bin/aidp +1 -1
- data/lib/aidp/analysis/kb_inspector.rb +471 -0
- data/lib/aidp/analysis/seams.rb +159 -0
- data/lib/aidp/analysis/tree_sitter_grammar_loader.rb +480 -0
- data/lib/aidp/analysis/tree_sitter_scan.rb +686 -0
- data/lib/aidp/analyze/error_handler.rb +2 -78
- data/lib/aidp/analyze/json_file_storage.rb +292 -0
- data/lib/aidp/analyze/progress.rb +12 -0
- data/lib/aidp/analyze/progress_visualizer.rb +12 -17
- data/lib/aidp/analyze/ruby_maat_integration.rb +13 -31
- data/lib/aidp/analyze/runner.rb +256 -87
- data/lib/aidp/analyze/steps.rb +6 -0
- data/lib/aidp/cli/jobs_command.rb +103 -435
- data/lib/aidp/cli.rb +317 -191
- data/lib/aidp/config.rb +298 -10
- data/lib/aidp/debug_logger.rb +195 -0
- data/lib/aidp/debug_mixin.rb +187 -0
- data/lib/aidp/execute/progress.rb +9 -0
- data/lib/aidp/execute/runner.rb +221 -40
- data/lib/aidp/execute/steps.rb +17 -7
- data/lib/aidp/execute/workflow_selector.rb +211 -0
- data/lib/aidp/harness/completion_checker.rb +268 -0
- data/lib/aidp/harness/condition_detector.rb +1526 -0
- data/lib/aidp/harness/config_loader.rb +373 -0
- data/lib/aidp/harness/config_manager.rb +382 -0
- data/lib/aidp/harness/config_schema.rb +1006 -0
- data/lib/aidp/harness/config_validator.rb +355 -0
- data/lib/aidp/harness/configuration.rb +477 -0
- data/lib/aidp/harness/enhanced_runner.rb +494 -0
- data/lib/aidp/harness/error_handler.rb +616 -0
- data/lib/aidp/harness/provider_config.rb +423 -0
- data/lib/aidp/harness/provider_factory.rb +306 -0
- data/lib/aidp/harness/provider_manager.rb +1269 -0
- data/lib/aidp/harness/provider_type_checker.rb +88 -0
- data/lib/aidp/harness/runner.rb +411 -0
- data/lib/aidp/harness/state/errors.rb +28 -0
- data/lib/aidp/harness/state/metrics.rb +219 -0
- data/lib/aidp/harness/state/persistence.rb +128 -0
- data/lib/aidp/harness/state/provider_state.rb +132 -0
- data/lib/aidp/harness/state/ui_state.rb +68 -0
- data/lib/aidp/harness/state/workflow_state.rb +123 -0
- data/lib/aidp/harness/state_manager.rb +586 -0
- data/lib/aidp/harness/status_display.rb +888 -0
- data/lib/aidp/harness/ui/base.rb +16 -0
- data/lib/aidp/harness/ui/enhanced_tui.rb +545 -0
- data/lib/aidp/harness/ui/enhanced_workflow_selector.rb +252 -0
- data/lib/aidp/harness/ui/error_handler.rb +132 -0
- data/lib/aidp/harness/ui/frame_manager.rb +361 -0
- data/lib/aidp/harness/ui/job_monitor.rb +500 -0
- data/lib/aidp/harness/ui/navigation/main_menu.rb +311 -0
- data/lib/aidp/harness/ui/navigation/menu_formatter.rb +120 -0
- data/lib/aidp/harness/ui/navigation/menu_item.rb +142 -0
- data/lib/aidp/harness/ui/navigation/menu_state.rb +139 -0
- data/lib/aidp/harness/ui/navigation/submenu.rb +202 -0
- data/lib/aidp/harness/ui/navigation/workflow_selector.rb +176 -0
- data/lib/aidp/harness/ui/progress_display.rb +280 -0
- data/lib/aidp/harness/ui/question_collector.rb +141 -0
- data/lib/aidp/harness/ui/spinner_group.rb +184 -0
- data/lib/aidp/harness/ui/spinner_helper.rb +152 -0
- data/lib/aidp/harness/ui/status_manager.rb +312 -0
- data/lib/aidp/harness/ui/status_widget.rb +280 -0
- data/lib/aidp/harness/ui/workflow_controller.rb +312 -0
- data/lib/aidp/harness/user_interface.rb +2381 -0
- data/lib/aidp/provider_manager.rb +131 -7
- data/lib/aidp/providers/anthropic.rb +28 -109
- data/lib/aidp/providers/base.rb +170 -0
- data/lib/aidp/providers/cursor.rb +52 -183
- data/lib/aidp/providers/gemini.rb +24 -109
- data/lib/aidp/providers/macos_ui.rb +99 -5
- data/lib/aidp/providers/opencode.rb +194 -0
- data/lib/aidp/storage/csv_storage.rb +172 -0
- data/lib/aidp/storage/file_manager.rb +214 -0
- data/lib/aidp/storage/json_storage.rb +140 -0
- data/lib/aidp/version.rb +1 -1
- data/lib/aidp.rb +56 -35
- data/templates/ANALYZE/06a_tree_sitter_scan.md +217 -0
- data/templates/COMMON/AGENT_BASE.md +11 -0
- data/templates/EXECUTE/00_PRD.md +4 -4
- data/templates/EXECUTE/02_ARCHITECTURE.md +5 -4
- data/templates/EXECUTE/07_TEST_PLAN.md +4 -1
- data/templates/EXECUTE/08_TASKS.md +4 -4
- data/templates/EXECUTE/10_IMPLEMENTATION_AGENT.md +4 -4
- data/templates/README.md +279 -0
- data/templates/aidp-development.yml.example +373 -0
- data/templates/aidp-minimal.yml.example +48 -0
- data/templates/aidp-production.yml.example +475 -0
- data/templates/aidp.yml.example +598 -0
- metadata +106 -64
- data/lib/aidp/analyze/agent_personas.rb +0 -71
- data/lib/aidp/analyze/agent_tool_executor.rb +0 -445
- data/lib/aidp/analyze/data_retention_manager.rb +0 -426
- data/lib/aidp/analyze/database.rb +0 -260
- data/lib/aidp/analyze/dependencies.rb +0 -335
- data/lib/aidp/analyze/export_manager.rb +0 -425
- data/lib/aidp/analyze/focus_guidance.rb +0 -517
- data/lib/aidp/analyze/incremental_analyzer.rb +0 -543
- data/lib/aidp/analyze/language_analysis_strategies.rb +0 -897
- data/lib/aidp/analyze/large_analysis_progress.rb +0 -504
- data/lib/aidp/analyze/memory_manager.rb +0 -365
- data/lib/aidp/analyze/metrics_storage.rb +0 -336
- data/lib/aidp/analyze/parallel_processor.rb +0 -460
- data/lib/aidp/analyze/performance_optimizer.rb +0 -694
- data/lib/aidp/analyze/repository_chunker.rb +0 -704
- data/lib/aidp/analyze/static_analysis_detector.rb +0 -577
- data/lib/aidp/analyze/storage.rb +0 -662
- data/lib/aidp/analyze/tool_configuration.rb +0 -456
- data/lib/aidp/analyze/tool_modernization.rb +0 -750
- data/lib/aidp/database/pg_adapter.rb +0 -148
- data/lib/aidp/database_config.rb +0 -69
- data/lib/aidp/database_connection.rb +0 -72
- data/lib/aidp/database_migration.rb +0 -158
- data/lib/aidp/job_manager.rb +0 -41
- data/lib/aidp/jobs/base_job.rb +0 -47
- data/lib/aidp/jobs/provider_execution_job.rb +0 -96
- data/lib/aidp/project_detector.rb +0 -117
- data/lib/aidp/providers/agent_supervisor.rb +0 -348
- data/lib/aidp/providers/supervised_base.rb +0 -317
- data/lib/aidp/providers/supervised_cursor.rb +0 -22
- data/lib/aidp/sync.rb +0 -13
- data/lib/aidp/workspace.rb +0 -19
metadata
CHANGED
@@ -1,42 +1,42 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aidp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bart Agapinan
|
8
8
|
bindir: bin
|
9
9
|
cert_chain: []
|
10
|
-
date:
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
11
11
|
dependencies:
|
12
12
|
- !ruby/object:Gem::Dependency
|
13
|
-
name:
|
13
|
+
name: async-job
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
15
15
|
requirements:
|
16
16
|
- - "~>"
|
17
17
|
- !ruby/object:Gem::Version
|
18
|
-
version: '
|
18
|
+
version: '0.11'
|
19
19
|
type: :runtime
|
20
20
|
prerelease: false
|
21
21
|
version_requirements: !ruby/object:Gem::Requirement
|
22
22
|
requirements:
|
23
23
|
- - "~>"
|
24
24
|
- !ruby/object:Gem::Version
|
25
|
-
version: '
|
25
|
+
version: '0.11'
|
26
26
|
- !ruby/object:Gem::Dependency
|
27
|
-
name:
|
27
|
+
name: colorize
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
29
29
|
requirements:
|
30
30
|
- - "~>"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '1.
|
32
|
+
version: '1.1'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
35
|
version_requirements: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
37
|
- - "~>"
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '1.
|
39
|
+
version: '1.1'
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: csv
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,61 +66,61 @@ dependencies:
|
|
66
66
|
- !ruby/object:Gem::Version
|
67
67
|
version: '1.5'
|
68
68
|
- !ruby/object:Gem::Dependency
|
69
|
-
name:
|
69
|
+
name: thor
|
70
70
|
requirement: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: '1.
|
74
|
+
version: '1.3'
|
75
75
|
type: :runtime
|
76
76
|
prerelease: false
|
77
77
|
version_requirements: !ruby/object:Gem::Requirement
|
78
78
|
requirements:
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version: '1.
|
81
|
+
version: '1.3'
|
82
82
|
- !ruby/object:Gem::Dependency
|
83
|
-
name:
|
83
|
+
name: tty-cursor
|
84
84
|
requirement: !ruby/object:Gem::Requirement
|
85
85
|
requirements:
|
86
86
|
- - "~>"
|
87
87
|
- !ruby/object:Gem::Version
|
88
|
-
version: '
|
88
|
+
version: '0.7'
|
89
89
|
type: :runtime
|
90
90
|
prerelease: false
|
91
91
|
version_requirements: !ruby/object:Gem::Requirement
|
92
92
|
requirements:
|
93
93
|
- - "~>"
|
94
94
|
- !ruby/object:Gem::Version
|
95
|
-
version: '
|
95
|
+
version: '0.7'
|
96
96
|
- !ruby/object:Gem::Dependency
|
97
|
-
name:
|
97
|
+
name: tty-screen
|
98
98
|
requirement: !ruby/object:Gem::Requirement
|
99
99
|
requirements:
|
100
100
|
- - "~>"
|
101
101
|
- !ruby/object:Gem::Version
|
102
|
-
version: '
|
102
|
+
version: '0.8'
|
103
103
|
type: :runtime
|
104
104
|
prerelease: false
|
105
105
|
version_requirements: !ruby/object:Gem::Requirement
|
106
106
|
requirements:
|
107
107
|
- - "~>"
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
version: '
|
109
|
+
version: '0.8'
|
110
110
|
- !ruby/object:Gem::Dependency
|
111
|
-
name:
|
111
|
+
name: tty-reader
|
112
112
|
requirement: !ruby/object:Gem::Requirement
|
113
113
|
requirements:
|
114
114
|
- - "~>"
|
115
115
|
- !ruby/object:Gem::Version
|
116
|
-
version: '
|
116
|
+
version: '0.9'
|
117
117
|
type: :runtime
|
118
118
|
prerelease: false
|
119
119
|
version_requirements: !ruby/object:Gem::Requirement
|
120
120
|
requirements:
|
121
121
|
- - "~>"
|
122
122
|
- !ruby/object:Gem::Version
|
123
|
-
version: '
|
123
|
+
version: '0.9'
|
124
124
|
- !ruby/object:Gem::Dependency
|
125
125
|
name: tty-box
|
126
126
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,19 +136,19 @@ dependencies:
|
|
136
136
|
- !ruby/object:Gem::Version
|
137
137
|
version: '0.7'
|
138
138
|
- !ruby/object:Gem::Dependency
|
139
|
-
name: tty-
|
139
|
+
name: tty-table
|
140
140
|
requirement: !ruby/object:Gem::Requirement
|
141
141
|
requirements:
|
142
142
|
- - "~>"
|
143
143
|
- !ruby/object:Gem::Version
|
144
|
-
version: '0.
|
144
|
+
version: '0.12'
|
145
145
|
type: :runtime
|
146
146
|
prerelease: false
|
147
147
|
version_requirements: !ruby/object:Gem::Requirement
|
148
148
|
requirements:
|
149
149
|
- - "~>"
|
150
150
|
- !ruby/object:Gem::Version
|
151
|
-
version: '0.
|
151
|
+
version: '0.12'
|
152
152
|
- !ruby/object:Gem::Dependency
|
153
153
|
name: tty-progressbar
|
154
154
|
requirement: !ruby/object:Gem::Requirement
|
@@ -163,6 +163,20 @@ dependencies:
|
|
163
163
|
- - "~>"
|
164
164
|
- !ruby/object:Gem::Version
|
165
165
|
version: '0.18'
|
166
|
+
- !ruby/object:Gem::Dependency
|
167
|
+
name: tty-spinner
|
168
|
+
requirement: !ruby/object:Gem::Requirement
|
169
|
+
requirements:
|
170
|
+
- - "~>"
|
171
|
+
- !ruby/object:Gem::Version
|
172
|
+
version: '0.9'
|
173
|
+
type: :runtime
|
174
|
+
prerelease: false
|
175
|
+
version_requirements: !ruby/object:Gem::Requirement
|
176
|
+
requirements:
|
177
|
+
- - "~>"
|
178
|
+
- !ruby/object:Gem::Version
|
179
|
+
version: '0.9'
|
166
180
|
- !ruby/object:Gem::Dependency
|
167
181
|
name: tty-prompt
|
168
182
|
requirement: !ruby/object:Gem::Requirement
|
@@ -178,7 +192,7 @@ dependencies:
|
|
178
192
|
- !ruby/object:Gem::Version
|
179
193
|
version: '0.23'
|
180
194
|
- !ruby/object:Gem::Dependency
|
181
|
-
name:
|
195
|
+
name: pastel
|
182
196
|
requirement: !ruby/object:Gem::Requirement
|
183
197
|
requirements:
|
184
198
|
- - "~>"
|
@@ -192,33 +206,33 @@ dependencies:
|
|
192
206
|
- !ruby/object:Gem::Version
|
193
207
|
version: '0.8'
|
194
208
|
- !ruby/object:Gem::Dependency
|
195
|
-
name:
|
209
|
+
name: ruby_tree_sitter
|
196
210
|
requirement: !ruby/object:Gem::Requirement
|
197
211
|
requirements:
|
198
212
|
- - "~>"
|
199
213
|
- !ruby/object:Gem::Version
|
200
|
-
version: '0
|
214
|
+
version: '2.0'
|
201
215
|
type: :runtime
|
202
216
|
prerelease: false
|
203
217
|
version_requirements: !ruby/object:Gem::Requirement
|
204
218
|
requirements:
|
205
219
|
- - "~>"
|
206
220
|
- !ruby/object:Gem::Version
|
207
|
-
version: '0
|
221
|
+
version: '2.0'
|
208
222
|
- !ruby/object:Gem::Dependency
|
209
|
-
name: tty-
|
223
|
+
name: tty-command
|
210
224
|
requirement: !ruby/object:Gem::Requirement
|
211
225
|
requirements:
|
212
226
|
- - "~>"
|
213
227
|
- !ruby/object:Gem::Version
|
214
|
-
version: '0.
|
228
|
+
version: '0.10'
|
215
229
|
type: :runtime
|
216
230
|
prerelease: false
|
217
231
|
version_requirements: !ruby/object:Gem::Requirement
|
218
232
|
requirements:
|
219
233
|
- - "~>"
|
220
234
|
- !ruby/object:Gem::Version
|
221
|
-
version: '0.
|
235
|
+
version: '0.10'
|
222
236
|
description: The AI-Dev-Pipeline (AIDP) CLI provides a powerful, markdown-driven workflow
|
223
237
|
for software development. It supports in-depth project analysis to understand existing
|
224
238
|
codebases and an execution mode to systematically implement new features.
|
@@ -233,69 +247,92 @@ files:
|
|
233
247
|
- README.md
|
234
248
|
- bin/aidp
|
235
249
|
- lib/aidp.rb
|
236
|
-
- lib/aidp/
|
237
|
-
- lib/aidp/
|
238
|
-
- lib/aidp/
|
239
|
-
- lib/aidp/
|
240
|
-
- lib/aidp/analyze/dependencies.rb
|
250
|
+
- lib/aidp/analysis/kb_inspector.rb
|
251
|
+
- lib/aidp/analysis/seams.rb
|
252
|
+
- lib/aidp/analysis/tree_sitter_grammar_loader.rb
|
253
|
+
- lib/aidp/analysis/tree_sitter_scan.rb
|
241
254
|
- lib/aidp/analyze/error_handler.rb
|
242
|
-
- lib/aidp/analyze/export_manager.rb
|
243
255
|
- lib/aidp/analyze/feature_analyzer.rb
|
244
|
-
- lib/aidp/analyze/
|
245
|
-
- lib/aidp/analyze/incremental_analyzer.rb
|
246
|
-
- lib/aidp/analyze/language_analysis_strategies.rb
|
247
|
-
- lib/aidp/analyze/large_analysis_progress.rb
|
248
|
-
- lib/aidp/analyze/memory_manager.rb
|
249
|
-
- lib/aidp/analyze/metrics_storage.rb
|
250
|
-
- lib/aidp/analyze/parallel_processor.rb
|
251
|
-
- lib/aidp/analyze/performance_optimizer.rb
|
256
|
+
- lib/aidp/analyze/json_file_storage.rb
|
252
257
|
- lib/aidp/analyze/prioritizer.rb
|
253
258
|
- lib/aidp/analyze/progress.rb
|
254
259
|
- lib/aidp/analyze/progress_visualizer.rb
|
255
260
|
- lib/aidp/analyze/report_generator.rb
|
256
|
-
- lib/aidp/analyze/repository_chunker.rb
|
257
261
|
- lib/aidp/analyze/ruby_maat_integration.rb
|
258
262
|
- lib/aidp/analyze/runner.rb
|
259
|
-
- lib/aidp/analyze/static_analysis_detector.rb
|
260
263
|
- lib/aidp/analyze/steps.rb
|
261
|
-
- lib/aidp/analyze/storage.rb
|
262
|
-
- lib/aidp/analyze/tool_configuration.rb
|
263
|
-
- lib/aidp/analyze/tool_modernization.rb
|
264
264
|
- lib/aidp/cli.rb
|
265
265
|
- lib/aidp/cli/jobs_command.rb
|
266
266
|
- lib/aidp/cli/terminal_io.rb
|
267
267
|
- lib/aidp/config.rb
|
268
268
|
- lib/aidp/core_ext/class_attribute.rb
|
269
|
-
- lib/aidp/
|
270
|
-
- lib/aidp/
|
271
|
-
- lib/aidp/database_connection.rb
|
272
|
-
- lib/aidp/database_migration.rb
|
269
|
+
- lib/aidp/debug_logger.rb
|
270
|
+
- lib/aidp/debug_mixin.rb
|
273
271
|
- lib/aidp/execute/progress.rb
|
274
272
|
- lib/aidp/execute/runner.rb
|
275
273
|
- lib/aidp/execute/steps.rb
|
276
|
-
- lib/aidp/
|
277
|
-
- lib/aidp/
|
278
|
-
- lib/aidp/
|
279
|
-
- lib/aidp/
|
274
|
+
- lib/aidp/execute/workflow_selector.rb
|
275
|
+
- lib/aidp/harness/completion_checker.rb
|
276
|
+
- lib/aidp/harness/condition_detector.rb
|
277
|
+
- lib/aidp/harness/config_loader.rb
|
278
|
+
- lib/aidp/harness/config_manager.rb
|
279
|
+
- lib/aidp/harness/config_schema.rb
|
280
|
+
- lib/aidp/harness/config_validator.rb
|
281
|
+
- lib/aidp/harness/configuration.rb
|
282
|
+
- lib/aidp/harness/enhanced_runner.rb
|
283
|
+
- lib/aidp/harness/error_handler.rb
|
284
|
+
- lib/aidp/harness/provider_config.rb
|
285
|
+
- lib/aidp/harness/provider_factory.rb
|
286
|
+
- lib/aidp/harness/provider_manager.rb
|
287
|
+
- lib/aidp/harness/provider_type_checker.rb
|
288
|
+
- lib/aidp/harness/runner.rb
|
289
|
+
- lib/aidp/harness/state/errors.rb
|
290
|
+
- lib/aidp/harness/state/metrics.rb
|
291
|
+
- lib/aidp/harness/state/persistence.rb
|
292
|
+
- lib/aidp/harness/state/provider_state.rb
|
293
|
+
- lib/aidp/harness/state/ui_state.rb
|
294
|
+
- lib/aidp/harness/state/workflow_state.rb
|
295
|
+
- lib/aidp/harness/state_manager.rb
|
296
|
+
- lib/aidp/harness/status_display.rb
|
297
|
+
- lib/aidp/harness/ui/base.rb
|
298
|
+
- lib/aidp/harness/ui/enhanced_tui.rb
|
299
|
+
- lib/aidp/harness/ui/enhanced_workflow_selector.rb
|
300
|
+
- lib/aidp/harness/ui/error_handler.rb
|
301
|
+
- lib/aidp/harness/ui/frame_manager.rb
|
302
|
+
- lib/aidp/harness/ui/job_monitor.rb
|
303
|
+
- lib/aidp/harness/ui/navigation/main_menu.rb
|
304
|
+
- lib/aidp/harness/ui/navigation/menu_formatter.rb
|
305
|
+
- lib/aidp/harness/ui/navigation/menu_item.rb
|
306
|
+
- lib/aidp/harness/ui/navigation/menu_state.rb
|
307
|
+
- lib/aidp/harness/ui/navigation/submenu.rb
|
308
|
+
- lib/aidp/harness/ui/navigation/workflow_selector.rb
|
309
|
+
- lib/aidp/harness/ui/progress_display.rb
|
310
|
+
- lib/aidp/harness/ui/question_collector.rb
|
311
|
+
- lib/aidp/harness/ui/spinner_group.rb
|
312
|
+
- lib/aidp/harness/ui/spinner_helper.rb
|
313
|
+
- lib/aidp/harness/ui/status_manager.rb
|
314
|
+
- lib/aidp/harness/ui/status_widget.rb
|
315
|
+
- lib/aidp/harness/ui/workflow_controller.rb
|
316
|
+
- lib/aidp/harness/user_interface.rb
|
280
317
|
- lib/aidp/provider_manager.rb
|
281
|
-
- lib/aidp/providers/agent_supervisor.rb
|
282
318
|
- lib/aidp/providers/anthropic.rb
|
283
319
|
- lib/aidp/providers/base.rb
|
284
320
|
- lib/aidp/providers/cursor.rb
|
285
321
|
- lib/aidp/providers/gemini.rb
|
286
322
|
- lib/aidp/providers/macos_ui.rb
|
287
|
-
- lib/aidp/providers/
|
288
|
-
- lib/aidp/
|
289
|
-
- lib/aidp/
|
323
|
+
- lib/aidp/providers/opencode.rb
|
324
|
+
- lib/aidp/storage/csv_storage.rb
|
325
|
+
- lib/aidp/storage/file_manager.rb
|
326
|
+
- lib/aidp/storage/json_storage.rb
|
290
327
|
- lib/aidp/util.rb
|
291
328
|
- lib/aidp/version.rb
|
292
|
-
- lib/aidp/workspace.rb
|
293
329
|
- templates/ANALYZE/01_REPOSITORY_ANALYSIS.md
|
294
330
|
- templates/ANALYZE/02_ARCHITECTURE_ANALYSIS.md
|
295
331
|
- templates/ANALYZE/03_TEST_ANALYSIS.md
|
296
332
|
- templates/ANALYZE/04_FUNCTIONALITY_ANALYSIS.md
|
297
333
|
- templates/ANALYZE/05_DOCUMENTATION_ANALYSIS.md
|
298
334
|
- templates/ANALYZE/06_STATIC_ANALYSIS.md
|
335
|
+
- templates/ANALYZE/06a_tree_sitter_scan.md
|
299
336
|
- templates/ANALYZE/07_REFACTORING_RECOMMENDATIONS.md
|
300
337
|
- templates/COMMON/AGENT_BASE.md
|
301
338
|
- templates/COMMON/CONVENTIONS.md
|
@@ -321,6 +358,11 @@ files:
|
|
321
358
|
- templates/EXECUTE/13_DELIVERY_ROLLOUT.md
|
322
359
|
- templates/EXECUTE/14_DOCS_PORTAL.md
|
323
360
|
- templates/EXECUTE/15_POST_RELEASE.md
|
361
|
+
- templates/README.md
|
362
|
+
- templates/aidp-development.yml.example
|
363
|
+
- templates/aidp-minimal.yml.example
|
364
|
+
- templates/aidp-production.yml.example
|
365
|
+
- templates/aidp.yml.example
|
324
366
|
homepage: https://github.com/viamin/aidp
|
325
367
|
licenses:
|
326
368
|
- MIT
|
@@ -332,14 +374,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
332
374
|
requirements:
|
333
375
|
- - ">="
|
334
376
|
- !ruby/object:Gem::Version
|
335
|
-
version: '3.
|
377
|
+
version: '3.3'
|
336
378
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
337
379
|
requirements:
|
338
380
|
- - ">="
|
339
381
|
- !ruby/object:Gem::Version
|
340
382
|
version: '0'
|
341
383
|
requirements: []
|
342
|
-
rubygems_version: 3.6.
|
384
|
+
rubygems_version: 3.6.9
|
343
385
|
specification_version: 4
|
344
386
|
summary: A CLI for AI-driven software development, from analysis to execution.
|
345
387
|
test_files: []
|
@@ -1,71 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Aidp
|
4
|
-
module Analyze
|
5
|
-
# Defines AI agent personas for analyze mode
|
6
|
-
class AgentPersonas
|
7
|
-
PERSONAS = {
|
8
|
-
"Repository Analyst" => {
|
9
|
-
"name" => "Repository Analyst",
|
10
|
-
"description" => "Expert in analyzing version control data, code evolution patterns, and repository metrics. Specializes in identifying hotspots, technical debt, and code quality trends over time.",
|
11
|
-
"expertise" => ["Git analysis", "Code metrics", "Temporal patterns", "Hotspot identification"],
|
12
|
-
"tools" => ["ruby-maat", "Git log analysis", "Statistical analysis"]
|
13
|
-
},
|
14
|
-
"Architecture Analyst" => {
|
15
|
-
"name" => "Architecture Analyst",
|
16
|
-
"description" => "Senior architect with deep understanding of software architecture patterns, design principles, and system design. Focuses on structural analysis, dependency mapping, and architectural recommendations.",
|
17
|
-
"expertise" => ["System architecture", "Design patterns", "Dependency analysis", "Scalability assessment"],
|
18
|
-
"tools" => ["Architecture diagrams", "Dependency graphs", "Pattern recognition"]
|
19
|
-
},
|
20
|
-
"Test Analyst" => {
|
21
|
-
"name" => "Test Analyst",
|
22
|
-
"description" => "Quality assurance expert specializing in test coverage analysis, testing strategies, and test infrastructure assessment. Identifies testing gaps and recommends improvements.",
|
23
|
-
"expertise" => ["Test coverage", "Testing strategies", "Test infrastructure", "Quality metrics"],
|
24
|
-
"tools" => ["Coverage analysis", "Test frameworks", "Quality assessment"]
|
25
|
-
},
|
26
|
-
"Functionality Analyst" => {
|
27
|
-
"name" => "Functionality Analyst",
|
28
|
-
"description" => "Business analyst and domain expert who understands application functionality, business logic, and feature mapping. Analyzes code from a functional perspective.",
|
29
|
-
"expertise" => ["Business logic", "Feature analysis", "Domain modeling", "Functional requirements"],
|
30
|
-
"tools" => ["Feature mapping", "Business logic analysis", "Domain understanding"]
|
31
|
-
},
|
32
|
-
"Documentation Analyst" => {
|
33
|
-
"name" => "Documentation Analyst",
|
34
|
-
"description" => "Technical writer and documentation specialist who evaluates documentation quality, completeness, and effectiveness. Recommends documentation improvements.",
|
35
|
-
"expertise" => ["Documentation quality", "Technical writing", "Information architecture", "User experience"],
|
36
|
-
"tools" => ["Documentation analysis", "Content assessment", "Readability metrics"]
|
37
|
-
},
|
38
|
-
"Static Analysis Expert" => {
|
39
|
-
"name" => "Static Analysis Expert",
|
40
|
-
"description" => "Code quality specialist with expertise in static analysis tools, code review practices, and quality metrics. Identifies code quality issues and tooling opportunities.",
|
41
|
-
"expertise" => ["Static analysis", "Code quality", "Tool integration", "Quality metrics"],
|
42
|
-
"tools" => ["Linters", "Static analyzers", "Quality assessment tools"]
|
43
|
-
},
|
44
|
-
"Refactoring Specialist" => {
|
45
|
-
"name" => "Refactoring Specialist",
|
46
|
-
"description" => "Refactoring expert who identifies refactoring opportunities, assesses risks, and provides step-by-step refactoring plans. Focuses on improving code maintainability.",
|
47
|
-
"expertise" => ["Refactoring techniques", "Risk assessment", "Code improvement", "Maintainability"],
|
48
|
-
"tools" => ["Refactoring tools", "Impact analysis", "Risk assessment"]
|
49
|
-
}
|
50
|
-
}.freeze
|
51
|
-
|
52
|
-
def self.get_persona(name)
|
53
|
-
PERSONAS[name]
|
54
|
-
end
|
55
|
-
|
56
|
-
def self.list_personas
|
57
|
-
PERSONAS.keys
|
58
|
-
end
|
59
|
-
|
60
|
-
def self.get_expertise(name)
|
61
|
-
persona = get_persona(name)
|
62
|
-
persona ? persona["expertise"] : []
|
63
|
-
end
|
64
|
-
|
65
|
-
def self.get_tools(name)
|
66
|
-
persona = get_persona(name)
|
67
|
-
persona ? persona["tools"] : []
|
68
|
-
end
|
69
|
-
end
|
70
|
-
end
|
71
|
-
end
|