DEV Community

Cover image for How to "Program" Your AI Agent: Introducing Gemini CLI Conductor 🎻
Harish Kotra (he/him)
Harish Kotra (he/him)

Posted on

How to "Program" Your AI Agent: Introducing Gemini CLI Conductor 🎻

Stop prompting. Start Conducting.

We are entering a new era of AI-assisted coding. We moved from "Autocomplete" (tab-tab) to "Chat" (copy-paste), and now we are arriving at Agentic Coding - where the AI acts as a developer in your terminal, creating files, running tests, and executing commands.

But Agentic Coding has a flaw: Context Amnesia.

You ask an agent to "build a login form," and it forgets you use Tailwind. You remind it to use Tailwind, and it forgets you prefer TypeScript strict mode. You end up spending more time "prompt engineering" than engineering.

Enter Gemini CLI Conductor

Gemini CLI Conductor is not a new tool you install; it's a methodology. It’s a way of structuring your projects so that any AI Agent (like Gemini Code Assist) becomes an expert on your codebase instantly.

This repository, focus-flow-timer, is a proof-of-concept demonstrating this pattern.

The "Brain" of the Repo 🧠

The core of this methodology is a directory called /conductor that lives in the root of your project. Think of it as the "Sheet Music" for the AI.

conductor/
β”œβ”€β”€ product.md # The Vision (WHY we are building this)
β”œβ”€β”€ tech-stack.md # The Constraints (HOW we build this)
└── workflow.md # The Process (The RULES we follow)
Enter fullscreen mode Exit fullscreen mode

Instead of putting these details in a 500-word prompt every time you want a feature, you commit them to the repo.

1. product.md

This file captures the soul of the product.

"A distraction-free, keyboard-first Pomodoro timer. Interactions should feel instant (<50ms)."

Result: The AI prioritizes performance and adds hotkeys automatically, without being asked.

2. tech-stack.md

This is where you enforce your architectural decisions.

"State Management: Zustand ONLY. No Context API. Styling: Tailwind CSS v4."

Result: When I asked for a Theme Switcher, the AI didn't use useState or Redux. It read this file and built a Zustand store with persistence, matching the project's strict standards.

3. workflow.md

This file defines your development lifecycle.

"Workflow: 1. Plan. 2. Write failing test (TDD). 3. Implement."

Result: The AI refused to write the UI component until it had written a passing test for the logic. It adhered to TDD because the Conductor told it to.

The Example: Focus Flow Timer ⚑️

To prove this works, I used Gemini Code Assist to build a functional Pomodoro timer.

The Prompt:

"Implement a Theme Switcher."

The Execution:

  1. Analysis: The agent read /conductor/tech-stack.md and saw Tailwind CSS v4.
  2. Configuration: It realized v4 handles dark mode differently and searched the web for the correct CSS-variable configuration.
  3. Implementation: It created a useThemeStore.ts (Zustand) because tech-stack.md forbade other state libraries.
  4. Verification: It wrote tests first, adhering to workflow.md.

I didn't have to explain any of this. I just gave the command, and the "Conductor" ensured the output was perfect.

How to Adopt This Methodology

You don't need a special plugin. You just need structure.

  1. Create a /conductor folder in your project root.
  2. Define your constraints. Be strict. If you hate CSS modules, say "NO CSS MODULES" in tech-stack.md.
  3. Point the Agent. When you start a task, tell the agent: "Read the /conductor directory first."

By treating your context as code, you turn your AI agent from a junior developer who needs constant supervision into a senior engineer who knows your stack inside and out.

Check out the repo here: https://github.com/harishkotra/focus-flow-timer
Checkout a video of how this works: https://youtu.be/VfznSzMV3Oc
Checkout what Gemini CLI Conductor is: https://developers.googleblog.com/conductor-introducing-context-driven-development-for-gemini-cli/

Top comments (0)