Setup
Choose superglue Cloud for the fastest setup, or run the open-source version in your own environment.
Hosted version (recommended)
Section titled “Hosted version (recommended)”Get started in under 5 minutes with no infrastructure setup.
-
Sign up at app.superglue.cloud
Or book a demo to talk to our team first.
-
Connect a system
Click one of the system icons (Slack, Stripe, GitHub, etc.) or describe the system you want to connect in the agent chat:
The agent will guide you through authentication and configuration.
-
Build and test a tool
Describe what you need — the agent will set up your tool, test it, and let you review before saving.
-
Execute or schedule
Save the tool, run it on demand, schedule it, or trigger it through a webhook.
Open-source version (self-hosted)
Section titled “Open-source version (self-hosted)”Prerequisites: Docker, a PostgreSQL database, S3-compatible object storage (AWS S3 or MinIO), and an LLM API key.
-
Create .env file
For full environment setup, see Production setup below or the .env.example.
Object storage is a required dependency. Configure either AWS S3 or MinIO before starting superglue. The container command below starts only superglue, so PostgreSQL and object storage must already be running and reachable from the container.
-
Run
Run the following command:
Terminal window docker run -d \--name superglue \--env-file .env \-p 3001:3001 \-p 3002:3002 \superglueai/superglue:latest -
Access dashboard and API
- Web app: http://localhost:3001
- REST API: http://localhost:3002
Local development
Section titled “Local development”git clone https://github.com/superglue-ai/superglue.gitcd supergluecp .env.example .envEdit .env with your configuration, then:
# Optional: start the bundled PostgreSQL and MinIO services.docker compose --profile infra up -d postgres minio minio-init
npm installnpm run devWhen using the bundled infrastructure, set POSTGRES_HOST=localhost, S3_PROVIDER=minio, S3_ENDPOINT=http://localhost:9000, and S3_PUBLIC_ENDPOINT=http://localhost:9000 in .env.
Production setup
Section titled “Production setup”For production deployments:
# ===================# REQUIRED# ===================
# DeploymentDEPLOYMENT_MODE=enterprise
# Public endpointsAPI_PORT=3002WEB_PORT=3001PUBLIC_API_URL=https://your-domain.com:3002PUBLIC_APP_URL=https://your-domain.com:3001
# Authentication and encryption# Generate separate values with: openssl rand -hex 32JWT_AUTH_SECRET=replace-with-random-secretINTERNAL_API_TOKEN=replace-with-different-random-secretMASTER_ENCRYPTION_KEY=replace-with-random-encryption-secretAUTH_PROVIDERS=email_passwordAUTH_DISABLE_SIGNUP=falseAUTH_DISABLE_INVITES=false# Set false only when superglue must connect to private or on-prem systems.BLOCK_LOCAL_REQUESTS=true
# PostgreSQLPOSTGRES_HOST=your-postgres-hostPOSTGRES_PORT=5432POSTGRES_USERNAME=supergluePOSTGRES_PASSWORD=secure-passwordPOSTGRES_DB=supergluePOSTGRES_SSL=true
# Object storage# This example uses AWS S3. See Object Storage below for MinIO.S3_PROVIDER=awsAWS_S3_REGION=us-east-1AWS_BUCKET_NAME=your-bucket-nameAWS_BUCKET_PREFIX=raw# Optional: omit these to use the AWS SDK default credential chain.# AWS_S3_ACCESS_KEY_ID=your-access-key# AWS_S3_SECRET_ACCESS_KEY=your-secret-key
# LLM providerPRIMARY_LLM_PROVIDER=geminiPRIMARY_LLM_MODEL=gemini-2.5-flashSUMMARIZE_LLM_PROVIDER=geminiSUMMARIZE_LLM_MODEL=gemini-2.5-flashGEMINI_API_KEY=your-gemini-key
# Runtime behaviorSTART_SCHEDULER_SERVER=trueWEB_SEARCH_PROVIDER=disabled
# ===================# OPTIONAL# ===================
# Set these when containers use private service URLs that differ from public URLs.# INTERNAL_API_URL=http://superglue:3002# INTERNAL_APP_URL=http://superglue:3001
# Tavily web search# WEB_SEARCH_PROVIDER=tavily# WEB_SEARCH_API_KEY=your-tavily-keySet START_SCHEDULER_SERVER=true on application instances that should claim scheduled work. Set POSTGRES_SSL=false only for a local or otherwise unsecured PostgreSQL server. BLOCK_LOCAL_REQUESTS=true prevents tool execution from reaching private and link-local networks.
Object storage
Section titled “Object storage”Object storage is required. superglue validates this configuration during startup and has no storage-disabled mode. It stores system documentation, uploads, processed files, and run artifacts in either AWS S3 or MinIO. Choose exactly one provider. Create the bucket before starting superglue and ensure the configured identity can list, read, write, and delete objects in it.
Add to your .env:
S3_PROVIDER=awsAWS_S3_REGION=us-east-1AWS_BUCKET_NAME=your-bucket-nameAWS_BUCKET_PREFIX=raw
# Optional: omit these to use an instance role, task role, web identity,# or another source in the AWS SDK default credential chain.AWS_S3_ACCESS_KEY_ID=your-access-keyAWS_S3_SECRET_ACCESS_KEY=your-secret-key# AWS_S3_SESSION_TOKEN=your-session-tokenThe S3 bucket must already exist. Uploaded files are stored in it and automatically parsed after upload.
MinIO is an S3-compatible object store you can run alongside superglue.
Add to your .env:
S3_PROVIDER=minioS3_ENDPOINT=http://minio:9000S3_PUBLIC_ENDPOINT=http://localhost:9000MINIO_ROOT_USER=minioadminMINIO_ROOT_PASSWORD=change-me-in-productionMINIO_BUCKET_NAME=superglue-filesMINIO_BUCKET_PREFIX=rawS3_ENDPOINT must be reachable by the superglue server. When users’ browsers need a different URL, set S3_PUBLIC_ENDPOINT to that browser-reachable URL so presigned file URLs are rewritten correctly. For example, a Docker Compose deployment can use http://minio:9000 internally while browsers use https://files.your-domain.com.
The MinIO bucket must already exist. The repository’s minio-init Docker Compose service creates it automatically when you start the infra or all profile.