Qishuxing
Back to product

Automation Browser · Docs

A local-first desktop fingerprint browser. One Python core powers the CLI, HTTP API, and Electron GUI. The sections below cover install, commands, API, data paths, and env vars.

Install & launch

Run from source first, then switch to the Electron installer when ready. The Windows NSIS installer ships with the backend bundled via PyInstaller.

# 1. install Python package + Chromium
pip install -e .
playwright install chromium

# 2. pick one
yycbf serve              # start HTTP API + WebSocket
yycbf launch alice       # launch a profile from CLI

# 3. Electron GUI dev mode
cd electron && npm install && npm run dev

The release installer is named yyc-browser-fingerprint-0.1.0-x64-setup.exe (~129 MB). The Electron build output lives under electron/dist/.

Data paths

NameDescription
SQLite metadata (schema managed by Alembic)~/.yyc-bf/db.sqlite
Chromium user-data-dir per profile~/.yyc-bf/profiles/<name>/
Screenshots and flow artifacts~/.yyc-bf/artifacts/<flow>/<ts>.png
tar.gz backup destination~/.yyc-bf-backups/yycbf-<ts>.tar.gz

CLI cheatsheet

yycbf and yyc-browser-fingerprint are aliases of the same typer-based CLI. Subcommand groups by function:

CommandPurpose
yycbf profile <list|create|delete|...>profile CRUD; bind fingerprints and proxies
yycbf fingerprint generategenerate a fingerprint (printed, not persisted)
yycbf pool <list|create|import|export|...>proxy pool management
yycbf entry <add|test|delete>individual proxy entries (test, add, delete)
yycbf migrate <up|down|revision|history|current|stamp>database migrations (Alembic)
yycbf task <list|show|run|delete>batch tasks
yycbf schedule <list|add|toggle|delete>cron / event-triggered schedules
yycbf channel <list|add|test|delete>feishu / webhook / dingtalk channels
yycbf event <list|emit|clear>event bus
yycbf backup [-o file]tar.gz the entire ~/.yyc-bf
yycbf restore <file>restore from backup (old data kept as .bak.<ts>)
yycbf launch <name>launch a profile directly
yycbf servestart HTTP API + WebSocket server

HTTP API + WebSocket

`yycbf serve` starts FastAPI (uvicorn, default 127.0.0.1:18789). In production the Electron main process spawns it automatically.

NameDescription
Interactive OpenAPI docshttp://127.0.0.1:18789/docs
Route count (full table in docs/API.md)85 routes / 14 tags
WebSocket event streamws://127.0.0.1:18789/events

Subscribable event types (glob patterns supported):

log
event.fired
flow.run
chrome.progress
record.action_captured
task.run
session.*

Task orchestration

  • Task = profile list + flow + optional proxy pool + rounds + concurrency + headless
  • Run history persisted in task_run, with per-profile status
  • Retry failed: POST /task-runs/{id}/retry re-runs only previously failed profiles
  • Soft dependencies via depends_on: latest run of the upstream task must be success
  • Notification channels (feishu / webhook / dingtalk) dispatched by subscription, hookable to events and schedules

Environment variables

NameDescription
ANTHROPIC_API_KEYRequired for AI flow generation and AI selector
ANTHROPIC_BASE_URLOptional. Set to https://your-relay/v1 for a self-hosted gateway
ALEMBIC_URLOverride DB URL for tests/dev. Defaults to ~/.yyc-bf/db.sqlite
YYCBF_REPO_ROOTAfter PyInstaller packaging, locates alembic.ini / migrations
ELECTRON_MIRRORMirror for Electron downloads (use npmmirror inside China)
ELECTRON_BUILDER_BINARIES_MIRRORMirror for electron-builder binaries (required inside China)

Next steps

For the full route table and per-phase changelog, see docs/API.md and docs/CHANGELOG.md in the repository. For deployment or solution alignment, talk to us.