AI-powered browser automation with voice commands. Uses Playwright MCP for browser control, Claude for interpreting commands, and ElevenLabs for text-to-speech.
- Node.js (for running Playwright MCP server)
- Python 3.11+
- ffmpeg (for audio playback in voice mode)
- Install dependencies:
uv sync- Install Playwright MCP globally:
npm install -g @playwright/mcp- Set your API keys:
export ANTHROPIC_API_KEY=your-key-here
export OPENAI_API_KEY=your-key-here # For Whisper speech-to-text
export ELEVENLABS_API_KEY=your-key-here # For text-to-speechOr create a .env file with these values.
uv run python -m browser_agent https://example.comuv run python -m browser_agent --voice https://example.comIn voice mode:
- Press Enter to start recording your voice command
- Press Enter again to stop recording and submit
- The agent will speak what it's doing and its responses
> Click the login button
> Fill in the email field with test@example.com
> Scroll down to the footer
> Take a screenshot
> What text is on this page?
Type quit or exit to close the browser and exit.
- Voice input: Speak commands using your microphone (Whisper transcription)
- Voice output: Agent speaks what it's doing (ElevenLabs TTS)
- Natural language commands: Just describe what you want the browser to do
- Full browser control: Click, type, scroll, navigate, screenshot, and more
- Conversation history: Claude remembers context from previous commands