<!-- https://zerolog.ch/docs/concepts · Docs / Getting started -->
# How it fits together

Four things, and it helps to keep them apart.

## The four things

You use

Models

### Chat

The conversation. It belongs to you.

one model at a time, changeable

Hardware

### Container

A real Linux machine, independent of any chat. You can attach the same container to several chats.

its files persist

You pay

Models

### Credit

Prepaid money for model usage. Separate from the plan, though every paid plan adds some each month (see [Plans](https://zerolog.ch/docs/plans) and [Credit](https://zerolog.ch/docs/credit)).

paid per request

Hardware

### Plan

What hardware you may use.

- cores
- memory and disk
- how many containers run at once
- how long an agent may run
- how many public ports

## The important consequence

Plan Model usage

A plan does not pay for model usage. It only adds some credit each month.

Credit Hardware

Credit does not buy hardware.

They are two meters because they are two different costs.

## What survives closing the tab

*Keeps running*

- A chat, an agent or a [/goal](https://zerolog.ch/docs/goal) run once you have sent it
- A [terminal](https://zerolog.ch/docs/terminal) session you can reattach to later
- A [container](https://zerolog.ch/docs/containers)'s files, across restarts

*Needs your action*

- Stopping a run: the stop button or an explicit abort
- Nothing stops it just because the tab closed or the page reloaded

See [Isolation](https://zerolog.ch/docs/isolation) for what else does and does not change about a workspace.

## Chat, container, plan and credit

Mermaid source of the diagram on this page:

```mermaid
%% How chat, container, plan and credit relate. Facts from server/tiers.js (hardware per plan), server/plans.js (monthly credit grant, 3 month expiry), web kontext-leiste.tsx (Link a workspace).
flowchart LR
  plan["Plan<br/>sets the hardware"]
  chat["Chat<br/>one model at a time"]
  credit["Credit<br/>prepaid, for models"]
  box["Container<br/>a Linux machine,<br/>files persist"]
  req["Model request<br/>paid per request"]

  plan -->|"cores, memory, disk,<br/>run length, ports"| box
  chat -->|"attach; one container<br/>can serve several chats"| box
  chat -->|"each answer"| req
  credit -->|"pays"| req
  plan -->|"adds some credit<br/>each month"| credit

  linkStyle 3 stroke:#8f7ac9
```
