diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-19 11:20:12 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-19 11:20:12 +0200 |
| commit | c1fc2001219eb9aa349439b3007b57e1ced25335 (patch) | |
| tree | 900e3fbc9da3a58d8f4e08f68040dd080c75ef84 /desktop/assistant/README.md | |
| parent | 5ce0cdf77d19e74d85de8674e88b25db213e8534 (diff) | |
| download | quickshell-c1fc2001219eb9aa349439b3007b57e1ced25335.tar.gz quickshell-c1fc2001219eb9aa349439b3007b57e1ced25335.zip | |
assistant: a mic button asks by voice
Each recording is a pw-record Process of its own, made from a Component
like the Do row's runs, so a stopped recording's late exit cannot be
read as the next one's. Stopping sets running to false (SIGTERM), which
lets pw-record write the WAV header; the audio ask goes out from the
process's exit, not from the click.
Recording stops itself at 59 s: the daemon refuses over 60 s by file
size, and the stop lands a little after the tick. Escape cancels a
recording before it does anything else, and closing the card or losing
the daemon cancels it too. A pw-record that ends on its own says
"recording failed".
Checked: a scratch harness saw transcribing, thinking, idle for a 2 s
recording; by hand, every case in the spec passed with no pw-record
left behind, a desktop shell reload mid-recording included.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'desktop/assistant/README.md')
| -rw-r--r-- | desktop/assistant/README.md | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/desktop/assistant/README.md b/desktop/assistant/README.md index 41c01b3..bd61cb4 100644 --- a/desktop/assistant/README.md +++ b/desktop/assistant/README.md @@ -32,8 +32,13 @@ dropped on the island (`../island/`) starts a new one in the file state. The paperclip opens a picker drawn in the card: a system dialog would open beneath the overlay that holds the keyboard. -Keys: Enter sends, Shift+Enter is a newline, Escape closes the picker, then -the history panel, then the card. Stop replaces Send while a reply streams. +The mic records with `pw-record` into `$XDG_RUNTIME_DIR/assistant-mic.wav` +until clicked again (at most 59 s), then asks with it: the daemon has the +model transcribe it and answers the words. + +Keys: Enter sends, Shift+Enter is a newline, Escape cancels a recording, +then closes the picker, the history panel, then the card. Stop replaces +Send while a reply streams. Notes: |
