1
0

feat: Introduce explicit start, stop, and status commands, including minimum recording duration.

This commit is contained in:
2026-02-28 18:06:15 +01:00
parent 8ec0629e1a
commit a55e599c4f
13 changed files with 234 additions and 283 deletions

View File

@@ -60,6 +60,9 @@ Toak operates as a persistent **daemon** that manages state and API calls, while
### Core Commands
- **`toak toggle`**: The primary command. Start recording; run again to stop, transcribe, and type/copy/stdout the result.
- **`toak start`**: Explicitly start recording.
- **`toak stop`**: Explicitly stop recording.
- **`toak status`**: Output the daemon's current state (`Recording`, `Idle`, or JSON).
- **`toak daemon`**: Runs the background service manually (usually managed by systemd).
- **`toak onboard`**: Launches the interactive configuration wizard for providers, models, and backends.
- **`toak discard`**: Instantly aborts the current recording without performing any transcription.
@@ -106,5 +109,6 @@ Key settings in `ToakConfig.cs` (managed via `toak onboard` or `toak config`):
- `WhisperLanguage`: Set spoken language (e.g., `en`, `es`, `fr`).
- `TypingBackend`: Choose between `wtype`, `xdotool`, or `ydotool`.
- `AudioBackend`: Choose between `pw-record` (PipeWire) or `ffmpeg`.
- `MinRecordingDuration`: Set the minimum recording duration in ms (default: `500`).
- `ModulePunctuation`: Toggle automatic grammar and punctuation fixing.
- `ModuleTechnicalSanitization`: Ensures technical terms are formatted correctly.