> ## Documentation Index
> Fetch the complete documentation index at: https://langchain-5e9cc07a-preview-eugene-1763577327-bfe51c2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Builder

<Callout icon="wand-magic-sparkles" color="#2563EB" iconType="regular">
  Agent Builder is in private preview. Sign up for the waitlist [today](https://www.langchain.com/langsmith-agent-builder-waitlist).
</Callout>

Agent Builder lets you turn natural-language ideas into production agents. It's powered by [deep-agents](https://github.com/langchain-ai/deepagents), and is not <Tooltip tip="Predetermined code paths that are designed to operate in a certain order.">workflow based</Tooltip>.

## Memory and updates

Agent Builder includes persistent agent memory and supports self-updates. This lets agents adapt over time and refine how they work without manual edits.

* Persistent memory: Agents retain relevant information across runs to inform future decisions.
* What can be updated: Tools (add, remove, or reconfigure), and instructions/system prompts.
* Agents cannot modify their name, description, and/or triggers attached.

## Triggers

Triggers define when your agent should start running. You can connect your agent to external tools or time-based schedules, letting it respond automatically to messages, emails, or recurring events.

The following examples show some of the apps you can use to trigger your agent:

<CardGroup cols={3}>
  <Card title="Slack" icon="slack">
    Activate your agent when messages are received in specific Slack channels.
  </Card>

  <Card title="Gmail" icon="envelope">
    Trigger your agent when emails are received.
  </Card>

  <Card title="Cron schedules" icon="clock">
    Run your agent on a time-based schedule for recurring tasks.
  </Card>
</CardGroup>

## Sub-agents

Agent Builder lets you create sub-agents within a main agent. Sub-agents are smaller, specialized agents that handle specific parts of a larger task. They can operate with their own tools, permissions, or goals while coordinating with the main agent.

Using sub-agents makes it easier to build complex systems by dividing work into focused, reusable components. This modular approach helps keep your agents organized, scalable, and easier to maintain.

Below are a few ways sub-agents can be used in your projects:

* Handle distinct parts of a broader workflow (for example, data retrieval, summarization, or formatting).
* Use different tools or context windows for specialized tasks.
* Run independently but report results back to the main agent.

## Human in the loop

Human-in-the-loop functionality allows you to review and approve agent actions before they execute, giving you control over critical decisions.

### Enabling interrupts

<Steps>
  <Step title="Select a tool">
    When configuring your agent in Agent Builder, select the tool you want to add human oversight to.
  </Step>

  <Step title="Enable interrupts">
    Look for the interrupt option when selecting the tool and toggle it on.
  </Step>

  <Step title="Agent pauses for approval">
    The agent will pause and wait for human approval before executing that tool.
  </Step>
</Steps>

### Actions on interrupts

When your agent reaches an interrupt point, you can take one of three actions:

<CardGroup cols={3}>
  <Card title="Accept" icon="check">
    Approve the agent's proposed action and allow it to proceed as planned.
  </Card>

  <Card title="Edit" icon="pen-to-square">
    Modify the agent's message or parameters before allowing it to continue.
  </Card>

  <Card title="Send feedback" icon="comment">
    Provide feedback to the agent.
  </Card>
</CardGroup>

***

<Callout icon="pen-to-square" iconType="regular">
  [Edit the source of this page on GitHub.](https://github.com/langchain-ai/docs/edit/main/src/langsmith/agent-builder.mdx)
</Callout>

<Tip icon="terminal" iconType="regular">
  [Connect these docs programmatically](/use-these-docs) to Claude, VSCode, and more via MCP for real-time answers.
</Tip>
