From 1b3dca845f2b2866cc967e4f5fb5f21a6d866a4e Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Mon, 19 Oct 2026 10:52:42 +0200 Subject: voice input: ask takes a WAV, the model transcribes it An ask with audio sends a transcribing state, has the loaded model transcribe the clip (thinking off, no tools, the prompt naming Italian or English), then answers the transcript as a typed question, so the user event, history and search hold the words. A stop while transcribing ends the turn like any reply. Refused: a relative path, a file that is not a WAV, over 60 s (the ubatch bound, untried for audio), a model without audio input, and an empty transcript. The length comes from the file size, since a recording stopped by a signal leaves the header's length unset. Live: 10/10 clips heard right, the right tool each time. Co-Authored-By: Claude Opus 5.5 --- AGENTS.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'AGENTS.md') diff --git a/AGENTS.md b/AGENTS.md index f0f433b..357e04e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -148,7 +148,14 @@ no `data:` prefix), no whisper. The 10 clips in 20/20. ~70 more prompt tokens per clip. **Decision: transcribe first, then ask the transcript as text.** History and search need the words anyway. -- Not tried: a clip long enough to cross the 2048 ubatch (~80 s). +- Not tried: a clip long enough to cross the 2048 ubatch (~80 s), so + the daemon refuses clips over 60 s. +- **Through the daemon** (`ask` with `audio`, a second instance on a + scratch socket): 10/10 heard right, `user` event 0.36-0.87 s after the + ask, and the right tool every time (weather, updates, mail, calendar, + now; none for the time in Italian and "Ciao"). "What's the weather + tomorrow?" was answered in Italian: the reply after the weather tool, + not the transcript, which was English. ### Attachments, live check (2026-10-16) -- cgit v1.2.3