docs: Spec nach docs/ verschieben, Nachtrag mit den Entscheidungen vom 2026-10-24

Die Spezifikation ist ein Produkt-Dokument und gehört nicht in einen
Scratch-Ordner. Der Nachtrag hält fest, was gegenüber dem Grilling-Stand
geändert wurde: ein Binary mit Autostart statt talk + talkd, CLI als
Agenten-Schnittstelle, now bricht Ruhezeit, Gesetze max_text/max_age,
Zielbild Veröffentlichung mit Usability-Vorrang. Der Implementierungsplan
bleibt unter .scratch, weil das SDD-Werkzeug ihn dort erwartet.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
m3ta-chironandClaude Fable 5.1 committed 2026-10-24 09:55:19 +02:00
1 parent 97650ad0ec
commit 33ef7194f5
2 files changed
+26 -3

No files matched your search

+2 -3
View File
@@ -1,8 +1,7 @@
# talk
> **Status: WIP** — aktive Entwicklung (talk 2.0). Binde Spezifikation:
> [`.scratch/talk-2-0/spec.md`](.scratch/talk-2-0/spec.md) ·
> Implementierungsplan: [`.scratch/talk-2-0/plan.md`](.scratch/talk-2-0/plan.md)
> **Status: WIP** — aktive Entwicklung (talk 2.0). Spezifikation mit
> Entscheidungs-Nachtrag: [`docs/spec.md`](docs/spec.md)
**talk** macht Skripte und KI-Agenten hörbar: Ein Aufruf — `talk "Build fertig"` —
spricht eine kurze Nachricht über eine TTS-Provider-Kette
@@ -100,3 +100,27 @@ Verteilung: Gitea-Releases nach agent-lib-Muster (Asset-Schema `talk_<os>_<arch>
- Session-Stickiness der Etikette ist Prompt/Skill-Level — der Daemon kennt keine Agent-Sessions.
- Offene Später-Entscheidung: LibreChat-Anbindung via Frontend-Patch vs. Browser-Extension — blockiert nichts, Tür steht mit CORS-fähiger HTTP-API.
- Verwandte Firmen-ADRs: 0009 (agent-lib), 0012/0013 (Secrets-Env-Bridge/Machine-Env-Keys), 0016/0017 (user-scharfe Keys, MCP-Audience-Scoping) — talk folgt diesen Mustern.
---
## Nachtrag 2026-10-24 — Entscheidungen nach Architektur-Review
Diese Punkte ersetzen die entsprechenden Aussagen oben (Grilling-Stand
2026-10-18):
- **Ein Binary statt `talk` + `talkd`.** Der Daemon ist `talk daemon run`;
`talk say`/`talk wrap` starten ihn beim ersten Sprechbefehl selbst im
Hintergrund (`daemon.autostart`, Default an; `talk daemon start|stop`
explizit). Der Degraded Mode mit Lock-Datei entfällt; ohne erreichbaren
oder startbaren Daemon spricht talk direkt (unserialisiert, mit Hinweis).
- **CLI ist die Agenten-Schnittstelle.** MCP bleibt als Tür bestehen, ist
aber kein Fokus mehr; Browser-Zugriff ist serverseitig auf POST /speak
von gelisteten Origins beschränkt (Origin-Guard, nicht nur CORS).
- **`now:true` bricht bewusst aus der Ruhezeit aus** (bestätigt).
- **Zwei weitere Gesetze:** `queue.max_text` (400 Zeichen, Kürzung an der
Wortgrenze) und `queue.max_age` (2 min, veraltete Stau-Ansagen
verfallen).
- **Zielbild Veröffentlichung:** talk soll perspektivisch öffentlich
nutzbar sein. Oberstes Kriterium ist Usability für Nicht-Terminal-
Nutzer; die Bubble-Tea-TUI ist kein Selbstzweck — einfache, klare
Befehle (`doctor`, `setup`, `test`, `voices`) haben Vorrang.