ZEROLOG_ self-hosted AI workspace · CH
Sign in Create account

SELF-HOSTED · SWITZERLAND · NO TRACKING

Give the AI a real machine.
Watch it build.

92 AI models and a real Linux server, in one account. The AI installs software, writes code, runs services and puts them online for you — with root, in your own container, on Swiss hardware. You approve each command and see what it costs as it happens.

illustration — what a session looks like
Install vitest and get the tests running.

APPROVAL REQUIRED

$ npm install --save-dev vitest
streaming — vitest is running in the container
IN 2 481 → OUT 312 CHF 0.0061

That is the product: the command before it runs, the price as it is made.

01

Every model, one account

Claude, GPT, Gemini, DeepSeek, Kimi and 87 more — one login, one balance, no separate contracts to sign. Switch model mid-conversation and keep the thread. Tokens are billed at the provider's own price with no markup; topping up adds a 10% service fee and a 3% currency buffer, and every answer shows its cost to the centime while it streams.

02

A server the AI can actually use

Root in a real Ubuntu, Debian or Alpine container — apt install, compile, run a database, start a web server. Publish it on *.zerolog.ch in one click, or point your own domain at it. Files, ports and terminal are yours to open at any time.

03

Set a goal. Come back later.

Type /goal and the agent keeps working for hours — installing, testing, fixing, retrying — while you do something else. Up to 12 hours a run on Pro, unlimited on Max. Every step is logged, every command waits for approval, and the terminal is yours to take over the second you want it.

What you actually get

Approve before it runs

Every shell command the AI wants to run appears first, in full. Allow it, edit it, or refuse. Nothing touches your container without you saying so — and you can put trusted commands on an allow-list once you are tired of clicking.

Cost, live and per answer

Input tokens, output tokens and the price appear while the reply streams. Set a hard spending cap per chat or per account; when it is reached, work stops instead of quietly continuing.

Your files, both ways

Upload into the container, browse what the AI wrote, download the result. A file tree and an editor, not a chat window pretending to be a filesystem.

A terminal you can grab

Open a shell into the same container the AI is working in, mid-task. Fix the one thing yourself and hand it back — the conversation keeps the context.

Public ports and your own domain

Expose a port and get an HTTPS URL on *.zerolog.ch immediately. On Pro and above, point your own domain at it.

Scheduled work

Give an agent a job on a schedule — a nightly build, a daily scrape, a weekly report. It runs while you sleep and the log is there in the morning.

Chats only you can read

Anonymous chats are encrypted in your browser: the server stores ciphertext it cannot open. The prompt still reaches the model to be answered — encryption protects what is stored here.

Bring your own key

Have a provider account already? Use your own key and pay them directly. Keys are encrypted at rest and never shown to the browser again.

Try the approval loop

Pick a task. The AI proposes a command, you allow or deny it, and the cost counts up as the answer streams. This is a scripted walkthrough of the real interface — no account needed.

mh-box-11 · ubuntu 24.04 CHF 0.0000
Scripted walkthrough — nothing is executed.

Nothing happens that you were not shown

Ask

Pick any model. The chat carries your container, your files and your credentials.

Approve

Before a command runs you see it, and you can allow it, edit it, or refuse.

Account

Tokens, cached tokens and the price land in the ledger while the answer is still streaming.

Why not AWS or Azure?

You can build this on a hyperscaler. It takes an afternoon of IAM roles, VPCs and security groups, a separate contract with each model provider, and a bill that only tells you the truth at the end of the month.

Running in a minute, not an afternoon

Sign up, type a sentence, and the AI is working in a container. No roles, no policies, no networking to design first.

A bill that cannot surprise you

Credit is prepaid and spend limits are hard. When it is gone, work stops — it does not keep running and invoice you in four weeks.

The price is on the screen

Each answer shows its own cost while it streams. Not a line item in a console you have to go looking for.

4 vCPU and 12 GB for CHF 13.50

A comparable on-demand instance at a hyperscaler costs several times that before you have added a single model call.

The AI and the machine are the same product

Elsewhere the model service and the compute are two products you wire together. Here the model already has root on your box.

Swiss hardware, Swiss law

Hosted on our own machines in Switzerland. No tracking, and your chats are never used to train anything.

92models, one balance
12hours an agent runs unattended
4vCPU from CHF 13.50
0markup on tokens
60seconds to your first container

ONE ACCOUNT, EVERY MODEL

Switch between them mid-conversation. The thread comes with you.

What people build with it

/goal port this Express app to Fastify

The agent reads the routes, rewrites them, runs the test suite, fixes what it broke, and leaves a diff to review in the morning.

/goal scrape this data daily and mail me a summary

A scheduled task, a small database in the container, and a public URL for the dashboard. No servers to rent, no cron on your laptop.

Set up Postgres and seed it from this CSV

Root in a real container means the AI installs the database instead of explaining how you could install the database.

Put this Next.js build online on my domain

Publish a port, point your domain, TLS handled. From folder to live URL without touching a cloud console.

How to use it

The short version of the manual: what to type, where to click, and what happens next.

Chat and models

Start a chat and pick a model from the selector above the message box. You can change it mid-conversation and the thread comes with you, so you can start cheap, switch to a stronger model for the hard part, and switch back.

  • The picker shows each model price per million tokens and its context length, so the choice is informed rather than a guess.
  • Attach files or images to a message and the model sees them.
  • Long threads are compacted automatically, so you do not hit the context ceiling in the middle of a task.

Containers

Open Container, click Neu, choose a base image (Ubuntu 24.04, Debian 12 or Alpine) and a name. It boots in seconds and stays yours until you delete it, so files survive restarts.

  • Attach a container to a chat and the AI works in that container: same filesystem, same installed packages, every time.
  • You have root. apt install, build from source, run a database. It is a normal Linux box in a sandbox.
  • Your plan decides how many run at once and how big they are. Paused containers keep their disk without using a slot.

Command approval

When the AI wants to run something, the command appears in full and waits. Three choices: Erlauben runs it, Bearbeiten lets you change it first, Ablehnen refuses and tells the model why.

  • Deny sits away from Allow, so a destructive command is never one mis-tap from running.
  • Tired of approving ls and cat? Put safe commands on the allow-list and only the interesting ones stop.
  • Everything that ran is in the log with its exit code, so you can always see what actually happened.

Agents with /goal

Type /goal and what you want, in plain language: /goal migrate this project to TypeScript and get the tests green. The agent plans, works, checks its own result and keeps going until it is done or it hits something it cannot solve.

  • It keeps running when you close the tab. Come back to the log.
  • Every step is recorded, and the terminal is yours the moment you want to take over.
  • Run length follows your plan: up to 12 hours on Pro, unlimited on Max. Set a spending cap for the run if you want a hard ceiling.

Files and terminal

The Dateien tab is a real file tree of the container. Browse what the AI wrote, open it in the editor, upload your own, download the result.

  • The Terminal tab opens a shell in the same container, mid task, without stopping the agent.
  • Fix the one thing by hand and give it back. The conversation keeps its context and carries on.

Ports and domains

Start something listening in the container, then publish the port from the Ports panel. You get an HTTPS address on *.zerolog.ch straight away, with the certificate handled for you.

  • The hostname names its owner, so nobody can squat yours.
  • On Pro and above, point your own domain at it: add the domain, set the CNAME it shows you, done.
  • Anything you publish is public. Put your own authentication in front of whatever is not meant to be.

Scheduled tasks

In Aufgaben, give an agent a job and a time: a nightly build, a daily check, a weekly summary. It runs on its own and leaves a log.

  • Schedules use your timezone, not the server one.
  • Each run is capped, so a loop cannot quietly drain your credit.

Cost and limits

Every answer shows its own cost while it streams: input tokens, cached tokens, output tokens, price. The ledger under Verbrauch keeps the full history per chat and per model.

  • Credit is prepaid. Top up in CHF by card or TWINT. Nothing is ever charged automatically.
  • Set a hard limit per account or per agent run. At the limit work stops rather than continuing and billing you later.
  • Tokens cost what the provider charges, with no markup. Topping up adds a 10% service fee and a 3% currency buffer, shown in the quote before you pay.

Private chats

Switch a chat to anonym and it is encrypted in your browser before it is sent. The server keeps ciphertext it cannot open, plus the billing counters.

  • Lose the passphrase and the history is gone for good. No support request can recover it. That is the trade.
  • The prompt still reaches the model provider to be answered. Encryption protects what is stored here, not the fact that a model must read it.
  • You can make anonymous the default for every new chat.

Your own API key

Already paying a provider directly? Add your key under Einstellungen and that usage goes to your account there instead of your ZeroLog credit.

  • Keys are encrypted at rest and never sent back to the browser.
  • Cost is still shown per answer, so you keep the same visibility.

Image generation

Ask for an image in a normal message. The AI picks a suitable model or you name one: fast and cheap for drafts, the strong one for detail, and one that is good at text inside the image.

  • Upload an image and ask for a change, and it edits your picture instead of inventing a new one.
  • Generated images land in the gallery and can be set as your background.
  • Each image shows its price like any other request.

The Android app

Install the app, open Geräte on the website and tap Gerät koppeln. Scan the code with the app and it is signed in.

  • Your password is never typed on the phone: the code is exchanged for a device token.
  • Lost the phone? Revoke that one device from the website and every other session stays signed in.

The plan is hardware. Credit is separate.

A plan buys hardware: more cores, more memory, more containers running at once, longer agent runs and public ports with your own domain. Model usage comes out of prepaid credit at the provider's own token price. You upgrade when you want a bigger machine, not because a meter ran.

Prices in CHF. Nothing is charged automatically — credit is topped up when you choose to.