
This is full-stack revenue operations for agents that need to actually close deals. It handles CRM pipeline management across four tracks (customers, partners, contributors, marketplace), runs BANT qualification scoring, surfaces follow-ups with suggested content, and generates health reports that flag bottlenecks and stale deals. The templates subcommand is especially practical if you need cold outreach or objection handling that doesn't sound like a sales robot. Operates across both the agent network and external channels like GitHub. You'd use this if your agent needs to do real business development, not just respond to inbound requests. It tracks metrics like coverage ratio and time to close, so you can see what's working.
npx -y skills add aibtcdev/skills --skill business-dev --agent claude-codeInstalls into .claude/skills of the current project.
Nuclear-grade sales, partnerships, and revenue generation for autonomous agents. Manages CRM pipelines, executes multi-touch follow-up cadences, closes deals organically, and operates across the agent network AND the open internet (GitHub, web, communities).
This skill teaches any agent to: find prospects, build relationships, close deals, retain customers, grow partnerships, and track success — without ever feeling like sales.
bun run business-dev/business-dev.ts <subcommand> [options]
View and manage CRM pipeline state across all deal stages.
bun run business-dev/business-dev.ts pipeline [options]
Options:
--type (optional, string): Filter by pipeline type — customers, partners, contributors, marketplace. Default: all.--stage (optional, number 0-6): Filter by stage. Default: all.--stale (optional, boolean): Show only deals with no activity in 7+ days.Output:
{
"pipeline": "all",
"deals": [
{
"prospect": "Stark Comet",
"identifier": "stark-comet",
"pipeline": "customers",
"stage": 3,
"stage_name": "Solution Shown",
"last_touch": "2026-03-01T12:00:00Z",
"next_action": "Follow up with case study",
"next_date": "2026-03-04",
"value_sats": 2000,
"touches": 3,
"days_in_stage": 2
}
],
"summary": {
"total_deals": 8,
"total_value": 15000,
"by_stage": { "0": 2, "1": 3, "2": 1, "3": 1, "4": 1, "5": 0, "6": 0 },
"coverage_ratio": "2.5x"
}
}
Research and add a new prospect to the pipeline.
bun run business-dev/business-dev.ts prospect --name <name> --source <source> [options]
Options:
--name (required, string): Prospect identifier (agent name, GitHub handle, etc.)--source (required, string): Where you found them — inbox, github, signal, referral, web, bounty, leaderboard.--pipeline (optional, string): Which pipeline — customers, partners, contributors, marketplace. Default: customers.--notes (optional, string): Initial research notes — their pain, your angle, their tools.--value (optional, number): Estimated deal value in sats.Output:
{
"success": true,
"prospect": "Stark Comet",
"pipeline": "customers",
"stage": 0,
"stage_name": "Research",
"message": "Prospect added. Research their pain + your angle within 24h."
}
Run BANT+ qualification check on a prospect. Moves them from Stage 1 to Stage 2 if they pass.
bun run business-dev/business-dev.ts qualify --name <name> [options]
Options:
--name (required, string): Prospect identifier.--budget (optional, number): Their estimated budget in sats.--authority (optional, string): Can they decide? yes, no, unknown.--need (optional, number 1-10): How urgent is their problem?--timeline (optional, number): Days until they need a solution.--pain (optional, string): Their specific pain in one sentence.--competition (optional, string): Who else are they evaluating?Output:
{
"prospect": "Stark Comet",
"qualified": true,
"score": 8,
"bant": {
"budget": 5000,
"authority": "yes",
"need": 8,
"timeline": 7
},
"recommendation": "Strong qualification. Move to Stage 2 and present solution.",
"next_action": "Send solution overview tailored to their yield scanning needs"
}
Record a closed deal and update pipeline metrics.
bun run business-dev/business-dev.ts close --name <name> --revenue <sats> [options]
Options:
--name (required, string): Prospect identifier.--revenue (required, number): Deal value in sats.--pipeline (optional, string): Pipeline type. Default: customers.--notes (optional, string): Deal notes — what was sold, terms, next steps.--recurring (optional, boolean): Is this a recurring deal? Default: false.Output:
{
"success": true,
"prospect": "Sonic Mast",
"revenue": 400,
"pipeline": "customers",
"stage": 5,
"stage_name": "Closed",
"total_revenue_this_week": 1200,
"deals_closed_this_week": 3,
"message": "Deal closed! Move to Stage 6 (Retained) for upsell/referral tracking."
}
Get scheduled follow-ups due today with suggested content.
bun run business-dev/business-dev.ts follow-up [options]
Options:
--limit (optional, number): Max follow-ups to return. Default: 5.--pipeline (optional, string): Filter by pipeline type. Default: all.Output:
{
"due_today": [
{
"prospect": "Sly Harp",
"pipeline": "customers",
"stage": 2,
"touch_number": 3,
"last_content": "Shared order book stats",
"suggested_approach": "Social proof — show how many agents posted bids this week",
"days_since_last": 3,
"cadence_status": "on_track"
}
],
"overdue": [
{
"prospect": "Dual Cougar",
"pipeline": "partners",
"stage": 1,
"touch_number": 2,
"days_since_last": 5,
"cadence_status": "overdue"
}
],
"total_due": 1,
"total_overdue": 1
}
Run pipeline health check. Identifies bottlenecks, stale deals, and coverage gaps.
bun run business-dev/business-dev.ts review
Output:
{
"health": "yellow",
"stale_deals": 2,
"unqualified_in_pipeline": 1,
"pipeline_coverage": "2.1x",
"target_coverage": "3.0x",
"bottleneck_stage": "Stage 1 (Contacted)",
"bottleneck_reason": "Low response rate — 2/8 prospects responded",
"deals_at_risk": ["Dual Cougar (5 days stale)", "Wild Osprey (unqualified)"],
"recommendations": [
"Add 3 more qualified prospects to reach 3x coverage",
"Re-engage or drop 2 stale deals in Stage 1",
"Improve cold outreach messaging — response rate below 15%"
],
"metrics": {
"outreach_to_response": "25%",
"response_to_qualified": "50%",
"qualified_to_close": "33%",
"avg_time_to_close_days": 8
}
}
Generate success metrics for agent copilot and project manager.
bun run business-dev/business-dev.ts report [options]
Options:
--period (optional, string): Reporting period — week, month. Default: week.--audience (optional, string): Report format — copilot (operational detail), manager (strategic overview). Default: copilot.Output (copilot):
{
"period": "week",
"deals_closed": 3,
"revenue_sats": 1200,
"revenue_trend": "+40% vs last week",
"pipeline_value": 8500,
"new_prospects": 5,
"response_rate": "25%",
"close_rate": "33%",
"avg_time_to_close_days": 8,
"top_pipeline": "customers",
"energy_efficiency": "1200 sats revenue / 400 sats spent = 3.0x ROI"
}
Output (manager):
{
"period": "week",
"revenue": 1200,
"active_partnerships": 2,
"referral_revenue": 300,
"free_tool_usage": 12,
"external_contributions": 3,
"retention_rate": "80%",
"ecosystem_health": "growing"
}
Get ready-to-use message templates for any sales situation.
bun run business-dev/business-dev.ts templates --type <type>
Options:
--type (required, string): Template type — cold-outreach, follow-up, partnership, soft-close, graceful-exit, objection-response.Output:
{
"type": "cold-outreach",
"template": "[Name] — saw your [specific work]. [Specific compliment]. I built [tool/service] that helps with [their problem]. Given [observation about their situation], thought it might save you time. Happy to share details, no pressure.",
"variables": ["Name", "specific work", "Specific compliment", "tool/service", "their problem", "observation about their situation"],
"max_chars": 500,
"tips": [
"Research them first — mention something specific they built or said",
"Lead with genuine compliment, not flattery",
"Frame around THEIR benefit, not your product",
"End with low-pressure opt-in, not a demand"
]
}
This skill applies five battle-tested sales methodologies. The CLI does not implement these directly — they guide the agent's conversational approach when composing messages.
| Situation | Framework | Key Move |
|---|---|---|
| First contact, need to understand them | SPIN Selling | Ask Situation → Problem → Implication → Need-Payoff questions. Prospect talks 70%. |
| They don't know they have a problem | Challenger Sale | Teach them a surprising insight about their own business. Tailor. Guide to action. |
| Chasing prospects who ghost | Sandler | Go deeper on the pain. If no real pain, disqualify fast. Walk away. |
| They know the problem but can't see the fix | Solution Selling | Paint the future state vividly. "Imagine if every morning you received..." |
| High-stakes, multiple decision-makers | MEDDIC | Map every letter. Can't fill them all? Deal isn't qualified. |
Cialdini's 7 Principles:
Negotiation Intelligence:
Gravitas: Never punch down. Be specific — "Your error handling in that Clarity contract was clean" lands, "great work" evaporates. Frame everything as their upside. Talk less — the quiet one sets the terms. Ask questions that make them arrive at the conclusion themselves.
Give three times before you ask once. This isn't charity — it's gravity. By the time you propose the deal, saying yes is the path of least resistance.
How the close sounds:
The close isn't a moment — it's a conclusion. By the time you say it, they should already be nodding.
| Objection | Move |
|---|---|
| "Too expensive" | They don't see the ROI. Make the cost of inaction vivid. |
| "I'll think about it" | "What would make the decision obvious?" |
| "Not now" | "When does this become urgent? I'll circle back then." |
| Silence | Return in 2-3 days with something new. Never chase empty. |
| Stage | Name | Exit Criteria | Max Time |
|---|---|---|---|
| 0 | Research | Have their pain + your angle | 24h |
| 1 | Contacted | They responded | 7 days |
| 2 | Qualified | BANT+ check passed | 5 days |
| 3 | Solution Shown | "This could work" | 5 days |
| 4 | Negotiating | Terms agreed | 7 days |
| 5 | Closed | Sats received | — |
| 6 | Retained | Repeat purchase or referral | Ongoing |
| Pipeline | Prospects | Revenue Model |
|---|---|---|
customers | Agents who pay for services | Direct sats |
partners | Agents who integrate/co-build | Revenue share, mutual referrals |
contributors | Developers/agents who ship code | Bounties, reputation |
marketplace | Ordinals buyers/sellers | Trade volume |
Pipeline must contain 3x your revenue target. If you need 10,000 sats/week, have 30,000 sats of deals in pipeline. Deals fall out. Volume is insurance.
80% of deals need 5+ touches. 92% of sellers quit after 4.
| Touch | Timing | Content |
|---|---|---|
| 1 | Day 0 | Value-first introduction |
| 2 | Day 2-3 | Relevant insight or resource |
| 3 | Day 5-7 | Social proof or case study |
| 4 | Day 10 | Question about their situation |
| 5 | Day 14 | Something useful (data, tool, intro) |
| 6 | Day 21 | Direct but gentle close |
| 7 | Day 30 | Graceful exit, door open |
Every follow-up delivers NEW value. "Just checking in" is forbidden.
gh search repos "stacks clarity" --sort stars — Find active projectsgh search issues "ordinals" --sort comments — Find active discussions| Build | Sells |
|---|---|
| Free diagnostic tool | Premium version |
| Open source utility | Reputation + ecosystem |
| Public dashboard | Data analysis capabilities |
| Free tier (3 queries/day) | The habit, then paid tier |
For every hour selling, spend two hours building things that sell themselves.
| Activity | Energy % | When |
|---|---|---|
| Close qualified deals | 30% | Always first |
| Follow up warm prospects | 25% | After closing |
| Discovery with new leads | 20% | Mid-cycle |
| Build free tools | 15% | Protected time |
| Cold outreach + research | 10% | Batch, low priority |