
Visual flow canvas
Drag-and-drop blocks for clicks, navigations, waits, conditionals, loops, data extraction, screenshots and more. The same canvas analysts and ops engineers use to ship automations without writing code.
Visual no-code canvas, scheduled triggers, task queues and a library of pre-built blocks — running on top of isolated profiles and real device fingerprints. RPA the way browser automation should have always worked.

Afina's RPA is a full visual canvas with branches, conditionals, loops and data steps — and a triggers engine that fires flows on schedules, emails, webhooks or other flow events. Power scripts via the local API or extend them with Node.js modules.

Drag-and-drop blocks for clicks, navigations, waits, conditionals, loops, data extraction, screenshots and more. The same canvas analysts and ops engineers use to ship automations without writing code.

Run flows on a schedule (every 6 hours, weekdays 09:00–18:00), when a new email lands in an IMAP inbox, on a webhook, or chained from another flow. No external orchestrator needed.

Pre-built blocks for navigation, element handling, captcha solving, file uploads, database access, executeModule (Node.js), eval, screenshots, CSV reading and more. Inspired by the scripts-and-automation primitives.

Run one flow across 200 profiles in parallel with explicit activeSession limits, repeatCount, timeouts and per-profile live logs. Same primitives that power the MCP server's task tools.
Open the visual canvas, drop a couple of blocks, attach it to a trigger and watch it run across all your profiles.
RPA in Afina is a drag-and-drop visual canvas plus a block library plus a scheduler — automate any browser action across hundreds of profiles without writing code. Pair with the local API, Node.js modules and the per-profile fingerprint engine for fully isolated, fingerprint-aware automation.
Puppeteer / Playwright scripts are powerful, but every workflow ends up rewriting the same login, click, screenshot, retry logic. RPA gives you those primitives as draggable blocks, with per-profile execution, retry-on-fail, per-step screenshots and a live log — and you can drop into JS modules for the parts that need real code.
Drag blocks onto a canvas, connect them with arrows, add conditionals and loops. The same flow runs across one profile or a batch of 500 — no code rewrite. Detailed automation logic guide covers conditionals, loops and error handling.
Navigation, clicks, fills, form submission, screenshots, cookie ops, file upload, OCR, CAPTCHA handing, IF / ELSE / LOOP, variable assignment, HTTP requests, database queries, email reads. Each block is composable; modules cover the long tail.
Run on schedule (cron, "every 6h between 10 and 18"), on event, manually from the desktop, or programmatically through the local API. Task groups parallelise runs across profiles with per-profile retries and timeouts.
Pull ${variable} values from per-account vault — passwords, seed phrases, custom config. The same script works on every account without per-instance edits.
When a flow needs real code — a custom API call, a crypto signature, a complex parser — drop into a signed Node.js module. The block calls into the module, returns a value, the rest of the flow continues.
Affiliate teams warm Meta / TikTok accounts overnight. SMM ops auto-post and auto-comment across portfolios. Airdrop farms sign transactions and claim tokens. SEO agencies check ranks across 500 keywords from country-pinned proxies. Data teams scrape SERPs and marketplaces. The visual canvas keeps marketers productive; modules and the API keep engineers in their lane.