Measure twice, code once.
Conductor is a Gemini CLI extension that enables Context-Driven Development. It turns the Gemini CLI into a proactive project manager that follows a strict protocol to specify, plan, and implement software features and bug fixes.
Instead of just writing code, Conductor ensures a consistent, high-quality lifecycle for every task: Context -> Spec & Plan -> Implement.
The philosophy behind Conductor is simple: control your code. By treating context as a managed artifact alongside your code, you transform your repository into a single source of truth that drives every agent interaction with deep, persistent project awareness.
Install the Conductor extension by running the following command from your terminal:
gemini extensions install https://github.com/gemini-cli-extensions/conductor --auto-update
The --auto-update is optional: if specified, it will update to new versions as they are released.
Conductor is designed to manage the entire lifecycle of your development tasks.
Note on Token Consumption: Conductor's context-driven approach involves reading and analyzing your project's context, specifications, and plans. This can lead to increased token consumption, especially in larger projects or during extensive planning and implementation phases. You can check the token consumption in the current session by running /stats model.
WARNING
Disable Gemini CLI's built-in Plan Mode for Conductor Conductor manages its own planning lifecycle. Gemini CLI's built-in Plan Mode will conflict with Conductor's state management. For the best Conductor experience, please disable Gemini CLI's built-in Plan Mode in your environment.
When you run /conductor:setup, Conductor helps you define the core components of your project context. This context is then used for building new components or features by you or anyone on your team.
Generated Artifacts:
conductor/product.mdconductor/product-guidelines.mdconductor/tech-stack.mdconductor/workflow.mdconductor/code_styleguides/conductor/tracks.md/conductor:setup
When you’re ready to take on a new feature or bug fix, run /conductor:newTrack. This initializes a track — a high-level unit of work. Conductor helps you generate two critical artifacts:
Generated Artifacts:
conductor/tracks/<track_id>/spec.mdconductor/tracks/<track_id>/plan.mdconductor/tracks/<track_id>/metadata.json/conductor:newTrack
# OR with a description
/conductor:newTrack "Add a dark mode toggle to the settings page"
Once you approve the plan, run /conductor:implement. Your coding agent then works through the plan.md file, checking off tasks as it completes them.
Updated Artifacts:
conductor/tracks.md (Status updates)conductor/tracks/<track_id>/plan.md (Status updates)/conductor:implement
Conductor will:
During implementation, you can also:
Check status: Get a high-level overview of your project's progress.
/conductor:status
Revert work: Undo a feature or a specific task if needed.
/conductor:revert
Review work: Review completed work against guidelines and the plan.
/conductor:review
| Command | Description | Artifacts |
|---|---|---|
/conductor:setup | Scaffolds the project and sets up the Conductor environment. Run this once per project. | conductor/product.mdconductor/product-guidelines.mdconductor/tech-stack.mdconductor/workflow.mdconductor/tracks.md |
/conductor:newTrack | Starts a new feature or bug track. Generates spec.md and plan.md. | conductor/tracks/<id>/spec.mdconductor/tracks/<id>/plan.mdconductor/tracks.md |
/conductor:implement | Executes the tasks defined in the current track's plan. | conductor/tracks.mdconductor/tracks/<id>/plan.md |
/conductor:status | Displays the current progress of the tracks file and active tracks. | Reads conductor/tracks.md |
/conductor:revert | Reverts a track, phase, or task by analyzing git history. | Reverts git history |
/conductor:review | Reviews completed work against guidelines and the plan. | Reads plan.md, product-guidelines.md |