AutoMouser is a Chrome extension that turns your browser actions into reusable Selenium test scripts with just one AI call. Unlike typical web automation tools that rely on constant AI interaction, AutoMouser generates a complete, standalone Python script that you can run anytime, anywhere - no further AI calls needed.
In this demo video, I've recorded a simple scenario of searching for "hello world" on Google. Please note that it may take some time while waiting for the LLM's response, so you can attend to other tasks during this period. The generated script from this demo is available at demo/generated.py.
Most web automation tools using AI require constant communication with large language models - every time you run a test, you're making API calls. AutoMouser is different:
- One Call: Generate your test script once and run it unlimited times
- Precise Replay: Every click, input, and scroll is captured exactly as performed
- Clone this repository or download the source code
- Copy
.env.example
to.env
and add your API keys:Note: The actual{ "active_model": "gpt4", // Choose which model to use "models": { "gpt4": { "api_key": "your-openai-api-key-here" }, "deepseek": { "api_key": "your-deepseek-api-key-here" } // Add other model keys as needed } }
.env
file is gitignored to protect your API keys. Never commit it to version control. - Replace or edit
SELENIUM_PROMPT
with your desired prompt template inprompt.js
if needed - Open Chrome and navigate to
chrome://extensions/
- Enable "Developer mode" in the top right
- Click "Load unpacked" and select the extension directory
- Click the AutoMouser icon to start recording
- Perform the actions you want to automate
- Click the icon again to generate your script
- Get two files:
selenium_test.py
: Your reusable test scripttracking_log.json
: Raw interaction data (for debugging)
- Run your script anytime without needing AI!
The key difference: Once generated, your test script is completely independent. No more API calls, no more tokens, no more waiting for AI responses. Just pure, efficient automation.
The extension uses a JSON-based environment configuration to manage LLM API keys:
.env.example
: Template showing the required structure (safe to commit).env
: Your actual configuration with real API keys (never commit this!)
Supported models:
- GPT-4 (OpenAI)
- GPT-3.5 (OpenAI)
- Deepseek
To use a different model, simply change the active_model
in your .env
file and provide the necessary API key.
If you want to add a custom model, please refer to the llm_service.js file for the required structure.
Contributions are welcome! Please feel free to submit pull requests, create issues, or suggest improvements. For any questions, please create an issue in the repository.