- Remove local template files (advanced, default, tools)
- Fetch templates dynamically from template-library repo
- Add templates.json for dynamic template discovery
- Fetch both template list and content at runtime from GitHub
- Fall back to hardcoded FALLBACK_TEMPLATES for offline use
- Add binary file fetching support for PDFs and assets
- Enable instant template updates without code changes
Templates now managed in: https://github.com/browser-use/template-library
Benefits:
- Add new templates by editing template-library only
- Users get instant access without PyPI releases
- Cleaner separation of concerns
- No template files in main codebase
Add click, rich, and InquirerPy to core dependencies to enable
'uvx browser-use init' to work out of the box with beautiful styling
and arrow-key template selection.
Dependencies added to core (all permissive licenses):
- click>=8.1.8 (BSD-3-Clause, 756KB, zero deps)
- rich>=14.0.0 (MIT, 1.8MB, 2 deps: markdown-it-py, pygments)
- InquirerPy>=0.3.4 (MIT, 483KB, 2 deps: prompt-toolkit, pfzy)
Total impact: ~3MB + 4 transitive dependencies
All licenses are compatible with browser-use's MIT license.
Benefits:
- uvx browser-use init works without [cli] extras
- Beautiful terminal output with colors and panels
- Arrow-key navigation for template selection
- Consistent UX across all init methods
[cli] extras now only contain textual for the full TUI application.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add click to core dependencies (moved from [cli] optional deps)
- Create standalone browser_use/init_cmd.py with template generation logic
- Add early check in cli.py to redirect 'init' subcommand to init_cmd.py
- This allows 'uvx browser-use init' to work without installing textual/rich
Users can now run template generation with minimal dependencies:
uvx browser-use init # Interactive template selection
uvx browser-use init -t default # Generate default template
uvx browser-use init --list # List available templates
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>