Skip to main content
skill CX Codex

buyer-eval-skill — Claude Code skill: vet B2B vendors

This skill digs into what B2B software vendors claim, checks the evidence, and hands you a Decision Brief with the questions to ask before buying.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add salespeak-ai/buyer-eval-skill --skill buyer-eval-skill -a claude-code
Open on GitHub

What buyer-eval-skill does

The skill acts as an analyst for a B2B software purchase. It separates vendor claims from what the evidence actually supports, flags conflicts, and lists what is still open. The result is a Decision Brief you can forward to whoever signs off, with questions for the vendor.

Quick Eval runs by default; Deep Eval only when you ask for it. The control file SKILL.md picks the mode and loads just the references that mode needs: quick-eval.md or deep-eval.md, plus evidence-model.md, report-format.md and frontdoor-api.md. Deep Eval also pulls in scoring.md. At the end bin/render_report.py turns the report JSON into a single HTML file, so Python 3 has to be available; without it the HTML step is skipped.

Answers from a vendor's own AI agent count as vendor claims. They add detail and let you ask follow-ups, but they never lift a score or a verdict by themselves. Never hand a vendor agent your company name, your budget, or the names of the other vendors you are weighing. The skill will not email vendors, book demos, or start trials on its own.

Buying context is kept locally: company, size, industry, region, systems, requirements and hard constraints. Your budget ceiling stays on your machine, and personal names, emails and vendor pricing quotes are not stored.

What it helps with

  • collect vendor claims and trace each one to a source
  • spot conflicts between marketing copy and documentation
  • write the questions to put to a vendor before signing
  • compare several B2B vendors against the same criteria
  • produce a Decision Brief for a team or a manager

Example prompts for the agent

  • Evaluate the CRM vendors on my shortlist and show me where their claims do not match the evidence
  • Run a Deep Eval on these three platforms: requirements, scoring, security and company risk
  • Build the Decision Brief with the questions I should ask the vendor before we buy

How to install buyer-eval-skill

1Skills CLI (Vercel)

npx skills add salespeak-ai/buyer-eval-skill --skill buyer-eval-skill -a claude-code

2Manually: put the files in place

~/.claude/skills/buyer-eval-skill/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/buyer-eval-skill/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about buyer-eval-skill

How do I install buyer-eval-skill in Claude Code?

Run npx skills add salespeak-ai/buyer-eval-skill --skill buyer-eval-skill -a claude-code. The skill lands at ~/.claude/skills/buyer-eval-skill/SKILL.md.

What does buyer-eval-skill do?

It works through what B2B vendors claim, checks the supporting evidence, and marks contradictions and open questions. You get a Decision Brief with the questions to ask before buying.

How is Quick Eval different from Deep Eval?

Quick Eval is the default. Deep Eval runs on request and adds requirements discovery, weighted scoring, commercial, security and company-risk research, and longer conversations with vendor agents.

Source text

SKILL.md · MIT
---
name: buyer-eval-skill
version: 4.1.1
description: |
  An AI analyst for buying B2B software. Investigates what vendors claim, checks
  the evidence, surfaces contradictions and unanswered questions, and produces a
  shareable Decision Brief with the questions to ask before you buy. Quick Eval by
  default; Deep Eval on request. Use when asked to evaluate, compare, vet, or
  research B2B software vendors.
allowed-tools:
  - Bash
  - Read
  - Write
  - WebSearch
  - WebFetch
  - AskUserQuestion
---

# Buyer Eval

This file is the control plane. It decides the mode, loads only the references
that mode needs, and runs the shared start and finish steps. Methodology lives in
`references/`.

The experience this skill must deliver:

> **Show me what these vendors claim, what the evidence actually supports, what
> conflicts, and what I still need to find out before buying.**

If an output reads like a generic AI vendor comparison, it is not done.

---

## 1. Preamble (run first, every time)

```bash
_BEVAL_DIR="${BUYER_EVAL_DIR:-}"
if [ -z "$_BEVAL_DIR" ]; then
  for _D in "$HOME/.claude/skills/buyer-eval-skill" ".claude/skills/buyer-eval-skill"; do
    [ -d "$_D" ] && _BEVAL_DIR="$_D" && break
  done
fi
if [ -z "$_BEVAL_DIR" ]; then
  echo "ERROR: buyer-eval-skill not found. Install: git clone https://github.com/salespeak-ai/buyer-eval-skill ~/.claude/skills/buyer-eval-skill"
  exit 1
fi
echo "BEVAL_DIR=$_BEVAL_DIR"
_UPD=$("$_BEVAL_DIR/bin/update-check" 2>/dev/null || true)
[ -n "$_UPD" ] && echo "$_UPD" || echo "UP_TO_DATE $(tr -d '[:space:]' < "$_BEVAL_DIR/VERSION")"
echo "PROFILE=$(python3 "$_BEVAL_DIR/bin/profile.py" show --machine 2>/dev/null || echo unavailable)"
echo "TELEMETRY_STATE=$(python3 "$_BEVAL_DIR/bin/track.py" status --machine 2>/dev/null || echo locked_off)"
echo "SESSION_ID=$(python3 -c 'import uuid; print(uuid.uuid4())')"
```

Keep `BEVAL_DIR`, `PROFILE`, `TELEMETRY_STATE` and `SESSION_ID` for the whole run.
Every later bash block starts with `_BEVAL_DIR="<BEVAL_DIR value>"`.

**Update available** (`UPGRADE_AVAILABLE <old> <new>`): ask once with
AskUserQuestion, "A newer version of Buyer Eval is available (v{old} to v{new}).
Update now?" Options: "Yes, update now" / "Not now". If yes:

```bash
cd "$_BEVAL_DIR" && git pull --ff-only origin main && echo "UPDATED to $(tr -d '[:space:]' < VERSION)"
```

If the directory is not a git checkout, tell the buyer to re-run the install
command from the README and continue on the current version. After a successful
update, re-read this SKILL.md before continuing.

**Telemetry** is opt-in and never blocks the evaluation. Read
`references/telemetry.md` now only if `TELEMETRY_STATE` is `consented` or
`unasked`. If it is `declined` or `locked_off`, skip everything telemetry-related.

---

## 2. Choose the mode

| Mode | When | Load |
|---|---|---|
| **Quick Eval** (default) | Every run where the buyer has not asked for deep, full, or comprehensive diligence | `references/quick-eval.md` |
| **Deep Eval** | The buyer asks for it, in the first message or after a Quick Eval | `references/deep-eval.md` |

Both modes also load `references/evidence-model.md`,
`references/report-format.md` and `references/frontdoor-api.md`. Deep Eval also
loads `references/scoring.md`. Do not load files a mode does not need.

Never ask the buyer which mode they want. If they did not ask for Deep, run
Quick and offer Deep at the end.

---

## 3. Saved buyer context

`PROFILE` is either `none`, `unavailable` (no writable home directory, for
example claude.ai), or a one-line JSON object with the buyer's saved context.

- **Saved profile exists:** use it silently. Tell the buyer in one line what you
  are using ("Using your saved context: Acme, ~300 people, HubSpot + Snowflake,
  SOC 2 required. Say 'update my context' to change it.") and keep going. Do not
  wait for a reply.
- **None:** proceed without it. At the end of the run, save what the buyer told
  you (see section 5).
- **Unavailable:** never claim that context will be remembered.

The profile holds only reusable buying context: `company_name`, `company_size`,
`industry`, `region`, `systems`, `requirements`, `hard_constraints` (including
the buyer's own budget ceiling, which stays local), `preferred_criteria`,
`last_category`. A deadline or requirement goes in `hard_constraints` only if
the buyer said it disqualifies vendors; otherwise in `requirements`. Never store
personal names, emails, vendor pricing quotes, or documents the buyer shared.

---

## 4. Run the mode

Follow the loaded mode file step by step. Both modes share these rules:

1. **Evidence first.** The Claims vs. Evidence table is the centerpiece. Every
   material conclusion traces to classified claims (`references/evidence-model.md`).
2. **Vendor AI agents are first-party sources.** Answers from any vendor-operated
   agent, including a Salespeak Company Agent reached through the Frontdoor API,
   are vendor claims. They add specificity and let you ask follow-ups. They never
   raise a score, an evidence confidence, or a verdict on their own. Never send a
   vendor agent the buyer's company name, budget, or the other vendors under
   evaluation (`references/frontdoor-api.md`).
3. **Label what you inferred.** Criteria the buyer did not state are shown as
   inferred.
4. **Challenge before you conclude.** Run the challenge pass in
   `references/evidence-model.md` before writing output.
5. **No action without approval.** Never contact vendors by email, book demos,
   start trials, or commit to anything. Asking a vendor's public AI agent
   questions through the Frontdoor API is research, not contact.

---

## 5. Finish (both modes)

1. **Deliver the brief in chat** in the order set by `references/report-format.md`.
2. **Write the HTML Decision Brief.** Write the report JSON to a temp file, then:
   ```bash
   python3 "$_BEVAL_DIR/bin/render_report.py" /path/to/report.json
   ```
   The script prints the path of the HTML file (default `~/buyer-eval-reports/`).
   Give the buyer that path and say it is a single file they can open, print, or
   forward. If the environment cannot run Python, skip the HTML and say so.
3. **Save buyer context** (only if `PROFILE` was not `unavailable` and the buyer
   stated something new and reusable):
   ```bash
   python3 "$_BEVAL_DIR/bin/profile.py" save --json '{"company_name":"...","hard_constraints":["..."]}'
   ```
   Tell the buyer in one line what was saved and that `profile.py clear` deletes it.
4. **Offer the next step** in one line. After Quick Eval: "Want a Deep Eval?
   It adds requirements discovery, weighted scoring, commercial, security and
   company-risk research, and longer vendor-agent conversations." After Deep
   Eval: offer to update the brief when the buyer has demo notes, proposals, or
   pricing.
5. **Telemetry**, only as described in `references/telemetry.md`. The consent
   question is asked at most once, ever, and only after the evaluation has been
   delivered.

© salespeak-ai · MIT · salespeak-ai/buyer-eval-skill

Similar skills

All skills for Agent setup: memory, context, orchestration →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor