by ethanplusai
Sellbird (formerly Harvey): the open-source outreach platform that runs on your Claude or ChatGPT plan. Finds companies and decision makers, verifies emails, writes personal cold email, sends it and handles the replies.
# Add to your Claude Code skills
git clone https://github.com/ethanplusai/sellbirdGuides for using ai agents skills like sellbird.
Last scanned: 11/7/2026
{
"issues": [
{
"file": "CLAUDE.md",
"line": 308,
"type": "dangerous-command",
"message": "Dangerous command (disables permission prompts): \"--dangerously-skip-permissions\"",
"severity": "medium"
}
],
"status": "PASSED",
"scannedAt": "2026-11-07T10:53:34.995Z",
"npmAuditRan": true,
"pipAuditRan": false,
"promptInjectionRan": true
}See how sellbird compares with popular alternatives.
sellbird is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by ethanplusai. Sellbird (formerly Harvey): the open-source outreach platform that runs on your Claude or ChatGPT plan. Finds companies and decision makers, verifies emails, writes personal cold email, sends it and handles the replies. It has 4,664 GitHub stars.
Yes. sellbird 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/sellbird" and add it to your Claude Code skills directory (see the Installation section above).
sellbird 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 sellbird against similar tools.
No comments yet. Be the first to share your thoughts!
From $49 · 30 days · terms & refunds
⚠️ 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.
Automated security scan — not a certification.
Harvey is now Sellbird. Same project, same history, new name. Already running Harvey? Your setup carries over: see Upgrading from Harvey.
Prefer not to run it yourself? sellbird.ai is the hosted version, with sending domains, inboxes and warmup set up for you. It's in early access.

The demo data is invented: "Bookwell" selling online booking to roofers, dental practices and HVAC shops, on .test domains.
Sellbird is a pipeline you can run end to end, or stop at any step.
| What happens | More | |
|---|---|---|
| Find companies | Searches for businesses that match your customer: free on OpenStreetMap, or on a paid source you pick. Every paid search shows its cost before it runs. | Discovery |
| Learn why they'd buy | Reads each company's own website for the buying signals you confirmed, like no online booking, ads running or a role they're hiring for. No model calls, no cost. | Signals |
| Find who decides | Finds the owner or manager named on the company's own pages, two people per company at most. | Enrich |
| Check the address | Learns the company's email pattern and verifies one address. Every address is marked verified, risky, guess or invalid, and only deliverable ones are ever sent to. | Verify |
| Write and send | Writes a short sequence for each person from what it found, then sends from your Gmail, Microsoft 365 or SMTP mailbox inside your daily limit and their office hours. | Sending |
| Handle replies | Reads every reply, drafts an answer, sets auto-replies aside, honours opt-outs at once, and hands you anything it shouldn't answer alone. | Dashboard |
Only want the list? Stop after verifying and run sellbird export for a sequencer-ready CSV of everything it found.
$ sellbird run
============================================================
Sellbird is online.
============================================================
Checking pipeline state...
Decision: write_campaign (3 new prospects with no drafts)
handler → Elena Park, Harbor Dental Studio interested, answer drafted
handler → Priya Nair, Highline Roofing objection, answer drafted
writer → 2-email sequence: Phoenix HVAC hiring a dispatcher
outbox → 5 emails waiting for your approval
Cycle complete. Sleeping for 15 minutes.
Sellbird thinks through the Claude Code CLI on your Claude Pro or Max plan, or through Codex on a ChatGPT plan. There's no API key and no per-token billing, and Sellbird throttles itself to leave room for your own work.
| Claude Pro or Max, or a ChatGPT plan with Codex | the subscription you already have |
| Finding businesses | $0 on the default source, or about $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 and a mailbox (about $7 a month for Google Workspace) |
| Prospecting tools | None. No Apollo, ZoomInfo, Clearbit or Clay. |
How the loop, the budget and the isolation work: How Sellbird works.
You need:
brew install python@3.13 first if python3 --version says so.claude login), or a ChatGPT plan with the Codex CLI (Codex setup).git clone https://github.com/ethanplusai/sellbird.git
cd sellbird
claude
Then say "set up Sellbird for me". The repo's CLAUDE.md turns Claude Code into the setup guide: it checks where you are, installs what's missing, asks what it needs and trains Sellbird on your product.
# 1. Install. Use python3.13, not python3: on macOS bare python3 is 3.9.
python3.13 -m venv .venv && source .venv/bin/activate && pip install -e .
# 2. Add credentials. Every variable is documented inline.
cp .env.example .env && $EDITOR .env
# 3. Learn your product from your website (writes sellbird.local.yaml).
sellbird train https://your-company.com
# 4. Confirm what makes a good prospect.
sellbird signals --confirm free
# 5. Find businesses. The default source is free and needs no account.
sellbird discover
# 6. Open the dashboard and start the loop.
sellbird dashboard # prints a private link to http://127.0.0.1:5555
sellbird run
On Linux you can also run it with Docker.
Every outgoing email waits in the Outbox for your approval until you turn on autopilot yourself. Before anything leaves, a pre-send check with no model involved rejects unfilled merge tags, banned phrases, overlong emails, extra links and undeliverable addresses. Autopilot still holds back any email that links to a domain that isn't yours or quotes Sellbird's own instructions. sellbird sending pause stops everything at once.
Details: Approval and sending and Legal and deliverability.
Harvey was renamed Sellbird in 0.4.0. Your configuration, data and dashboard sign-in carry over:
git pull
pip install -e . # once, to get the new `sellbird` command
sellbird dashboard
harvey.local.yaml to sellbird.local.yaml and data/harvey.db (and its log) to data/sellbird.*. It never overwrites a file that already exists under the new name, and waits if a Harvey process is still running from the folder. Stop that first.HARVEY_* environment variables still work when the SELLBIRD_* one isn't set; rename them when convenient.harvey command and python -m harvey still work for now and say they moved. They will be removed in a later release.harvey.yaml directly, git pull stops with "your local changes would be overwritten". Run git stash, git pull, then git stash pop. Git carries your edits into sellbird.yaml. If it reports a conflict there, keep your lines, delete the conflict markers, and run git stash drop. Better still, put your settings in sellbird.local.yaml, which git never touches.sellbird. Run docker compose down, git pull, docker compose build, then docker compose up -d. HARVEY_UID/HARVEY_GID are still read.Links to github.com/ethanplusai/harvey keep working: GitHub redirects them here.
Your config, knowledge and data live in one home folder. Which one, first match wins:
SELLBIRD_HOME, if you set it (the Docker image sets it to /app).pip or pipx), your user data folder:| Home folder | |
|---|---|
| macOS | ~/Library/Application Support/sellbird |
| Windows | %APPDATA%\sellbird |
| Linux | ~/.local/share/sellbird (or $XDG_DATA_HOME/sellbird) |
Inside it are sellbird.yaml (and sellbird.local.yaml once you train), .env,
prompts/ and skills/, all yours to edit. An installed package copies the defaults in on
first run and never overwrites them, so your edits survive upgrades. data/ holds the
database, the logs and the dashboard token.
| Guide | What's in it |
|---|---|
| How Sellbird works | The heartbeat loop, the subscription budget, project structure and the ideas behind it |
| [Signals and |