Communitygithub.com

Varnan-Tech/opendirectory

購買シグナルを受け取り、Eメール、LinkedIn、電話を組み合わせたパーソナライズされたマルチチャネル・アウトリーチシーケンスを生成します。10~14日間にわたる4~6のタッチポイントを出力します。オプションでComposio Gmail経由でEメール下書きを作成します。

opendirectory とは?

このスキルは、購買シグナル(資金調達、採用強化、製品発表など)に基づいて、B2B営業向けのパーソナライズされたマルチチャネル・アウトリーチシーケンスを自動生成します。Claude CodeやCodexなどのAIエージェント上で動作し、ICP(理想顧客プロファイル)やアカウント情報をローカルファイルから読み込み、Gemini APIを利用してメッセージを生成します。出力はEメール(Composio Gmailとの連携で下書き自動作成も可能)、LinkedInメモ、電話トーク台本として提供され、「フォローアップだけ」のような価値のないメッセージを禁止するなど、厳格な品質ルールが適用されています。営業担当者はコールドアウトリーチの作成時間を大幅に短縮でき、一貫性のある高品質なシーケンスを迅速に展開できます。

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

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

アウトリーチシーケンスビルダー

購買シグナルを受け取ります。パーソナライズされたマルチチャネル・アウトリーチシーケンスを生成します。Eメール、LinkedIn、電話で送信可能なメッセージを出力します。


重要なルール: すべてのメッセージは、読み込んだコンテキストから完全に埋めなければなりません。変数として {{first_name}} のみ使用可能です。[Company Name] のような角括弧や [INSERT PAIN POINT] のようなプレースホルダーは禁止です。情報が不足している場合は、作成前にユーザーに質問してください。未入力のプレースホルダーがあるメッセージを絶対に送信しないでください。


ステップ 1: セットアップチェック

必要な環境変数を確認します:

echo "GEMINI_API_KEY: ${GEMINI_API_KEY:+set}"
echo "COMPOSIO_API_KEY: ${COMPOSIO_API_KEY:-not set, Gmail drafting will be skipped}"

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 found" || echo "icp missing"
ls docs/accounts/ 2>/dev/null && echo "accounts found" || echo "accounts missing"

docs/icp.md が存在する場合: 読み取り、以下を抽出します:

  • ターゲットペルソナ(役職、役職レベル、部門)
  • 企業プロフィール(規模、業界、資金調達ステージ)
  • コアとなるペインポイント(バイヤーの言葉をそのまま使用)
  • 主な差別化要因(競合ではなく自社製品を選ぶ理由)

docs/accounts/{company}.md が存在する場合: 該当ファイルを読み取り、以下を抽出します:

  • 会社名、規模、最近の状況
  • 既知のテクノロジースタックやペインポイント
  • 既存の関係や過去のコンタクト

どちらも存在しない場合: ユーザーに以下の4つの質問をします。4つすべてが回答されるまで進めません:

  1. あなたの製品は何をしますか?(1~2文)
  2. 誰をターゲットにしていますか?(役職、企業規模、業界)
  3. あなたが解決する主な問題は何ですか?(バイヤーの視点から、あなたの視点ではなく)
  4. あなたの主な差別化要因は何ですか?(彼らが現在使用している代替品ではなく、あなたを選ぶ理由)

ステップ 3: シグナルの特定

7つのシグナルタイプのうちどれが該当するかを判断します。各シグナルタイプの完全なインサイト、ブリッジ、オープナー、アスクについては、references/signal-playbook.md を参照してください。

7つのシグナルタイプ:

シグナル定義
資金調達後企業が過去30日以内に資金調達ラウンドを実施した
採用シグナル企業が自社がサービスを提供する機能において5つ以上のポジションを募集している
競合からの移行コンタクトが競合を使用しており、不満を示している
製品発表企業が新製品または主要機能を発表した
コンテンツエンゲージメントコンタクトが自社のコンテンツに「いいね!」、コメント、またはシェアした
イベントフォローアップカンファレンスやウェビナーで会った、または同じセッションに参加した
転職コンタクトが過去60日以内に新しい会社に転職した

ユーザーがプロンプトでシグナルを提供した場合: タイプを確認し、具体的な詳細(ラウンド規模、役職名、製品名、イベント名など)を抽出します。

シグナルが不明な場合: 質問します:「このアウトリーチのきっかけは何ですか?(例:資金調達ラウンドを実施した、エンジニアを採用している、イベントで会った)」

先に進む前に、検出されたシグナルタイプと具体的な詳細を明記します。


ステップ 4: アングルの開発

ステップ2~3で読み込んだシグナルタイプとコンテキストを使用して、4つのアングル要素を定義します。このシグナルタイプの公式については、references/signal-playbook.md を参照してください。

メッセージを生成する前に、明示的に書き出します:

シグナル:[具体的なシグナル+具体的な詳細]
インサイト:[このシグナルが彼らの状況について明らかにすること]
ブリッジ:[あなたの製品がシグナルが明らかにしたことにどのように関連するか]
オープナー:[具体的なシグナルの詳細に言及する一文]
アスク:[最小限の実行可能なCTA、10語未満]

オープナーは具体的なトリガーを明記しなければなりません。曖昧なオープナーは却下されます。

良い例:「1800万ドルのシリーズB、おめでとうございます — 営業チームを急速に拡大すると、通常オンボーディングのギャップが生じます。」 悪い例:「御社が最近資金調達をしたのを見ました。」


ステップ 5: チャネルシーケンスの計画

Eメール、LinkedIn、電話にわたる4~6のタッチポイントを設計します。ルール:

  • 合計期間:10~14日
  • 最小間隔:任意の2つのタッチの間に2日以上
  • 同じチャネルを連続して使用しない
  • 各フォローアップは新しい価値を追加する必要がある(新しいリソース、新しいアングル、新しい証明ポイント)。「フォローアップだけ」は禁止。
  • 最後のタッチポイントは短いブレイクアップメッセージ

ほとんどのシグナルのデフォルトのケイデンス:

1日目:Eメール(最初のタッチ、シグナル主導のオープナー)
3日目:LinkedIn(コネクションノートまたはショートDM)
7日目:Eメール(新しいアングルまたはケーススタディ)
9日目:電話(トーク台本+ボイスメールスクリプト)
12日目:Eメール(別のフレーミングまたは反論への対応)
14日目:Eメール(短いブレイクアップメッセージ)

シグナルタイプに応じて調整:

  • 資金調達後:より迅速に(1、2、4、7、10日目)。発表から48時間以内に行動。
  • イベントフォローアップ:EメールではなくLinkedInから開始(より温かいチャネルを先に)
  • コンテンツエンゲージメント:Eメールの前にLinkedInの返信またはコメントから開始

メッセージを作成する前に、各タッチポイントの計画された日とチャネルを明記します。


ステップ 6: シーケンスの生成

references/sequence-format.md をすべて読みます。references/output-template.md を読み、このシグナルタイプのテンプレートを選択します。

Geminiリクエストを一時ファイルに書き込みます:

cat > /tmp/outreach-sequence-request.json << 'ENDJSON'
{
  "system_instruction": {
    "parts": [{
      "text": "あなたは返信を得るコールドアウトリーチを書くB2B営業コピーライターです。ルール:すべてのメッセージの最初の文は、自社ではなく相手についてです。最初のメッセージでは、具体的な購買シグナルを名前と詳細で参照します。自然に短縮形を使用します。短い文。企業の専門用語は禁止。禁止語:シナジー、レバレッジ、タッチベース、サークルバック、ピング、ループイン、アラインメント、革新的、最先端、ベストインクラス、ワールドクラス、ゲームチェンジング、ディスラプティブ、バンドウィズ、ディープダイブ、ローリングフルーツ、ムーブザニードル。挨拶は不要:「このメールがご都合よければ幸いです」「良い月曜日を」「ただ〜したかっただけ」は禁止。各フォローアップは新しい価値を追加 — 「フォローアップだけ」は絶対に禁止。厳格な制限:Eメール本文は100語未満、LinkedInメモは300文字未満、電話オープナーは20語未満。変数として {{first_name}} のみ許可 — 他のすべての詳細は提供されたコンテキストから埋めてください。ブレイクアップメッセージは短く(3〜4文)、フレンドリーで、ドアを開けたままにします。"
    }]
  },
  "contents": [{
    "parts": [{
      "text": "HERE_CONTEXT_AND_INSTRUCTIONS"
    }]
  }],
  "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'])"

HERE_CONTEXT_AND_INSTRUCTIONS を次の内容に置き換えます:

  • ステップ2の製品説明、ターゲットペルソナ、ペインポイント、差別化要因
  • ステップ4のシグナルタイプ、具体的な詳細、4つのアングル要素
  • ステップ5のチャネル計画
  • 各タッチポイントを、件名(Eメール)、文字数(LinkedIn)、トーク台本(電話)とともに記述する指示

各Eメールタッチポイントに対して、2つの件名バリエーション(A/Bテスト)を要求します。


ステップ 7: 反論のマッピング

シーケンス生成後、このシグナルタイプで最も可能性の高い2~4の反論を特定します。それぞれの反論を、既存のタッチポイント内に自然に先取りして組み込みます。反論処理専用のメッセージを追加しないでください。先取りをシーケンスに織り込みます。

references/sequence-format.md の反論プレイブックを読みます。各反論をどのタッチポイントで処理するかをマッピングします。

先取りする4つの標準的な反論:

反論先取りアプローチ
「すでにソリューションを持っている」現在のツールを認め、自社を補完的、または次のステップとして位置づける
「今はタイミングが良くない」シグナルを、今が適切なタイミングである理由に直接結びつける
「高すぎる」ROIをフレーミングし、彼らが気にする数字にアンカーする
「もっと多くの人を巻き込む必要がある」共有可能なリソース(ワンページャー、録画デモ)を提供する

最終シーケンスを提示する前に、各反論をどのタッチポイントで処理するかを明記します。


ステップ 8: セルフQA

すべてのチェックを実行し、違反があれば修正してから提示します:

  • すべてのメッセージは相手についての文から始まる
  • 具体的なシグナルの詳細が少なくとも最初のタッチポイントで言及されている
  • {{first_name}} 以外の未入力のプレースホルダーがない
  • Eメール本文は100語未満(それぞれの語数をカウントして明記)
  • LinkedInメモは300文字未満(それぞれの文字数をカウントして明記)
  • 電話オープナーは20語未満
  • どのメッセージにも禁止語がない
  • どのフォローアップにも「フォローアップだけ」がない
  • 各フォローアップは新しいアングルまたは価値を追加する
  • 同じチャネルが連続して使用されていない
  • シーケンス全体で少なくとも2つの反論が先取りされている
  • ブレイクアップメッセージは3〜4文、フレンドリーで、罪悪感を与えない

提示前に違反を修正します。


ステップ 9: 出力と保存

完全なシーケンスをコードブロックで提示します。

ファイルに保存:

mkdir -p docs/sequences
cat > docs/sequences/SIGNAL-TYPE.md << 'EOF'
SEQUENCE_CONTENT_HERE
EOF
echo "Sequence saved to docs/sequences/SIGNAL-TYPE.md"

COMPOSIO_API_KEY が設定されている場合: 確認します:「Composio経由でGmailにEメールのタッチポイントを下書きしますか?」

確認後、各Eメールタッチポイントに対して:

# エージェントは GMAIL_CREATE_EMAIL_DRAFT Composio アクションを呼び出す
# 件名 = [件名]、本文 = [Eメール本文]、宛先 = [連絡先Eメール(既知の場合)]

下書き作成後:「GmailにEメール下書きが作成されました。下書きフォルダを確認してください。」

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.

関連スキル