outreach-manager Checked
Installation
Copy the prompt below and send it to your AI assistant (e.g. Claude Code) — it will follow the instructions and install automatically.
Install the "outreach-manager" skill by following the instructions at https://skill123.me/install/outreach-manager.
Run in your terminal — downloads and installs to ~/.claude/skills/.
curl -fsSL https://skill123.me/install/outreach-manager.sh | bash
Download the zip and extract it into your skills directory (e.g. ~/.claude/skills/), then restart your session.
⬇ Download v1.0.0 · 18 KBNot live-tested yet — this skill is rated on static analysis only.
About this skill
Use when the user asks to "write influencer outreach", "follow up with a creator", "pitch a journalist, hunter, or launch partner", or "negotiate partnership terms"; produces personalized pitches, multi-touch follow-up sequences, negotiation scripts with objection handling, and a status pipeline tracker — the shared outreach mechanics engine for creator, media/analyst, launch-partner, and social-selling / advocate-recruitment targets. Not for finalizing signed agreements — use contract-helper; not for media-list tiering, embargo terms, or press-release structure — use press-media-relations. 达人邀约建联/合作谈判话术
Outreach Manager
Craft personal, professional, persistent outreach; manage negotiations; track relationship progress. Home discipline is influencer (creator outreach), and the same mechanics engine — personalization, multi-touch cadence, negotiation scripts, pipeline tracking — serves media/analyst and launch-partner targets when press-media-relations (../../../launch/mobilize/press-media-relations/SKILL.md) hands over its media list, angles, and embargo terms, and social-selling / advocate-recruitment targets when social-selling-planner (../../../social/host/social-selling-planner/SKILL.md) or advocacy-program-designer (../../../social/craft/advocacy-program-designer/SKILL.md) hands over a warm 1:1. The list, the angle, and the embargo stay with the handing-off skill; this skill owns the pitch execution.
Documentation
Use when the user asks to "write influencer outreach", "follow up with a creator", "pitch a journalist, hunter, or launch partner", or "negotiate partnership terms"; produces personalized pitches, multi-touch follow-up sequences, negotiation scripts with objection handling, and a status pipeline tracker — the shared outreach mechanics engine for creator, media/analyst, launch-partner, and social-selling / advocate-recruitment targets. Not for finalizing signed agreements — use contract-helper; not for media-list tiering, embargo terms, or press-release structure — use press-media-relations. 达人邀约建联/合作谈判话术
Outreach Manager
Craft personal, professional, persistent outreach; manage negotiations; track relationship progress. Home discipline is influencer (creator outreach), and the same mechanics engine — personalization, multi-touch cadence, negotiation scripts, pipeline tracking — serves media/analyst and launch-partner targets when press-media-relations (../../../launch/mobilize/press-media-relations/SKILL.md) hands over its media list, angles, and embargo terms, and social-selling / advocate-recruitment targets when social-selling-planner (../../../social/host/social-selling-planner/SKILL.md) or advocacy-program-designer (../../../social/craft/advocacy-program-designer/SKILL.md) hands over a warm 1:1. The list, the angle, and the embargo stay with the handing-off skill; this skill owns the pitch execution.
Quick Start
Shortest invocation:
Write an outreach message to @[influencer] for [campaign]
Negotiate a gap between ask and budget:
Help me negotiate with @[influencer] who is asking for $[X] when our budget is $[Y]
Skill Contract
View full documentation
- **Reads**: a stable opaque
creator_refwhen one is carried by an authorized upstream artifact, plus transient target handle/profile locator(s), platform, follower count, niche; campaign and product context; compensation type and budget; deliverables and timeline; jurisdiction, intended channel, lawful-basis reference, contact-source/eligibility evidence, and pseudonymous consent subject ID; any prior contact history supplied by the user or loaded from memory. For a rostered creator, reuse a creator-registry aggregate ID only when its identity link is verified, resolve it through the authorized artifact or verified registry link, then checkmemory/creators/<aggregate-id>.md— the creator-registry (../../../protocol/creator-registry/SKILL.md) projection — for the confirmed contact path, last agreed rate, and negotiation/response history. Never derive the path from a raw handle. - **Writes**: return the outreach artifact inline by default; save it to
memory/influencer/outreach-manager/YYYY-MM-DD-<topic>.mdonly with exact WARM-save authorization. Reuse an explicitly carried opaquecreator_ref, or a verified creator-registry aggregate ID; otherwise generate one randomcreator-<UUIDv4>once for this lineage. Never derivecreator_reffrom a raw handle, name, profile URL, email, provider ID, or deterministic hash. Before saving, replace raw locators and resolved recipient identities with the stablecreator_refand resolvable opaquerecipient_ref,contact_source_ref,handle_ref, and evidence/approval references. A raw URL or handle is never a persistedsource_ref. When no authorized source artifact or verified registry link can resolve an opaque identity/contact ref, setidentity_status: unresolved, save no hidden raw-locator mapping, setcross_session_locator_required: true, and request the transient locator again at dispatch. Never persist a raw handle, name, profile URL, email, phone, postal address, provider ID, or credential. When a cycle closes, each outcome update (final agreed rate, response history, confirmed contact-path reference) requires a separate exact authorization for anoperation: proposerequest tomemory/events/creators.ndjson; onlycreator-registrywrites canonical roster records. - **Promotes**: only with separate exact authorization, promote durable facts (confirmed partners, agreed rates, top objection patterns, response-rate baselines) to
memory/hot-cache.md. - **Done when**:
- A personalized pitch (plus at least one variation) exists for each target influencer.
- Every personalization fact records
source_refandobserved_at; unverifiable facts remain placeholders or are omitted. - A follow-up cadence and pipeline status are recorded for every contacted creator, including terminal no-contact states.
- Jurisdiction, channel, lawful basis, and contact eligibility are explicit; any send/schedule remains gated by exact approval and a live suppression check.
- Confirmed partners are flagged with agreed terms for handoff.
- **Primary next skill**: contract-helper (../contract-helper/SKILL.md)
### Handoff Summary
> Emit the standard shape from skill-contract.md §Handoff Summary Format (../../../references/skill-contract.md).
Data Sources
Drafting needs no live integration (Tier 1). The skill works from inputs you provide — paste the influencer handles, follower counts, niche, budget, and deliverables, and it can produce a clearly labeled draft without any tool connection. Sending or scheduling is different: it requires the pseudonymous subject ID and a live consent-registry (../../../protocol/consent-registry/SKILL.md) suppression query immediately before dispatch; an unavailable or failed query is not permission to send.
Where a connector could speed up the work, use these ~~ placeholders:
~~influencer database— pull handle, follower count, niche, and past partnerships instead of typing them.~~social platform analytics— verify audience demographics and recent posts for personalization.~~CRM— sync pipeline status, last-contact dates, and next actions.~~email/DM tool— dispatch only the single currently due, exactly approved touch after its fresh eligibility and live-suppression checks. Future touches remain unscheduled drafts regardless of provider features.
See CONNECTORS.md (../../../CONNECTORS.md) for the free/keyless recipe per category. No integration is required; when one is absent, ask the user for the inputs directly. Missing target or campaign details do not block a reversible draft: use explicit bracketed placeholders, generalize any unverified personalization, and identify the smallest inputs needed to finish it.
Instructions
### Runtime Reads
../../../references/runtime-invocation.md../../../references/registry-event-protocol.md
### Procedure
When a user requests outreach help, run these steps. Each step has a fill-in template in references/templates.md (references/templates.md) — copy the matching block and replace the placeholders. Apply the hard copy rules in references/cold-copy-rules.md (references/cold-copy-rules.md) before any message ships.
**Draft/send boundary**: drafting is reversible; sending or scheduling is an external side effect. Even when the shortlist or personalization facts are missing, produce an inline first-touch draft labeled DRAFT — NOT SENT with explicit placeholders and no invented facts, then state what is still needed for personalization. Never stop with only an input request when a safe placeholder draft can be produced.
Do not send or schedule anything until all of these are true:
- The exact recipient (not a segment or placeholder), intended channel, final message, and—when scheduling that one touch—one concrete ISO-8601
dispatch_attimestamp plus timezone are shown and explicitly approved. Approval covers only the single currently due touch. Draft windows such asDay 3–4are not exact approval, and no approval or provider feature authorizes pre-scheduling later cadence touches. - Jurisdiction, channel, lawful basis with its evidence reference, and contact eligibility are recorded.
Unknownor missing eligibility fails closed; this skill does not invent a legal basis or provide legal advice. - Inside each actual delivery job, after resolving the transient recipient and immediately before the provider send call, resolve and verify the bundle runtime as shown below, then run live consent-registry (../../../protocol/consent-registry/SKILL.md)
is-suppressed. A suppressed result, missing subject ID, inaccessible/corrupt history, runtime/schema failure, or query error stops that dispatch. Anot suppressedresult removes only the suppression block; it does not itself prove lawful basis or authorize contact. Never reuse a cached result across cadence touches.
AARON_SKILLS_ROOT="${CLAUDE_PLUGIN_ROOT:-$(git rev-par
Score breakdown
Assessment methodology
Version history
Imported from aaron-he-zhu/aaron-marketing-skills@main
