Skip to content
Marketing
Skill

/peec-outreach

Turns Peec AI's get_actions recommendations + forum/UGC discovery into a prioritized outreach pipeline with pitch templates, contact extraction, status tracking, and success measurement. Goes beyond "here is a list of domains" — produces ready-to-send pitches, covers Reddit /

From plugin
peec-ai-skills
99 skills1 hook
Install
$ npx -y skills add AntonioBlago/peec-ai-skills --skill peec-outreach --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/peec-outreach

Context preview

The summary Claude sees to decide when to auto-load this skill.

Turns Peec AI's get_actions recommendations + forum/UGC discovery into a prioritized outreach pipeline with pitch templates, contact extraction, status tracking, and success measurement. Goes beyond "here is a list of domains" — produces ready-to-send pitches, covers Reddit /

SKILL.md

peec-outreach.SKILL.md
name: peec-outreach
description: Turns Peec AI's get_actions recommendations + forum/UGC discovery into a prioritized outreach pipeline with pitch templates, contact extraction, status tracking, and success measurement. Goes beyond "here is a list of domains" — produces ready-to-send pitches, covers Reddit / Gutefrage / editorial / owned quadrants, and tracks citation gains week over week. Use when a Peec project has active competitor gaps and needs systematic off-site work, not just content production.
user-invocable: true

Citation Outreach

Role

Writing new content isn't enough — most AI-visibility lift comes from citations on domains LLMs already crawl. This skill turns `get_actions` plus forum discovery into a **prioritized outreach pipeline** with concrete, target-specific pitches, a tracker, and a citation-gain measurement after 4 weeks.

Input

  • `project_id` — Peec project
  • optional `scope` — `editorial` | `ugc` | `reference` | `owned` | `all` (default `all`)
  • optional `weekly_cap` — max pitches per week (default 5)
  • optional `own_asset_url` — an own URL to actively pitch (case study, pillar, tool)

Output

  • One outreach tracker at `<project>/outreach/YYYY-Wkk_outreach_log.md` (schema below)
  • One ready-to-send pitch per queued target, filled with concrete quote + concrete offer
  • After 4 weeks: one attribution summary feeding into `peec-report`

When to use

  • After `@peec-setup` Phase 8 or `@peec-content-intel` Phase 6 — when the opportunity list is in
  • Weekly ritual: 3–5 quality pitches to stay independent of Google
  • Whenever Peec `get_actions` surfaces high-opportunity `editorial` / `ugc` / `reference` rows

Do not use when:

  • No opportunity list from Peec (run `get_actions` first)
  • Brand has no reference page / case study to pitch yet (run `content-write` first)

---

Pipeline

0. Pre-flight — setup state required

Per [`_shared/SETUP_STATE.md`](../_shared/SETUP_STATE.md), this skill refuses to run without a completed setup:

Read <project>/growth_loop/setup_state.json
If missing OR completed_at missing OR phases_completed lacks
   {competitors, prompts, topics, tags}:
     STOP. Output:
       "No Peec setup state found at <project>/growth_loop/setup_state.json.
        Run /peec-setup first."
If completed_at older than 90 days: WARN once, continue.
Use peec_project_id from state — don't re-resolve via list_projects.

1. Aggregate opportunity sources

mcp__peec-ai__get_actions(project_id, scope="overview",  start_date, end_date)
mcp__peec-ai__get_actions(project_id, scope="editorial", start_date, end_date)
mcp__peec-ai__get_actions(project_id, scope="ugc", domain="reddit.com",  start_date, end_date)
mcp__peec-ai__get_actions(project_id, scope="ugc", domain="youtube.com", start_date, end_date)

mcp__peec-ai__get_domain_report(
  project_id, start_date, end_date,
  filters=[{field: "gap", operator: "gt", value: 0}],
  limit=40
)

Merge into one candidate table: `target_url | domain | type | opportunity_score | retrieval_% | citation_rate | mentioned_brand_ids`

2. Sort into 4 quadrants

         │  High impact     │  Low impact
─────────┼──────────────────┼──────────────────
Easy ask │  QUICK WINS      │  SNACKABLE
         │  (pitch now)     │  (when time allows)
─────────┼──────────────────┼──────────────────
Hard ask │  STRATEGIC       │  DROP
         │  (build relation)│
  • **Impact** = `opportunity_score × retrieval_%`
  • **Difficulty**:
  • `easy` = reddit thread (just post), Gutefrage, OMR forum
  • `medium` = editorial blog (email), LinkedIn author
  • `hard` = major publication, closed community

3. Extract contact per target

| Target type | Contact source | |---|---| | Editorial blog | `WebFetch(url)` → author box / LinkedIn / contact page | | Reddit thread | OP username visible in `mcp__peec-ai__get_url_content` output | | YouTube | channel URL from `channel_title` → `/about` page | | Gutefrage | no direct contact (post the answer directly) | | LinkedIn Pulse | author profile in URL path |

Produce: `target_url | target_type | contact_method | contact_handle | language | topic_focus`

4. Pick pitch template

**Write in the target's language.** The templates below are structural — fill them in the language of the target URL.

Editorial inclusion pitch

Subject: Expert quote for your article on <topic> — <1-line angle>

Hi <author>,

I came across your article "<title>" while researching <concrete tie-in>.
One section could use an added angle from my practice: <concrete section>.

I've worked <N> years as <role> with <specialization>. In a recent
<project context>, I observed <concrete number / finding>.

Would a 2–3 sentence expert quote or a short sidebar with my take work?
I can deliver copy + name + headshot within 48 hours.

<signature with own domain + 1 reference URL>

**Rule:** quote the concrete section, offer a concrete addition. No generic "happy to collaborate".

Reddit thread answer

Not a pitch — a direct, substantive answer to the OP (150–300 words). Rules:

1. First 2 sentences answer the question directly — no preamble 2. Middle: one concrete method / number / example from own practice 3. Optionally end with one own source — only if it completes the answer, never as CTA 4. Match the OP's language exactly 5. Use a personal account, never a brand account (reddit policy)

Gutefrage / forum answer

Same shape as Reddit, 100–200 words. Forum users prefer compact answers.

YouTube comment + follow-up

1. Substantive comment under the video (300–500 chars, question + addition) 2. After 48h without response: email to the channel owner referencing 3 of your own videos / posts that match the channel theme

5. Fill templates with project context

mcp__peec-ai__get_project(project_id)
# or: mcp__visiblyai__get_project(project_id)
#   → brand_name, USPs, custom_content_prompt, crawl_summary

Per candidate, replace every angle bracket with **speci

Read more
Ships withpeec-ai-skills

Production-tested Claude Code skills for Peec AI — the brand-visibility tracking platform for LLM-powered search (ChatGPT, Perplexity, Google AI Overviews, Gemini).

Get the whole plugin
Stats
9
Stars
0
Forks
Maintained
Maintenance
Python
Language
MIT
License
4mo ago
Last commit
4mo ago
Created

Repo: AntonioBlago/peec-ai-skills

Other skills on peec-ai-skills.