Your workspace at a glance — what needs a decision, and how the pipeline is moving.
Needs your attention
Recent activity
Campaign performance
Pipeline right now
Every message waits here for a decision. Review one at a time — approve, edit or discard. A approve, R reject, E edit, J/K to move.
The email addresses VSELL sends from. Each one has its own daily cap, and replies stay on the inbox that started the thread.
Every reply and how VSELL handled it. Handed-to-you threads are first; nothing is answered automatically while a thread waits for you.
Read and answer WhatsApp conversations, review VSELL's suggested reply, or take over the thread yourself.
Conversations
VSELL proposes what it knows how to look for. You decide what defines a good prospect — nothing is collected until you confirm it.
Pick the signals a good prospect must have — and any that disqualify them — and see how many companies match right now. Nothing is collected by asking.
Find businesses matching your ICP. Pick a source, see what it will cost, then run it — nothing is called until you press the button.
Create a new business search. Enter what you're looking for, where to search, and how to filter. The search runs in the background — you can close this page and come back later.
Saved search jobs, their progress, and results. View, filter, export, and launch outreach from discovered leads.
Organizations VSELL has researched, best fit first. Click a company to see its contacts and everything found on its site.
People VSELL has found, how sure it is of their address, and where each one stands.
Discovered contacts and companies with usable phone numbers. Filter by permission status and pipeline stage.
Campaigns VSELL has written and how far each one has got. Email sequences are shown with their recipients, steps and replies.
A running log of every action VSELL's agents have taken, newest first.
Model usage on your subscription (Claude or Codex): calls and tokens by provider, agent and task. Subscription plans aren't billed per token, so there are no dollar costs here.
Credentials are stored locally in .env and never sent anywhere except the services themselves.
Sending
Approval is the default: every email VSELL writes waits for you. Autopilot sends on its own, within the same limits and safety checks.
Connect the mailbox VSELL sends from and the services that verify the addresses it finds.
Email provider Active: …
Set channels.email.provider in sellbird.yaml to gmail, microsoft, smtp or instantly.
Gmail / Google Workspace Recommended
Use a mailbox on a dedicated secondary domain. Create an OAuth client (type "Desktop app") in Google Cloud Console → Gmail API, paste the id and secret, save, then sign in on the Inboxes tab (or run sellbird gmail auth).
SMTP + IMAP mailbox
Any real mailbox (AgentMail, Fastmail, a Workspace app password). IMAP defaults to the SMTP host and login if left blank.
Reading replies from a different IMAP server or login
Microsoft 365 / Outlook
Microsoft turned off password sign-in for IMAP, so Outlook mailboxes connect with OAuth. In Entra → App registrations, register an app for your organization only and add the redirect URI http://localhost:8766 as "Public client/native". Paste both IDs here, save, then sign in on the Inboxes tab (or run sellbird microsoft auth). No client secret is needed.
Instantly Legacy
Get your API key from Instantly Settings → Integrations (Growth plan or higher for API).
Email verification Strongly recommended
Add at least one so found emails get verified. Without any, addresses stay guess and are never sent. Reoon has the best free tier (600 a month).
Connect and manage WhatsApp accounts for outreach. Supports Baileys (self-hosted) and Meta Cloud API. Every message still waits for approval before it can send.
Connected accounts
Sending controls
Loading controls…
Meta message templates
Safety policy
These safeguards are enforced in the backend. They are not optional settings.
Integrations
Optional services used by discovery, training and prospecting.
For automated LinkedIn prospecting. VSELL logs in and searches like a human.
Cloudflare
Deep website crawling with JavaScript rendering during product training. About $5 a month.
Appearance
VSELL follows your system theme until you choose one. The choice is saved in this browser only.
VSELL remembers this per browser. The dashboard token and other data stay on this machine.
Start and stop VSELL's heartbeat loop, and watch what it's doing.
Agent
Recent logs
What VSELL is, how it works, and how to fix the usual problems.
What is VSELL?
VSELL is an open-source outreach platform. Once set up, VSELL runs on its own: finds people who match your ideal customer, writes personalized cold emails, sends them through your email platform, reads every reply, handles objections, and works toward booking a meeting. You review everything through this dashboard.
VSELL runs on your Claude Max subscription (or, if you opt in, your ChatGPT plan through Codex), so there are no extra AI costs. Everything stays on your machine in one folder.
Getting started
There are three things to do:
1. Go to Settings and connect an email provider (Gmail recommended) 2. Train VSELL on your product (through Claude or the command line) 3. Go to Controls and click Start
Today shows exactly what's done and what still needs to happen.
Where everything lives
Everything VSELL needs is inside this one project folder. Nothing is stored elsewhere.
| .env | Your API keys and credentials (never shared or committed) |
| sellbird.yaml | Your product info, target customers, and behavior settings |
| skills/ | Sales knowledge files. Edit these to change how VSELL writes and sells. |
| skills/product_knowledge.md | Everything VSELL knows about your product (auto-generated from training) |
| prompts/ | Prompt templates for each agent. Advanced customization. |
| data/sellbird.db | Database with all prospects, campaigns, and conversations |
| data/sellbird.log | Log file showing what VSELL is doing |
Getting your API keys
Instantly API key (legacy)
Instantly is the legacy sending option; Gmail or SMTP is recommended.
1. Sign up at instantly.ai (you need the Growth plan for API access)
2. Go to Settings > Integrations
3. Copy your API key
4. Paste it in Settings → Email here
LinkedIn credentials (optional)
If you want VSELL to find prospects on LinkedIn, enter your LinkedIn email and password. VSELL uses a real browser to search LinkedIn like a human would, with random delays and rate limits to avoid detection.
If you skip this, VSELL will find prospects through Google searches and company website scraping instead.
Cloudflare Browser Rendering (optional)
This is only used during product training (when VSELL crawls your website to learn about your product). It handles JavaScript-heavy websites that a basic crawler can't read.
1. Sign up at Cloudflare (paid Workers plan, ~$5/month)
2. Go to Workers & Pages > Browser Rendering
3. Create an API token with Browser Rendering Edit permissions
4. Enter your Account ID and API Token in Settings → Integrations
Without this, VSELL uses a built-in crawler that works fine for most websites but can't render JavaScript.
Common issues
"command not found: sellbird"
source .venv/bin/activateInstantly API returns 401
Claude headless mode fails
claude login in your terminal and have an active Claude Max subscription. VSELL uses your existing subscription, not a separate API key.Codex calls fail
brain.provider: codex, set brain.model to an available model ID. Run codex login and choose "Sign in with ChatGPT". VSELL never renews your Codex login. See docs/codex.md for the full checklist.