# Oppdrag: Komplett synops-agent

Gjør synops-agent til en fullverdig erstatning for Claude Code
og vaktmester for Synops-plattformen.

Ref: `docs/proposals/agent_harness.md`

## Fase 1: Robustgjøring av kjernen (har grunnlag)

- [ ] Kontekstkomprimering (ACC) — oppsummer eldre meldinger
      når kontekstvinduet nærmer seg grensen
- [ ] Retry med exponential backoff ved API-feil
- [ ] Token-budsjett — stopp ved konfigurerbar grense
- [ ] Bedre feilhåndtering (timeout, parse-feil, nettverksfeil)
- [ ] max_tokens konfigurerbar per provider (ikke hardkodet 4096)

## Fase 2: Interaktiv modus

- [ ] REPL-modus: `synops-agent --interactive`
      Bruker skriver → agent svarer → loop
- [ ] Meldingshistorikk med opp/ned-pil
- [ ] Ctrl+C avbryter pågående tool-kall, ikke hele agenten
- [ ] Vis token-teller live i prompt

## Fase 3: Planmodus og selvkritikk

- [ ] Extended ReAct Loop: tenke-fase → selvkritikk → handling
- [ ] Planmodus: agent analyserer oppgaven, lager plan, venter
      på godkjenning før den utfører
- [ ] Automatisk planmodus for store oppgaver (>3 filer berørt)

## Fase 4: Git-integrasjon

- [ ] Auto-commit etter fullført oppgave
- [ ] Diff-visning før commit
- [ ] Branch-per-oppgave (valgfritt)
- [ ] Push etter commit (konfigurerbart)
- [ ] Les git log/blame for kontekst

## Fase 5: Grafintegrasjon

- [ ] Koble til PG via synops-common
- [ ] Les/skriv noder og edges
- [ ] Plukk oppgaver (task-noder) fra PG
- [ ] Oppdater oppgavestatus (open → active → done)
- [ ] Skriv tilbakemelding i oppdragets chat-node
- [ ] Krasj-deteksjon: frigjør tasks som har stått >60 min

## Fase 6: Vaktmester-modus

- [ ] Daemon: `synops-agent daemon`
- [ ] Motta meldinger fra kommunikasjonsnode (vaktmester-chat)
- [ ] Prefix-kommandoer: /proposal, /task, /bug, /claude, /gjør
- [ ] Eksplisitt modellvalg: /claude, /grok, /gemini (kun admin)
- [ ] Spawn Claude Code for tunge oppgaver (--claude)
- [ ] Epost-integrasjon: motta via synops-mail, svar tilbake
- [ ] Heartbeat-fil for overvåking

## Fase 7: Sub-agenter og eskalering

- [ ] Spawn sub-agent med valgfri modell per deloppgave
- [ ] Utfør billig → verifiser smart-mønster
- [ ] Automatisk eskalering ved gjentatt feil
- [ ] Worktree-isolasjon for kode-oppgaver
- [ ] Parallell utføring av uavhengige tasks

## Fase 8: Checkpoint og recovery

- [ ] Lagre mellomtilstand (meldingshistorikk, pågående oppgave)
- [ ] Gjenoppta etter krasj
- [ ] Kostnadslogging til ai_usage_log i PG
- [ ] Sesjonsrapport ved avslutning

## Akseptkriterier

- Kan lese docs, implementere kode, committe og pushe — uten tilsyn
- Kan plukke oppgaver fra PG og rapportere tilbake i chat
- Kan spawne Claude Code for tunge oppgaver
- Kan kjøre som daemon og motta meldinger
- Token-regnskap per modell, per sesjon, per oppgave
- Krasj-safe: gjenopptar der den slapp
