Agent Builder is available on LangSmith Self-Hosted v0.13 and later. Self-hosted is an add-on to the Enterprise plan. For more details, refer to Pricing. Contact our sales team if you want to get a license key to trial LangSmith in your environment.
Components
Agent Builder consists of the following components:agentBootstrap: Job that deploys the LangSmith Deployment (agent) needed for Agent Builder.agentBuildertoolServer: Provides MCP tool execution for agents.triggerServer: Handles webhooks and scheduled triggers.agent: The main agent that will handle agent generation and where all the assistants will be created.
Enable Agent Builder
To enable Agent Builder, add the following to yourvalues.yaml:
Generate an encryption key
Agent Builder requires a Fernet encryption key to securely store secrets. Generate one using Python:You can store the encryption key in a predefined Kubernetes secret using the
agent_builder_encryption_key parameter. See Use an existing secret for details.Enable OAuth tools and triggers (optional)
To enable OAuth-based tools (like Gmail, Slack, GitHub), configure theoauthProviderOrgId and add provider IDs for each integration you want to enable. You can enable any combination of providers.
Available providers
General configuration
Add the following to yourvalues.yaml. Include only the providers you need.
Provider setup guides
GitHub OAuth provider
GitHub OAuth provider
To enable GitHub OAuth for Agent Builder, you need to create a GitHub OAuth app and configure it with the required permissions.
Create a GitHub OAuth app
Go to GitHub Settings > Developer settings > OAuth Apps and click New OAuth App.
Configure the app
Fill in the application details. You can name it whatever you like and leave the default checkbox settings.
Add callback URL
Set the callback URL, replacing
<hostname> with your LangSmith hostname and <provider-id> with your provider ID:Generate client secret
Click Generate a new client secret and copy both the Client ID (shown at the top of the app page) and the Client Secret.
Configure OAuth provider in LangSmith
In LangSmith, go to Settings > OAuth Providers and add a new provider:
- Client ID: from GitHub app
- Client Secret: from GitHub app
- Authorization URL:
https://github.com/login/oauth/authorize - Token URL:
https://github.com/login/oauth/access_token - Provider ID: Unique string, for example:
github
Install the app on repositories
After creating the app, you need to:
- Authenticate the app to your GitHub account.
- Go to Settings > Applications > Installed GitHub Apps and install the app on the repositories you want it to access.
For private repositories, you must explicitly install the app on each repository you want Agent Builder to access.
Google OAuth provider
Google OAuth provider
To enable Google OAuth for Agent Builder, you need to create an OAuth client in GCP and configure it with the required URLs and credentials.
Create OAuth client in GCP
Create a new OAuth client app (Web application) in Google Cloud Console.
Add URLs to GCP
Add the following URLs to your OAuth client, replacing
<hostname> with your LangSmith hostname and <provider-id> with the provider ID you’ll use (e.g., google):Authorized JavaScript origins:https://<hostname>
https://<hostname>/api-host/v2/auth/callback/<provider-id>https://<hostname>/host-oauth-callback/<provider-id>
Configure OAuth provider in LangSmith
In LangSmith, go to Settings > OAuth Providers and add a new provider:
- Client ID: Find in GCP
- Client Secret: Find in GCP
- Authorization URL:
https://accounts.google.com/o/oauth2/auth - Token URL:
https://oauth2.googleapis.com/token - Provider ID: Unique string, for example:
google
Linear OAuth provider
Linear OAuth provider
To enable Linear OAuth for Agent Builder, you need to create a Linear OAuth app and configure it with the required credentials.
Create a Linear OAuth app
Go to Linear Settings > API > Applications and create a new OAuth application.
Add callback URL
Set the callback URL, replacing
<hostname> with your LangSmith hostname and <provider-id> with your provider ID:Configure OAuth provider in LangSmith
In LangSmith, go to Settings > OAuth Providers and add a new provider:
- Client ID: from Linear app
- Client Secret: from Linear app
- Authorization URL:
https://linear.app/oauth/authorize - Token URL:
https://api.linear.app/oauth/token - Provider ID: Unique string, for example:
linear
LinkedIn OAuth provider
LinkedIn OAuth provider
To enable LinkedIn OAuth for Agent Builder, you need to create a LinkedIn OAuth app and configure it with the required credentials.
Create a LinkedIn OAuth app
Go to linkedin.com/developers/apps and create a new app.
Add redirect URI
Add the following redirect URI, replacing
<hostname> with your LangSmith hostname and <provider-id> with your provider ID:Configure OAuth provider in LangSmith
In LangSmith, go to Settings > OAuth Providers and add a new provider:
- Client ID: from LinkedIn app
- Client Secret: from LinkedIn app
- Authorization URL:
https://www.linkedin.com/oauth/v2/authorization - Token URL:
https://www.linkedin.com/oauth/v2/accessToken - Provider ID: Unique string, for example:
linkedin
Slack OAuth provider
Slack OAuth provider
To enable Slack OAuth for Agent Builder, you need to create a Slack app and configure it with the required scopes, credentials, and event subscriptions.
Create a Slack app
Go to api.slack.com/apps and click Create New App.
Add scopes
In OAuth & Permissions, add the following scopes:
channels:historychannels:readchat:writegroups:historygroups:readim:historyim:readim:writempim:historyteam:readusers:readusers:read.email
Copy credentials from Slack
Copy the Client ID, Client Secret, and Signing Secret from the Slack app settings.
Configure OAuth provider in LangSmith
In LangSmith, go to Settings > OAuth Providers and add a new provider:
- Client ID: Find in Slack app
- Client Secret: Find in Slack app
- Authorization URL:
https://slack.com/oauth/v2/authorize - Token URL:
https://slack.com/api/oauth.v2.access - Provider ID: Unique string, for example:
slack
Add redirect URI to Slack
Add the following redirect URI to your Slack app under OAuth & Permissions > Redirect URLs, replacing
<hostname> with your LangSmith hostname and <provider-id> with your provider ID (e.g., slack):Get the bot ID
- Get the bot token from OAuth & Permissions in your Slack app.
- Run the following command:
- Copy the
bot_idfrom the response.
Enable event subscriptions
- After deployment, go to Event Subscriptions in your Slack app and enable events.
-
Set the Request URL to:
-
Add the following bot events:
message.channelsmessage.groupsmessage.immessage.mpim