AI-driven RPA for Windows desktops and the web

Automate the 90%.Master the 10%.

Most work repeats the same steps every day. That 90% runs on a robot, from a run plan the AI wrote for you, with no AI tokens per run. The 10% that changes, a new screen or a step that breaks, is where the AI and you work together: AI-Fix repairs the plan from the failure screenshot, and you steer it in chat.

90flow · Download Golden Copy
Illustration of how a plan is built, run and repaired
AI-writtendescribe the job in plain words, AI writes the run plan
Self-healingAI-Fix repairs a failed step and retries until it passes
0 tokensof AI cost on every scheduled run
~27×fewer tokens than an AI agent doing the job itself (1-year estimate below)
How it works

From a document to a bot that runs on its own

You describe the work. The AI writes the run plan, then AI-Fix runs it on the machine you choose and keeps repairing it until it passes. Once it passes, it runs on its own.

  1. 1

    Write the SDD

    Plain language, plus screenshots of the screens involved.

  2. 2

    AI writes the run plan

    Steps from a schema of 85 actions, validated before anything runs.

  3. 3

    AI-Fix: run, repair, repeat

    On the machine you pick, it runs the plan. Every failure goes to the AI with the screenshot and the real on-screen controls; the fix is saved as a new version and run again, until it passes.

  4. 4

    Runs on its own

    Publish the passing version and let a job or trigger run it: on a schedule, from a queue, unattended.

AI-Fix on WORKSTATION-01Download Golden Copy
  1. Round 1 · v21 ✗ Step 16 CLICK: image not found (closest match 0.71) ↳ AI re-cut the locator from the failure screenshot · saved v22
  2. Round 2 · v22 ✗ Step 19 WAIT_FOR_ELEMENT: CSV popup not found ↳ AI added the dialog's real selector, picked from 41 live controls · saved v23
  3. Round 3 · v23 ✓ All 28 steps passed ↳ Ready to publish and schedule
The loop stops on its own when a round passes, the same failure repeats, or the round limit is reached.
You and the AI

Change the plan by talking it through

In Work with AI, you and the AI edit the same run plan. Ask for a change in your own words and the AI answers with a new version you can read and apply. Steps you lock and images you provide stay exactly as you set them, whatever the chat or AI-Fix changes.

You

Before step 5, check whether the cookie banner is there, and only click Accept if it is.

AI

Added an Element exists check for the banner before step 5, and an IF on its answer around the click. 2 steps added, 1 moved.

Apply · v24
You

Lock step 16. That image is the right one.

AI

Step 16 is locked. Neither the chat nor AI-Fix will change it.

Every change, whether from you, the chat or AI-Fix, is a new version you can compare or go back to.

Why not just an AI agent

Stop paying tokens for the same job every day.

An AI agent that does a small job by itself pays for every screen it looks at and every decision it makes, on every run, for as long as the job exists. 90flow spends tokens once, to write the plan and to repair it when a screen changes. Every scheduled run after that costs no tokens at all.

Estimate your tokens for one year

90flow defaults are measured from this platform's own AI usage log: about 147,000 tokens per AI-Fix round, and a median of 22 rounds to get a plan passing. Tokens per agent step is an assumption (one screenshot plus the history it reasons over); change it to match your agent.

AI agent runs every job itself
$00 tokens
90flow: AI builds and repairs, the robot runs
$00 tokens
Saved in the first year
$0
Fewer tokens
0×

From the second year, 90flow only spends tokens on the repairs, while the agent's cost repeats in full.

AI agent doing it every time 90flow
AI cost per scheduled runPaid on every run, and it grows with every screen.None. AI is used only to build and repair the plan, and every call is logged with its cost.
Same result every timeThe agent may take a different path on a different day.The same steps in the same order. Locked steps and your own images never change on their own.
SpeedSeconds of reasoning before each action.A step that finds an element takes a fraction of a second.
What you can reviewA transcript after the fact.The exact plan before it runs: versioned, published as a package, with every step's result and screenshot afterwards.
Your business screensSent to the AI provider on every run.Stay on your network during scheduled runs. Screenshots go to the AI only while repairing, to the provider you choose, which can be a local model.
When a screen changesThe agent improvises, and you may not notice.The step fails clearly, AI-Fix repairs it once, and the fix becomes a new version you can check.

An AI agent is still the right tool for one-off tasks with no fixed steps. For work that repeats on a schedule, a plan that the AI wrote and keeps repaired is faster, cheaper and easier to trust.

Features

Built for the screens that break automation

Legacy desktop apps, browser pages that move, dialogs that only sometimes appear. 90flow is designed around finding things reliably and showing you exactly what happened.

Locators that fall back in order

Up to five per step, UI Automation selectors and images in any order. They're tried one by one, the first that works wins, and the run shows which one did.

Click exactly where you mean

Pick a point inside an image locator with Action on image. Clicks, hovers and typing use that point instead of the image's centre.

Work with AI

Ask for changes in a chat. The AI sees the SDD, the plan and recent runs, and proposes a new version for you to apply.

Attended or unattended

Unattended runs sign the machine in through its own remote-desktop session at the plan's screen resolution, and sign it out afterwards.

Jobs, triggers and queues

Pair a package with a machine as a job, fire it on a cron schedule or when a queue item arrives, and keep shared values and credentials as assets.

Watch every run

See the step running right now, each result with its screenshot and the locator that matched, and optional screen recordings on the machine.

Stop means stop

A cancel reaches the Agent within seconds, even halfway through a long wait, and the machine moves on to its next queued run.

Every AI call on record

Each generation, repair and chat reply is logged with the exact text sent and received, tokens and cost.

One step, three locators

The first locator that works is the one that runs.

A selector that changed in a new app build doesn't stop the run. The next locator takes over, and Step Results flag that a fallback was used, so a loose match never goes unnoticed.

#1ctrl title='Download LEI'UIA selector✗ 3.4s
#2lei-cdf-button.pngimage · click point (34, 12)✓ 0.5s
image matched at confidence 0.91 · clicking the chosen point, not the centre
Security

Your machines, your logins, your network

90flow signs into real Windows sessions and handles real business screens, so access is tied to individual machines from the first connection.

A key for every machine

Each Agent proves which machine it is with its own secret key. An Agent too old to send one is updated before it gets any work.

Approved machines only

A new machine connects with an enrollment code typed into its installer, or waits until an admin approves it.

Logins go to one place

A saved Windows login is stored encrypted and decrypted only for the run's own target machine. The web API never returns it.

Self-hosted

The Orchestrator, its database and the Agents all run on your own network, with retention limits you set for screenshots and recordings.

Your data and AI

What the AI sees, and what it never sees

Most of the work never touches an AI. Scheduled runs make no AI calls at all; the AI is only used while a plan is being built or repaired, and only with what you give it. Pick the case that matches your setup.

1

Building the plan

once per process, when you ask

Sent to your AI provider
  • The SDD text
  • Images you attach to the SDD
  • Knowledge items you choose

Describe the steps, not the data: “read the name in column A”, not the name itself. Use placeholders like [CLIENT_NAME] and screenshots taken on test data.

2

AI-Fix and chat

only while a plan is being repaired

Sent to your AI provider
  • The run plan and the failed step's error
  • The failure screenshot
  • Names of the controls on that screen
  • In chat: what you type, plus SDD, plan or run logs only if you tick them

A screenshot can show whatever is on screen. Run AI-Fix on a test machine with test data, or switch the AI to text-only so no image ever leaves.

3

Scheduled runs

every day after that

Sent to any AI

Nothing. 0 AI calls.

Your real business data is handled here, between the Agent and the Orchestrator on your own network.

Never sent to any AI

  • Windows login passwords: stored encrypted, never put in a prompt
  • The data your scheduled runs process
  • Anything to 90flow itself: it is self-hosted and sends no telemetry; the only outside call is to the AI provider you configure

Checklist for sensitive processes

  • Write the SDD with placeholders or synthetic data
  • Build and repair on a test environment, then publish to production
  • Switch the AI to text-only if no screenshot may leave
  • Use a provider whose API terms rule out training on your data, with a retention period your legal team accepts; that is part of your contract with them
  • Review every AI call in Audit → AI usage
“What if our SDD or Knowledge contains real customer data or trade secrets?”

The AI only needs the process logic, such as “click the search box and type the account number”, not the account number itself. Write SDDs with placeholders or test data, and scheduled runs then handle the real data without any AI involved.

For highly sensitive work (finance, healthcare, government), run the AI model inside your own network, and nothing is sent outside your firewall.

If you use a cloud model, you choose the provider and sign its terms directly, so retention and training rules are the ones in your own contract. Every AI call is recorded in the audit log for your security team to review.

Under the hood

What you deploy

OrchestratorWeb app and API: projects, run plans, packages, jobs, triggers, queues, assets, users and audit. Node.js with PostgreSQL.
AgentRuns on each Windows PC: UI Automation, image matching, keyboard and mouse input, file and download steps. Self-updates from the Orchestrator.
Run plansJSON with 85 actions, loops, branches, try/catch and variables. Every version is kept; published versions become packages.
AIYour own model provider, configured by an admin, including OpenAI-compatible APIs and locally hosted models.
Get started

Your first bot runs on your own machine

Set up takes three steps. Everything stays on your network.

  1. Start the OrchestratorRun it on a server or PC your Windows machines can reach, and sign in as the admin.
  2. Install the AgentRun the installer on each Windows PC with the Orchestrator's address and an enrollment code from the Agents page.
  3. Write your first SDDDescribe one process, let the AI build the run plan, and start AI-Fix to get it passing.