microsoft/hve-core
Publicmirrored fromhttps://github.com/microsoft/hve-coreAvailable
docs/rpi/task-implementor.md
190lines Β· modecode
| 1 | --- |
| 2 | title: Task Implementor Guide |
| 3 | description: Use the Task Implementor custom agent to execute implementation plans with precision and tracking |
| 4 | sidebar_position: 6 |
| 5 | author: Microsoft |
| 6 | ms.date: 2026-01-24 |
| 7 | ms.topic: tutorial |
| 8 | keywords: |
| 9 | - task implementor |
| 10 | - rpi workflow |
| 11 | - implementation phase |
| 12 | - github copilot |
| 13 | estimated_reading_time: 4 |
| 14 | --- |
| 15 | |
| 16 | The Task Implementor custom agent transforms planning files into working code. It executes plans task by task, tracks all changes, and supports stop controls for review between phases. |
| 17 | |
| 18 | ## When to Use Task Implementor |
| 19 | |
| 20 | Use Task Implementor after completing planning when you need: |
| 21 | |
| 22 | * β‘ **Precise execution** following the plan exactly |
| 23 | * π **Change tracking** documenting all modifications |
| 24 | * βΈοΈ **Stop controls** for review between phases |
| 25 | * β
**Verification** that success criteria are met |
| 26 | |
| 27 | ## What Task Implementor Does |
| 28 | |
| 29 | 1. **Reads** the plan phase by phase, task by task |
| 30 | 2. **Loads** only needed details using line ranges |
| 31 | 3. **Implements** code following workspace conventions |
| 32 | 4. **Tracks** changes in a changes log |
| 33 | 5. **Verifies** success criteria before marking complete |
| 34 | 6. **Pauses** at stop points for your review |
| 35 | |
| 36 | > [!NOTE] |
| 37 | > **Why the constraint matters:** Task Implementor has one job: execute the plan using patterns documented in research. No time wasted rediscovering conventions, no "creative" decisions that break existing patterns. Just verified facts applied methodically. |
| 38 | |
| 39 | ## Output Artifacts |
| 40 | |
| 41 | Task Implementor creates working code and a changes log: |
| 42 | |
| 43 | ```text |
| 44 | .copilot-tracking/ |
| 45 | βββ changes/ |
| 46 | βββ {{YYYY-MM-DD}}-<topic>-changes.md # Log of all changes made |
| 47 | ``` |
| 48 | |
| 49 | Plus all the actual code files created or modified during implementation. |
| 50 | |
| 51 | ## How to Use Task Implementor |
| 52 | |
| 53 | ### Step 1: Clear Context and Open the Plan |
| 54 | |
| 55 | π΄ **Start with `/clear` or a new chat** after Task Planner completes. |
| 56 | |
| 57 | After clearing, open your plan file (`.copilot-tracking/plans/<topic>-plan.instructions.md`) in the editor before invoking Task Implementor. This ensures the agent can locate and follow the plan without relying on chat history. |
| 58 | |
| 59 | > [!TIP] |
| 60 | > Context management is an engineering practice, not a ritual. Clearing context removes accumulated tokens that cause the model to ignore its instructions. See [Context Engineering](context-engineering.md) for the full explanation. |
| 61 | |
| 62 | ### Step 2: Select the Custom Agent |
| 63 | |
| 64 | 1. Open GitHub Copilot Chat (`Ctrl+Alt+I`) |
| 65 | 2. Click the agent picker dropdown |
| 66 | 3. Select **Task Implementor** |
| 67 | |
| 68 | ### Step 3: Reference Your Plan |
| 69 | |
| 70 | Use `/task-implement` to start execution. The prompt automatically locates the plan and switches to Task Implementor. Alternatively, provide the path to your plan file directly. |
| 71 | |
| 72 | ### Step 4: Set Stop Controls |
| 73 | |
| 74 | Choose your review cadence: |
| 75 | |
| 76 | * `phaseStop=true` (default): Pause after each phase |
| 77 | * `taskStop=true`: Pause after each task |
| 78 | * Both false: Run to completion |
| 79 | |
| 80 | ### Step 5: Review and Continue |
| 81 | |
| 82 | At each stop point: |
| 83 | |
| 84 | 1. Review the changes made |
| 85 | 2. Verify code compiles and lints |
| 86 | 3. Approve or request adjustments |
| 87 | 4. Continue to next phase/task |
| 88 | |
| 89 | ## Example Prompt |
| 90 | |
| 91 | ```text |
| 92 | /task-implement |
| 93 | ``` |
| 94 | |
| 95 | Or reference a specific generated prompt: |
| 96 | |
| 97 | ```text |
| 98 | /implement-blob-storage |
| 99 | ``` |
| 100 | |
| 101 | ## Understanding Stop Controls |
| 102 | |
| 103 | ### Phase Stop (Default: true) |
| 104 | |
| 105 | Pauses after completing all tasks in a phase: |
| 106 | |
| 107 | ```text |
| 108 | Phase 1: [x] Task 1.1, [x] Task 1.2 β STOP for review |
| 109 | Phase 2: [ ] Task 2.1, [ ] Task 2.2 |
| 110 | ``` |
| 111 | |
| 112 | ### Task Stop (Default: false) |
| 113 | |
| 114 | Pauses after each individual task: |
| 115 | |
| 116 | ```text |
| 117 | Phase 1: [x] Task 1.1 β STOP |
| 118 | [ ] Task 1.2 |
| 119 | ``` |
| 120 | |
| 121 | ## Tips for Better Implementation |
| 122 | |
| 123 | β
**Do:** |
| 124 | |
| 125 | * Review changes at each stop point |
| 126 | * Run linters and validators |
| 127 | * Check that success criteria are met |
| 128 | * Ask for adjustments before continuing |
| 129 | |
| 130 | β **Don't:** |
| 131 | |
| 132 | * Skip reviewing changes |
| 133 | * Ignore failing tests or lints |
| 134 | * Rush through all phases without checking |
| 135 | |
| 136 | ## The Changes Log |
| 137 | |
| 138 | Task Implementor maintains a changes log with sections: |
| 139 | |
| 140 | ```markdown |
| 141 | ## Changes |
| 142 | |
| 143 | ### Added |
| 144 | * src/storage/blob_client.py - Azure Blob Storage client class |
| 145 | |
| 146 | ### Modified |
| 147 | * src/pipeline/config.py - Added blob storage configuration |
| 148 | |
| 149 | ### Removed |
| 150 | * (none this implementation) |
| 151 | ``` |
| 152 | |
| 153 | ## At Completion |
| 154 | |
| 155 | When all phases are complete, Task Implementor provides: |
| 156 | |
| 157 | 1. **Summary** of all changes from the changes log |
| 158 | 2. **Links** to planning files for reference |
| 159 | 3. **Recommendation** to proceed to review |
| 160 | |
| 161 | ## Common Pitfalls |
| 162 | |
| 163 | | Pitfall | Solution | |
| 164 | |-------------------------|---------------------------------------------------------------------------------| |
| 165 | | Plan not found | Complete Task Planner first | |
| 166 | | Skipping reviews | Use phaseStop=true for important changes | |
| 167 | | Not running validations | Check lint/test after each phase | |
| 168 | | Context issues | Use `/clear` before starting; see [Context Engineering](context-engineering.md) | |
| 169 | |
| 170 | ## Next Steps |
| 171 | |
| 172 | After Task Implementor completes: |
| 173 | |
| 174 | 1. **Clear context** using `/clear` or starting a new chat |
| 175 | 2. **Review** using `/task-review` to switch to [Task Reviewer](task-reviewer.md) |
| 176 | 3. **Address findings** from the review before committing |
| 177 | 4. **Commit** your changes with a descriptive message |
| 178 | 5. **Clean up** planning files if no longer needed |
| 179 | |
| 180 | > [!TIP] |
| 181 | > Use the **β
Review** handoff button when available to transition directly to Task Reviewer with context. |
| 182 | |
| 183 | For your next task, you can start the RPI workflow again with Task Researcher. |
| 184 | |
| 185 | --- |
| 186 | |
| 187 | <!-- markdownlint-disable MD036 --> |
| 188 | *π€ Crafted with precision by β¨Copilot following brilliant human instruction, |
| 189 | then carefully refined by our team of discerning human reviewers.* |
| 190 | <!-- markdownlint-enable MD036 --> |
| 191 | |