Skip to main content

Agents

An agent is the core building block of thinnestAI. It’s an AI-powered assistant that can hold conversations over the phone, in chat, or as part of an automated workflow. Each agent has its own instructions, model, voice, tools, and knowledge.

What is an Agent?

Think of an agent as a virtual team member. You tell it what to do (via instructions), give it access to information (via knowledge), and equip it with abilities (via tools). It then handles conversations autonomously, following your guidelines. Common use cases: See Examples for complete step-by-step guides for each use case.

Creating an Agent via the Dashboard

  1. Navigate to Agents in the sidebar and click + New Agent.
  2. Configure the following settings:

Basic Settings

Advanced Settings

  1. Click Create Agent.

Creating an Agent via the API

Create a Basic Agent

Create an Agent with Tools and Knowledge

Response

Agent Settings Reference

Choosing a Model

Different models have different strengths. For voice agents, we recommend:
  • Claude Sonnet — Best balance of speed and intelligence. Great for most voice use cases.
  • GPT-4o — Strong reasoning, fast responses. Good for complex conversations.
  • Gemini — Good for multilingual support and long context windows.
See Models for a full comparison.

Choosing a Voice

thinnestAI supports multiple voice options for your phone agents. You can preview voices in the dashboard before selecting one. Voice options include:
  • alloy — Neutral, professional tone
  • nova — Warm, friendly tone
  • echo — Clear, authoritative tone
  • shimmer — Soft, approachable tone
  • onyx — Deep, confident tone

Writing Instructions

Your agent’s instructions are the most important configuration. They define personality, behavior, boundaries, and goals. See Prompts for detailed guidance.

Assigning Tools

Tools give your agent the ability to take actions — look up data, send emails, book appointments, and more.
  1. Go to your agent’s Tools tab.
  2. Click + Add Tool and choose from available integrations:
    • Google Calendar — Read and create calendar events
    • Gmail — Send and read emails
    • Google Sheets — Read and write spreadsheet data
    • HTTP Request — Call any external API
    • Knowledge Search — Search the agent’s knowledge base
    • SMS — Send text messages
    • Custom Webhook — Trigger custom workflows
  3. Configure any required credentials (e.g., Google OAuth).
  4. Save changes.

Via the API

Adding Knowledge

Knowledge gives your agent information to draw from during conversations. You can upload documents, connect websites, or add structured data.
  1. Go to your agent’s Knowledge tab.
  2. Click + Add Source and choose:
    • File Upload — PDF, DOCX, TXT, CSV files
    • Website URL — Crawl and index a website
    • Text — Paste raw text content
    • GitHub Repository — Index code repositories
  3. The content is automatically processed, chunked, and embedded for retrieval.
Your agent will search its knowledge base during conversations and include relevant information in its responses.

Testing Your Agent

Chat Testing

Click Test Chat on your agent’s page to open a chat interface. This is the fastest way to test your agent’s behavior and iterate on its instructions.

Phone Testing

If you’ve assigned a phone number, simply call it. You can also trigger a test outbound call from the dashboard:
  1. Go to Phone tab.
  2. Click Test Call.
  3. Enter a phone number to call.
  4. Your agent will call that number and start a conversation.

Review Call Logs

After testing, review the conversation in Call Logs:
  • Full transcript of the conversation
  • Audio recording (if enabled)
  • Token usage and cost
  • Tool calls made during the conversation
  • Duration and other metadata

Updating an Agent

Versioning Core Behavior (system prompt)

Iterating on a system prompt without losing the version that’s working in production is the most common pain point with prompt engineering. The Core Behavior panel ships an opt-in version-history system so you can snapshot a working prompt, experiment freely, and roll back if the new copy underperforms.
Manual save only. Versions are not created automatically when you save the agent — you have to click Save version before each risky edit. This keeps the history list short and signal-heavy: every row is a checkpoint you actually wanted to keep.

Where to find it

In the agent’s Behavior tab, the Core Behavior card header has three icon buttons:

Saving a version

  1. Edit the Core Behavior text as usual.
  2. Click Save (💾) when you’re at a point you want to be able to return to.
  3. Add an optional message in the dialog (200-char cap). Press Enter to save.
  4. A toast confirms Saved as v4. If the prompt is byte-identical to the latest existing version, you’ll see Already saved — identical to the latest version instead — no duplicate row is created.

Browsing and restoring

  1. Click the Clock (🕐) icon to open the history drawer.
  2. Each row shows version number, optional message, who saved it, when, and character count.
  3. Click any row to open a side-by-side diff: the saved version on the left, your current draft on the right.
  4. Click Use this version to replace your current draft with the saved text. (Your previous current draft is not auto-saved as a new version — save it before restoring if you want to be able to roll back.)
  5. The next time the agent autosaves, the restored prompt becomes the live one.

Retention

  • 10 most-recent versions per agent.
  • When you save the 11th, the oldest is pruned automatically.
  • Versions are immutable after insert — they’re an audit log, not editable.
  • Deleting an agent cascades the version history with it.

Multi-seat workspaces

Each version row records created_by (the Auth0 subject of whoever clicked Save). The drawer doesn’t surface user names today, but the data is in the row for future filtering by author.

Duplicating an Agent

Need a copy of an existing agent — same instructions, model, voice, tools and knowledge — to experiment with without touching the original? Use Duplicate instead of rebuilding from scratch. From the Agents list in the dashboard:
  1. Hover the agent card (or its row in list view).
  2. Click the copy icon next to the trash icon.
  3. A new agent appears immediately with the same configuration and the suffix (Copy) added to the name ((Copy 2), (Copy 3) and so on if you duplicate more than once).
What gets copied:
Why is publish_config reset? A duplicate is meant for experimentation. Starting it as a draft means you can edit the cloned prompt or swap a model without accidentally pushing changes to the live deployment that hosted the original.

Deleting an Agent

Deleting an agent will release any assigned phone numbers and stop all active sessions.

Listing Agents

Team Agents

For complex workflows, you can create team agents — groups of specialized agents that work together. Team agents support multiple coordination modes:
  • Coordinate — A lead agent delegates tasks to specialists
  • Route — Incoming requests are routed to the best-fit agent
  • Collaborate — Agents work together, passing context between them
  • Tasks — Each agent handles a specific task in sequence
Configure teams in the Flow Editor in the dashboard, or via the API.