# Centrul Claude

27 de rute, cu exemplu de cerere pentru fiecare.

Adresa de bază: `https://app.ilustromania.com/nucleu`

## Modulul `claude`

### GET /v1/claude/alocare

Acces: `rol:admin`

**Alocarea Codex/Claude**

Procentul de lucru alocat Codex și Claude, pentru sesiunea autorizată.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/alocare \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### PUT /v1/claude/alocare

Acces: `sesiune`

**Schimbă alocarea Codex/Claude**

Scrie procentul de lucru alocat Codex (restul la Claude).

```bash
curl -X PUT https://app.ilustromania.com/nucleu/v1/claude/alocare \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### POST /v1/claude/alocare/codex

Acces: `sesiune`

**Raportează consumul Codex**

Jetonul de serviciu scrie statistica de consum Codex folosită la alocare.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/alocare/codex \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/claude/alocare/garda

Acces: `sesiune`

**Alocarea pentru gardă**

Aceeași alocare Codex/Claude, citită de garda de pe mașini.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/alocare/garda \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### GET /v1/claude/cereri

Acces: `rol:admin`

**Registrul cererilor**

Cererile lui Mihai și starea lor, așa cum le-au scris mașinile.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/cereri \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/claude/cereri

Acces: `sesiune`

**Scrie registrul cererilor**

Mașinile publică instantaneul registrului de cereri (corp până la 512 KB).

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/cereri \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/claude/costuri

Acces: `rol:admin`

**Costurile agenților**

Costurile de folosire raportate de agenți.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/costuri \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/claude/costuri

Acces: `sesiune`

**Scrie costurile**

Mașinile publică costurile de folosire ale agenților.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/costuri \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/claude/harta

Acces: `rol:admin`

**Harta agenților**

Nodurile și legăturile din hărțile publicate de mașini, unite într-un graf.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/harta \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/claude/harta

Acces: `sesiune`

**Scrie harta unei mașini**

O mașină își publică harta (noduri și legături).

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/harta \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/claude/pasi

Acces: `rol:admin`

**Rulările cu pași**

Lista rulărilor de agent pentru care s-au salvat pași.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/pasi \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/claude/pasi

Acces: `sesiune`

**Scrie pașii unei rulări**

Mașinile salvează pașii unei rulări de agent.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/pasi \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/claude/pasi/{rulare}

Acces: `rol:admin`

**Pașii unei rulări**

Pașii salvați pentru o rulare de agent; 400 identificator invalid.

Parametri de cale:

| Nume | Tip | Descriere |
| --- | --- | --- |
| `rulare` | `string` | valoarea din cale |

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/pasi/{rulare} \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### GET /v1/claude/porniri

Acces: `rol:admin`

**Acțiunile de pornire**

Acțiunile de pornire disponibile pentru agenți și coada lor.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/porniri \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/claude/porniri

Acces: `rol:admin`

**Cere o pornire**

Pune în coadă o acțiune de pornire cunoscută; 404 acțiune necunoscută, 503 fără dosar.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/porniri \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/claude/stare

Acces: `rol:admin`

**Starea mașinilor**

Ultimele stări raportate de mașini, doar cele proaspete.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/stare \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/claude/stare

Acces: `sesiune`

**Scrie starea unei mașini**

O mașină își publică starea curentă; 404 fără depozit.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/stare \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/claude/taskuri

Acces: `rol:admin`

**Taskurile agenților**

Lista taskurilor agenților; 404 fără depozit.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/taskuri \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/claude/taskuri

Acces: `sesiune`

**Scrie taskuri**

Mașinile adaugă sau actualizează unul sau mai multe taskuri.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/taskuri \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

### GET /v1/claude/taskuri/flux

Acces: `rol:admin`

**Fluxul live al taskurilor**

Flux SSE cu schimbările din lista de taskuri.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/taskuri/flux \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### GET /v1/claude/urcari

Acces: `rol:admin`

**Urcările pe app**

Urcările recente pe aplicație, cu graficul din jurnalul de urcări.

```bash
curl https://app.ilustromania.com/nucleu/v1/claude/urcari \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

### POST /v1/claude/urcari

Acces: `sesiune`

**Scrie urcările**

Mașinile publică lista urcărilor pe aplicație.

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/claude/urcari \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{ … }'
```

## Modulul `agenti`

### GET /v1/agenti

Acces: `sesiune`

**Agenții firmei**

Registrul agenților firmei din sesiune (administrator sau patron).

Răspuns 200:

| Câmp | Tip | Obligatoriu | Detalii |
| --- | --- | --- | --- |
| `agenti` | `object[]` | da | — |
| `agenti[].id` | `string` | da | nevid |
| `agenti[].nume` | `string` | da | nevid |
| `agenti[].titlu` | `string` | da | nevid |
| `agenti[].total` | `integer` | da | între 0 și 9007199254740991 |
| `agenti[].erori` | `integer` | da | între 0 și 9007199254740991 |
| `agenti[].ultima` | `string` | da | dată `AAAA-LL-ZZ` |
| `agenti[].clone` | `integer` | da | între 0 și 9007199254740991; implicit `0` |
| `agenti[].taskuri` | `string[]` | da | — |
| `agenti[].responsabilitati` | `string[]` | da | — |

```bash
curl https://app.ilustromania.com/nucleu/v1/agenti \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

Răspuns 200 (exemplu din schemă):

```json
{
  "agenti": [
    {
      "id": "text",
      "nume": "text",
      "titlu": "text",
      "total": 1,
      "erori": 1,
      "ultima": "2026-11-12",
      "clone": 0,
      "taskuri": [],
      "responsabilitati": []
    }
  ]
}
```

### GET /v1/agenti/{id}/istoric

Acces: `sesiune`

**Istoricul unui agent**

Ultimele 20 de rapoarte ale unui agent al firmei.

Parametri de cale:

| Nume | Tip | Descriere |
| --- | --- | --- |
| `id` | `string` | identificatorul resursei |

Răspuns 200:

| Câmp | Tip | Obligatoriu | Detalii |
| --- | --- | --- | --- |
| `id` | `string` | da | — |
| `istoric` | `object[]` | da | — |
| `istoric[].ora` | `string` | da | — |
| `istoric[].text` | `string` | da | — |
| `istoric[].eticheta` | `string` | da | — |

```bash
curl https://app.ilustromania.com/nucleu/v1/agenti/{id}/istoric \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

Răspuns 200 (exemplu din schemă):

```json
{
  "id": "text",
  "istoric": [
    {
      "ora": "text",
      "text": "text",
      "eticheta": "text"
    }
  ]
}
```

### GET /v1/agenti/lucru

Acces: `sesiune`

**Ce lucrează agenții acum**

Starea instanțelor agenților firmei din sesiune (administrator sau patron); 404 fără registru de lucru.

Răspuns 200:

| Câmp | Tip | Obligatoriu | Detalii |
| --- | --- | --- | --- |
| `ok` | `boolean` | da | una din: `true` |
| `acum` | `string` | da | — |
| `lucreaza_acum` | `string[]` | da | — |
| `lucru` | `object` | da | — |

```bash
curl https://app.ilustromania.com/nucleu/v1/agenti/lucru \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```

Răspuns 200 (exemplu din schemă):

```json
{
  "ok": true,
  "acum": "text",
  "lucreaza_acum": [
    "text"
  ],
  "lucru": {}
}
```

### POST /v1/agenti/lucru

Acces: `sesiune`

**Semnal de lucru al unui agent**

Agentul anunță start, bătaie sau stop, cu sarcina și ultimul raport; cu jeton de executor sau sesiune de administrator/patron.

Corpul cererii (JSON):

| Câmp | Tip | Obligatoriu | Detalii |
| --- | --- | --- | --- |
| `id` | `string` | da | între 1 și 40 caractere |
| `stare` | `string` | da | — |
| `task` | `string` | nu | — |
| `eticheta` | `string` | nu | — |
| `preia` | `string` | nu | — |
| `ultimul_raport_ts` | `number \| string` | nu | — |
| `ultimul_raport_text` | `string` | nu | — |

Răspuns 200:

| Câmp | Tip | Obligatoriu | Detalii |
| --- | --- | --- | --- |
| `ok` | `boolean` | da | una din: `true` |
| `id` | `string` | da | — |
| `nume` | `string` | da | — |
| `stare` | `string` | da | — |
| `eticheta` | `string` | da | — |
| `lucru` | `object` | da | — |
| `lucru.lucreaza` | `boolean` | da | — |
| `lucru.task` | `string` | da | — |
| `lucru.de_la` | `string` | da | — |
| `lucru.pana_la` | `string` | da | — |
| `lucru.ultim_semn` | `string` | da | — |
| `lucru.expira_la` | `string` | da | — |
| `lucru.ultimul_raport` | `string` | da | — |
| `lucru.ultimul_raport_text` | `string` | da | — |
| `lucru.instante` | `integer` | da | între 0 și 9007199254740991 |
| `lucru.etichete` | `string[]` | da | — |
| `lucru.instante_detalii` | `object[]` | da | — |
| `lucru.instante_detalii[].lucreaza` | `boolean` | da | — |
| `lucru.instante_detalii[].task` | `string` | da | — |
| `lucru.instante_detalii[].de_la` | `string` | da | — |
| `lucru.instante_detalii[].pana_la` | `string` | da | — |
| `lucru.instante_detalii[].ultim_semn` | `string` | da | — |
| `lucru.instante_detalii[].expira_la` | `string` | da | — |
| `lucru.instante_detalii[].ultimul_raport` | `string` | da | — |
| `lucru.instante_detalii[].ultimul_raport_text` | `string` | da | — |
| `lucru.instante_detalii[].eticheta` | `string` | da | — |
| `lucreaza_acum` | `string[]` | da | — |

```bash
curl -X POST https://app.ilustromania.com/nucleu/v1/agenti/lucru \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "text",
    "stare": "text",
    "task": "text",
    "eticheta": "text",
    "preia": "text",
    "ultimul_raport_ts": 12.5,
    "ultimul_raport_text": "text"
  }'
```

Răspuns 200 (exemplu din schemă):

```json
{
  "ok": true,
  "id": "text",
  "nume": "text",
  "stare": "text",
  "eticheta": "text",
  "lucru": {
    "lucreaza": true,
    "task": "text",
    "de_la": "text",
    "pana_la": "text",
    "ultim_semn": "text",
    "expira_la": "text",
    "ultimul_raport": "text",
    "ultimul_raport_text": "text",
    "instante": 1,
    "etichete": [
      "text"
    ],
    "instante_detalii": [
      {}
    ]
  },
  "lucreaza_acum": [
    "text"
  ]
}
```

## Modulul `jurnal-live`

### GET /v1/jurnal-live

Acces: `rol:admin`

**Jurnalul live al platformei**

Citește jurnalul live al executorilor. Doar administratorul firmei platformei; altfel 401/403.

```bash
curl https://app.ilustromania.com/nucleu/v1/jurnal-live \
  -H "Cookie: __Host-sesiune=$JETON_SESIUNE"
```
