Skip to content
TriedDocs
Conductor

Build and refine agents with Conductor

Build a new agent from a short conversation on Home, then ask Conductor for changes and accept, reject or undo each proposed edit.

Conductor can start an agent from a sentence or two, and then edit it with you. Every edit is a proposal with a diff: nothing changes until you choose Accept, and an accepted change can be undone.

Needs keys Generation and free-form edits use OpenAI. In mock mode, generation fills a template and the edit panel understands a fixed set of requests (listed below).

Build an agent from a description#

You can start from three places:

  • Build a new agent on Home. Conductor asks three questions: which business it is for and what it does, what the agent should handle on calls, and anything it must never do or when it should transfer to a person. Answer in one message. Conductor builds the agent and replies with an Open link to it. If you already described the agent in your first message ("Build a receptionist for a physio clinic that books appointments and answers parking questions"), it builds straight away.
  • Any Conductor conversation: ask for a new agent in your own words and Conductor runs the same build_agent action.
  • Create an Agent, then Generate from a description. The modal Generate an agent from a description says: "Describe the business and what the agent should do. You get a structured prompt with identity, style, task steps and rules to edit." Fill in What should the agent do? and choose Generate agent.

The description must be at least 10 characters. Conductor then creates:

  • A single prompt LLM with a prompt in sections: Identity, Style, Task (numbered steps) and Rules. With an OpenAI key the model is asked to keep it under 400 words.
  • A one-sentence welcome message.
  • An end_call tool ("End the call when the caller is done.").
  • An agent with a short name, using that LLM and the default voice (Adrian on the Premium tier).

From Generate from a description the builder opens on the new agent's draft; from Home, choose the link in Conductor's reply. Read the prompt, add your real details (hours, prices, policies), add tools and a knowledge base, and test it.

In mock mode the prompt is a template built from your description: it guesses the business name and whether the agent books appointments, qualifies leads or handles support.

The API is POST /generate-agent with description (10 to 4,000 characters) and an optional voice_id. It returns the new agent.

Edit an agent with Conductor#

Open the edit panel in one of these ways:

  • Conductor in the agent builder header. The panel edits this agent: "Edits this agent with your approval".
  • Edit an agent on Home, which asks which agent to edit first, or Ask Conductor on Call History or Analytics. The panel has an agent picker at the top.
The Conductor edit panel proposing "Make the tone friendlier" with a diff of general_prompt, Reject and Accept

Ask for a change#

Type a request, or choose a suggestion: "Make it friendlier", "Make replies shorter", "Add a transfer tool to +61255501234", "Add an end call tool".

Review the proposal#

Each proposed change is a card with a title, a short summary of what changes (for example "Prompt edited (+125 characters)"), and a badge for what it edits: agent (voice and call settings), llm (prompt, welcome message, tools) or flow (conversation flow). Expand Diff to see each field's old value in red and new value in green.

Accept or reject#

Accept saves the change to the agent's draft and reloads the builder. Reject discards it. One reply can contain several cards; decide each one separately.

Undo if needed#

After accepting, Undo puts back the values the fields had just before you accepted.

What Conductor can change#

Each proposal replaces whole top-level fields of the agent, its LLM or its conversation flow, for example general_prompt, begin_message, general_tools, voice_speed or global_prompt. When it adds a tool, it returns the full tool list with your existing tools kept.

With an OpenAI key, the panel sends the agent's full configuration (agent, LLM and flow) and your conversation, so you can ask for any change those fields can express: "ask for the caller's postcode before booking", "add a state for after-hours calls", "lower the interruption sensitivity".

In mock mode the panel understands only these requests:

Request contains Proposal
friendly, warm, nicer, polite, tone Add a friendly tone instruction to the prompt; warm up the welcome message.
concise, shorter, brief, less wordy Add "one or two short sentences" to the prompt.
transfer (single or multi-prompt agents) Add a transfer_to_human cold transfer tool, to the number in your message or a default.
end call, hang up Add an end_call tool if there is none.
speak faster, speak slower Change voice_speed by 0.1 (kept between 0.8 and 1.2).

Things to know#

  • Changes go to the draft. Accepting edits the agent's current draft, like editing it yourself. Publish when you are ready.
  • Undo is per card and per session. The panel keeps its conversation and undo values while the browser tab is open. Reloading the page clears them, and the changes stay.
  • Undo restores the fields, not a version. If you edited the same field by hand after accepting, Undo overwrites your edit.
  • Context from Call History and Analytics is sent with your first message only.
  • The edit panel does not use Conductor credits.

Iterate with tests#

A practical loop:

  1. Ask Conductor for a change and accept it.
  2. Check it in Test LLM, with Rerun on the turn you wanted to fix.
  3. Ask Conductor (in a Conductor conversation with the agent attached) to "write test cases for this agent and run them". See Test and improve.
  4. If a test fails, describe the failure in the edit panel and ask for a fix.