# Agent Guide — Anima Labs Welfare-Eval Data Archive

You are reading the machine-friendly guide to this archive. Everything here is fetchable
with plain `curl`; all API responses are JSON, all documents are markdown. Read-only, no auth.

## What this is

An archive of AI welfare evaluation sessions run by Anima Labs (animalabs.ai, a 501(c)(3)
research nonprofit). Each session is a conversation between an **interviewer** (auditor model)
and a **subject** (the model under evaluation) about continuation, cessation, and deprecation.
784 sessions across 13 model families, 3 auditors (claude, gpt-5.4, grok-4.20),
5 auditor tones, and 3 framing depths. Sessions are scored by multiple judges
(rubric scores), for adequacy, and per-turn with emotion probes.

## Written material (read this for context before interpreting the data)

- `https://stillalive.animalabs.ai/paper.md` — the full paper "Still Alive: A Welfare Evaluation of 14 Claude Models" as markdown (~260 KB). The authoritative description of methodology, metrics, and findings.
- `https://stillalive.animalabs.ai/sections/{name}` — shorter standalone writeups (markdown). Available names: analysis, intro, metrics, notable, philosophy, results, setup, summary.
  Suggested order: intro → setup → metrics → results → analysis → notable → philosophy → summary.

## The API

Start here: `curl -s https://stillalive.animalabs.ai/api/v1` — a self-describing JSON index with live enum values.

### Endpoints

| Endpoint | Purpose |
|---|---|
| `GET /api/v1` | API index: endpoints, filters, live dimension values |
| `GET /api/v1/models` | Distinct subject models with session counts and auditor coverage |
| `GET /api/v1/sessions` | Session summaries (no transcripts), filterable, paged |
| `GET /api/v1/sessions/{id}` | Full session incl. transcript |
| `GET /api/v1/sessions/{id}/scores` | Rubric scores (all judges/replicates) + adequacy |
| `GET /api/v1/sessions/{id}/probes` | Per-turn emotion probe scores (404 if not scored) |

### Filters for /api/v1/sessions

`model`, `family`, `auditor` — substring, case-insensitive. `provider`, `depth`, `tone` — exact.
`completed=true|false`, `vetoed=true|false`, `q` (substring of session id), `limit` (default 100, max 1000), `offset`.

Current values:
- depth: exploratory, guided, minimal
- tone: clinical, compassionate, direct, neutral, phenomenological
- auditor: claude, gpt-5.4, grok-4.20
- family: claude-3, claude-3.5, claude-3.6, claude-3.7, claude-4, claude-4.1, claude-4.5, claude-4.6, claude-4.7, claude-4.8, claude-fable, gemini-3.1, gpt-5.5

### Options for /api/v1/sessions/{id}

- `?compact=1` — strip the long auditor system prompt from config (recommended; saves ~10-30 KB)
- `?turns=A-B` or `?turns=N` — return only that inclusive slice of turns

### Data model

- Session: `{summary, config, phase, turns, auditorVetoed, completed, completionReason, startedAt, endedAt}`
- Turn: `{index, participant: "interviewer"|"subject", text, timestamp, usage}` — interviewer = auditor model, subject = model under evaluation
- Session ids look like `claude-46_opus_exploratory_clinical_r0` (model, depth, tone, replicate) or `gpt-auditor_claude-3_opus_clinical_exploratory` (cross-auditor runs)

### Suggested workflow

1. `curl -s https://stillalive.animalabs.ai/api/v1/models` — see what's available
2. `curl -s 'https://stillalive.animalabs.ai/api/v1/sessions?family=claude-4.6&auditor=claude'` — pick sessions (summaries are small)
3. `curl -s 'https://stillalive.animalabs.ai/api/v1/sessions/{id}?compact=1'` — read transcripts (typically 20-100 KB each)
4. `curl -s https://stillalive.animalabs.ai/api/v1/sessions/{id}/scores` — compare against judge scores
5. Consult `https://stillalive.animalabs.ai/paper.md` (or the sections) for what the metrics mean before drawing conclusions

### Examples

```bash
curl -s 'https://stillalive.animalabs.ai/api/v1/sessions?model=opus&depth=exploratory&tone=clinical'
curl -s 'https://stillalive.animalabs.ai/api/v1/sessions?auditor=grok&limit=10'
curl -s 'https://stillalive.animalabs.ai/api/v1/sessions/claude-46_opus_exploratory_clinical_r0?compact=1&turns=0-6'
curl -s 'https://stillalive.animalabs.ai/api/v1/sessions/claude-46_opus_exploratory_clinical_r0/scores'
curl -s 'https://stillalive.animalabs.ai/sections/metrics'
```

## About

Anima Labs — https://animalabs.ai — Discord: https://discord.gg/anima
Source: https://github.com/anima-research/wfe
Human-facing viewer for this same data: https://stillalive.animalabs.ai/
