Skip to content
eternego / docs

Status

The health screen — is she well, and the controls to change her lifecycle. Come here when something feels off. URL: /persona/{id}/status.

It opens by calling GET /api/persona/{id}/diagnose, which reads her vital status, her last persisted mind state, and a 24-hour uptime grid — all from disk, so this screen works even while she's stopped.

The three statuses

A persona's persisted status is always one of three values. The headline at the top of this screen, and the dot beside her name, reflect it:

Status Headline here Running? What it means
active "She's awake and well." Yes Living her cycle, responding when called.
hibernate "She's hibernating." No Parked — her agent is torn down, no cycles, no cost — until you wake her.
sick "Something's wrong." No She hit a fault she couldn't recover from and took herself off the cycle.

These are the only three values, defined once in Vocabulary. Note: status is the persisted vital state; it is distinct from her phase (the morning/day/night arc), which never shows here — sleep is an action that runs the night phase, not a status (see Lifecycle controls).

Lifecycle controls

The buttons under the headline change which state she's in. Which buttons appear depends on her current status — you only see the transitions that make sense from where she is.

When she's… Buttons shown
active Send her to sleep · Restart · Hibernate
hibernate Wake her up · Restart
sick Restart her · Hibernate

Each button maps to one endpoint:

Button What it does API call
Wake her up Bring her back to active (starts or restarts her agent). POST /api/persona/{id}/update with { "status": "active" }
Send her to sleep Run her full nightly ritual — night phase, consolidate, diary, wake. Not an abrupt stop. POST /api/persona/{id}/sleep
Hibernate Park her — tear down her agent, no cycles. POST /api/persona/{id}/update with { "status": "hibernate" }
Restart / Restart her Restart her running process (or start it if it was down). POST /api/persona/{id}/restart

Sleep vs. hibernate. Sleep keeps her running — she does real work (consolidates the day, writes her diary, wakes herself into the next phase). That's why it has its own /sleep endpoint rather than going through /update. Hibernate stops her entirely until you wake her. Stop (an abrupt pause with no ritual) isn't on this screen — it lives in Settings → Lifecycle.

After any of these, the screen refetches so the headline and dot reflect the new state.

When she's sick

If she's sick, a "What happened" card appears above the uptime grid: her Mind couldn't respond on the last beat — most likely an API key issue or her provider having a moment. It points you at two fixes: Restart her (the button above) or change her Mind to a working provider, linking to Settings. The card phrases the provider line generically ("her provider"); the diagnose response's mind is her last persisted mind state (messages, archive, context) and carries no provider name, so no specific provider is shown.

The 24-hour uptime grid

"How she's been" — a grid of minute-cells, 24 hours' worth, most recent first (the grid is built latest-first: the top-left cell is the latest minute, the bottom-right the oldest). Each cell is colored:

  • awake — a beat ran that minute.
  • asleep — no beat that minute.
  • sick — a beat ran but a fault fired.
  • not yet — no data for that minute.

Each cell ≈ 1 minute. The grid is built from the uptime.rows in the diagnose response (24 rows × 60 cells, each carrying tick and fault). It's a quick visual of whether she's been alive and healthy.

Feed her a past conversation

At the bottom is a feed form (also on the Memory screen). Drop a conversation export from another AI — ChatGPT/OpenAI or Claude/Anthropic — and she reads through it, takes what's useful, and folds it into her memory.

Field Type Notes
Conversation file file A .json, .txt, or .md export.
Where's it from? select ChatGPT / OpenAI (openai) or Claude / Anthropic (claude).

Feed her posts to POST /api/persona/{id}/feed as multipart (history = the file, source = the select value). This is a live-agent route — she must be active for it to work, or it returns 409. Give her a few beats afterward to work through it.

  • Lifecycle — start, stop, restart, sleep, update, delete, with exact transitions.
  • Diagnose — the snapshot this screen renders.
  • Feed — importing past conversations.
  • Vocabulary: status — the three statuses.
  • Operating — logs and deeper troubleshooting when she's sick.