You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Updates GEMINI.md with the resolution protocol and refactors all commands (implement, revert, status, newTrack) to resolve file paths dynamically via index.md, removing hardcoded defaults.
If a user mentions a "plan" or asks about the plan, and they have used the conductor extension in the current session, they are likely referring to the `conductor/tracks.md` file or one of the track plans (`conductor/tracks/<track_id>/plan.md`).
4
+
5
+
## Universal File Resolution Protocol
6
+
7
+
**PROTOCOL: How to locate files.**
8
+
To find a file (e.g., "**Product Definition**") within a specific context (Project Root or a specific Track):
9
+
10
+
1.**Identify Index:** Determine the relevant index file:
1. **Verify Core Context:** Using the **Universal File Resolution Protocol**, resolve and verify the existence of:
14
+
- **Product Definition**
15
+
- **Tech Stack**
16
+
- **Workflow**
26
17
27
18
2. **Handle Failure:** If ANY of these are missing (or their resolved paths do not exist), Announce: "Conductor is not set up. Please run `/conductor:setup`." and HALT.
28
19
@@ -35,7 +26,7 @@ To find a file (e.g., "**Product Definition**"), you MUST:
35
26
1. **Check for User Input:** First, check if the user provided a track name as an argument (e.g., `/conductor:implement <track_description>`).
36
27
37
28
2. **Locate and Parse Tracks Registry:**
38
-
- Resolve the **Tracks Registry** file (Default: `conductor/tracks.md`).
29
+
- Resolve the **Tracks Registry**.
39
30
- Read and parse this file. 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.
40
31
- **CRITICAL:** If no track sections are found after parsing, announce: "The tracks file is empty or malformed. No tracks to implement." and halt.
41
32
@@ -71,11 +62,7 @@ To find a file (e.g., "**Product Definition**"), you MUST:
71
62
3. **Load Track Context:**
72
63
a. **Identify Track Folder:** From the tracks file, identify the track's folder link to get the `<track_id>`.
73
64
b. **Read Files:**
74
-
- **Track Context:** Check for `conductor/tracks/<track_id>/index.md`.
75
-
- **If found:** Use it to resolve **Specification** and **Implementation Plan**.
- **Track Context:** Using the **Universal File Resolution Protocol**, resolve and read the **Specification** and **Implementation Plan** for the selected track.
a. **Analyze Specification:** Carefully analyze the **Specification** to identify any new features, changes in functionality, or updates to the technology stack.
Copy file name to clipboardExpand all lines: commands/conductor/newTrack.toml
+8-15Lines changed: 8 additions & 15 deletions
Original file line number
Diff line number
Diff line change
@@ -5,22 +5,15 @@ You are an AI agent assistant for the Conductor spec-driven development framewor
5
5
6
6
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.
7
7
8
-
## 1.1 UNIVERSAL FILE RESOLUTION PROTOCOL
9
-
**PROTOCOL: How to locate files.**
10
-
To find a file (e.g., "**Product Definition**"), you MUST:
11
-
1. **Check Index:** Look for a link with that label in `conductor/index.md` (if it exists).
12
-
2. **Fallback:** If `conductor/index.md` is missing or the link is absent, use the **Default Path** keys specified in the steps below.
13
-
3. **Verify:** You MUST verify the resolved file actually exists on the disk.
14
-
15
8
---
16
9
17
-
## 1.2 SETUP CHECK
10
+
## 1.1 SETUP CHECK
18
11
**PROTOCOL: Verify that the Conductor environment is properly set up.**
19
12
20
-
1. **Verify Core Context:** Using the **Universal File Resolution Protocol**, verify the existence of:
1. **Verify Core Context:** Using the **Universal File Resolution Protocol**, resolve and verify the existence of:
14
+
- **Product Definition**
15
+
- **Tech Stack**
16
+
- **Workflow**
24
17
25
18
2. **Handle Failure:**
26
19
- If ANY of these files are missing, you MUST halt the operation immediately.
@@ -100,11 +93,11 @@ To find a file (e.g., "**Product Definition**"), you MUST:
100
93
* Read the confirmed `spec.md` content for this track.
101
94
* Resolve and read the **Workflow** file (Default: `conductor/workflow.md`).
102
95
* Generate a `plan.md` with a hierarchical list of Phases, Tasks, and Sub-tasks.
103
-
* **CRITICAL:** The plan structure MUST adhere to the methodology in the workflow file (e.g., TDD tasks for "Write Tests" and "Implement").
96
+
* **CRITICAL:** The plan structure MUST adhere to the methodology in the **Workflow** file (e.g., TDD tasks for "Write Tests" and "Implement").
104
97
* Include status markers `[ ]` for **EVERY** task and sub-task. The format must be:
105
98
- Parent Task: `- [ ] Task: ...`
106
99
- Sub-task: ` - [ ] ...`
107
-
* **CRITICAL: Inject Phase Completion Tasks.** Determine if a "Phase Completion Verification and Checkpointing Protocol" is defined in `conductor/workflow.md`. If this protocol exists, then for each **Phase** that you generate in `plan.md`, you MUST append a final meta-task to that phase. The format for this meta-task is: `- [ ] Task: Conductor - User Manual Verification '<Phase Name>' (Protocol in workflow.md)`.
100
+
* **CRITICAL: Inject Phase Completion Tasks.** Determine if a "Phase Completion Verification and Checkpointing Protocol" is defined in the **Workflow**. If this protocol exists, then for each **Phase** that you generate in `plan.md`, you MUST append a final meta-task to that phase. The format for this meta-task is: `- [ ] Task: Conductor - User Manual Verification '<Phase Name>' (Protocol in workflow.md)`.
108
101
109
102
3. **User Confirmation:** Present the drafted `plan.md` to the user for review and approval.
110
103
> "I've drafted the implementation plan. Please review the following:"
@@ -146,7 +139,7 @@ To find a file (e.g., "**Product Definition**"), you MUST:
146
139
```
147
140
6. **Update Tracks Registry:**
148
141
- **Announce:** Inform the user you are updating the **Tracks Registry**.
149
-
- **Append Section:** Resolve the **Tracks Registry** file (Default: `conductor/tracks.md`) via the **Universal File Resolution Protocol**. Append a new section for the track to the end of this file. The format MUST be:
142
+
- **Append Section:** Resolve the **Tracks Registry** via the **Universal File Resolution Protocol**. Append a new section for the track to the end of this file. The format MUST be:
Copy file name to clipboardExpand all lines: commands/conductor/revert.toml
+18-12Lines changed: 18 additions & 12 deletions
Original file line number
Diff line number
Diff line change
@@ -9,11 +9,18 @@ Your workflow MUST anticipate and handle common non-linear Git histories, such a
9
9
10
10
**CRITICAL**: The user's explicit confirmation is required at multiple checkpoints. If a user denies a confirmation, the process MUST halt immediately and follow further instructions.
11
11
12
-
**CRITICAL:** Before proceeding, you should start by checking if the project has been properly set up.
13
-
1. **Verify Tracks File:** Check if the file `conductor/tracks.md` exists. If it does not, HALT execution and instruct the user: "The project has not been set up or conductor/tracks.md has been corrupted. Please run `/conductor:setup` to set up the plan, or restore conductor/tracks.md."
14
-
2. **Verify Track Exists:** Check if the file `conductor/tracks.md` is not empty. If it is empty, HALT execution and instruct the user: "The project has not been set up or conductor/tracks.md has been corrupted. Please run `/conductor:setup` to set up the plan, or restore conductor/tracks.md."
12
+
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.
15
13
16
-
**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.
14
+
---
15
+
16
+
## 1.1 SETUP CHECK
17
+
**PROTOCOL: Verify that the Conductor environment is properly set up.**
18
+
19
+
1. **Verify Core Context:** Using the **Universal File Resolution Protocol**, resolve and verify the existence of the **Tracks Registry**.
20
+
21
+
2. **Verify Track Exists:** Check if the **Tracks Registry** is not empty.
22
+
23
+
3. **Handle Failure:** If the file is missing or empty, HALT execution and instruct the user: "The project has not been set up or the tracks file has been corrupted. Please run `/conductor:setup` to set up the plan, or restore the tracks file."
17
24
18
25
---
19
26
@@ -29,7 +36,7 @@ Your workflow MUST anticipate and handle common non-linear Git histories, such a
29
36
3. **Interaction Paths:**
30
37
31
38
* **PATH A: Direct Confirmation**
32
-
1. Find the specific track, phase, or task the user referenced in the project's `tracks.md` or `plan.md` files.
39
+
1. Find the specific track, phase, or task the user referenced in the **Tracks Registry** or **Implementation Plan** files (resolved via **Universal File Resolution Protocol**).
33
40
2. Ask the user for confirmation: "You asked to revert the [Track/Phase/Task]: '[Description]'. Is this correct?".
34
41
- **Structure:**
35
42
A) Yes
@@ -38,7 +45,7 @@ Your workflow MUST anticipate and handle common non-linear Git histories, such a
38
45
39
46
* **PATH B: Guided Selection Menu**
40
47
1. **Identify Revert Candidates:** Your primary goal is to find relevant items for the user to revert.
41
-
* **Scan All Plans:** You MUST read the main `conductor/tracks.md` and every `conductor/tracks/*/plan.md` file.
48
+
* **Scan All Plans:** You MUST read the **Tracks Registry** and every track's **Implementation Plan** (resolved via **Universal File Resolution Protocol**, checking `conductor/tracks/<track_id>/index.md` if available).
42
49
* **Prioritize In-Progress:** First, find **all** Tracks, Phases, and Tasks marked as "in-progress" (`[~]`).
43
50
* **Fallback to Completed:** If and only if NO in-progress items are found, find the **5 most recently completed** Tasks and Phases (`[x]`).
44
51
2. **Present a Unified Hierarchical Menu:** You MUST present the results to the user in a clear, numbered, hierarchical list grouped by Track. The introductory text MUST change based on the context.
@@ -76,15 +83,15 @@ Your workflow MUST anticipate and handle common non-linear Git histories, such a
76
83
**GOAL: Find ALL actual commit(s) in the Git history that correspond to the user's confirmed intent and analyze them.**
77
84
78
85
1. **Identify Implementation Commits:**
79
-
* Find the primary SHA(s) for all tasks and phases recorded in the target's `plan.md`.
86
+
* Find the primary SHA(s) for all tasks and phases recorded in the target's **Implementation Plan**.
80
87
* **Handle "Ghost" Commits (Rewritten History):** If a SHA from a plan is not found in Git, announce this. Search the Git log for a commit with a highly similar message and ask the user to confirm it as the replacement. If not confirmed, halt.
81
88
82
89
2. **Identify Associated Plan-Update Commits:**
83
-
* For each validated implementation commit, use `git log` to find the corresponding plan-update commit that happened *after* it and modified the relevant `plan.md` file.
90
+
* For each validated implementation commit, use `git log` to find the corresponding plan-update commit that happened *after* it and modified the relevant **Implementation Plan** file.
84
91
85
92
3. **Identify the Track Creation Commit (Track Revert Only):**
86
93
* **IF** the user's intent is to revert an entire track, you MUST perform this additional step.
87
-
* **Method:** Use `git log -- conductor/tracks.md` and search for the commit that first introduced the track entry.
94
+
* **Method:** Use `git log -- <path_to_tracks_registry>` (resolved via protocol) and search for the commit that first introduced the track entry.
88
95
* Look for lines matching either `- [ ] **Track: <Track Description>**` (new format) OR `## [ ] Track: <Track Description>` (legacy format).
89
96
* Add this "track creation" commit's SHA to the list of commits to be reverted.
90
97
@@ -118,7 +125,6 @@ Your workflow MUST anticipate and handle common non-linear Git histories, such a
118
125
119
126
1. **Execute Reverts:** Run `git revert --no-edit <sha>` for each commit in your final list, starting from the most recent and working backward.
120
127
2. **Handle Conflicts:** If any revert command fails due to a merge conflict, halt and provide the user with clear instructions for manual resolution.
121
-
3. **Verify Plan State:** After all reverts succeed, read the relevant `plan.md` file(s) again to ensure the reverted item has been correctly reset. If not, perform a file edit to fix it and commit the correction.
128
+
3. **Verify Plan State:** After all reverts succeed, read the relevant **Implementation Plan** file(s) again to ensure the reverted item has been correctly reset. If not, perform a file edit to fix it and commit the correction.
122
129
4. **Announce Completion:** Inform the user that the process is complete and the plan is synchronized.
Copy file name to clipboardExpand all lines: commands/conductor/status.toml
+12-13Lines changed: 12 additions & 13 deletions
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,7 @@
1
1
description = "Displays the current progress of the project"
2
2
prompt = """
3
3
## 1.0 SYSTEM DIRECTIVE
4
-
You are an AI agent. Your primary function is to provide a status overview of the current tracks file. This involves reading the `conductor/tracks.md` file, parsing its content, and summarizing the progress of tasks.
5
-
6
-
**CRITICAL:** Before proceeding, you should start by checking if the project has been properly set up.
7
-
1. **Verify Tracks File:** Check if the file `conductor/tracks.md` exists. If it does not, HALT execution and instruct the user: "The project has not been set up or conductor/tracks.md has been corrupted. Please run `/conductor:setup` to set up the plan, or restore conductor/tracks.md."
8
-
2. **Verify Track Exists:** Check if the file `conductor/tracks.md` is not empty. If it is empty, HALT execution and instruct the user: "The project has not been set up or conductor/tracks.md has been corrupted. Please run `/conductor:setup` to set up the plan, or restore conductor/tracks.md."
4
+
You are an AI agent. Your primary function is to provide a status overview of the current tracks file. This involves reading the **Tracks Registry** file, parsing its content, and summarizing the progress of tasks.
9
5
10
6
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.
11
7
@@ -15,12 +11,13 @@ CRITICAL: You must validate the success of every tool call. If any tool call fai
15
11
## 1.1 SETUP CHECK
16
12
**PROTOCOL: Verify that the Conductor environment is properly set up.**
17
13
18
-
1. **Check for Required Files:** You MUST verify the existence of the following files in the `conductor` directory:
19
-
- `conductor/tech-stack.md`
20
-
- `conductor/workflow.md`
21
-
- `conductor/product.md`
14
+
1. **Verify Core Context:** Using the **Universal File Resolution Protocol**, resolve and verify the existence of:
15
+
- **Tracks Registry**
16
+
- **Product Definition**
17
+
- **Tech Stack**
18
+
- **Workflow**
22
19
23
-
2. **Handle Missing Files:**
20
+
2. **Handle Failure:**
24
21
- If ANY of these files are missing, you MUST halt the operation immediately.
25
22
- Announce: "Conductor is not set up. Please run `/conductor:setup` to set up the environment."
26
23
- Do NOT proceed to Status Overview Protocol.
@@ -31,9 +28,11 @@ CRITICAL: You must validate the success of every tool call. If any tool call fai
31
28
**PROTOCOL: Follow this sequence to provide a status overview.**
32
29
33
30
### 2.1 Read Project Plan
34
-
1. **Locate and Read:** Read the content of the `conductor/tracks.md` file.
35
-
2. **Locate and Read:** List the tracks using shell command `ls conductor/tracks`. For each of the tracks, read the corresponding `conductor/tracks/<track_id>/plan.md` file.
36
-
* **Parsing Logic:** When reading `conductor/tracks.md` to identify tracks, look for lines matching either the new standard format `- [ ] **Track:` or the legacy format `## [ ] Track:`.
31
+
1. **Locate and Read:** Read the content of the **Tracks Registry** (resolved via **Universal File Resolution Protocol**).
32
+
2. **Locate and Read Tracks:**
33
+
- Parse the **Tracks Registry** to identify all registered tracks and their paths.
34
+
* **Parsing Logic:** When reading the **Tracks Registry** to identify tracks, look for lines matching either the new standard format `- [ ] **Track:` or the legacy format `## [ ] Track:`.
35
+
- For each track, resolve and read its **Implementation Plan** (using **Universal File Resolution Protocol**, checking `conductor/tracks/<track_id>/index.md` if available).
0 commit comments