[FEATURE] Add --voice CLI flag to enable voice mode at startup
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Voice mode cannot be activated programmatically when launching Claude Code. Even with "voiceEnabled": true in ~/.claude/settings.json, new interactive sessions launched with a positional argument prompt do not start with voice active. The only way to enable it is manually typing /voice after the session starts, which breaks automated and hands-free workflows.
Proposed Solution
Add a --voice CLI flag that enables voice mode immediately when Claude starts:
claude --voice "Review today's morning brief..."
Claude launches in interactive mode with voice already active — no manual toggle needed. This flag should work alongside other flags like --dangerously-skip-permissions.
Alternative Solutions
Respect the "voiceEnabled": true setting in ~/.claude/settings.json for all new sessions, including those launched with a positional argument. If voice is globally enabled, it should be active by default without requiring a per-session toggle.
Priority
Medium - Would be very helpful
Feature Category
CLI commands and flags
Use Case Example
I run a personal EA (executive assistant) system with 8 scheduled cron tasks (morning briefs, EOD wraps, weekly plans, inbox triage, etc.). When a task completes, a notification script opens a new terminal window with Claude in interactive mode to review the results:
ptyxis -- bash -c "claude --dangerously-skip-permissions \"$PROMPT\"" &
The intent is a low-friction review experience — the window pops up with the brief already processed, and I can respond verbally via voice input instead of typing. But without a --voice flag, I have to manually type /voice every time a scheduled task fires before I can speak, which adds unnecessary friction to the automated workflow.
Additional Context
- Claude Code version: v2.1.77
- Platform: Linux (Fedora 43), cron-based automation with ptyxis terminal
- Current behavior:
/voicetoggle works correctly once manually activated. Voice functions perfectly for the rest of the session after toggling. - Settings state:
"voiceEnabled": trueis set globally in~/.claude/settings.jsonbut does not carry through to sessions started with a positional prompt argument.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗