Set up Retool Agents on Self-hosted deployments
Learn how to install Retool Agents on Self-hosted deployments.
Retool Agents is in public beta on Retool Cloud and Self-hosted Retool 3.234.0 and later.
You can deploy Retool Agents with edge version 3.234.0 or later. Find more details in the FAQ.
Requirements
To use Agents on Self-hosted deployments, your organization must:
- Be on a Team, Business, or Enterprise plan.
- Have its own AI model key(s).
- Meet all of the requirements outlined in the tutorial for your chosen deployment infrastructure.
Limitations
Retool does not currently support deploying agents on the following:
Installation
Agents is supported for the following self-hosted deployment options.
To enable Agents with the latest edge release, the AGENTS_ENABLED
environment variable must be set to true
.
- Docker Compose
- Kubernetes with Helm
Follow the instructions outlined in the tutorial corresponding to your deployment infrastructure:
To deploy a Self-hosted Retool instance that contains agents, use the Retool Helm chart 6.6.0 or later.
Configure the values.yaml
file as follows:
- Set the
image
tag to3.234.0-edge
for both the backend and code executor service.image:
repository: "tryretool/backend"
tag: "3.234.0-edge" - Enable agents:
env:
AGENTS_ENABLED: "true"
agents:
enabled: true
For further configuration, you can reference the full agents:
block as defined in retool-helm.
To deploy agents, create two additional containers: agent-worker
and agent-eval-worker
, with configuration and networking egress identical to the workflows-worker container. Set the SERVICE_TYPE
and WORKER_TEMPORAL_TASKQUEUE
environment variables to the values listed in the FAQ.
Post-installation
Once you’ve logged in, navigate to <your domain>/resources/retool_ai
and configure a model provider.
You must provide your own API key for OpenAI, Anthropic, Azure OpenAI, or Google to use Retool Agents. For more information, refer to the Retool AI providers and models page.
Frequently Asked Questions
This FAQ aims to provide answers to common questions about the edge release of Retool Agents. For deployment-agnostic questions, refer to the Agents FAQ.
I’ve hit a free usage limit. How do I continue to use agents?
Retool organizations receive up to $50 worth of agent run time per month. Because Self-hosted agents deployments of agents require you to use a self-managed LLM, which costs $5/hour, you receive 10 hours of free usage per month. Refer to Model pricing for more information.
If you've exceeded the cap, you'll see a warning message pop up when you attempt to send a message to an agent, and the agent will not be executed. Reach out to your account team for help getting unblocked.
What are the differences between the edge release and a standard deployment of self-hosted Retool?
The infrastructure of the agents edge deployment is very similar to a Retool deployment with workflows. There are a few container differences, including the addition of agent-worker
and agent-eval-worker
:
services:
# Temporal workers for Retool Agents
agent-worker:
build:
context: .
env_file: docker.env
environment:
- SERVICE_TYPE=WORKFLOW_TEMPORAL_WORKER
- WORKER_TEMPORAL_TASKQUEUE=agent
networks:
- backend
- code-executor
depends_on:
- postgres
restart: always
agent-eval-worker:
build:
context: .
env_file: docker.env
environment:
- SERVICE_TYPE=AGENT_EVAL_TEMPORAL_WORKER
- WORKER_TEMPORAL_TASKQUEUE=agent-eval
networks:
- backend
- code-executor
depends_on:
- postgres
restart: always
It is important to note that the use of a Retool-managed agents observability API is required in the edge release. This API strictly does not receive, persist, or have access to sensitive customer data, agent inputs, or agent outputs. This API is required to power the Monitor dashboard.
How do I set up evals?
Evals work in self-hosted deployments without any special configuration. To optimize performance, you can configure Amazon Simple Storage Service (Amazon S3) to store test case inputs and outputs (which can be large) instead of Postgres. To use Amazon S3, first configure Amazon S3 as a resource, and then set the following environment variables:
# Replace the following example values with your S3 values.
AGENT_EVALS_S3_BUCKET='retool-agent-evals'
AGENT_EVALS_S3_ACCESS_KEY_ID='AKIAIOSFODNN7EXAMPLE'
AGENT_EVALS_S3_SECRET_ACCESS_KEY='wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY'
AGENT_EVALS_S3_REGION='us-west-2'
What data is sent to the Retool-managed agents observability API?
The data sent to the Retool-managed (cloud-hosted) agents observability API consists of the following:
- UUIDs corresponding to objects in the Retool deployment’s Postgres database.
- Success/failure status of agent runs.
- Model type of agent runs.
- Runtime of agent runs.
- Number of LLM tokens used by agent runs.
- Information about the tools used during agent runs. Tool information is limited to UUIDs and the configured tool name and tool parameter names.
No customer data beyond the names of configured tools and tool parameters are sent to this API.
If you have any feedback or concerns about this data, please reach out to your account team.
Does the edge release send any agent inputs and outputs to Retool servers?
No agent inputs or outputs are sent back to Retool servers.
When will agents be included in a stable release?
Agents is in public beta with the 3.234.0 edge release and will be available in the Q3 stable release for Self-hosted organizations.