AI Agents Are Doing Your List Work. Give Them a Verification

Avatar for Paulo Matos Paulo Matos

Updated October 22, 2026

7 min read

AI Agents Are Doing Your List Work. Give Them a Verification

It's 2 a.m., and your AI agent is doing exactly what you asked. Before logging off, you told it to merge last month's CRM export with the leads from a trade show, remove the duplicates, and load the result into your new outreach sequence. It worked through the whole list without a single question.

By morning, the sequence had sent its first emails, and a chunk of them had bounced. Some addresses belonged to people who had changed jobs. A few were typos from the event's signup form. One batch came from a company domain that no longer exists.

Nothing malfunctioned. The agent did the job it was given, quickly and completely. What it didn't do was the thing a person does without thinking: notice that something looks off, and stop.

That's the shift worth planning for. As agents take on more of the list work, verification can't depend on someone remembering to do it. It has to be a step the agent takes.

Agents Do Exactly What You Ask, Including The Mistakes

A person working through a list builds in small pauses without noticing. They glance at the bounce report, spot a domain that looks strange, or ask a colleague before importing a file they don't recognize. None of that is written down as process. It's just how careful people work.

Agents don't have those pauses unless you give them one. They work at machine speed and keep executing the plan they were handed. So instead of one bad send that someone catches, a stale list turns into a steady run of bounces that continues until a person finally looks.

That run is what mailbox providers and sending platforms react to. Amazon SES, for example, puts an account under review when its hard bounce rate reaches 5% and may pause sending at 10%. Those thresholds don't care whether a person or an agent hit send. The bounce rate is yours either way.

Where Bad Data Enters An Agent's Workflow

Agents rarely create bad addresses. They inherit them, then move them faster than anyone could by hand. The entry points are the same ones teams have always had:

  • CRM exports. Contacts that were valid when they were added and have quietly gone stale since. B2B records go stale faster, because people change jobs and companies change domains.
  • Merged files. Two lists combined into one carry both lists' problems, plus new ones like duplicates and columns that don't line up.
  • Lead lists from events and partners. Addresses nobody on your team has ever emailed, often at business domains that accept mail for any address, which can make them impossible to confirm with certainty.
  • Signup forms. Typos and temporary inboxes, the problems covered in our post on verification in your signup flow.

There's one more worth naming. If you ask an agent to find an address it doesn't have, a guess like first.last@company.com looks exactly like real data. Tell your agent to leave the gap empty instead. Even a guess that passes verification belongs to someone who never asked to hear from you.

What The Emailable CLI Is, In Plain Terms

If the dashboard is Emailable with buttons, the Emailable CLI is Emailable with typed instructions. It's a small, free tool that runs in your computer's terminal and uses the same account, credits, and verification engine you already use.

What makes it useful now is who does the typing. An AI agent is an assistant that can take actions on your computer, like opening files and running commands. Claude Code, Codex, and OpenCode are three popular examples. Until now, giving an agent the ability to verify addresses meant someone building an integration with our API. With the CLI installed, the agent can do it out of the box.

That works because of a skill: a set of instructions that teaches an agent how to use the CLI, read the results, and recover from errors. The CLI offers to install it for Claude Code, Codex, and OpenCode the first time you run it. Any other agent that can run terminal commands works too.

One thing it won't work with: chat apps in a browser, like the ChatGPT or Claude websites. They can't run commands on your computer, so they can't use the CLI.

Adding A Verification Step

Setup takes a few minutes. You install the CLI with one command in your terminal. On a Mac or Linux machine, it's:

curl -fsSL https://emailable.com/install-cli | bash

Windows has its own one-line install through PowerShell, and the CLI docs list every option. Then type emailable and press Enter. A browser window opens so you can sign in to your Emailable account, and the CLI offers to install the skill for your agent. You only do this once per computer.

From there, you ask in plain English, and the agent runs the right command and reports back:

  • "Is john.smith@gmail.com a real address?"
  • "Check the addresses in signups.txt before I import them."
  • "Which addresses in newsletter.csv are risky?"
  • "Verify signups.csv and save the results so I can open them in a spreadsheet."

The results are the same ones you'd see in the dashboard. If an email bounced because of a typo like gmial.com, the agent can tell you why and suggest the address that was probably meant.

The more important decision is where the step goes. The best places are the moments data changes hands: before a file is imported into your CRM or sending platform, before an agent starts a sequence, and inside any import script your team already runs. You can even ask the agent to add verification to that script for you.

Give Your Agent Rules For What It Finds

An agent is only as careful as the instructions it's given. The decisions a person makes in their head while cleaning a list need to be written down for the agent, ideally once, in instructions you reuse. Four rules cover most of it:

  • Remove Undeliverable addresses. They will bounce. Take them out before anything is imported or sent, and have the agent save the results file so you can see why each one was removed.
  • Keep Risky addresses separate. Risky can mean an accept-all domain, a role address like info@, or a temporary inbox. Some are worth sending to, and some aren't, so have the agent set them aside for a person to decide. Have it sort by the result Emailable returns, not by how an address looks.
  • Hold Unknown results for a second look. Unknown means the receiving server didn't give a clear answer at the time, often because of a temporary issue or greylisting. Keep them out of the send and have the agent verify them again later.
  • Flag typos, don't fix them silently. A suggested correction is a good guess about what someone meant. It's still a guess, so a person should approve it before it replaces what's in your records.
  • Set limits on credits. Each verification uses a credit, the same as anywhere else in Emailable, and an agent working through large lists can use them quickly. Ask it to check your balance and confirm before big batches. If verification runs regularly, turn on auto-refill so a job doesn't stop halfway.

The examples on our AI Agents page show the agent asking before it removes or moves anything. That's the habit to keep.

One thing no rule can fix: a deliverable address isn't the same as a willing one. Verification tells you whether an address can receive mail, not whether its owner wants to hear from you.

Built For Agents, Scripts, And Scheduled Jobs

The features that sound dull are the ones that matter when software, not a person, reads the output:

  • JSON on every command, matching the API field for field, so an agent reads results exactly instead of interpreting text.
  • Stable error codes, so a script can tell "not signed in" from "try again in a minute" without guessing.
  • Automatic retries for rate limits and temporary failures, without ever submitting the same batch twice.
  • Keys kept out of your history. You sign in through the browser, and scheduled jobs can use an API key without it being typed into a command.

Results can go to a CSV file, a JSON file, or a webhook, and a single batch can hold up to 50,000 addresses, the same limit as the API.

The CLI is free and open source on GitHub, and it moved out of prerelease with version 1.0. If you run it in a scheduled job, test it on a small list first and check the release notes when you update.

Who It's For, And Who Doesn't Need It

The CLI is a good fit if you already use an agent like Claude Code, Codex, or OpenCode, if your team likes working in the terminal, or if you clean lists before importing them into a CRM. It also suits anyone who wants verification in scheduled scripts.

You don't need to know how to code. You do need an AI agent that runs in your terminal, and one install.

And if you upload a list to the dashboard once a month and that works for you, nothing changes. The CLI is another way to use Emailable, not a replacement. The dashboard, bulk verification, and the API all work exactly as before.

One More Step

Go back to that 2 a.m. run. The agent wasn't careless, and it didn't need to be smarter. It needed one more step between the merged file and the sequence: verify the list, set aside what's uncertain, and remove what will bounce.

That step used to depend on a person remembering to take it. Now it can be part of the job you hand over. Agents will do more of your list work either way, so make checking the list part of the work.