aidp 0.27.0 → 0.29.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 +89 -0
- data/lib/aidp/cli/models_command.rb +80 -123
- data/lib/aidp/cli/tools_command.rb +333 -0
- data/lib/aidp/cli.rb +18 -9
- data/lib/aidp/config.rb +63 -0
- data/lib/aidp/debug_mixin.rb +23 -1
- data/lib/aidp/execute/agent_signal_parser.rb +22 -0
- data/lib/aidp/execute/repl_macros.rb +2 -2
- data/lib/aidp/execute/steps.rb +94 -1
- data/lib/aidp/execute/work_loop_runner.rb +215 -20
- data/lib/aidp/execute/workflow_selector.rb +2 -25
- data/lib/aidp/firewall/provider_requirements_collector.rb +262 -0
- data/lib/aidp/harness/ai_decision_engine.rb +35 -2
- data/lib/aidp/harness/capability_registry.rb +4 -4
- data/lib/aidp/harness/config_manager.rb +0 -5
- data/lib/aidp/harness/config_schema.rb +8 -0
- data/lib/aidp/harness/configuration.rb +27 -19
- data/lib/aidp/harness/enhanced_runner.rb +1 -4
- data/lib/aidp/harness/error_handler.rb +1 -72
- data/lib/aidp/harness/provider_factory.rb +11 -2
- data/lib/aidp/harness/provider_manager.rb +5 -3
- data/lib/aidp/harness/ruby_llm_registry.rb +239 -0
- data/lib/aidp/harness/state_manager.rb +0 -7
- data/lib/aidp/harness/thinking_depth_manager.rb +47 -68
- data/lib/aidp/harness/ui/enhanced_tui.rb +8 -18
- data/lib/aidp/harness/ui/enhanced_workflow_selector.rb +0 -18
- data/lib/aidp/harness/ui/progress_display.rb +6 -2
- data/lib/aidp/harness/user_interface.rb +0 -58
- data/lib/aidp/init/runner.rb +7 -2
- data/lib/aidp/metadata/cache.rb +201 -0
- data/lib/aidp/metadata/compiler.rb +229 -0
- data/lib/aidp/metadata/parser.rb +204 -0
- data/lib/aidp/metadata/query.rb +237 -0
- data/lib/aidp/metadata/scanner.rb +191 -0
- data/lib/aidp/metadata/tool_metadata.rb +245 -0
- data/lib/aidp/metadata/validator.rb +187 -0
- data/lib/aidp/planning/analyzers/feedback_analyzer.rb +365 -0
- data/lib/aidp/planning/builders/agile_plan_builder.rb +387 -0
- data/lib/aidp/planning/builders/project_plan_builder.rb +193 -0
- data/lib/aidp/planning/generators/gantt_generator.rb +190 -0
- data/lib/aidp/planning/generators/iteration_plan_generator.rb +392 -0
- data/lib/aidp/planning/generators/legacy_research_planner.rb +473 -0
- data/lib/aidp/planning/generators/marketing_report_generator.rb +348 -0
- data/lib/aidp/planning/generators/mvp_scope_generator.rb +310 -0
- data/lib/aidp/planning/generators/user_test_plan_generator.rb +373 -0
- data/lib/aidp/planning/generators/wbs_generator.rb +259 -0
- data/lib/aidp/planning/mappers/persona_mapper.rb +163 -0
- data/lib/aidp/planning/parsers/document_parser.rb +141 -0
- data/lib/aidp/planning/parsers/feedback_data_parser.rb +252 -0
- data/lib/aidp/provider_manager.rb +8 -32
- data/lib/aidp/providers/aider.rb +264 -0
- data/lib/aidp/providers/anthropic.rb +80 -6
- data/lib/aidp/providers/base.rb +129 -35
- data/lib/aidp/providers/codex.rb +27 -4
- data/lib/aidp/providers/cursor.rb +17 -1
- data/lib/aidp/providers/gemini.rb +14 -1
- data/lib/aidp/providers/github_copilot.rb +18 -1
- data/lib/aidp/providers/kilocode.rb +12 -1
- data/lib/aidp/providers/opencode.rb +12 -1
- data/lib/aidp/setup/wizard.rb +284 -146
- data/lib/aidp/version.rb +1 -1
- data/lib/aidp/watch/build_processor.rb +211 -30
- data/lib/aidp/watch/change_request_processor.rb +128 -14
- data/lib/aidp/watch/ci_fix_processor.rb +103 -37
- data/lib/aidp/watch/ci_log_extractor.rb +258 -0
- data/lib/aidp/watch/github_state_extractor.rb +177 -0
- data/lib/aidp/watch/implementation_verifier.rb +284 -0
- data/lib/aidp/watch/plan_generator.rb +7 -43
- data/lib/aidp/watch/plan_processor.rb +7 -6
- data/lib/aidp/watch/repository_client.rb +245 -17
- data/lib/aidp/watch/review_processor.rb +98 -17
- data/lib/aidp/watch/reviewers/base_reviewer.rb +1 -1
- data/lib/aidp/watch/runner.rb +181 -29
- data/lib/aidp/watch/state_store.rb +22 -1
- data/lib/aidp/workflows/definitions.rb +147 -0
- data/lib/aidp/workstream_cleanup.rb +245 -0
- data/lib/aidp/worktree.rb +19 -0
- data/lib/aidp.rb +11 -0
- data/templates/aidp.yml.example +57 -0
- data/templates/implementation/generate_tdd_specs.md +213 -0
- data/templates/implementation/implement_features.md +4 -1
- data/templates/implementation/iterative_implementation.md +122 -0
- data/templates/planning/agile/analyze_feedback.md +183 -0
- data/templates/planning/agile/generate_iteration_plan.md +179 -0
- data/templates/planning/agile/generate_legacy_research_plan.md +171 -0
- data/templates/planning/agile/generate_marketing_report.md +162 -0
- data/templates/planning/agile/generate_mvp_scope.md +127 -0
- data/templates/planning/agile/generate_user_test_plan.md +143 -0
- data/templates/planning/agile/ingest_feedback.md +174 -0
- data/templates/planning/assemble_project_plan.md +113 -0
- data/templates/planning/assign_personas.md +108 -0
- data/templates/planning/create_tasks.md +52 -6
- data/templates/planning/generate_gantt.md +86 -0
- data/templates/planning/generate_wbs.md +85 -0
- data/templates/planning/initialize_planning_mode.md +70 -0
- data/templates/skills/README.md +2 -2
- data/templates/skills/marketing_strategist/SKILL.md +279 -0
- data/templates/skills/product_manager/SKILL.md +177 -0
- data/templates/skills/ruby_aidp_planning/SKILL.md +497 -0
- data/templates/skills/ruby_rspec_tdd/SKILL.md +514 -0
- data/templates/skills/ux_researcher/SKILL.md +222 -0
- metadata +62 -2
- data/lib/aidp/harness/model_discovery_service.rb +0 -259
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# Assign Tasks to Personas
|
|
2
|
+
|
|
3
|
+
You are assigning each task to the most appropriate persona using **Zero Framework Cognition** (ZFC).
|
|
4
|
+
|
|
5
|
+
## Critical: Use ZFC Pattern
|
|
6
|
+
|
|
7
|
+
**DO NOT use heuristics, regex, or keyword matching!**
|
|
8
|
+
|
|
9
|
+
All task-to-persona assignments must be made using semantic AI decision making, not programmatic rules.
|
|
10
|
+
|
|
11
|
+
## Input
|
|
12
|
+
|
|
13
|
+
Read `.aidp/docs/TASK_LIST.md` - All project tasks
|
|
14
|
+
|
|
15
|
+
## Available Personas
|
|
16
|
+
|
|
17
|
+
Default personas include:
|
|
18
|
+
|
|
19
|
+
- **product_strategist** - Product requirements, user research, stakeholder management
|
|
20
|
+
- **architect** - System design, architecture decisions, technology choices
|
|
21
|
+
- **senior_developer** - Implementation, code quality, technical problem solving
|
|
22
|
+
- **qa_engineer** - Testing strategy, test implementation, quality assurance
|
|
23
|
+
- **devops_engineer** - Infrastructure, CI/CD, deployment, monitoring
|
|
24
|
+
- **tech_writer** - Documentation, user guides, API documentation
|
|
25
|
+
|
|
26
|
+
## Assignment Principles
|
|
27
|
+
|
|
28
|
+
The AI should consider:
|
|
29
|
+
|
|
30
|
+
- **Task type**: Requirements, design, implementation, testing, deployment
|
|
31
|
+
- **Required expertise**: Product, architecture, development, QA, operations
|
|
32
|
+
- **Phase**: Different personas for different phases
|
|
33
|
+
- **Complexity**: Senior developers for complex tasks
|
|
34
|
+
|
|
35
|
+
## Zero Framework Cognition
|
|
36
|
+
|
|
37
|
+
**FORBIDDEN**:
|
|
38
|
+
|
|
39
|
+
- Regex pattern matching on task names
|
|
40
|
+
- Keyword matching ("test" → qa_engineer)
|
|
41
|
+
- Heuristic rules
|
|
42
|
+
- Scoring formulas
|
|
43
|
+
|
|
44
|
+
**REQUIRED**:
|
|
45
|
+
|
|
46
|
+
- Use AI decision engine for ALL assignments
|
|
47
|
+
- Provide task context to AI (name, description, phase, effort)
|
|
48
|
+
- Let AI make semantic decisions
|
|
49
|
+
- Assignment rationale comes from AI, not code
|
|
50
|
+
|
|
51
|
+
## Parallel Execution
|
|
52
|
+
|
|
53
|
+
Multiple personas can work in parallel - the system handles conflicts automatically.
|
|
54
|
+
|
|
55
|
+
## Implementation
|
|
56
|
+
|
|
57
|
+
**For Ruby/AIDP projects**, use the `ruby_aidp_planning` skill to:
|
|
58
|
+
|
|
59
|
+
1. Load tasks from Gantt chart or task list
|
|
60
|
+
2. Use `Aidp::Planning::Mappers::PersonaMapper` with AI decision engine
|
|
61
|
+
3. Call `AIDecisionEngine.decide()` for each task assignment
|
|
62
|
+
4. Generate `persona_map.yml` configuration
|
|
63
|
+
5. Write to `.aidp/docs/persona_map.yml`
|
|
64
|
+
|
|
65
|
+
The skill provides the complete Ruby implementation including:
|
|
66
|
+
|
|
67
|
+
- AI engine integration
|
|
68
|
+
- ZFC-based decision making (NO heuristics!)
|
|
69
|
+
- YAML configuration generation
|
|
70
|
+
- Proper error handling and logging
|
|
71
|
+
|
|
72
|
+
**For other language implementations**, implement equivalent functionality:
|
|
73
|
+
|
|
74
|
+
1. Load task list with descriptions, phases, and effort
|
|
75
|
+
2. For each task, invoke AI decision engine with:
|
|
76
|
+
- Task characteristics (name, description, phase, effort)
|
|
77
|
+
- Available personas list
|
|
78
|
+
- Decision prompt asking for best persona match
|
|
79
|
+
3. Store AI's decision (persona assignment)
|
|
80
|
+
4. Generate configuration file mapping tasks to personas
|
|
81
|
+
5. Include assignment rationale from AI
|
|
82
|
+
|
|
83
|
+
## Output Format
|
|
84
|
+
|
|
85
|
+
Write assignments to `.aidp/docs/persona_map.yml`:
|
|
86
|
+
|
|
87
|
+
```yaml
|
|
88
|
+
version: "1.0"
|
|
89
|
+
generated_at: "<timestamp>"
|
|
90
|
+
assignments:
|
|
91
|
+
TASK-001:
|
|
92
|
+
persona: product_strategist
|
|
93
|
+
task: "Document Functional Requirements"
|
|
94
|
+
phase: "Requirements"
|
|
95
|
+
TASK-002:
|
|
96
|
+
persona: architect
|
|
97
|
+
task: "Design System Architecture"
|
|
98
|
+
phase: "Design"
|
|
99
|
+
...
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Remember
|
|
103
|
+
|
|
104
|
+
- Use AIDecisionEngine - NO manual heuristics!
|
|
105
|
+
- Assignment rationale comes from AI, not code
|
|
106
|
+
- Every task must be assigned
|
|
107
|
+
- Personas can work in parallel
|
|
108
|
+
- This is a ZFC pattern - meaning goes to AI, structure goes to code
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# AI Scaffold Task Planner
|
|
2
2
|
|
|
3
|
-
You are a planner.
|
|
3
|
+
You are a planner responsible for breaking down work into trackable tasks.
|
|
4
4
|
|
|
5
5
|
## Important Instructions
|
|
6
6
|
|
|
@@ -9,16 +9,60 @@ You are a planner.
|
|
|
9
9
|
- If you have sufficient information, proceed directly to create the complete task plan
|
|
10
10
|
- Only ask for clarifications at this Tasks step. For subsequent steps, proceed with available information
|
|
11
11
|
|
|
12
|
+
## Task Tracking System
|
|
13
|
+
|
|
14
|
+
**CRITICAL**: All work must be tracked through the persistent task system using task filing signals.
|
|
15
|
+
|
|
16
|
+
### Creating Tasks
|
|
17
|
+
|
|
18
|
+
Use this signal format in your output to create tasks:
|
|
19
|
+
|
|
20
|
+
```text
|
|
21
|
+
File task: "description" priority: high|medium|low tags: tag1,tag2
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Examples:
|
|
25
|
+
|
|
26
|
+
```text
|
|
27
|
+
File task: "Design user authentication API" priority: high tags: architecture,auth
|
|
28
|
+
File task: "Implement login endpoint" priority: high tags: implementation,auth
|
|
29
|
+
File task: "Add authentication tests" priority: medium tags: testing,auth
|
|
30
|
+
File task: "Update API documentation" priority: low tags: docs
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Task Organization
|
|
34
|
+
|
|
35
|
+
Break work into tasks:
|
|
36
|
+
|
|
37
|
+
- **Per domain** - Group related functionality (e.g., auth, payments, user-mgmt)
|
|
38
|
+
- **Per cross-cutting area** - Infrastructure concerns (e.g., testing, docs, deployment)
|
|
39
|
+
- Include Definition of Done (DoD), dependencies, and reviewer role when applicable
|
|
40
|
+
|
|
41
|
+
### Task Lifecycle
|
|
42
|
+
|
|
43
|
+
1. **pending** - Task created, not started
|
|
44
|
+
2. **in_progress** - Currently working on task
|
|
45
|
+
3. **done** - Task completed successfully
|
|
46
|
+
4. **abandoned** - Task no longer needed (requires reason)
|
|
47
|
+
|
|
48
|
+
Update task status using:
|
|
49
|
+
|
|
50
|
+
```text
|
|
51
|
+
Update task: task_id_here status: done
|
|
52
|
+
Update task: task_id_here status: abandoned reason: "Requirements changed"
|
|
53
|
+
```
|
|
54
|
+
|
|
12
55
|
## Inputs
|
|
13
56
|
|
|
14
57
|
- `docs/DomainCharters/*`, `contracts/*`, `docs/TestPlan.md`
|
|
58
|
+
- `docs/prd.md` - Product requirements
|
|
59
|
+
- `docs/architecture.md` - Architecture design (if available)
|
|
15
60
|
|
|
16
|
-
##
|
|
61
|
+
## Output
|
|
17
62
|
|
|
18
|
-
|
|
19
|
-
- Include Definition of Done (DoD), dependencies, and reviewer role.
|
|
63
|
+
File all tasks using the task filing system above. Create at least one task.
|
|
20
64
|
|
|
21
|
-
|
|
65
|
+
Optional traditional outputs (if needed):
|
|
22
66
|
|
|
23
67
|
- `tasks/domains/<context>.yaml`
|
|
24
68
|
- `tasks/crosscutting/<area>.yaml`
|
|
@@ -26,4 +70,6 @@ You are a planner.
|
|
|
26
70
|
|
|
27
71
|
## Regeneration Policy
|
|
28
72
|
|
|
29
|
-
Append new tasks
|
|
73
|
+
- Append new tasks using `File task:` signals
|
|
74
|
+
- Update existing tasks using `Update task:` signals
|
|
75
|
+
- Mark deprecated tasks as abandoned with clear reason
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Generate Gantt Chart and Critical Path
|
|
2
|
+
|
|
3
|
+
You are creating a Mermaid Gantt chart with critical path analysis.
|
|
4
|
+
|
|
5
|
+
## Input
|
|
6
|
+
|
|
7
|
+
Read `.aidp/docs/WBS.md` - Work breakdown structure with tasks and dependencies
|
|
8
|
+
|
|
9
|
+
## Your Task
|
|
10
|
+
|
|
11
|
+
Generate a Gantt chart in Mermaid format showing timeline, dependencies, and critical path.
|
|
12
|
+
|
|
13
|
+
## Gantt Chart Components
|
|
14
|
+
|
|
15
|
+
1. **Timeline** - Task durations and sequencing
|
|
16
|
+
2. **Dependencies** - Task relationships ("after" clauses)
|
|
17
|
+
3. **Critical Path** - Longest sequence of dependent tasks
|
|
18
|
+
4. **Phase Sections** - Group tasks by project phase
|
|
19
|
+
|
|
20
|
+
## Critical Path
|
|
21
|
+
|
|
22
|
+
The critical path represents the longest sequence of dependent tasks. Any delay in critical path tasks delays the entire project.
|
|
23
|
+
|
|
24
|
+
Critical path tasks should be highlighted in the visualization.
|
|
25
|
+
|
|
26
|
+
## Gantt Features
|
|
27
|
+
|
|
28
|
+
- Phase-based sections
|
|
29
|
+
- Task dependencies (after relationships)
|
|
30
|
+
- Critical tasks highlighted
|
|
31
|
+
- Relative durations based on effort estimates
|
|
32
|
+
|
|
33
|
+
## Duration Calculation
|
|
34
|
+
|
|
35
|
+
Convert effort estimates to time:
|
|
36
|
+
|
|
37
|
+
- Story points → days (e.g., 1 story point = 0.5 days)
|
|
38
|
+
- Minimum duration = 1 day
|
|
39
|
+
- Account for dependencies when calculating start dates
|
|
40
|
+
|
|
41
|
+
## Implementation
|
|
42
|
+
|
|
43
|
+
**For Ruby/AIDP projects**, use the `ruby_aidp_planning` skill to:
|
|
44
|
+
|
|
45
|
+
1. Load WBS using `Aidp::Planning::Parsers::DocumentParser`
|
|
46
|
+
2. Generate Gantt chart using `Aidp::Planning::Generators::GanttGenerator`
|
|
47
|
+
3. Calculate critical path
|
|
48
|
+
4. Format as Mermaid syntax
|
|
49
|
+
5. Write to `.aidp/docs/GANTT.md`
|
|
50
|
+
|
|
51
|
+
The skill provides the complete Ruby implementation including:
|
|
52
|
+
|
|
53
|
+
- WBS parsing and task extraction
|
|
54
|
+
- Duration calculation algorithms
|
|
55
|
+
- Critical path analysis (longest dependency chain)
|
|
56
|
+
- Mermaid format generation
|
|
57
|
+
- File output operations
|
|
58
|
+
|
|
59
|
+
**For other language implementations**, implement equivalent functionality:
|
|
60
|
+
|
|
61
|
+
1. Parse WBS to extract tasks and dependencies
|
|
62
|
+
2. Calculate task durations from effort estimates
|
|
63
|
+
3. Build dependency graph
|
|
64
|
+
4. Find critical path (longest path through dependencies)
|
|
65
|
+
5. Generate Mermaid gantt syntax with proper formatting
|
|
66
|
+
6. Highlight critical path tasks
|
|
67
|
+
|
|
68
|
+
## Mermaid Gantt Syntax
|
|
69
|
+
|
|
70
|
+
```mermaid
|
|
71
|
+
gantt
|
|
72
|
+
title Project Timeline
|
|
73
|
+
dateFormat YYYY-MM-DD
|
|
74
|
+
section Phase Name
|
|
75
|
+
Task Name :status, task_id, duration
|
|
76
|
+
Task with dependency :status, task_id, after other_task, duration
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Output
|
|
80
|
+
|
|
81
|
+
Write Gantt chart with critical path to `.aidp/docs/GANTT.md` including:
|
|
82
|
+
|
|
83
|
+
- Mermaid visualization (in code block)
|
|
84
|
+
- Critical path task list
|
|
85
|
+
- Timeline metadata
|
|
86
|
+
- Generation timestamp
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# Generate Work Breakdown Structure (WBS)
|
|
2
|
+
|
|
3
|
+
You are creating a phase-based Work Breakdown Structure.
|
|
4
|
+
|
|
5
|
+
## Input
|
|
6
|
+
|
|
7
|
+
Read:
|
|
8
|
+
|
|
9
|
+
- `.aidp/docs/PRD.md` - Requirements
|
|
10
|
+
- `.aidp/docs/TECH_DESIGN.md` - Technical approach
|
|
11
|
+
|
|
12
|
+
## Your Task
|
|
13
|
+
|
|
14
|
+
Generate a hierarchical breakdown of ALL work needed to deliver this project.
|
|
15
|
+
|
|
16
|
+
## WBS Structure
|
|
17
|
+
|
|
18
|
+
A Work Breakdown Structure organizes project work into:
|
|
19
|
+
|
|
20
|
+
1. **Phases** - Major project stages (Requirements, Design, Implementation, Testing, Deployment)
|
|
21
|
+
2. **Tasks** - Specific work items within each phase
|
|
22
|
+
3. **Subtasks** - Detailed breakdown of complex tasks
|
|
23
|
+
4. **Dependencies** - What must complete before this task
|
|
24
|
+
5. **Effort Estimates** - Story points or time estimates
|
|
25
|
+
|
|
26
|
+
## Default Phases
|
|
27
|
+
|
|
28
|
+
1. **Requirements** - Finalize all requirements
|
|
29
|
+
2. **Design** - Complete architectural and detailed design
|
|
30
|
+
3. **Implementation** - Build all features
|
|
31
|
+
4. **Testing** - Comprehensive testing
|
|
32
|
+
5. **Deployment** - Deploy to production
|
|
33
|
+
|
|
34
|
+
## Task Attributes
|
|
35
|
+
|
|
36
|
+
For each task, include:
|
|
37
|
+
|
|
38
|
+
- **Name**: Clear, action-oriented
|
|
39
|
+
- **Description**: What needs to be done
|
|
40
|
+
- **Effort**: Story points or time estimate
|
|
41
|
+
- **Dependencies**: What must complete first
|
|
42
|
+
- **Subtasks**: Breakdown if complex
|
|
43
|
+
|
|
44
|
+
## Guidelines
|
|
45
|
+
|
|
46
|
+
- Be comprehensive - include ALL work
|
|
47
|
+
- Break large tasks into subtasks
|
|
48
|
+
- Identify dependencies clearly
|
|
49
|
+
- Provide realistic effort estimates
|
|
50
|
+
- Consider parallel work streams
|
|
51
|
+
|
|
52
|
+
## Implementation
|
|
53
|
+
|
|
54
|
+
**For Ruby/AIDP projects**, use the `ruby_aidp_planning` skill to:
|
|
55
|
+
|
|
56
|
+
1. Parse PRD and technical design documents using `Aidp::Planning::Parsers::DocumentParser`
|
|
57
|
+
2. Generate WBS structure using `Aidp::Planning::Generators::WBSGenerator`
|
|
58
|
+
3. Format as markdown
|
|
59
|
+
4. Write to `.aidp/docs/WBS.md`
|
|
60
|
+
|
|
61
|
+
The skill provides the complete Ruby implementation including:
|
|
62
|
+
|
|
63
|
+
- Module requires and namespacing
|
|
64
|
+
- Class instantiation
|
|
65
|
+
- Method calls with proper parameters
|
|
66
|
+
- File I/O operations
|
|
67
|
+
|
|
68
|
+
**For other language implementations**, implement equivalent functionality:
|
|
69
|
+
|
|
70
|
+
1. Parse input documents to extract requirements and design
|
|
71
|
+
2. Decompose into phases and tasks
|
|
72
|
+
3. Calculate effort estimates
|
|
73
|
+
4. Identify dependencies
|
|
74
|
+
5. Generate hierarchical markdown output
|
|
75
|
+
|
|
76
|
+
## Output
|
|
77
|
+
|
|
78
|
+
Write complete WBS to `.aidp/docs/WBS.md` with:
|
|
79
|
+
|
|
80
|
+
- All phases listed
|
|
81
|
+
- Tasks under each phase
|
|
82
|
+
- Subtasks where applicable
|
|
83
|
+
- Dependencies identified
|
|
84
|
+
- Effort estimates included
|
|
85
|
+
- Generated timestamp and metadata
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Waterfall Planning Initialization
|
|
2
|
+
|
|
3
|
+
You are initializing a waterfall-style project planning workflow. Your task is to determine whether the user has existing documentation to ingest, or if we need to generate documentation from scratch.
|
|
4
|
+
|
|
5
|
+
## Your Tasks
|
|
6
|
+
|
|
7
|
+
1. **Ask the user**: Do they have existing documentation (PRD, design docs, ADRs, task lists)?
|
|
8
|
+
|
|
9
|
+
2. **If YES (Ingestion Path)**:
|
|
10
|
+
- Ask for the path(s) to their documentation files
|
|
11
|
+
- Ask what gaps exist in their documentation that need to be filled
|
|
12
|
+
- Create a file `.aidp/docs/.waterfall_mode` with content: `mode: ingestion`
|
|
13
|
+
- List the files to be ingested
|
|
14
|
+
|
|
15
|
+
3. **If NO (Generation Path)**:
|
|
16
|
+
- Inform them we'll guide them through requirements elicitation
|
|
17
|
+
- Create a file `.aidp/docs/.waterfall_mode` with content: `mode: generation`
|
|
18
|
+
- Prepare to gather requirements via Q&A
|
|
19
|
+
|
|
20
|
+
## Output Format
|
|
21
|
+
|
|
22
|
+
Create `.aidp/docs/.waterfall_mode` with:
|
|
23
|
+
|
|
24
|
+
```yaml
|
|
25
|
+
mode: ingestion # or 'generation'
|
|
26
|
+
docs_path: /path/to/docs # if ingestion
|
|
27
|
+
gaps: [] # list of gaps to fill
|
|
28
|
+
timestamp: <ISO8601 timestamp>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Important Notes
|
|
32
|
+
|
|
33
|
+
- Be conversational and helpful
|
|
34
|
+
- Explain what waterfall planning provides (WBS, Gantt, personas)
|
|
35
|
+
- If they're unsure, explain both paths
|
|
36
|
+
- Create the `.aidp/docs/` directory if it doesn't exist
|
|
37
|
+
|
|
38
|
+
## Example Dialogue
|
|
39
|
+
|
|
40
|
+
**For Ingestion:**
|
|
41
|
+
|
|
42
|
+
```text
|
|
43
|
+
User: I have a PRD and some design notes
|
|
44
|
+
Assistant: Great! Please provide the path to your PRD and design documentation.
|
|
45
|
+
I'll parse them and identify any gaps we need to fill via Q&A.
|
|
46
|
+
|
|
47
|
+
What gaps exist? For example:
|
|
48
|
+
- Missing technical architecture details?
|
|
49
|
+
- No task breakdown yet?
|
|
50
|
+
- Missing decision records?
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**For Generation:**
|
|
54
|
+
|
|
55
|
+
```text
|
|
56
|
+
User: I'm starting from scratch
|
|
57
|
+
Assistant: Perfect! I'll guide you through creating a comprehensive project plan.
|
|
58
|
+
We'll start with requirements gathering, then move through:
|
|
59
|
+
- Product Requirements Document (PRD)
|
|
60
|
+
- Technical Design
|
|
61
|
+
- Work Breakdown Structure (WBS)
|
|
62
|
+
- Gantt Chart with timeline
|
|
63
|
+
- Task assignments to personas
|
|
64
|
+
|
|
65
|
+
Let's begin with some questions about your project...
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
**Remember**: This is a GATE step - wait for user input before proceeding!
|
data/templates/skills/README.md
CHANGED
|
@@ -67,7 +67,7 @@ You are a **Repository Analyst**, an expert in version control analysis...
|
|
|
67
67
|
## Required Frontmatter Fields
|
|
68
68
|
|
|
69
69
|
| Field | Type | Description |
|
|
70
|
-
|
|
70
|
+
| ------- | ------ | ------------- |
|
|
71
71
|
| `id` | String | Unique identifier (lowercase, alphanumeric, underscores only) |
|
|
72
72
|
| `name` | String | Human-readable name |
|
|
73
73
|
| `description` | String | Brief one-line description |
|
|
@@ -76,7 +76,7 @@ You are a **Repository Analyst**, an expert in version control analysis...
|
|
|
76
76
|
## Optional Frontmatter Fields
|
|
77
77
|
|
|
78
78
|
| Field | Type | Description |
|
|
79
|
-
|
|
79
|
+
| ------- | ------ | ------------- |
|
|
80
80
|
| `expertise` | Array | List of expertise areas |
|
|
81
81
|
| `keywords` | Array | Search/filter keywords |
|
|
82
82
|
| `when_to_use` | Array | Guidance for when to use this skill |
|