Free Browser Agent CLI — undetectable browser automation for AI agents. Controls your real browser via CDP.
Project description
FreeAct — Free Browser Agent CLI
Browser automation for AI agents that cannot be detected as automation.
FreeAct controls your real browser — the one you use every day. No new profiles, no re-logins, no lost passwords. Anti-bot systems see a normal user, because it IS your normal browser.
Quick Start (30 seconds)
# 1. Install
pip install freeact
playwright install chromium
# 2. That's it! A shortcut "Yandex (FreeAct)" appears on your desktop.
# Use it for daily browsing — freeact connects anytime.
# 3. Connect to your browser
freeact connect
# → Connected! 5 tabs — your profile, passwords, everything intact
# 4. Interact with any page
freeact --session live state # 96 indexed elements
freeact --session live input 12 "iPhone" # Type in search
freeact --session live keys Enter # Press Enter
freeact --session live wait stable # Wait for results
freeact --session live get markdown # Extract content
# 5. Extract any URL (no browser needed)
freeact stealth-extract https://example.com
# 6. Solve CAPTCHAs (free, multi-strategy)
freeact --session live solve-captcha
How It Works
You open Yandex (FreeAct) shortcut → normal browsing, all your logins work
↓
Browser runs with CDP on port 9222
↓
freeact connect → attaches to YOUR browser
↓
AI agent controls YOUR tabs, YOUR logins, YOUR pages
No copying, no restarting, no re-logging in. The browser you use every day.
Features
Live Browser Mode — Control Your Real Browser
freeact connect # Connect to your running browser
freeact tabs # List all open tabs
freeact tab switch 0 # Switch to a tab
freeact tab new https://site.com # Open new tab
freeact tab close 2 # Close tab
# All commands work on current tab (session: live)
freeact --session live state # Indexed elements
freeact --session live click 6 # Click by index
freeact --session live input 2 "text"
freeact --session live get markdown
CAPTCHA Solver — Free & Multi-Strategy
freeact --session live solve-captcha
Audio → speech-to-text. OCR → image recognition. Behavioral → mouse simulation. reCAPTCHA v2, hCaptcha, Cloudflare Turnstile. All free.
Daemon Mode — Persistent Browser
freeact daemon start # HTTP server on 127.0.0.1:9341
freeact daemon stop # Commands are instant when daemon runs
Standalone Browser — For Anti-Bot Sites
freeact browser create --name wb --desc "Wildberries"
freeact --session wb browser open <id> https://www.wildberries.ru
Launches browser via subprocess. Zero automation flags. Undetectable.
Remote Assist & Skill Forge
freeact --session live remote-assist --objective "Log in"
freeact forge --name scraper --url https://site.com
All Commands
| Group | Commands |
|---|---|
| Setup | setup — create desktop shortcut (auto-runs on first launch) |
| Live Browser | connect, tabs, tab switch/close/new |
| Daemon | daemon start/stop/status |
| Browser | browser create/open/list/update/delete/types |
| Navigation | navigate, back, forward, reload |
| Interaction | click, input, hover, select, keys, scroll, scrollintoview, upload |
| Extraction | get title/text/html/markdown/value, eval, screenshot |
| Network | network requests/request/clear |
| CAPTCHA | solve-captcha |
| Remote | remote-assist |
| Skill | forge |
| Session | session list/close |
| Other | stealth-extract, get-skills, proxy, wait |
Browser Support
| Type | Browser | TLS Fingerprint | Anti-Bot |
|---|---|---|---|
yandex |
Yandex Browser | Yandex native | Bypasses Wildberries, Ozon, Avito |
chrome |
Google Chrome | Chrome native | General use |
edge |
Microsoft Edge | Edge native | Enterprise |
chromium |
Playwright Chromium | Standard | Headless only |
Project Structure
freeact/
├── freeact/
│ ├── cli.py # Typer CLI — 40+ commands
│ ├── live.py # Live browser (CDP — user's real browser)
│ ├── daemon.py # HTTP server for persistent browser
│ ├── browser.py # Real browser launch + CDP
│ ├── captcha.py # Multi-strategy CAPTCHA solver
│ ├── session.py # Session persistence
│ ├── state.py # Indexed element tree [N]
│ ├── interaction.py # click, input, hover, scroll, upload
│ ├── extraction.py # get markdown/text/html, screenshot, eval
│ ├── network.py # XHR/fetch interception
│ ├── stealth.py # Anti-detection patches
│ ├── proxy.py # SOCKS5/HTTP proxy
│ ├── remote.py # Remote assist
│ ├── skillforge.py # Skill generator
│ ├── skills.py # get-skills for AI agents
│ └── config.py # ~/.freeact/ configuration
├── SKILL.md # OpenCode/Claude Code skill
└── pyproject.toml # Package config
Installation
pip install freeact
playwright install chromium
A «Yandex (FreeAct)» shortcut appears on your desktop automatically. Use it for daily browsing. FreeAct connects anytime.
Optional Dependencies
pip install SpeechRecognition # Audio CAPTCHA
pip install pytesseract # Image CAPTCHA (also needs Tesseract installed)
For AI Agents (OpenCode, Claude Code, Cursor)
Install freeact skill from https://github.com/xuviga/freeact
Or manually: cp SKILL.md ~/.config/opencode/skills/freeact/SKILL.md
How It Beats Anti-Bot
| Protection | FreeAct |
|---|---|
| IP reputation | Same IP as user's normal browsing |
| WebDriver detection | No --enable-automation flag |
| Canvas/WebGL fingerprint | Real browser GPU + stealth patches |
| reCAPTCHA | Free audio/OCR solver |
| Turnstile (Cloudflare) | Human-like behavioral simulation |
| Profile/cookie check | Real profile — user's actual cookies |
| Session/auth check | Already logged in everywhere |
Changelog
v0.3.1 — Auto-Setup
- Desktop shortcut auto-created on first run
connectnever kills or restarts browser- Original profile used directly — no copy, no data loss
v0.3.0 — Live Browser Mode
connect,tabs,tab switch/close/new--session livefor real browser control
v0.2.0 — Daemon, CAPTCHA, Remote, Forge
- Daemon mode, CAPTCHA solver (4 strategies), Remote assist, Skill Forge
v0.1.0 — Initial Release
- Real browser mode, indexed interaction, network capture, stealth extraction
License
MIT — no API keys, no paid tiers, no cloud.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file freeact_cli-0.3.1.tar.gz.
File metadata
- Download URL: freeact_cli-0.3.1.tar.gz
- Upload date:
- Size: 38.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b005909594b4b4796e6130ef2d6beb3e017ae188725c6cbc779e47a73dd3265e
|
|
| MD5 |
4ac3f7316677640d4f8be606d02ef635
|
|
| BLAKE2b-256 |
67c99031c16113051cedd1251d1fba3dea313241a123ee5528297eb1478270d9
|
File details
Details for the file freeact_cli-0.3.1-py3-none-any.whl.
File metadata
- Download URL: freeact_cli-0.3.1-py3-none-any.whl
- Upload date:
- Size: 44.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e651031556c4a8ee9a4df2d3ce3d6b978de2c14c00f7cbcbb70219179c54be43
|
|
| MD5 |
da4a997c4a375943ae452fb48c440427
|
|
| BLAKE2b-256 |
4aedfccbe256dc1300285a7ce5b1fed576d9bd8787f809af7a4b04b9965405e4
|