Quickstart
This guide will get you from installation to your first voice coding session in minutes.Make sure you’ve completed Installation before starting this guide.
Quick Start in 4 Steps
Attach a workspace
Navigate to your project directory and attach it:This command:
- Starts the daemon if needed
- Registers the workspace
- Creates or resumes a session for this repo
- Streams live events to your terminal
Start a voice session
With the terminal running
duck ., press and hold the hotkey:Option+DYou’ll see a recording indicator in the menu bar and your terminal.Speak your request
While holding
Option+D, speak naturally:- “List all TypeScript files in the src directory”
- “Where is the authentication logic defined?”
- “Run the test suite and tell me what failed”
Your First Interaction
Here’s what a typical session looks like:Interrupting the Agent
You can interrupt at any time:Start speaking
While the agent is speaking or working, just start talking. The agent will:
- Stop speaking immediately
- Abort the current operation (if auto-abort is enabled)
- Listen to your new request
Auto-abort on barge-in is enabled by default. You can change this in Settings to use “steering” mode instead, which queues your message for after the current tool finishes.
Common Commands
Here are some useful commands to try:Attach and Follow
Send Typed Messages
You can also send typed messages without using voice:Session Management
System Health
Understanding the Terminal Output
The terminal shows everything that happens:| Prefix | Meaning |
|---|---|
[user] | Your transcribed speech or typed message |
[assistant] | The agent’s response (also spoken to you) |
[tool:bash] | Bash command being executed |
[tool:read_file] | File being read |
[tool:edit_file] | File being edited |
[tool:grep_search] | Search being performed |
[system] | System messages (interruptions, session changes) |
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Option+D | Press and hold to activate voice agent |
Option+Shift+D | Open Settings window |
Ctrl+C (in terminal) | Stop following the session stream |
Tips for Effective Voice Coding
Be specific about file paths
Be specific about file paths
Instead of “update the config”, say “update the webpack.config.js file in the root directory”.
Break down complex tasks
Break down complex tasks
Voice works best for focused requests. Break large refactors into smaller steps.
Use the terminal as your source of truth
Use the terminal as your source of truth
The spoken response is a summary. The terminal has the full details, diffs, and output.
Interrupt freely
Interrupt freely
If the agent goes off track, just start speaking. Interruptions are instant.
Review before committing
Review before committing
When the agent makes edits, review the diffs in your terminal before committing changes.
Next Steps
CLI Reference
Learn all available
duck commands and optionsMulti-Session Workflows
Work with multiple sessions across different repos
Voice Configuration
Customize voice behavior and interruption settings
Troubleshooting
Common issues and solutions