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>
111 lines
3.4 KiB
Markdown
111 lines
3.4 KiB
Markdown
# 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
|