synops/docs/oppdrag/admin-komplett.md
vegard ea7926555c To hovedoppdrag: komplett synops-agent + komplett admin-panel
synops-agent: 8 faser fra robustgjøring til daemon/vaktmester.
Admin-panel: nøkkelhåndtering, AI-ruting, oppgaver, agent-oversikt,
brukeradmin. Bygger på eksisterende sider + alt vi har diskutert.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 17:55:00 +00:00

3.4 KiB

Oppdrag: Komplett admin-panel

Samle all administrasjon i et helhetlig admin-panel som dekker alt vi har diskutert: nøkler, AI-ruting, oppgaver, overvåking.

Eksisterende admin-sider

Disse finnes allerede under /admin/*:

  • /admin — oversikt
  • /admin/ai — AI Gateway-konfigurasjon
  • /admin/health — serverhelse
  • /admin/jobs — jobbkø
  • /admin/podcast-import — podcast-import
  • /admin/podcast-stats — nedlastingsstatistikk
  • /admin/usage — ressursforbruk
  • /admin/webhooks — webhook-admin

Nye admin-sider

API-nøkler (/admin/keys)

Ref: docs/infra/nøkkelhåndtering.md

  • Nøkkelliste med provider, label, status, sist brukt
  • Legg til nøkkel (med test-tilkobling)
  • Deaktiver/slett nøkkel
  • Hint-visning (aldri full nøkkel etter lagring)
  • Backend: api_keys-tabell i PG, AES-256-GCM kryptering

AI-ruting (/admin/ai — utvid eksisterende)

  • Rediger ai_job_routing direkte i UI (ikke bare visning)
  • Fire nivåer: synops/low, synops/medium, synops/high, synops/extreme
  • Per-nivå: velg modell + provider fra dropdown
  • Fallback-kjeder: "hvis denne feiler, prøv denne"
  • Test-knapp per nivå ("send test-prompt")
  • Kostnadsestimat per nivå (basert på token-pris)

Oppgaver (/admin/tasks)

Ref: docs/infra/oppgaver.md

  • Tre faner: Proposals | Oppdrag | Tasks
  • Opprett ny proposal/oppdrag/task
  • Drag-and-drop for prioritetsendring
  • Status-endring (pause, gjenoppta, blokker)
  • Klikk → detaljer + tilknyttet chat
  • "Godkjenn proposal" → opprett oppdrag
  • Vis hvem/hva som jobber på en oppgave
  • Krasj-deteksjon: vis stale tasks

Agent-oversikt (/admin/agents)

  • Liste over aktive synops-agent-instanser
  • Per agent: modell, oppgave, token-forbruk, varighet
  • Stopp/restart agent
  • Historikk: siste kjøringer med resultat
  • Claude Code-sesjoner (aktive, nylige)

Brukeradministrasjon (/admin/users)

  • Liste over brukere (person-noder)
  • Roller per samling
  • AI-budsjett per bruker
  • Siste aktivitet
  • Deaktiver/aktiver bruker

Systemvarsler (/admin/announcements — eksisterer delvis)

  • Opprett systemvarsel (info/warning/critical)
  • Planlagt vedlikehold med nedtelling
  • Aktive varsler i frontend-banner

Forbedringer av eksisterende sider

Serverhelse (/admin/health)

  • Legg til synops-agent status
  • Vis disk-bruk for CAS
  • Vis aktive WebSocket-tilkoblinger
  • Vis LiteLLM-status (så lenge den lever)

Ressursforbruk (/admin/usage)

  • Legg til per-modell forbruk (fra agent token-regnskap)
  • Trend-graf over tid
  • Kostnadsestimat per modell
  • Eksporter til CSV

Jobbkø (/admin/jobs)

  • Vis synops-agent-jobber i tillegg til maskinrommet-jobber
  • Vis token-forbruk per jobb
  • Koble jobb til oppgave-node

Design-prinsipper

  • Alle admin-sider bruker samme mørke tema som resten av appen
  • Admin-ruter krever owner/admin-rolle
  • Responsivt (mobil-brukbart for enkel overvåking)
  • Sanntidsoppdatering via WebSocket der det gir mening
  • Konsistent med resten av ContextHeader-opplevelsen

Implementeringsrekkefølge

  1. API-nøkler (fjerner .env-avhengighet, fundamentalt)
  2. AI-ruting (utvid eksisterende, forhåndsvisning)
  3. Oppgaver (grunnlag for synops-agent automatisering)
  4. Agent-oversikt (overvåking når agent kjører)
  5. Brukeradministrasjon
  6. Forbedringer av eksisterende sider