synops/tools/README.md
vegard 8436f75d87 synops-ai prompt: direkte LLM-kall via LiteLLM (oppgave 28.1)
Legger til `synops-ai prompt`-subkommando for enkel prompt-inn/tekst-ut
bruk av LLM via LiteLLM gateway. Eksisterende script-generering
flyttes til `synops-ai script`-subkommando.

Prompt-modus:
- --prompt (påkrevd): bruker-prompt
- --model (valgfri): modellalias, slås opp fra ai_job_routing hvis utelatt
- --system (valgfri): systemprompt
- --job-type: for modelloppslag og logging (default: simple_prompt)
- --temperature: LLM-temperatur (default: 0.7)
- Logger tokenbruk i ai_usage_log

Seed: simple_prompt → sidelinja/rutine i ai_job_routing.
2026-03-18 19:51:44 +00:00

52 lines
2.8 KiB
Markdown

# Synops CLI-verktøy
CLI-verktøy for Claude sin interaksjon med systemet. Bruker PG direkte
eller maskinrommet-API. Ligger i PATH via symlink eller direkte kall.
## Verktøy
| Verktøy | Beskrivelse | Status |
|---------|-------------|--------|
| `synops-transcribe` | Whisper-transkribering av lydfil fra CAS | Ferdig |
| `synops-audio` | FFmpeg lydprosessering med EDL (cut, normalize, EQ, m.m.) | Ferdig |
| `synops-render` | Tera HTML-rendering til CAS (artikler, forsider) | Ferdig |
| `synops-rss` | RSS/Atom-feed generering for samlinger | Ferdig |
| `synops-tts` | Tekst-til-tale via ElevenLabs, lagrer lyd i CAS | Ferdig |
| `synops-summarize` | AI-oppsummering av kommunikasjonsnode via LiteLLM | Ferdig |
| `synops-suggest-edges` | AI-foreslåtte edges (topics/mentions) for en node via LiteLLM | Ferdig |
| `synops-respond` | Claude chat-svar i kommunikasjonsnoder | Ferdig |
| `synops-prune` | Opprydding av gamle CAS-filer (TTL + disk-nødventil) | Ferdig |
| `synops-context` | Hent kontekst for en samtale (deltakere, historikk, spec, relaterte noder) | Ferdig |
| `synops-search` | Fulltekstsøk i noder (title + content, norsk tsvector) | Ferdig |
| `synops-tasks` | Parse tasks.md og vis oppgavestatus (filtrering på fase/status) | Ferdig |
| `synops-feature-status` | Sjekk feature-status: spec, oppgaver, commits, feedback | Ferdig |
| `synops-node` | Hent/vis en node med edges (UUID, --depth, --format json/md) | Ferdig |
| `synops-ai` | LLM-verktøy: `prompt` (direkte LLM-kall) + `script` (orkestreringsscript fra fritekst) | Ferdig |
| `synops-clip` | Hent og parse webartikler (Readability + Playwright-fallback, paywall-deteksjon) | Ferdig |
| `synops-mail` | Send epost via msmtp (vaktmester@synops.no) | Ferdig (venter SMTP-credentials) |
## Delt bibliotek
| Crate | Beskrivelse |
|-------|-------------|
| `synops-common` | Delt lib: PG-tilkobling (`db`), CAS-helpers (`cas`), logging (`logging`), node/edge-typer (`types`) |
Alle CLI-verktøy (unntatt `synops-tasks`) bruker `synops-common` som dependency.
Se `synops-common/src/lib.rs` for API-oversikt.
## Konvensjoner
- Navnekonvensjon: `synops-<verb>` (f.eks. `synops-context`)
- Shell-scripts eller Rust binaries
- Ett verktøy per oppgave — hold det enkelt
- Output: stdout, strukturert tekst (markdown eller JSON)
- DB-tilkobling: `$DATABASE_URL` eller fra `/tmp/maskinrommet.env`
## Planlagte verktøy
Ref: `docs/infra/agent_api.md`
- ~~`synops-context`~~ — implementert (se tabell over)
- ~~`synops-search`~~ — implementert (se tabell over)
- ~~`synops-tasks [--phase N] [--status S]`~~ — implementert (se tabell over)
- ~~`synops-feature-status <key>`~~ — implementert (se tabell over)
- ~~`synops-respond`~~ — implementert (se tabell over)
- `synops-update-spec <node_id>` — oppdater spec-node (stdin)