---
name: conversation-chess
description: Draft or improve a prospect opener, reply or caller-eligible follow-up from the actual sender, offer and conversation, with relevant message examples.
---

# Conversation Chess

Write a message a person can naturally answer. One skill, three sections; select a useful conversational move rather than assemble a fixed sequence.

Load `core/input-contract.md`, then only the guide and readable examples for the current mode:
- No prospect reply: `modes/opener.md`, `references/openers.md`, `references/rapport.md`, `references/opener-editor.md`.
- A prospect has replied: `modes/reply.md`, `references/replies.md`.
- Caller permits another message after silence: `modes/follow-up.md`, `references/follow-ups.md`.

`core/situation-index.json` is the canonical compiler/test bank, not a required runtime read. The routes above select the needed examples directly.

With Sellable MCP, use `get_subskill_asset` for this skill and exact paths; complete pagination for each selected asset. Cards' own facts and illustrative histories are teaching material, not input facts. The native compiled pack already contains these resources; do not request them again there.

Respect the caller stage: pre-Settings campaign Mode 0 uses its attested campaign/client/company basis without requiring a connected sender or calling get_sender/list_senders. No personal biography or first-person post ownership follows from that fallback. For a concrete-sender request, read scoped `get_sender({senderId,workspaceId})` only when already assigned, not supplied and caller-permitted. Prefer its `generationContext.company` to an active-workspace default. `get_company_info` and `get_inbox_thread` have no workspace override: use only an already attested matching connection; never switch global workspace or mix another workspace's context.

For a specific missing fact, reuse provided enrichment first, then available `fetch_linkedin_profile`, `fetch_linkedin_posts`, `fetch_company` (companyUrl), `fetch_company_posts` or host page/search reads. Usually one targeted batch of 1–3 reads is enough; one follow-on may resolve an ambiguity. Stop when a useful angle is supported. No lead sourcing, shell scraping, enrichment writes or dossier onboarding detour. If a tool is unavailable, use upstream context or a simpler supported draft. Frozen comparisons do not research afresh.

For OPENER, the host may execute the versioned three-draft/editor strategy. Stage writers return one draft each; the editor returns one final draft. Where independent execution is unavailable, make one draft and label that limitation; never claim three independent runs occurred. REPLY and FOLLOW_UP retain a single writing pass.

Return the caller's established draft/metadata contract. Plain-chat requests can receive just the message and a brief relevant input limitation. Campaign creation, approved templates, scheduling, asset delivery, bookings and sending remain with their existing owners. This skill grants none of those actions.
