objection-handler
/objection-handler
Objection Handler. Answers every objection, and knows a no when it hears one. Matches what they said ("it isn't built yet", "what if you never ship it", "why pay up front", "too expensive", "I need to ask my CFO") to an honest answer filled in from your own terms, and shows why it works. A real no gets no answer at all: it stops the deal for good. Every answer is a draft for your yes. Use when the user says "they said", "how do I answer this", "what do I say to", "they pushed back", "objection", "they think it's too expensive", or pastes a reply they don't know how to answer.
- Author
- Jakeschincariol ↗
- Repository
- whale-skill ↗
- Licence
- MIT
- Last repository change
- 05.11.2026
Assessment and security
- Files in this package
- 4
- Scripts
- 2
- HTML comments
- 0
- URLs in SKILL.md
- 0
No signals detected. Repository changed on 05.11.2026, without references to retired models or APIs.
MIT, open: use and modify while retaining author attribution.
- 2 scripts in this package. Review them before installing, as Claude may execute them.
Scripts: objections.py, test_objections.py
What it does and when to use it
Objection Handler. Answers every objection, and knows a no when it hears one. Matches what they said ("it isn't built yet", "what if you never ship it", "why pay up front", "too expensive", "I need to ask my CFO") to an honest answer filled in from your own terms, and shows why it works. A real no gets no answer at all: it stops the deal for good. Every answer is a draft for your yes. Use when the user says "they said", "how do I answer this", "what do I say to", "they pushed back", "objection", "they think it's too expensive", or pastes a reply they don't know how to answer.
Triggers from the description
Arguments
/objection-handler <what they said>
Original author description
Objection Handler. Answers every objection, and knows a no when it hears one. Matches what they said ("it isn't built yet", "what if you never ship it", "why pay up front", "too expensive", "I need to ask my CFO") to an honest answer filled in from your own terms, and shows why it works. A real no gets no answer at all: it stops the deal for good. Every answer is a draft for your yes. Use when the user says "they said", "how do I answer this", "what do I say to", "they pushed back", "objection", "they think it's too expensive", or pastes a reply they don't know how to answer.
How it works
- A worry or a no?
- Steps
- What it knows
- Example from the reel's board
- What it never does
- Consent and truth
SKILL.md preview
---
name: objection-handler
description: >-
Objection Handler. Answers every objection, and knows a no when it hears one. Matches what they said
("it isn't built yet", "what if you never ship it", "why pay up front", "too expensive", "I need to ask my
CFO") to an honest answer filled in from your own terms, and shows why it works. A real no gets no answer
at all: it stops the deal for good. Every answer is a draft for your yes. Use when the user says "they
said", "how do I answer this", "what do I say to", "they pushed back", "objection", "they think it's too
expensive", or pastes a reply they don't know how to answer.
argument-hint: "<what they said>"
---
# objection-handler
When you're asking for money before the product exists, the objections are good ones. So the answers have to be
honest, specific and short. This skill has the answer ready, filled in from your real terms. It also knows the
difference between a worry, which deserves an answer, and a no, which deserves to be left alone.
`${CLAUDE_SKILL_DIR}` below is this skill's folder (where this SKILL.md lives).
```bash
python3 "${CLAUDE_SKILL_DIR}/objections.py" match --deal north-pier --text "What if you never ship it?"
python3 "${CLAUDE_SKILL_DIR}/objections.py" match --text "It looks great, but it's too expensive for us right now."
python3 "${CLAUDE_SKILL_DIR}/objections.py" list
```
The answers live in `objections.json`, so the user can change the words.
## A worry or a no?
- **A worry is a question, even when it sounds like a no.** "That's a lot of money." "We're busy." "I'd have to ask my CFO." Answer it, once.
- **A no is a no.** "Not interested." "We're all set." "Please stop." `match` won't give you an answer for those, even if the same sentence has an
objection in it. Run `/follow-up stop` with their words. They hear nothing else.
- **Not sure?** Ask one honest question and don't assume. "Is this something you'd like me to drop, or is it the timing?"
## Steps
1. Log their reply: `followup.py reply`. A no stops everything there.
2. `objections.py match --deal <id> --text "<what they said>"`. It shows the label, what to say and why.
3. Rewrite it in the user's voice and for this person, using their words from the call. Keep it to 3 sentences. Fill any `[fill: ...]`, or ask the
user: never make one up. No match means asking them a question, not guessing.
4. **Ask.** Show it. "Send this reply to Renee? Reply yes or no." One message per question.
5. **Send.** On a yes, in the same thread from the user's account. If they push back again on the same point, stop answering it and ask what would
have to be true. One answer per objection: the third round is pestering.
## What it knows
| they say | it answers |
| --- | --- |
| It isn't built yet | You're right, and here's what you get instead: the date, a say in it, the refund. |
| What if you never ship it? | Fair question. Here's the way out, in writing. Want to talk first? |
| Why pay up front? | Paying is what gets it built your way. If all of it is hard, tell me what you could do. |
| It's too expensive | Agree, put it next to what they pay today, find out which part is the problem. |
| Not the right time | What would need to be true? If there's a date, come back then and not before. |
| I need to think | Is there one thing you'd want answered first? |
| I have to ask my boss | Here's one page to forward. Happy to join. |
| We already have someone | When does that come up for renewal? |
| Who else uses it? | You'd be one of the first, which is why it's priced like this. |
## Example from the reel's board
Renee: "It looks great, but what if you never ship it?" The answer: "Fair question, and you should ask it. If it has not shipped by the promised date, or
we can't build what you asked for, you get every dollar back. You pay through Stripe and you get a receipt, and I'll put the refund in writing. Want to
talk on a call before you decide?" (Illustrative: Renee is fictional.)
## What it never does
- Never answers a no, and never tries to talk someone out of one.
- Never sends a reply by itself.
- Never invents a customer, a result, a discount or a deadline to win an argument. "You'd be one of the first" is the honest answer, so it says that.
- Never says anything untrue or unkind about a competitor.
## Consent and truth
- Nothing is sent or charged without the user's explicit yes for that exact message. Claude drafts, the user says "yes", then it goes out from the
user's own accounts. One yes per message. Never "yes to all".
- Stop at the first "no" or any sign of disinterest. A request to stop is honoured forever, across every skill.
- Never invent a number, a result, a client or a deadline. Fill in only what is true and ask when something is missing.
Files in this package (4)
- SKILL.md 5 KB
- objections.json 6 KB
- objections.py 4 KB
- test_objections.py 3 KB
Versions
| Repository | Score | Licence |
|---|---|---|
| This page · Jakeschincariol/whale-skill | 100 | MIT |
| alebgl77/claude-inc | 100 | MIT |
| SkillMedev/skills | 100 | MIT |
| prosyo-ai/gtm-skill | 100 | MIT |
| enrichments-io/claude-clay-gtm-skills | 100 | MIT |
| Navinspire-ia/navin | 90 | AGPL-3.0 |
Database snapshot: 13.11.2026 · package version 50efdcbf0d14 (SHA-256 digest of the entire package)
Downloads in the last 30 days: 0 · ranking
Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.
Similar skills
- 100reply-objection-handler
Reply & Objection Handler — classifies prospect replies, drafts objection handling, drives to a booked meeting, and sets the CRM next step. Operates inside the brief-driven protocol. Also known as Ricky Reply. Use when user says handle a reply, objection handling, book the… - 90recoup-internal-consulting-objection-handler
INTERNAL — Recoup staff consulting workflow. Use for recoup-internal consulting requests. Turn a raw objection into a tailored response. Use when a prospect pushes back — \"they said it's too expensive\", \"they want to think about it\", \"how do I respond to this objection\". - 100pm-objection-handler
Objection handling playbook organized by category. Teaches reps to diagnose the real concern behind the stated objection and respond with evidence, not clever comebacks. Use when someone says "objection handling", "how do we respond when they say", "too expensive", "competitor… - 100objection-handling
When the user wants to prepare for objections, build an objection playbook, handle a specific objection, or deal with a prospect who went dark. Also use when the user says 'how do I handle this objection,' 'they said it's too expensive,' 'build me an objection playbook,'… - 100handle-objection
Work through a live objection or competitive threat - what's really being said, the response that has worked before, and the proof points to use, grounded in your own win/loss history and customer quotes. Use when the user says "they said we're too expensive", "how do I respond… - 100objection-handling
Handle sales objections using tactical empathy. Use when the user says "how do I handle this objection", "prospect said [X]", "they pushed back on price", "they said they're not ready", "how to respond to 'we already have a solution'", "they said 'send me more information'",…