Macrosv1
Steps 0i
Repeat On failure
Drop here to add a step at the end
Data rows i
Start at rowPause between rowsno rows
Runs
WhenMacroRowsRepairsDurationResult
Results of the selected run
Repairs i
WhenMacro and stepSolved byOld locatorNew locatorConfidenceStatus
Triggers for this macro i
Schedule
Right-click menu entry
When a page opens that matches
Keyboard shortcut slot i
AI
Use AI to repair steps
Use my own OpenRouter key
Model
Send page text to the AI
Repairs
Save repairs without asking
Minimum confidence
AI tries per step
AI tries per run
Wait for me up to, minutes
Running
Speed
Random pause, ms fromto
Wait for an element up to, ms
Close cookie banners
Open the side panel when a run starts
Appearance and developer
Theme
Extension build
Reload the extension

How to use SmartMacros

Record your first macro

  1. Open the page where the task starts and press Record new macro in the side panel (click the toolbar icon to open it).
  2. Do the task once, the way you always do. Clicks, typing, selections and page changes are captured.
  3. Press Stop. The macro is saved with the page name and opens here for renaming.
  4. Press Run once to replay it, or add data rows and press Run rows to repeat it for every row.

Repeat with data

Open Data, paste a table or import a CSV. The first line holds the column names; they become variables. Type {{email}} in a step value to insert the current row's email. Built-in values: {{$row}}, {{$date}}, {{$random}}, functions such as {{upper(name)}}, {{random(8)}}, {{pad($row,3)}}.

When a step breaks

Websites change. When a step cannot find its element, SmartMacros tries the other locators it recorded, then looks for a similar element, then asks the AI (if you added a key), and only then asks you. Every repair is listed under Repairs with the old and the new locator, so you can keep it or revert it. Steps named delete, pay or confirm always ask you first.

Speed

Human adds random pauses between steps. Fast waits only for the page. Instant runs as fast as the page allows. Use Human on sites that rate-limit.

Triggers

Besides the Run buttons, a macro can start on a schedule, from the right-click menu, when a matching page opens, or with a keyboard shortcut. Set them under Triggers. Scheduled runs need Chrome to be open.

Results

Values saved with a Save as variable step form a results table, one row per data row. Export it as CSV or JSON, copy it, or re-run only the rows that failed.

Import from other tools

Import accepts SmartMacros JSON and iMacros .iim files (URL GOTO, TAG, WAIT, SET, ADD, EXTRACT, PROMPT, loops and data sources). Unsupported commands are kept as notes so nothing is lost.

Connect an AI (MCP)

Claude Desktop, Claude Code, Cursor and other MCP clients can write, run and repair macros for you. Needs Node.js 18 or newer.

  1. Side panel, Settings, AI access: switch on Allow AI clients. A pairing token appears.
  2. Press the config button next to the token. It copies a ready-made MCP config with your token.
  3. Paste it into your AI client. Claude Desktop: claude_desktop_config.json. Cursor: .cursor/mcp.json. Claude Code: claude mcp add smartmacros -e SMARTMACROS_TOKEN=... -- npx -y smartmacros-mcp.
  4. Restart the client. The status line in Settings changes to "connected" and the panel footer shows "AI connected".

The AI gets tools to list, create, edit, run and delete macros, watch a run and answer when it waits for you, look at the open page and run steps directly. Everything stays on this computer: the bridge listens on 127.0.0.1 only and refuses clients without your token. Runs the AI starts follow the same rules as yours. Switch AI access off to cut the link. Full guide: smartmacros.pages.dev/mcp.

Privacy

Macros, data rows and results stay in this browser. Nothing is uploaded and no account is needed. When the AI repairs a step it receives the failing step, its recorded fingerprint and a page excerpt with passwords, input values and long data attributes removed. Turn "Send page text to the AI" off to send only the fingerprint.

Keyboard

Deldelete the selected step in the editor
Ctrl Z / Yundo / redo in the editor
Escleave pick mode on the page