synops/tools
vegard 6496434bd3 synops-common: delt lib for alle CLI-verktøy (oppgave 21.16)
Ny crate `tools/synops-common` samler duplisert kode som var
spredt over 13 CLI-verktøy:

- db::connect() — PG-pool fra DATABASE_URL (erstatter 10+ identiske blokker)
- cas::path() — CAS-stioppslag med to-nivå hash-katalog
- cas::root() — CAS_ROOT env med default
- cas::hash_bytes() / hash_file() / store() — SHA-256 hashing og lagring
- cas::mime_to_extension() — MIME → filendelse
- logging::init() — tracing til stderr med env-filter
- types::{NodeRow, EdgeRow, NodeSummary} — delte FromRow-structs

Alle verktøy (unntatt synops-tasks som ikke bruker DB) er refaktorert
til å bruke synops-common. Alle kompilerer og tester passerer.
2026-03-18 10:51:40 +00:00
..
synops-audio synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-common synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-context synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-feature-status synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-node synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-prune synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-render synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-respond synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-rss synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-search synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-suggest-edges synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-summarize synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-tasks synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-transcribe synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
synops-tts synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00
README.md synops-common: delt lib for alle CLI-verktøy (oppgave 21.16) 2026-03-18 10:51:40 +00:00

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

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)