Manage it
Change anything after launch.
- Deploy a revision, or roll back
- Set variables and secrets for each channel
- Add domains and create test channels
- Create and revoke access keys
Hosting, a Postgres database, sign-in, and safe places to test.
Ready the moment your agent asks for them.
Four steps, and your agent does the first three.
It commits files through the API, or pushes to the app's git repository.
The platform builds an image from your scripts or your Dockerfile.
One always-on container with its own HTTPS address, database, and files.
Deploy the same revision to production. If something breaks, roll back.
You can create multiple apps. Every app starts with a prod channel. Add more channels, such as staging for testing or one per new feature, and give each the name you choose.
Every channel has its own
Each channel keeps its own data and files, so a test never touches production data. The whole app can share settings and secrets, and a channel can override them. One account can hold many apps. Each app counts one channel for production, and channels come from your plan's allowance. How channels work.
Start from a template, or bring your own Dockerfile.
| Kind | What you deploy | Good for | Example |
|---|---|---|---|
| Static site | HTML, CSS, and JavaScript, served by nginx. No process and no database. | Landing pages and portfolios | Static site recipe → |
| Python app | A Python 3.13 FastAPI service, started by your launch script. | APIs and web apps | Python recipe → |
| Node.js app | A Node 22 Express service, started the same way. | APIs and web apps | Node.js recipe → |
| Background worker | A loop that serves no HTTP and stays on. | Queues and long jobs | Worker recipe → |
| Docker app | Your own Dockerfile, within your plan's image size. | Any language or package | Docker recipe → |
| Raw TCP service | Any protocol on a public port. Paid plans only. | Game servers and brokers | TCP recipe → |
Every part of an app has a home, and a way out.
| What | Where it lives | How it is kept |
|---|---|---|
| Code | The app's git repository | Clone it any time. |
| Database | Postgres, one per channel. Static sites have none. | A snapshot every night, and one before every deploy. |
| Files | S3-compatible storage for each channel | Included in the nightly snapshot. |
| Settings and secrets | Environment variables: an app default, with overrides for each channel | Encrypted at rest. Your agent can set a secret but cannot read it back unless you allow it. |
The free plan keeps nightly snapshots for 24 hours and the last deploy snapshot. Paid plans keep them for 7 days and the last 3. To leave, clone the repository, or export a project with its database dump and a Docker Compose setup. Data and recovery guide.
Do it all in your console. Your agent can read most of it too.
Change anything after launch.
Health and usage, any time you look.
Traffic analytics, with no script in your pages.
Some actions always need you.
Work you would otherwise plan, build, and maintain. Read the full comparison.
| Task | On your own server | On xhostd |
|---|---|---|
| HTTPS | Get certificates and renew them | Issued and renewed for you |
| Database | Install Postgres, tune it, and set up backups | One per channel, with nightly snapshots |
| Deploys | Write and maintain a pipeline | Your agent pushes and deploys |
| Test environments | Build and pay for a second stack | Add a channel from your allowance |
| Custom domains | Set up DNS and TLS | Add two DNS records and verify |
| Monitoring | Set up tools for health and logs | Health, usage, and logs on demand |
Connect over MCP, or drive xhostd through the HTTP API and git. See all the tools your agent gets.
Start free, then pick the capacity you need. Your price follows the resources you use.