synops/tools/README.md
vegard 34b086d046 Implementer synops-audio CLI-verktøy (oppgave 21.2)
Erstatter maskinrommet/src/audio.rs med frittstående CLI-verktøy
som følger unix_filosofi-mønsteret fra synops-transcribe.

Input: --cas-hash <hash> --edl <json>
Output: JSON med ny CAS-hash til stdout

Inkluderer:
- Fullstendig parametervalidering (NaN/Inf, grenseverdier)
- FFmpeg filtergraf i riktig rekkefølge (cuts→NR→EQ→comp→norm→fades)
- To-pass loudnorm for høykvalitets normalisering
- Silence detection → cut-konvertering med 200ms margin
- Atomisk CAS-lagring via temp-fil + rename
- --write flagg for DB-operasjoner (node + edge + ressurslogg)
- 21 enhetstester for validering, filtergraf og CAS-stier

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

1.1 KiB

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

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 <communication_id> — hent kontekst for en chat
  • synops-search <query> — søk i grafen (noder + edges)
  • synops-tasks [--phase N] [--status S] — oppgavestatus fra tasks.md
  • synops-feature-status <key> — implementeringsstatus for en feature
  • synops-respond <comm_id> <tekst> — send svar i en chat
  • synops-update-spec <node_id> — oppdater spec-node (stdin)