
⚙️ Workflow Use is the easiest way to create and execute deterministic workflows with variables which fallback to Browser Use if a step fails. You just show the recorder the workflow, we automatically generate the workflow.
❗ This project is in very early development so we don't recommend using this in production. Lots of things will change and we don't have a release schedule yet. Originally, the project was born out of customer demand to make Browser Use more reliable and deterministic.
git clone https://github.com/browser-use/workflow-use
cd extension && npm install && npm run build
cd .. && cd workflows
uv sync
source .venv/bin/activate # for mac / linux
playwright install chromium
cp .env.example .env # add your OPENAI_API_KEY to the .env file
python cli.py run-as-tool examples/example.workflow.json --prompt "fill the form with example data"
python cli.py run-workflow examples/example.workflow.json
python cli.py create-workflow
python cli.py --help
Running the workflow files is as simple as:
from workflow_use import Workflow
workflow = Workflow.load_from_file("example.workflow.json")
result = asyncio.run(workflow.run_as_tool("I want to search for 'workflow use'"))
The Workflow UI provides a visual interface for managing, viewing, and executing workflows.
The easiest way to start the GUI is with the built-in CLI command:
cd workflows
python cli.py launch-gui
This command will:
- Start the backend server (FastAPI)
- Start the frontend development server
- Automatically open http://localhost:5173 in your browser
- Capture logs to the
./tmp/logs
directory
Press Ctrl+C to stop both servers when you're done.
Alternatively, you can start the servers individually:
cd workflows
uvicorn backend.api:app --reload
cd ui
npm install
npm run dev
Once both servers are running, you can access the Workflow GUI at http://localhost:5173 in your browser. The UI allows you to:
- Visualize workflows as interactive graphs
- Execute workflows with custom input parameters
- Monitor workflow execution logs in real-time
- Edit workflow metadata and details
workflow-use-demo.mp4
workflow-use-gregor-demo.mp4
- 🔁 Record Once, Reuse Forever: Record browser interactions once and replay them indefinitely.
- ⏳ Show, don't prompt: No need to spend hours prompting Browser Use to do the same thing over and over again.
- ⚙️ Structured & Executable Workflows: Converts recordings into deterministic, fast, and reliable workflows which automatically extract variables from forms.
- 🪄 Human-like Interaction Understanding: Intelligently filters noise from recordings to create meaningful workflows.
- 🔒 Enterprise-Ready Foundation: Built for future scalability with features like self-healing and workflow diffs.
Show computer what it needs to do once, and it will do it over and over again without any human intervention.
- Nice way to use the
.json
files inside python code - Improve LLM fallback when step fails (currently really bad)
- Self healing, if it fails automatically agent kicks in and updates the workflow file
- Better support for LLM steps
- Take output from previous steps and use it as input for next steps
- Expose workflows as MCP tools
- Use Browser Use to automatically create workflows from websites
- Improve CLI
- Improve extension
- Step editor
- Allow Browser Use to use the workflows as MCP tools
- Use workflows as website caching layer