Tasuku
Operations

Environment variables

Required Tasuku process settings, defaults, ports, and security-sensitive values.

The server and worker read the same runtime configuration unless noted.

VariableRequiredDefaultPurpose
DATABASE_URLYesPostgres connection used by server, worker, and migrations.
TASUKU_MASTER_KEYYesBase64-encoded 32-byte key for GitHub App and user-managed secret encryption.
TASUKU_MASTER_KEY_VERSIONNo1Positive active key version recorded with new encrypted values.
TASUKU_PREVIOUS_MASTER_KEYSNo{}JSON object mapping older positive versions to base64-encoded 32-byte decrypt-only keys. Must not include the active version.
TASUKU_PUBLIC_URLYesPublic origin used for webhook, setup, and OAuth callback URLs. Trailing slash is removed.
TASUKU_BOOTSTRAP_TOKENYesFirst-run organization and manifest authorization.
TASUKU_ENVNodevelopmentMust be development, test, or production.
TASUKU_LOG_LEVELNoinfoStructured log verbosity; use debug during investigation.
TASUKU_AUTO_SIGNUP_DOMAINSNoemptyExact comma-separated verified-email domains; empty disables new signup.
TASUKU_LISTEN_ADDRESSNo:8080Server bind address. The worker does not listen on it.
TASUKU_MAX_CONCURRENT_AGENTSNo1Worker-only global ceiling for running agent jobs across every replica sharing the database. Must be a positive integer.
TASUKU_WEB_ROOTNo/app/webVite build served by the Go server in production.
TASUKU_ARTIFACT_S3_ENDPOINTNoemptyS3-compatible origin reachable by the server and worker. Set the complete artifact group to enable HTML publication.
TASUKU_ARTIFACT_S3_PUBLIC_ENDPOINTNoemptyS3-compatible origin used in browser-facing signed URLs. Production requires HTTPS and a hostname different from TASUKU_PUBLIC_URL.
TASUKU_ARTIFACT_S3_REGIONNous-east-1Signing region for the artifact bucket.
TASUKU_ARTIFACT_S3_BUCKETNoemptyPrivate bucket for generated artifacts.
TASUKU_ARTIFACT_S3_PREFIXNoemptyOptional relative object-key prefix.
TASUKU_ARTIFACT_S3_FORCE_PATH_STYLENotrueUse path-style bucket URLs. Required by the bundled MinIO setup.
TASUKU_ARTIFACT_S3_ACCESS_KEY_IDNoemptyAccess key for the environment-default artifact destination.
TASUKU_ARTIFACT_S3_SECRET_ACCESS_KEYNoemptySecret key for the environment-default artifact destination.

Compose also accepts operator interpolation values:

VariableDefaultPurpose
POSTGRES_PASSWORDtasukuPassword used in the bundled Postgres service and composed DATABASE_URL.
TASUKU_PORT8080Host port mapped to the server container's port 8080.
DOCKER_GID0Group added to the worker for Docker socket access.
MINIO_ROOT_USERtasukuDevelopment-only MinIO root/access key.
MINIO_ROOT_PASSWORDtasuku-development-secretDevelopment-only MinIO root/secret key.

Generate secrets

openssl rand -base64 32  # TASUKU_MASTER_KEY
openssl rand -hex 32     # suitable random bootstrap token

Keep the bootstrap token out of browser-visible configuration and logs. GitHub App credentials are created by the manifest flow and stored in Postgres; there are no supported GITHUB_APP_* environment inputs.

On this page