Build browser bots

A bot is just a script that does the browser work you would otherwise do by hand. It clicks, types, scrapes, and downloads, on a schedule, while you do something better. The word sounds dramatic, but most useful bots are wonderfully boring. There are three ways to start, with no code, with code, or with a Claude skill.

What I mean by a bot


A bot is a set of browser steps that runs on its own. It opens a page, clicks what you would click, types what you would type, reads what you would read, and saves the result. One bot might fill a form, another might pull a daily report, another might move data from one tool to the next. A testing bot might run through a sign-up flow on a schedule to check it still works. Whatever the task, a bot is just you, automated, doing the same thing without getting bored or making typos.

Most bots are boring, and that is the point


The word bot does a lot of heavy lifting. People hear it and think of spam, scrapers, and click farms. The bots most people actually need are nothing like that. They fill a timesheet, download an invoice, check a price, update a record. Dull, repetitive, and exactly the work a person should not be doing by hand.

There is a line, and it matters. A good bot works at a reasonable pace, on sites and data you are allowed to use, and within a site's terms. A bad bot hammers a server, fakes signups, or scrapes behind a login it has no right to. axiom is built for the boring, useful kind, and the same care that keeps a bot reliable also keeps it a good web citizen.

Who this is for


This is for anyone with a browser task they do too often. Pulling the same report, filling the same form, copying data between the same two tools every week. You do not want to learn a programming language to win an hour back, you just want the boring part handled. No-coders and coders both, since you can build a bot without code and drop into code when you want.

How I'd approach it


Pick one task and one bot. Do not try to automate your whole week on day one. Take the thing you do most often, write down the steps you take by hand, and build those. Run it on real data once and watch it work. When it is solid, set it on a schedule. Then build the next one.

One bot, one task, proven before you trust it. That is the order that actually sticks. I would lay out the first draft with Build with description.

Build a bot from a description


Describe the task in plain words in the Chrome extension and it builds the steps for you. Give it a few short lines, check what it made, and run it. Explore no-code. Note: Build from description is coming very soon. In the meantime you can still use the no-code builder.

To the right is an example. Describe the task and let the AI lay out the steps of your bot.

Chrome extension
Describe your automation

Instructions

  • Go to the dashboard and log in30 / 500
  • Read the open tasks on the page31 / 500
  • Update each one from a Google Sheet35 / 500
  • Save the change15 / 500
  • Move to the next task21 / 500

Build a bot in code


Build with code. If you would rather script it yourself, this is the path. Explore code

Connect Playwright (or Puppeteer) to our cloud Chromium and write the same scripts you'd run locally, without managing the browser.

Code tool
Code example
import { chromium } from "playwright";

const browser = await chromium.connectOverCDP(
  `wss://cdp-lb.axiom.ai/?token=${process.env.AXIOM_API_KEY}`
);

try {
  const context = browser.contexts()[0];
  const page = context.pages()[0] ?? await context.newPage();

  // Log in once
  await page.goto("https://example.com/login");
  await page.fill("#email", process.env.SITE_EMAIL);
  await page.fill("#password", process.env.SITE_PASSWORD);
  await page.click("button[type=submit]");

  // A bot is just these steps, repeated for every item in a queue
  await page.goto("https://example.com/queue");
  const tasks = await page.$$(".task");

  for (let i = 0; i < tasks.length; i++) {
    await page.goto("https://example.com/queue");
    await page.$$(".task").then(items => items[i].click());

    await page.waitForSelector(".task-detail");
    await page.click(".mark-done");
    await page.waitForSelector(".done");
  }
} finally {
  await browser.close();
}

Build with a Claude skill

Build no-code or code bots with a skill.

Add the Claude skill and describe the task. It builds the bot for you, no-code or code, the boring repetitive kind that just gets the work done.

Claude building a browser bot from a description

What can a bot do?


Most browser work. A couple of cases worth knowing first.

Works well

  • Filling and submitting forms
  • Pulling reports and exports
  • Moving data between web apps
  • Updating records on a schedule
  • Checking prices or status
  • Testing a web flow end to end

Harder

  • Sites with strong bot detection
  • 2FA and captcha-gated logins
  • Tasks that need real human judgment

Don't try

  • Spam, fake signups, or click farms
  • Scraping behind a login you have no right to
  • Anything against a site's terms

What I'd watch out for


A bot is only as reliable as the page it runs on. Here is what I would watch for.

Build one bot at a time

The fastest way to give up is to automate everything at once. Build one bot that does one task, run it for a week, then build the next. Small and proven beats big and broken.

Sites change, bots break

A bot depends on the page staying roughly the same. When a site updates its layout, repick the element with the selector tool, or describe the change to Claude and have it patch the bot. Plan for it, it is the nature of the web.

Be a good bot

Run at a human pace, on sites and data you are allowed to use, and within a site's terms. A bot that hammers a server or fakes activity gets blocked, and rightly so.

Login and sessions

If a bot needs to be signed in, store the cookies so the session carries over, or sign in as a step. Decide which before you schedule it.

"The best investment we've made in our automation workflow. Simple yet powerful."

Jennifer Brown

"I was skeptical about no-code automation, but Axiom proved me wrong. It's incredibly powerful."

David Wilson

"Axiom has saved me countless hours. The automation possibilities are endless."

Robert Taylor

"The best browser automation tool I've used. The AI features are game-changing for complex workflows."

Sarah Johnson

"The visual builder is a dream come true. No more writing complex scripts!"

Lisa Anderson

"Axiom has completely transformed how I handle browser automation. The no-code interface is intuitive and powerful."

John Smith

"Finally, a tool that makes browser automation accessible without compromising on power. Highly recommended!"

Michael Chen

Fast to build. Easy to run and scale. Outstanding support.

Start for free. No credit card required.