All guides

Free guide · Reel 42

Harvey, the open-source sales agent: how to set it up, what it really costs, and a no-code version to try first

Harvey is a free, open-source sales agent that runs in Claude Code on your own computer. You tell it what you sell and who you sell to. It finds businesses that fit, reads their websites, drafts a personal cold email for each one, and handles the replies, with every email waiting for your approval.

The code costs nothing. Running it does not: you need a paid Claude plan, a mailbox to send from and a bit of comfort with the terminal. This guide gives you the honest list, a setup prompt that lets Claude Code walk you through it, and a no-code version you can run in a normal chat today.

Who it's for

B2B businesses that sell to other local businesses and need more first conversations: commercial cleaners, IT support, accountants, signage and print shops, caterers for offices.

Our example: a commercial cleaning company in Nottingham that wants contracts with dental practices, small offices and gyms nearby.

What you need, and what it costs

This list comes from Harvey's own README on GitHub (github.com/ethanplusai/harvey). Read it there before you start, because open-source projects change.

  1. A paid Claude plan. Harvey runs on your Claude Pro or Max subscription through Claude Code, so you don't pay separately for each use. It still counts against your plan's usage limits, and the README says you can cap how much of your quota it uses.
  2. A mailbox to send from. The README recommends Gmail or Google Workspace on a separate secondary domain, so your main domain's reputation is safe. Workspace is a paid monthly subscription.
  3. A warm-up period. A brand-new mailbox that sends cold email tends to land in spam. The README recommends a warm-up service before you start, which can be another monthly cost.
  4. Python and the terminal. It needs Python 3.11 or newer and the Claude Code command line, logged in. If that sounds like a foreign language, start with the no-code version below.
  5. Your computer switched on. Harvey wakes up every 15 minutes by default and only runs while your machine is on. "24/7" means a computer or server that stays on.

Step by step

  1. Check the law first. Cold email rules depend on your country and on who you email. Check your country's anti-spam rules before sending (in the UK, PECR and UK GDPR). Every email needs your real name, your business and an easy way to opt out. This is not legal advice.
  2. Set up the sending mailbox. Create the secondary domain and mailbox, and start the warm-up. Use this time to do steps 3 and 4.
  3. Install Claude Code and log in. Follow Anthropic's install page for Claude Code, then log in with your Claude account.
  4. Let Claude Code install Harvey with you. Make an empty folder, open Claude Code inside it and paste the setup prompt below. It reads the README and walks you through each step, and asks before it installs or connects anything.
  5. Tell it what you sell. Describe your offer, your area and your ideal customer. Harvey shows you what it will look for, and you confirm before it starts prospecting.
  6. Approve every email. Drafts wait in Harvey's outbox on a local dashboard in your browser. Read each one, edit, and approve only what you would sign with your own name.

The setup prompt and the no-code version

The first prompt is for Claude Code. The second works in any Claude chat, no install, and gives you a list and first emails to try in ten minutes.

Prompt for Claude Code: install Harvey with me
Clone https://github.com/ethanplusai/harvey into this folder and read README.md in full, including the costs and the legal section.
Then walk me through the Quick start one step at a time:
- Before each step, tell me in plain English what it does and whether it costs money.
- Ask me before you install anything, create accounts, or connect my mailbox.
- Never put passwords or keys in files that could be shared or committed.
- Do not send any email. Stop when Harvey is running and the outbox is empty, and show me how to open the dashboard.
No-code version: prospects and first emails in a chat
You are my outbound sales assistant. Turn on web search.

My business: [e.g. commercial cleaning, Nottingham, 12 staff]
What I sell: [e.g. evening office cleaning, weekly or daily contracts]
My ideal customer: [e.g. dental practices, small offices and gyms with 5 to 50 people, within 10 miles of Nottingham]
Why people pick us: [e.g. same cleaner every week, DBS-checked team, no long contracts]

Step 1. Find 10 real businesses that match my ideal customer. For each: name, website, area, and one specific thing from their website or recent news that I could mention. If you can't confirm a detail, leave it out.
Step 2. For each business, write a cold email under 90 words: one line that shows I looked at them, one line on what I can do for a business like theirs, and one easy question. No made-up claims, no prices, no fake urgency. End with my name, my business and the line "Not relevant? Reply 'no' and I won't email again."
Step 3. Show everything in one table and wait. I will check and send the emails myself.

Three common mistakes

Sending from your main domain

If cold email gets marked as spam, your everyday invoices and quotes can start landing in spam too. Keep outbound on its own domain.

Believing "free" means no costs

The code is free. The Claude plan, the mailbox and the warm-up are not. Add them up before you decide.

Approving emails without reading them

Each email goes out under your name. Read the first few weeks of drafts properly, and fix the instructions every time something sounds wrong.

OUR EXTRA TIP

Run the no-code version for one week before you install anything.

Send 20 emails by hand. If nobody replies, the problem is the offer or the list, and no agent will fix that.

More free guides.

Every free guide from our Reels, in one place.