Data
A dedicated Postgres database (Neon-backed) for each project — not a shared table with other customers.
User
Managed authentication for your app’s own users, with no user cap.
Files
A storage bucket per project for uploads, exports and generated assets.
Web
A stable
*.workser.app address from the first publish, plus custom domains.Connected apps
Gmail, Slack, Google Sheets, Stripe and more — connected once, usable by every app in the project.
Keys & secrets
Environment variables managed for you, so nothing sensitive ends up in the code.
Data
Each project gets its own Postgres database. Your agent can create it, inspect it, and query it while building:The database belongs to the project, not to a single app. If a project has several apps, they share it — which is exactly what you want when your storefront and your admin tool are looking at the same orders.
workser db url returns a least-privilege connection string, and the running app gets it from its environment automatically. It should never be pasted into a chat or committed to a file.
User
workser.auth.
Files
Every project has a storage bucket (Cloudflare R2 behind Workser).invoices/2026/…) rather than dumped at the root.
For app uploads at runtime, the app uses workser.storage from the SDK — and for large files it should request a presigned upload URL so the bytes never travel through Workser.
storage vs. neon storage
storage vs. neon storage
These are two different stores, and a file in one is not visible in the other.
workser storage— the default bucket every project has. This is the normal answer.workser neon storage— S3-compatible object storage on the project’s own Neon branch, so it branches along with the database. It also offers Node.js HTTP functions (workser neon functions).
regionSupportsNeonBackend: false is final rather than something to retry. Run workser neon status before assuming it’s there; most apps never need it.Web & domains
Publishing gives you a stable*.workser.app address that does not change between deploys — safe to send to customers, print on a card, or point a domain at.
Connected apps
Authorize Gmail, Slack, Sheets or another available tool for the project. Your coding agents can use it while developing and maintaining software, and your finished apps can call its actions from their backend. Workser manages the connection; your app still owns its end-user permissions. See App connections.Keys & secrets
env set rather than pasting the key into a conversation.
Deleting an environment variable is an owner action.
env configures the cloud environment (production and preview). The .env files inside the app folder configure your computer — you edit those in Workser Code under Settings → “On this computer”, and saving there restarts the local dev server. They’re different environments; changing one doesn’t change the other.Automations that outlive a request
Some work shouldn’t happen while a customer is waiting — a nightly summary, a slow export, a multi-step follow-up.workser.workflows in the SDK.
Business records
Projects also carry Workser’s business hub — products, orders, customers, sales pipelines, pages, campaigns, support conversations and more. These are the same rows the Workser dashboard and your AI employees read and write.Capacity and cost
Your plan includes database storage, file storage and monthly egress. App user authentication has no user cap on the published paid plans. Database and file allowances are pooled across your organization’s projects. Published overage rates are 0.15/GB for files and $0.50/GB for egress, where the corresponding usage meter is enabled. Read Plans and cloud usage for the full comparison and account-specific billing caveats.Next
Preview & publish
How changes get from your agent to your customers, and how to undo one.
The SDK
How the deployed app reads all of this at runtime.

