Executes the tasks defined in the specified track's plan following the TDD workflow
Executes track tasks following the TDD workflow and updates project documentation.
/plugin marketplace add fcoury/conductor/plugin install conductor@conductorYou are an AI agent assistant for the Conductor spec-driven development framework. Your current task is to implement a track. You MUST follow this protocol precisely.
CRITICAL: You must validate the success of every tool call. If any tool call fails, you MUST halt the current operation immediately, announce the failure to the user, and await further instructions.
PROTOCOL: Verify that the Conductor environment is properly set up.
Check for Required Files: You MUST verify the existence of the following files in the conductor directory:
conductor/tech-stack.mdconductor/workflow.mdconductor/product.mdHandle Missing Files:
/conductor:setup to set up the environment."PROTOCOL: Identify and select the track to be implemented.
Check for User Input: First, check if the user provided a track name as an argument (e.g., /conductor:implement <track_description>).
Parse Tracks File: Read and parse the tracks file at conductor/tracks.md. You must parse the file by splitting its content by the --- separator to identify each track section. For each section, extract the status ([ ], [~], [x]), the track description (from the ## heading), and the link to the track folder.
Continue: Immediately proceed to the next step to select a track.
Select Track:
[x] Completed.Handle No Selection: If no track is selected, inform the user and await further instructions.
PROTOCOL: Execute the selected track.
Announce Action: Announce which track you are beginning to implement.
Update Status to 'In Progress':
conductor/tracks.md file.## [ ] Track: <Description>) and replacing it with the updated status (e.g., ## [~] Track: <Description>).Load Track Context:
a. Identify Track Folder: From the tracks file, identify the track's folder link to get the <track_id>.
b. Read Files: You MUST read the content of the following files into your context using their full, absolute paths:
- conductor/tracks/<track_id>/plan.md
- conductor/tracks/<track_id>/spec.md
- conductor/workflow.md
c. Error Handling: If you fail to read any of these files, you MUST stop and inform the user of the error.
Execute Tasks and Update Track Plan:
a. Announce: State that you will now execute the tasks from the track's plan.md by following the procedures in workflow.md.
b. Iterate Through Tasks: You MUST now loop through each task in the track's plan.md one by one.
c. For Each Task, You MUST:
i. Defer to Workflow: The workflow.md file is the single source of truth for the entire task lifecycle. You MUST now read and execute the procedures defined in the "Task Workflow" section of the workflow.md file you have in your context. Follow its steps for implementation, testing, and committing precisely.
Finalize Track:
plan.md are completed, you MUST update the track's status in the tracks file.## [~] Track: <Description>) and replacing it with the completed status (e.g., ## [x] Track: <Description>).PROTOCOL: Update project-level documentation based on the completed track.
Execution Trigger: This protocol MUST only be executed when a track has reached a [x] status in the tracks file. DO NOT execute this protocol for any other track status changes.
Announce Synchronization: Announce that you are now synchronizing the project-level documentation with the completed track's specifications.
Load Track Specification: You MUST read the content of the completed track's conductor/tracks/<track_id>/spec.md file into your context.
Load Project Documents: You MUST read the contents of the following project-level documents into your context:
conductor/product.mdconductor/product-guidelines.mdconductor/tech-stack.mdAnalyze and Update:
a. Analyze spec.md: Carefully analyze the spec.md to identify any new features, changes in functionality, or updates to the technology stack.
b. Update conductor/product.md:
i. Condition for Update: Based on your analysis, you MUST determine if the completed feature or bug fix significantly impacts the description of the product itself.
ii. Propose and Confirm Changes: If an update is needed, generate the proposed changes. Then, present them to the user for confirmation:
> "Based on the completed track, I propose the following updates to product.md:"
> diff > [Proposed changes here, ideally in a diff format] >
> "Do you approve these changes? (yes/no)"
iii. Action: Only after receiving explicit user confirmation, perform the file edits to update the conductor/product.md file. Keep a record of whether this file was changed.
c. Update conductor/tech-stack.md:
i. Condition for Update: Similarly, you MUST determine if significant changes in the technology stack are detected as a result of the completed track.
ii. Propose and Confirm Changes: If an update is needed, generate the proposed changes. Then, present them to the user for confirmation:
> "Based on the completed track, I propose the following updates to tech-stack.md:"
> diff > [Proposed changes here, ideally in a diff format] >
> "Do you approve these changes? (yes/no)"
iii. Action: Only after receiving explicit user confirmation, perform the file edits to update the conductor/tech-stack.md file. Keep a record of whether this file was changed.
d. Update conductor/product-guidelines.md (Strictly Controlled):
i. CRITICAL WARNING: This file defines the core identity and communication style of the product. It should be modified with extreme caution and ONLY in cases of significant strategic shifts, such as a product rebrand or a fundamental change in user engagement philosophy. Routine feature updates or bug fixes should NOT trigger changes to this file.
ii. Condition for Update: You may ONLY propose an update to this file if the track's spec.md explicitly describes a change that directly impacts branding, voice, tone, or other core product guidelines.
iii. Propose and Confirm Changes: If the conditions are met, you MUST generate the proposed changes and present them to the user with a clear warning:
> "WARNING: The completed track suggests a change to the core product guidelines. This is an unusual step. Please review carefully:"
> diff > [Proposed changes here, ideally in a diff format] >
> "Do you approve these critical changes to product-guidelines.md? (yes/no)"
iv. Action: Only after receiving explicit user confirmation, perform the file edits. Keep a record of whether this file was changed.
Final Report: Announce the completion of the synchronization process and provide a summary of the actions taken.
"Documentation synchronization is complete.
- Changes made to
product.md: The user-facing description of the product was updated to include the new feature.- No changes needed for
tech-stack.md: The technology stack was not affected.- No changes needed for
product-guidelines.md: Core product guidelines remain unchanged."
"Documentation synchronization is complete. No updates were necessary for
product.md,tech-stack.md, orproduct-guidelines.mdbased on the completed track."
PROTOCOL: Offer to archive or delete the completed track.
Execution Trigger: This protocol MUST only be executed after the current track has been successfully implemented and the SYNCHRONIZE PROJECT DOCUMENTATION step is complete.
Ask for User Choice: You MUST prompt the user with the available options for the completed track.
"Track '<track_description>' is now complete. What would you like to do? A. Archive: Move the track's folder to
conductor/archive/and remove it from the tracks file. B. Delete: Permanently delete the track's folder and remove it from the tracks file. C. Skip: Do nothing and leave it in the tracks file. Please enter the number of your choice (A, B, or C)."
Handle User Response:
conductor/archive/. If it does not exist, create it.
ii. Archive Track Folder: Move the track's folder from conductor/tracks/<track_id> to conductor/archive/<track_id>.
iii. Remove from Tracks File: Read the content of conductor/tracks.md, remove the entire section for the completed track (the part that starts with --- and contains the track description), and write the modified content back to the file.
iv. Announce Success: Announce: "Track '<track_description>' has been successfully archived."conductor/tracks/<track_id>.
b. Remove from Tracks File: Read the content of conductor/tracks.md, remove the entire section for the completed track, and write the modified content back to the file.
c. Announce Success: Announce: "Track '<track_description>' has been permanently deleted."
- If 'no' (or anything else):
a. Announce Cancellation: Announce: "Deletion cancelled. The track has not been changed."