by ethanplusai
Autonomous AI sales agent powered by Claude Code. Finds prospects, writes cold emails, sends campaigns, handles replies, books meetings. No API keys needed — runs on your Claude Max subscription.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
# Add to your Claude Code skills
git clone https://github.com/ethanplusai/harveyGuides for using ai agents skills like harvey.
Last scanned: 10/13/2026
{
"issues": [
{
"file": "CLAUDE.md",
"line": 235,
"type": "dangerous-command",
"message": "Dangerous command (disables permission prompts): \"--dangerously-skip-permissions\"",
"severity": "medium"
},
{
"file": "README.md",
"line": 62,
"type": "dangerous-command",
"message": "Dangerous command (disables permission prompts): \"--dangerously-skip-permissions\"",
"severity": "medium"
}
],
"status": "PASSED",
"scannedAt": "2026-10-13T11:27:24.349Z",
"npmAuditRan": true,
"pipAuditRan": false,
"promptInjectionRan": true
}See how harvey compares with popular alternatives.
An autonomous sales agent that runs on your Claude Code subscription.
Harvey finds businesses worth selling to, learns something specific about each one, writes cold email that references it, sends it, reads the replies, and works the conversation toward a meeting. It runs on your machine, in a loop, on its own.
The unusual part: there is no API bill. Harvey drives the claude CLI in headless mode, so every decision, every email, every reply it handles is billed against the Claude Pro or Max subscription you already pay for. Not an API key. Not per-token. The subscription.
$ harvey run
============================================================
Harvey is online. Always Be Closing.
============================================================
Checking pipeline state...
Decision: prospect (only 3 new prospects; pipeline needs leads)
discover → 41 businesses in Portland, OR ($0.00, OpenStreetMap)
profile → 41 sites read, 288 observations (free, no model calls)
scout → 12 scored against your ICP
Decision: write_campaign (12 new prospects with no drafts)
writer → 3-email sequence for Cascade Landscaping
outbox → 12 emails waiting for your approval
Cycle complete. Sleeping for 15 minutes.
And the dashboard it keeps, at localhost:5555 — confirming a signal, building a
cohort out of the confirmed ones, pricing a discovery run before it spends
anything, and approving mail one message at a time:

Every other autonomous sales agent bills you per token. That is the whole reason they cost what they cost: an agent that thinks in a loop, all day, is an agent that burns API credits in a loop, all day. Vendors solve this by thinking less — shorter prompts, cheaper models, fewer passes.
Harvey sidesteps it. It shells out to the claude CLI:
claude -p "<prompt>" --output-format json --dangerously-skip-permissions
That is the same subscription-billed path claude uses interactively. So Harvey can afford to think properly: full skills library in context, careful personalization per prospect, real reply handling.
What this costs you:
| Claude Pro or Max | you already pay for it |
| Finding businesses | $0 on the default source, or ~$0.37 per 1,000 on the cheapest paid one |
| Reading their websites | $0 — three HTTP requests each, no model call |
| Writing and sending | your subscription + a mailbox (~$7/mo Google Workspace) |
| Prospecting tools | none. No Apollo, no ZoomInfo, no Clearbit, no Clay. |
For comparison, the tools Harvey replaces start at $250–500/month — and they are weakest precisely where Harvey is strongest: small local businesses with 5–50 people, where single-provider contact coverage caps out around 30% and micro-businesses are frequently absent entirely.
Harvey also budgets itself. It reads your live subscription quota the same way /usage does, and throttles so it always leaves headroom for your own interactive Claude work. Set max_daily_claude_percent: 80 and Harvey will stop before it starts costing you your own rate limit.
Honest caveat. Running an agent against a subscription is a grey area worth understanding for yourself. Anthropic's terms permit personal automation of your own account; they prohibit reselling access or sharing credentials. Harvey runs locally as you, with your login. Don't turn it into a service for other people.
Harvey runs a heartbeat: wake up, check the budget, decide what most needs doing, do it, log it, sleep. Every 15 minutes by default.
┌──────────────────────────────────────┐
↓ │
Wake → Quiet hours? → Budget OK? → Decide → Act → Log → Sleep
│ │
(sleep) (sleep)
It decides deterministically, not by asking Claude what to do — that would burn a call on something derivable from four counts:
handle replies > send campaigns > write campaigns > prospect > idle (analyze)
Profiling and outbox draining ride along on every cycle regardless, because they cost nothing and have to happen on schedule.
python3 --version. macOS ships 3.9; if that's what you have, brew install python@3.13 first.claude login)git clone https://github.com/ethanplusai/harvey.git
cd harvey
claude
Then say: "set up Harvey for me". The repo ships a CLAUDE.md that turns Claude Code into the setup wizard — it checks what state you're in, installs what's missing, asks what it needs, and trains Harvey on your product.
# 1. Install — note python3.13, not python3. On macOS bare `python3` is the
# system 3.9, and a venv built from it can't run Harvey.
python3.13 -m venv .venv && source .venv/bin/activate && pip install -e .
# 2. Configure — every variable is documented inline with where to get it
cp .env.example .env && $EDITOR .env
# 3. Learn your product from your website
harvey train https://your-company.com
# 4. Choose what makes a good prospect (see below — this one matters)
harvey signals --confirm free
# 5. Find businesses. Free source, no account needed.
harvey discover
# 6. Watch it work
harvey dashboard # http://localhost:5555
harvey run
This is the part that makes Harvey different from a black box, and it is deliberately not skippable.
Harvey knows how to collect 23 signals about a business. It does not collect any of them until you say so. On first run it proposes the catalog; you confirm, skip, or reject each one in the dashboard or from the terminal:
harvey signals # review the catalog
harvey signals --confirm free # everything that costs nothing (21 of them)
harvey signals --confirm SERP_RANK # a paid one, opted into explicitly
Every signal shows what it is in plain language, what it costs, and how many companies already carry it.
| Signal | What it tells you | |
|---|---|---|
| Discovery | SERP_RANK |
Where they rank for their own core search. Positions 11–30 are the sweet spot: visible enough to be trying, and losing. |
NO_WEBSITE |
They have a listing and a phone and no site. If you sell websites, the highest-intent signal that exists. | |
UNCLAIMED_LISTING |
Nobody has claimed their Google Business Profile. | |
REVIEW_RATING / REVIEW_COUNT |
Good but invisible, or visible but struggling. | |
| Profile | INCUMBENT_AGENCY |
Who currently has the account, credited in their own footer. Every detection builds a roster you can target as a whole book of business. |
RUNNING_GOOGLE_ADS / RUNNING_META_ADS |
They are spending on acquisition today. The strongest budget signal available for free. | |
NO_ONLINE_BOOKING |
Leads have to phone in, so after-hours demand is lost. | |
NO_SCHEMA_MARKUP |
A concrete, checkable SEO gap you can name in an email. | |
BLOG_STALE |
Content marketing started and abandoned. | |
SITE_PAGE_COUNT, TECH_STACK, BLOCKS_AI_CRAWLERS, HIRING_ROLE |
Size, platform, AI-search visibility, and what they're hiring for. | |
| People | CONTACT_FOUND, DECISION_MAKER_TITLE, LIKELY_OWNER, REGISTRY_VERIFIED |
Who decides, and whether they own the place. |
| Contact | EMAIL_PATTERN, EMAIL_STATUS, CONTACT_FORM_URL |
Whether you can actually reach them. |
Once signals are confirmed, the dashboard's cohort builder turns them into a target set — pick what a good prospect must have and what disqualifies them, and it counts the matches live:
Has a marketing agency AND running Google Ads AND NOT already has online booking
→ 23 companies
That is a campaign with a reason behind it. You know exactly why each of those 23 is on the list, and so does the email Harvey writes them.
Four stages. Each one runs independently, re-runs safely, and states its cost.
The only stage that spends money, so it always estimates first and never calls anything until you press go.
harvey discover --providers # the menu, with real prices
harvey discover --estimate # projected spend, then exits
harvey discover # go
| Source | Cost | Free tier | Best for |
|---|---|---|---|
| OpenStreetMap (default) | free | unlimited, no account | Trying the whole pipeline before paying anyone. Coverage is thin for businesses without a storefront: OSM maps premises, so whole trades are barely present (under 2,000 roofers and under 2,300 plumbers in the |
harvey is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by ethanplusai. Autonomous AI sales agent powered by Claude Code. Finds prospects, writes cold emails, sends campaigns, handles replies, books meetings. No API keys needed — runs on your Claude Max subscription. It has 218 GitHub stars.
Yes. harvey passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/ethanplusai/harvey" and add it to your Claude Code skills directory (see the Installation section above).
harvey is primarily written in Python. It is open-source under ethanplusai on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh harvey against similar tools.
No comments yet. Be the first to share your thoughts!