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

28 lines
1.1 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 |
## 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)