Communitygithub.com

Varnan-Tech/opendirectory

根据购买意向信号生成个性化的多渠道外联序列,覆盖邮件、LinkedIn和电话。输出 4-6 个可直接发送的触达点,周期 10-14 天。可选通过 Composio Gmail 起草邮件触达点。

opendirectory 是什么?

此技能旨在帮助销售团队和 AI Agent 用户快速将购买信号(如融资、招聘、竞品动态等)转化为结构化的多渠道外联序列。它通过读取用户预设的 ICP(理想客户画像)和账户文件,或引导用户提供产品、目标人群、痛点和差异化优势,然后根据特定的信号类型,利用 Gemini API 生成个性化的邮件、LinkedIn 消息和电话话术。技能维持 B2B 的冰冷外联最佳实践,如禁止使用空洞的行业术语,确保每条消息以客户为中心,避免“just following up”等无效动作,并内置了质量检查步骤,能主动识别并处理常见客户异议。该技能支持 Claude Code、Cursor 等终端型 AI Agent,通过环境变量配置 API 密钥。生成的序列会保存到本地文件,如有 Composio 集成,还可通过 Gmail 直接起草邮件草稿。

兼容平台✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/Varnan-Tech/opendirectory/tree/HEAD/skills/outreach-sequence-builder

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

外联序列生成器

接收一个购买信号。生成一个个性化的多渠道外联序列。输出可在邮件、LinkedIn 和电话中直接发送的消息。


关键规则: 每条消息必须根据你加载的上下文完整填写内容。只允许使用 {{first_name}} 作为变量。不允许出现 [公司名称] 这样的方括号,或 [插入痛点] 这样的占位符。如果你没有所需的信息来填充,请在撰写之前询问用户。切勿发送包含未填充占位符的消息。


步骤 1:环境检查

确认所需的环境变量:

echo "GEMINI_API_KEY: ${GEMINI_API_KEY:+set}"
echo "COMPOSIO_API_KEY: ${COMPOSIO_API_KEY:-未设置,将跳过 Gmail 起草}"

如果缺失 GEMINI_API_KEY: 停止。告知用户:“需要 GEMINI_API_KEY。请从 aistudio.google.com 获取。将其添加到你的 .env 文件中。”

如果缺失 COMPOSIO_API_KEY: 继续。序列将以格式化的文本形式输出,供用户复制粘贴。将跳过 Gmail 草稿创建。


步骤 2:加载上下文

检查是否存在现有的 ICP 文件及账户文件:

ls docs/icp.md 2>/dev/null && echo "已找到 ICP" || echo "未找到 ICP"
ls docs/accounts/ 2>/dev/null && echo "已找到账户" || echo "未找到账户"

如果 docs/icp.md 存在: 读取它。提取:

  • 目标人物画像(职位、资历、部门)
  • 公司画像(规模、行业、融资阶段)
  • 核心痛点(使用买家的原话)
  • 关键差异化优势(你的产品相对于替代方案的优势)

如果 docs/accounts/{公司名}.md 存在: 读取相关文件。提取:

  • 公司名称、规模、近期背景
  • 已知的技术栈或痛点
  • 任何现有的关系或过往联系

如果两者都不存在: 向用户询问以下 4 个问题。在全部回答完成前,不要继续:

  1. 你的产品是做什么的?(一两句话)
  2. 你的目标人群是哪些?(职位、公司规模、行业)
  3. 你解决的主要问题是什么?(从买家的角度,而不是你的角度)
  4. 你的关键差异化优势是什么?(为什么用户应该选择你而不是他们目前使用的替代方案)

步骤 3:识别信号

确定以下 7 种信号类型中的哪一种适用。阅读 references/signal-playbook.md 以获取每种信号类型的完整洞察(Insight)、桥梁(Bridge)、开场白(Opener)和请求(Ask)。

7 种信号类型:

信号定义
融资后公司在过去 30 天内完成了一轮融资
招聘信号公司在某个你服务的职能领域发布了 5 个或以上职位
竞品替代联系人正在使用竞争对手产品并表现出不满
产品发布公司发布了一款新产品或重大功能
内容互动联系人点赞、评论或分享了你的内容
活动跟进你在会议或网络研讨会中遇到了联系人,或同场出席了活动
职位变更联系人在过去 60 天内跳槽到了新公司

如果用户在提示中提供了信号: 确认类型,并提取具体细节(融资轮次金额、职位名称、产品名称、活动名称等)。

如果没有明确的信号: 询问:“是什么触发了这次外联?(例如,他们融资了,他们在招聘工程师,你在某个活动上遇到了他们)”

在继续之前,声明检测到的信号类型及具体细节。


步骤 4:制定切入点

根据在步骤 2-3 中加载的信号类型和上下文,定义四个切入点要素。阅读 references/signal-playbook.md 以获取该信号类型的公式。

在生成任何消息之前,明确写出:

信号:[具体信号 + 具体细节]
洞察:[这个信号揭示了他们当前状况的什么信息]
桥梁:[你的产品如何与信号揭示的信息相关联]
开场白:[一句提及具体信号细节的句子]
请求:[最小的可行行动号召,少于 10 个字]

开场白必须提及具体的触发点。模糊的开场白会被拒绝。

好的:“恭喜你们完成 1800 万美元的 B 轮融资——快速扩张销售团队通常会产生入职缺口。” 不好的:“我看到你们公司最近融资了。”


步骤 5:规划渠道序列

设计 4-6 个跨越邮件、LinkedIn 和电话的触达点。规则:

  • 总时长:10-14 天
  • 任意两个触达点之间至少间隔 2 天
  • 绝不在连续两次触达中使用相同的渠道
  • 每次跟进必须增加新的价值(新资源、新角度、新证明点)。绝不要“只是跟进一下”。
  • 最后一个触达点是一段简短的分手消息

大多数信号的默认节奏:

第 1 天:邮件(首次触达,信号驱动的开场白)
第 3 天:LinkedIn(连接请求备注或简短私信)
第 7 天:邮件(新角度或案例研究)
第 9 天:电话(通话脚本 + 语音留言草稿)
第 12 天:邮件(不同框架或回应对抗)
第 14 天:邮件(简短的分手消息)

根据信号类型调整:

  • 融资后:加快节奏(第 1、2、4、7、10 天)。在公告发布后的 48 小时内行动。
  • 活动跟进:从 LinkedIn 开始,而不是邮件(先使用更温暖的渠道)
  • 内容互动:在发邮件之前,先从 LinkedIn 回复或评论开始

在撰写消息之前,声明每个触达点的计划日期和渠道。


步骤 6:生成序列

完整阅读 references/sequence-format.md。阅读 references/output-template.md 并选择该信号类型的模板。

将 Gemini 请求写入一个临时文件:

cat > /tmp/outreach-sequence-request.json << 'ENDJSON'
{
  "system_instruction": {
    "parts": [{
      "text": "你是一位 B2B 销售文案写手,撰写能够获得回复的冷外联消息。规则:每条消息的第一句是关于他们(买家)的,而不是你的公司。在开场消息中按名称和细节提及具体的购买信号。自然地使用缩写形式。句子要短。不使用公司行话。禁用词:协同效应、杠杆作用、保持联系、回访、ping、拉入群聊、对焦、创新、尖端、一流、世界级、改变游戏规则、颠覆、带宽、深度挖掘、唾手可得的果实、推动指标。不要客套:不要写“希望这封邮件对您一切顺利”,不要写“周一快乐”,不要写“只是想”。每次跟进增加新价值——绝不要“只是跟进一下”。硬性限制:邮件正文不超过 100 词,LinkedIn 消息不超过 300 字符,电话开场白不超过 20 词。只允许 {{first_name}} 作为变量——根据提供的上下文填充所有其他细节。分手消息要简短(3-4 句话)、友好,并留有余地。"
    }]
  },
  "contents": [{
    "parts": [{
      "text": "CONTEXT_AND_INSTRUCTIONS_HERE"
    }]
  }],
  "generationConfig": {
    "temperature": 0.7,
    "maxOutputTokens": 4096
  }
}
ENDJSON
curl -s -X POST \
  "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=$GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d @/tmp/outreach-sequence-request.json \
  | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['candidates'][0]['content']['parts'][0]['text'])"

将 CONTEXT_AND_INSTRUCTIONS_HERE 替换为:

  • 来自步骤 2 的产品描述、目标人物画像、痛点及差异化优势
  • 来自步骤 4 的信号类型、具体细节及四个切入点要素
  • 来自步骤 5 的渠道计划
  • 针对每个触达点的撰写指令:邮件需包含主题行(邮件)、字符数(LinkedIn)和通话脚本(电话)

对于每个邮件触达点,要求提供两个主题行变体(A/B 测试)。


步骤 7:映射反对意见

生成序列后,识别该信号类型的 2-4 个最可能的反对意见。在现有的某个触达点中自然地预先化解这些反对意见。不要添加单独的反对意见处理消息。将预期的化解融入序列中。

阅读 references/sequence-format.md 中的反对意见剧本。映射哪个触达点处理哪个反对意见。

需要预先化解的 4 个标准反对意见:

反对意见预先化解方法
“我们已经有一个解决方案了”肯定他们当前的工具,将你的定位为互补或下一步
“现在不是合适的时候”将信号直接与为什么现在是合适的时候联系起来
“太贵了”阐述投资回报率,锚定他们关心的一个数字
“需要让更多人参与进来”提供一个可共享的资源(单页介绍、录制的演示视频)

在展示最终序列之前,声明每个触达点处理哪个反对意见。


步骤 8:自我质量检查

在展示之前,执行每一项检查并修复违规问题:

  • 每条消息都以关于他们(买家)的句子开头
  • 至少在第一个触达点中提到了具体的信号细节
  • 除了 {{first_name}} 之外,没有未填充的占位符
  • 邮件正文不超过 100 词(计数并说明每条的字数)
  • LinkedIn 消息不超过 300 字符(计数并说明每条)
  • 电话开场白不超过 20 词
  • 任何消息中都没有禁用词
  • 任何跟进消息中都没有“只是跟进一下”
  • 每次跟进都增加了新的角度或价值
  • 没有连续两次使用相同的渠道
  • 整个序列中至少预先化解了 2 个反对意见
  • 分手消息是 3-4 句话,友好,没有负罪感

在展示之前修复任何违规问题。


步骤 9:输出并保存

在代码块中展示完整的序列。

保存到文件:

mkdir -p docs/sequences
cat > docs/sequences/信号类型.md << 'EOF'
序列内容在此处
EOF
echo "序列已保存到 docs/sequences/信号类型.md"

如果设置了 COMPOSIO_API_KEY: 询问:“是否通过 Gmail 中的 Composio 起草邮件触达点?”

确认后,对每个邮件触达点执行:

# Agent 调用 GMAIL_CREATE_EMAIL_DRAFT Composio 动作
# 参数:subject = [主题行], body = [邮件正文], recipient = [联系人的邮箱(如果已知)]

起草完成后:“邮件草稿已创建在 Gmail 中。请检查你的草稿文件夹。”

LinkedIn 消息: 以独立的复制粘贴块形式呈现,每个触达点带有清晰标签。LinkedIn 不支持程序化消息发送。

电话脚本: 以格式化对话要点形式呈现,而非刻板的脚本。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Varnan-Tech/opendirectory

Use when the user asks to generate a blog cover image, thumbnail, or article header. Automatically uses modern typography, brand logos, and Google Search grounding to create beautiful 16:9 images with Gemini 3.1 Flash Image Preview.

Varnan-Tech/opendirectory

World-class brand strategist and naming expert. Uses an interrogation-led discovery phase to extract your brand's DNA, then applies scientific naming frameworks (Phonosemantics) and automated multi-TLD domain checking.

Varnan-Tech/opendirectory

Use when the user asks to generate or update a project's CLAUDE or AGENTS context file from a codebase scan. Writes a focused file under 100 lines containing only the non-obvious build commands, conventions, and gotchas Claude Code needs.

Varnan-Tech/opendirectory

Use when the user wants to verify cold emails, enrich a lead list, or autonomously guess email addresses from a CSV using ValidEmail.co or the open-source Reacher engine.

Varnan-Tech/opendirectory

Competitive intelligence orchestrator tracking companies across 8+ platforms (GitHub, Twitter, Reddit, HN, PH, YC Jobs) with heat scores and AI briefings.

Varnan-Tech/opendirectory

Give it your product URL or description. It finds your top 5 competitors, runs three-track PR research across all of them (editorial, podcasts, communities), identifies which channels appear most frequently, looks up the journalist or host for each, and returns a tiered outreach list with story angles and ready-to-send cold pitch drafts tailored to your product. Use when asked to find PR opportunities, discover where competitors got featured, build a media outreach list, find which journalists cover my space, or get pitch templates for press coverage.

Varnan-Tech/opendirectory

Generate high-converting, deep-dive growth case studies in MDX format. Use this skill when asked to write a case study or blog post about a company's growth, tech stack, or product-led strategy. It handles the full pipeline (researching the company via Tavily, generating a 16:9 cover image, quality checking the draft, uploading assets to cloud storage, and pushing directly to the target repository).

Varnan-Tech/opendirectory

Scans your project for outdated npm, pip, Cargo, Go, or Ruby packages. Runs a CVE security audit. Fetches changelogs, summarizes breaking changes with Gemini, and opens one PR per risk group (patch, minor, major). Includes Diagnosis Mode for install conflicts. Use when asked to update dependencies, check for outdated packages, open dependency PRs, scan for package updates, audit for CVEs, or flag breaking changes in upgrades. Trigger when a user says "check for outdated packages", "update my dependencies", "open PRs for dependency updates", "scan for CVEs", or "which packages need upgrading".

Varnan-Tech/opendirectory

Generates and updates README.md and API reference docs by reading your codebase's functions, routes, types, schemas, and architecture. Uses graphify to build a knowledge graph first, then writes accurate docs from it. Use when asked to write docs, generate a README, document an API, update stale docs, create an API reference from code, add an architecture section, or document a project in any language. Trigger when a user says their docs are missing, outdated, or wants to document their codebase without writing it manually.

Varnan-Tech/opendirectory

Evaluates expired domain candidates against a target niche, scores them by topical relevance, historical activity level, and history cleanliness, then outputs a ranked shortlist with explainable reasoning and risk flags.

Varnan-Tech/opendirectory

Brutally honest developer-experience audit for a GitHub repo. Scores 10 DX dimensions (time-to-first-success, README clarity, visual proof, install, quick-start, docs, examples, community, trust, marketing), writes a shareable roast in the requested tone (brutal/honest/kind), produces a prioritized action plan ranked by impact × effort, and sketches an ideal README. Trigger when user says "roast my repo", "audit my README", "dx audit", "developer experience review", "score my GitHub project", "before launch checklist", or "make my repo shareable".

Varnan-Tech/opendirectory

Drafts and designs a complete HTML email newsletter from a topic or content brief. Outputs paste-ready HTML for Loops, Mailchimp, Beehiiv, Resend, or any standard email platform. Includes subject line options and plain-text fallback. Trigger when a user says "write a newsletter", "draft an email newsletter", "create an HTML email", "design an email for my subscribers", or "write a newsletter about [topic]".

Varnan-Tech/opendirectory

Takes a GitHub PR URL or the current branch and writes a plain-English explanation of what it does and why, then posts it as a PR comment. Use when asked to explain a PR, summarize a pull request, write a plain-English description of a PR, add a summary comment to a PR, or understand what a PR changes. Trigger when a user says "explain this PR", "summarize this pull request", "what does this PR do", "add a comment explaining the PR", or shares a GitHub PR URL and asks what it does.

Varnan-Tech/opendirectory

Audit how often LLMs recommend your brand vs competitors and generate a GEO action plan.

Varnan-Tech/opendirectory

Takes a competitor's public GitHub repo URL, fetches their open issues via the GitHub REST API, filters noise locally, clusters issues into 6 demand categories, computes a demand score per issue and per cluster, and outputs a ranked demand gap report with a GTM messaging brief. Use when asked to scan a competitor's GitHub issues, find what their users are begging for, turn GitHub complaints into product positioning, identify competitor feature gaps, or generate messaging from real user demand. Trigger when a user says "scan competitor issues", "what are users asking for on X repo", "find demand gaps in Y", "turn GitHub issues into messaging", or "what should I build based on competitor complaints".

Varnan-Tech/opendirectory

Find recurring confusion in your repo's GitHub Discussions, rank it by urgency, and draft the actual docs fixes and content angles — with verbatim community quotes and source links as evidence.

Varnan-Tech/opendirectory

SEO keyword research workflow for blog generation using Google Trends data. Use when writing blog posts, planning content calendars, or optimizing articles for search engines. Finds breakout keywords, builds content structure, and generates SEO-optimized blog outlines targeting tech and developer audiences.

Varnan-Tech/opendirectory

Generates a professionally designed case study PDF for B2B SaaS sales and marketing. Supports 7 page layouts, 9 style presets, 1-4 page output. Trigger when user says "create a case study", "write a customer story", "make a case study PDF", "design a success story", "turn this customer win into a PDF".

Varnan-Tech/opendirectory

Generates data visualization charts (bar, line, area, pie, doughnut, scatter, radar, treemap) as PNG using Apache ECharts v6. 1080×1080px default, 5 style presets, highlight annotations. Trigger when user says "create a chart", "visualize data", "make a bar chart", "line graph", "pie chart", "data visualization", "chart this data", "plot", "graph", or "visualize these numbers".

Varnan-Tech/opendirectory

Fetches low-star App Store and Google Play reviews, clusters them into broken-promise patterns, and generates a ranked copy brief with positioning opportunities.

相关技能