> ## Documentation Index
> Fetch the complete documentation index at: https://docs.telli.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Charlie

> Edit your agent's prompt with help from Charlie, telli's built-in AI assistant in the Agent Builder.

[Charlie](/platform/charlie) is the AI assistant inside telli. You tell Charlie what you'd like to change, it drafts the edit, and you decide what to keep. You'll find Charlie in the chat panel on the left of the Builder. **Anything you might ask a human prompt writer to do, you can ask Charlie.**

New to Charlie? The [Get Started tutorial](/en/get-started/agent-editor-charlie) walks you through your first session step by step. This cookbook goes deeper: what Charlie can do in each area, how to phrase requests, and when to edit directly instead.

## What Charlie can help with

Charlie can help across multiple areas of your agent.

<Tabs>
  <Tab title="Prompt edits">
    Tell Charlie what to change in the agent's prompt and it drafts the edit for you.

    <Note>
      * Rewrite or restructure a specific section
      * Apply a tone change across the whole prompt, like making the agent friendlier or more confident
      * Insert the right variable or tool reference without having to look up the syntax
      * Adapt the prompt based on a transcript or example you share
    </Note>

    <video loop muted playsInline style={{ width: '100%', cursor: 'pointer' }} onMouseEnter={(e) => e.currentTarget.play()} onMouseLeave={(e) => { e.currentTarget.pause(); e.currentTarget.currentTime = 0; }}>
      <source src="https://mintcdn.com/telli/yTwqc2QbhCfx6_2_/onboarding-media/Cookbooks/Charlie/CB_Charlie_PromptEdits.mp4?fit=max&auto=format&n=yTwqc2QbhCfx6_2_&q=85&s=f16425edb1f37c1c841702ab13f490e4" type="video/mp4" data-path="onboarding-media/Cookbooks/Charlie/CB_Charlie_PromptEdits.mp4" />
    </video>
  </Tab>

  <Tab title="Call control">
    Charlie can change how your agent handles calls, not just what it says.

    <Note>
      * Turn voicemail detection on or off, or change the message it leaves
      * Switch call recording on or off, or set up a consent message
      * Add or update a transfer destination
      * Change the maximum call length
      * Switch the voice or language
      * Adjust an agent's auto-dialer strategy and dialing windows
      * Propose changes to global Auto Dialer defaults for all inheriting agents
    </Note>

    <video loop muted playsInline style={{ width: '100%', cursor: 'pointer' }} onMouseEnter={(e) => e.currentTarget.play()} onMouseLeave={(e) => { e.currentTarget.pause(); e.currentTarget.currentTime = 0; }}>
      <source src="https://mintcdn.com/telli/yTwqc2QbhCfx6_2_/onboarding-media/Cookbooks/Charlie/CB_Charlie_CallControl.mp4?fit=max&auto=format&n=yTwqc2QbhCfx6_2_&q=85&s=6013c08ae72e17d31b3bc3f5085e46bb" type="video/mp4" data-path="onboarding-media/Cookbooks/Charlie/CB_Charlie_CallControl.mp4" />
    </video>
  </Tab>

  <Tab title="Call Outcomes">
    Have Charlie set up the data points telli should extract from every call.

    <Note>
      * Add a new outcome (yes/no, number, text, or a category from a list of options)
      * Refine the instruction so the extraction picks up the right cases
      * Turn on the "reason" toggle so you get a short explanation alongside each value
      * Turn a yes/no outcome into a dashboard metric
    </Note>

    <video loop muted playsInline style={{ width: '100%', cursor: 'pointer' }} onMouseEnter={(e) => e.currentTarget.play()} onMouseLeave={(e) => { e.currentTarget.pause(); e.currentTarget.currentTime = 0; }}>
      <source src="https://mintcdn.com/telli/yTwqc2QbhCfx6_2_/onboarding-media/Cookbooks/Charlie/CB_Charlie_CallOutcomes.mp4?fit=max&auto=format&n=yTwqc2QbhCfx6_2_&q=85&s=f82936b08041cc0b2743f6c9adac7889" type="video/mp4" data-path="onboarding-media/Cookbooks/Charlie/CB_Charlie_CallOutcomes.mp4" />
    </video>
  </Tab>

  <Tab title="Conversation analysis">
    Charlie can search past calls and bring real conversations into the chat.

    <Note>
      * Find calls that match specific criteria (date range, outcome, transcript text, tool errors)
      * Pull up the full details of a single call, including the transcript and outcomes
      * Compare the agent's setup at the time of a past call to your current draft, so you can see what's changed
      * Read the upvotes and downvotes your team left on past calls
    </Note>

    <video loop muted playsInline style={{ width: '100%', cursor: 'pointer' }} onMouseEnter={(e) => e.currentTarget.play()} onMouseLeave={(e) => { e.currentTarget.pause(); e.currentTarget.currentTime = 0; }}>
      <source src="https://mintcdn.com/telli/yTwqc2QbhCfx6_2_/onboarding-media/Cookbooks/Charlie/CB_Charlie_AnalyseCalls.mp4?fit=max&auto=format&n=yTwqc2QbhCfx6_2_&q=85&s=d2a8d5630e5e6e7cd04b280d54c21f0f" type="video/mp4" data-path="onboarding-media/Cookbooks/Charlie/CB_Charlie_AnalyseCalls.mp4" />
    </video>
  </Tab>
</Tabs>

## Global Auto Dialer defaults

Ask Charlie in the telli app to change the default strategy, dialing window, no-call dates, or timezone for your account. Charlie reads the current settings and presents only the changed sections with Current and Proposed values.

Opening **Review changes** loads the current settings and compares them with the proposal. Nothing is saved until you select **Apply changes**. Select **Keep current settings** to keep your settings. Apply updates only the proposed fields and preserves omitted fields. Lists, including retry intervals and no-call dates, are replaced as a unit; switching calling strategy replaces that strategy's configuration. If another edit changes the same field after review opens, the last save wins. The server still checks feature access, Auto Dialer enablement, and the validity of the merged settings. Completed cards show the proposed values. A removed retry limit appears as **No limit**.

Global defaults affect agents that inherit account settings. They are separate from agent drafts and cannot be changed through Slack or MCP.

## How to talk to Charlie

Charlie understands both specific instructions and general feedback. Use whichever fits the change you have in mind.

<Tabs>
  <Tab title="Specific instructions">
    Useful when you know exactly what you want changed.

    > "Shorten the greeting and add a goodbye line at the end."

    > "Replace the word 'reservation' with 'booking' everywhere in the prompt."

    > "Add a step asking the caller for their order number before transferring."
  </Tab>

  <Tab title="General feedback">
    Useful when you want Charlie to figure out the change for you.

    > "The agent isn't friendly enough. Make it ask more personal questions."

    > "This section feels too long. Tighten it up."

    > "Make the agent sound more confident when handling objections."
  </Tab>
</Tabs>

<Tip>
  If you're not happy with what Charlie did, reject the edits and try again with a clearer instruction. You can also roll back to a checkpoint to get back to a previous version.
</Tip>

## When to use Charlie vs edit directly

Charlie isn't a replacement for editing the prompt by hand. Some changes are faster to do yourself.

| Use Charlie when...                                        | Edit directly when...                 |
| :--------------------------------------------------------- | :------------------------------------ |
| You're restructuring or rewording a section                | You know the exact words you want     |
| You want a general improvement applied across the prompt   | You're making a small surgical tweak  |
| You're working from a transcript or example document       | You're changing a single line or word |
| You want help finding the right variable or tool reference | You're confident with the syntax      |

## Best practices

* **Bring real call transcripts into the chat** so Charlie can refine the agent based on conversations that actually happened, not just imagined cases.
* **Use checkpoints when experimenting.** It's faster to roll back than to manually undo a stack of changes.
* **Accept changes a few at a time** if you're not sure about all of them. Reject the rest and ask Charlie to try again with more guidance.
* **Start with Charlie on new prompts.** Have it draft a structure for you, then refine the details by hand.

## Good to know

* Charlie's edits appear as inline diffs — accept or reject each one on its own, or apply them all at once. Checkpoints are created automatically, so you can roll back to any earlier state in one click.
* The chat accepts **file uploads** (a transcript, a script document, a sample message) and **voice input** for longer instructions.
* Charlie never publishes your agent. Changes stay as a draft until you click Publish.
* Charlie can also access and edit other agents if you ask it to. This is great for applying changes to multiple agents at once
* The chat remembers what you said earlier in the same session, so you can keep iterating without re-explaining context.


## Related topics

- [Charlie](/platform/charlie.md)
- [Agent Editor Charlie](/en/get-started/agent-editor-charlie.md)
- [Slack](/integrations/slack.md)
