diff --git a/apps/desktop/src/app/chat/composer/controls.tsx b/apps/desktop/src/app/chat/composer/controls.tsx
index 7bef1e82767..364ee6d3b83 100644
--- a/apps/desktop/src/app/chat/composer/controls.tsx
+++ b/apps/desktop/src/app/chat/composer/controls.tsx
@@ -4,7 +4,7 @@ import { KbdCombo } from '@/components/ui/kbd'
import { Tip } from '@/components/ui/tooltip'
import { useI18n } from '@/i18n'
import { triggerHaptic } from '@/lib/haptics'
-import { AudioLines, Layers3, Loader2, Square, SteeringWheel } from '@/lib/icons'
+import { AudioLines, Layers3, Loader2, Square, SteeringWheel, Volume2, VolumeX } from '@/lib/icons'
import { formatCombo } from '@/lib/keybinds/combo'
import { cn } from '@/lib/utils'
@@ -39,6 +39,7 @@ interface ConversationProps {
}
export function ComposerControls({
+ autoSpeak,
busy,
busyAction,
canSteer,
@@ -50,8 +51,10 @@ export function ComposerControls({
state,
voiceStatus,
onDictate,
- onSteer
+ onSteer,
+ onToggleAutoSpeak
}: {
+ autoSpeak: boolean
busy: boolean
busyAction: 'queue' | 'stop'
canSteer: boolean
@@ -64,6 +67,7 @@ export function ComposerControls({
voiceStatus: VoiceStatus
onDictate: () => void
onSteer: () => void
+ onToggleAutoSpeak: () => void
}) {
const { t } = useI18n()
const c = t.composer
@@ -105,6 +109,7 @@ export function ComposerControls({
) : (
)}
+
{showVoicePrimary ? (