posthog-automation について
Rube MCP と Composio を通じて PostHog のプロダクト分析とフィーチャーフラグ管理を行うワークフロー向けスキルです。イベントの送信・絞り込み、プロジェクトの確認、フラグ設定に対応し、書き込み前に権限や対象条件を確認します。
主な機能
- 01分析イベントの送信
- 02条件によるイベント絞り込み
- 03フィーチャーフラグの一覧と詳細確認
- 04対象ルール付きフラグの作成
- 05プロジェクト一覧とアカウント情報の確認
活用シーン
- 01PostHog へのプロダクトイベント記録
- 02名前や日付によるイベント検索
- 03段階的な機能ロールアウトの設定
- 04プロジェクトと API アクセス情報の確認
MCP 対応
Rube MCP 経由で Composio の PostHog ツールキットを呼び出します。Rube MCP への接続と PostHog の認証が必要です。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill posthog-automationインストール後、Claude Code で/posthog-automationを入力して読み込まれたか確認します。
詳細
Rube MCP による PostHog の自動化
Rube MCP を介して Composio の PostHog ツールキットを利用し、PostHog のプロダクト分析とフィーチャーフラグ管理を自動化します。
前提条件
- Rube MCP が接続されている必要があります(RUBE_SEARCH_TOOLS が利用可能)
RUBE_MANAGE_CONNECTIONSでposthogツールキットを使い、PostHog に接続済みである必要があります- 現在のツールスキーマを取得するため、必ず最初に
RUBE_SEARCH_TOOLSを呼び出してください
セットアップ
Rube MCP の取得:クライアント設定で https://rube.app/mcp を MCP サーバーとして追加してください。MCP エンドポイントを利用するには、インストール済みの Rube サービスから返されるプロバイダー接続と認証フローも必要です。URL を追加するだけでは、アカウントへのアクセス権は付与されません。
RUBE_SEARCH_TOOLSが応答することを確認し、Rube MCP が利用可能であることを確認します- ツールキット
posthogを指定してRUBE_MANAGE_CONNECTIONSを呼び出します - 接続が ACTIVE でない場合は、返された認証リンクに従って PostHog の認証を完了します
- ワークフローを実行する前に、接続ステータスが ACTIVE であることを確認します
主なワークフロー
1. イベントの送信
用途:分析トラッキングのために、PostHog にイベントデータを送信する場合
ツールの順序:
POSTHOG_CAPTURE_EVENT- 1 件以上のイベントを PostHog に送信します[必須]
主なパラメーター:
event:イベント名(例:'$pageview'、'user_signed_up'、'purchase_completed')distinct_id:一意のユーザー識別子(必須)properties:イベント固有のプロパティを含むオブジェクトtimestamp:ISO 8601 形式のタイムスタンプ(任意。既定値はサーバー時刻)
注意点:
- すべてのイベントで
distinct_idが必須です。ユーザーまたはデバイスを識別します - PostHog のシステムイベントには
$プレフィックスを使用します(例:'$pageview'、'$identify') - カスタムイベントには
$プレフィックスを使用しないでください - プロパティの形式は自由ですが、イベント間で一貫したスキーマを維持してください
- イベントは非同期で処理されます。通常、取り込みの遅延は数秒です
2. イベントの一覧表示とフィルタリング
用途:送信済みのイベントを閲覧または検索する場合
ツールの順序:
POSTHOG_LIST_AND_FILTER_PROJECT_EVENTS- フィルターを使ってイベントを検索します[必須]
主なパラメーター:
project_id:PostHog のプロジェクト ID(必須)event:イベント名によるフィルターperson_id:人物 ID によるフィルターafter:この ISO 8601 タイムスタンプより後のイベントbefore:この ISO 8601 タイムスタンプより前のイベントlimit:返すイベントの最大数offset:ページネーションのオフセット
注意点:
project_idは必須です。最初に LIST_PROJECTS で取得してください- 日付フィルターには ISO 8601 形式を使用します(例:'2024-01-15T00:00:00Z')
- イベント数が多い場合はページネーションが必要です。
offsetとlimitを使用してください - 結果は既定で新しい順に返されます
- イベントプロパティはネストされているため、慎重に解析してください
3. フィーチャーフラグの管理
用途:フィーチャーフラグを作成、表示、または管理する場合
ツールの順序:
POSTHOG_LIST_AND_MANAGE_PROJECT_FEATURE_FLAGS- 既存のフィーチャーフラグを一覧表示します[必須]POSTHOG_RETRIEVE_FEATURE_FLAG_DETAILS- フラグの詳細設定を取得します[任意]POSTHOG_CREATE_FEATURE_FLAGS_FOR_PROJECT- 新しいフィーチャーフラグを作成します[任意]
主なパラメーター:
- 一覧表示の場合:
project_id(必須) - 詳細表示の場合:
project_id、id(フィーチャーフラグ ID) - 作成の場合:
project_id:対象プロジェクトkey:フラグキー(例:'new-dashboard-beta')name:ユーザー向けの名前filters:ターゲティングルールとロールアウト率active:フラグが有効かどうか
注意点:
- フィーチャーフラグの
keyはプロジェクト内で一意である必要があります - フラグキーにはケバブケースを使用してください(例:'my-feature-flag')
filtersは、プロパティとロールアウト率を含むターゲティンググループを定義しますactive: trueでフラグを作成すると、条件に一致するユーザーに対してただちに有効になります- PostHog のポーリング機構により、フラグの変更は数秒以内に反映されます
4. プロジェクトの管理
使用するタイミング: ユーザーが PostHog のプロジェクトと組織を一覧表示または調査したい場合
ツールの順序:
POSTHOG_LIST_PROJECTS_IN_ORGANIZATION_WITH_PAGINATION- すべてのプロジェクトを一覧表示します [必須]
主なパラメータ:
organization_id: 組織の識別子 (認証によっては省略可能な場合があります)limit: 1 ページあたりの結果数offset: ページネーションのオフセット
注意点:
- プロジェクト ID は数値です。他のほとんどのエンドポイントでパラメータとして使用されます
- 組織 ID が必要になる場合があります。PostHog のセットアップを確認してください
- ページネーションはオフセットベースです。結果が空になるまで繰り返してください
- プロジェクト設定には API キーと構成の詳細が含まれます
5. ユーザープロフィールと認証
使用するタイミング: ユーザーが現在のユーザーの詳細を確認したい、または API アクセスを検証したい場合
ツールの順序:
POSTHOG_WHOAMI- 現在の API ユーザー情報を取得します [任意]POSTHOG_RETRIEVE_CURRENT_USER_PROFILE- 詳細なユーザープロフィールを取得します [任意]
主なパラメータ:
- どちらの呼び出しにも必須パラメータはありません
- 現在認証されているユーザーの詳細、権限、組織情報を返します
注意点:
- WHOAMI は軽量なチェックです。API 接続の検証に使用してください
- ユーザープロフィールには組織のメンバーシップと権限が含まれます
- これらのエンドポイントは API キーのアクセスレベルとスコープを確認します
一般的なパターン
ID の解決
組織 -> プロジェクト ID:
1. Call POSTHOG_LIST_PROJECTS_IN_ORGANIZATION_WITH_PAGINATION
2. Find project by name in results
3. Extract id (numeric) for use in other endpoints
フィーチャーフラグ名 -> フラグ ID:
1. Call POSTHOG_LIST_AND_MANAGE_PROJECT_FEATURE_FLAGS with project_id
2. Find flag by key or name
3. Extract id for detailed operations
フィーチャーフラグのターゲティング
フィーチャーフラグは高度なターゲティングをサポートします:
{
"filters": {
"groups": [
{
"properties": [
{"key": "email", "value": "@company.com", "operator": "icontains"}
],
"rollout_percentage": 100
},
{
"properties": [],
"rollout_percentage": 10
}
]
}
}
- グループは順番に評価されます。最初に一致したグループがロールアウトを決定します
- プロパティはユーザーをその特性でフィルタリングします
- ロールアウトの割合は、一致したユーザーのうちどの程度の割合がフラグを目にするかを決定します
ページネーション
- イベント:
offsetとlimitを使用します (オフセットベース) - フィーチャーフラグ:
offsetとlimitを使用します (オフセットベース) - プロジェクト:
offsetとlimitを使用します (オフセットベース) - 結果の配列が空になるか、
limitより少なくなるまで続けてください
既知の注意点
プロジェクト ID:
- ほとんどの API エンドポイントで必要です
- 常に最初にプロジェクト名を数値 ID に解決してください
- 1 つの組織に複数のプロジェクトが存在する場合があります
イベントの命名:
- システムイベントは
$プレフィックスを使用します ($pageview、$identify、$autocapture) - カスタムイベントでは
$プレフィックスを使用しないでください - イベント名は大文字と小文字を区別します。一貫性を保ってください
フィーチャーフラグ:
- フラグキーはプロジェクト内で一意である必要があります
- フラグキーにはケバブケースを使用してください
- 変更は数秒以内に反映されます
- フラグの削除は永続的です。無効化を検討してください
レート制限:
- イベントの取り込みにはスループットの制限があります
- 効率化のため、可能な場合はイベントをバッチ処理してください
- API エンドポイントには 1 分あたりのレート制限があります
レスポンスの解析:
- レスポンスデータは
dataまたはresultsキーの下にネストされている場合があります - ページネーションされたレスポンスには
count、next、previousフィールドが含まれます - イベントプロパティはネストされたオブジェクトです。慎重にアクセスしてください
- 任意のフィールドにはフォールバックを用意して防御的に解析してください
クイックリファレンス
| タスク | ツールスラッグ | 主なパラメータ |
|---|---|---|
| イベントのキャプチャ | POSTHOG_CAPTURE_EVENT | event, distinct_id, properties |
| イベントの一覧表示 | POSTHOG_LIST_AND_FILTER_PROJECT_EVENTS | project_id, event, after, before |
| フィーチャーフラグの一覧表示 | POSTHOG_LIST_AND_MANAGE_PROJECT_FEATURE_FLAGS | project_id |
| フラグの詳細を取得 | POSTHOG_RETRIEVE_FEATURE_FLAG_DETAILS | project_id, id |
| フラグの作成 | POSTHOG_CREATE_FEATURE_FLAGS_FOR_PROJECT | project_id, key, filters |
| プロジェクトの一覧表示 | POSTHOG_LIST_PROJECTS_IN_ORGANIZATION_WITH_PAGINATION | organization_id |
| 自分の確認 | POSTHOG_WHOAMI | (なし) |
| ユーザープロフィール | POSTHOG_RETRIEVE_CURRENT_USER_PROFILE | (なし) |
使用するタイミング
このスキルは、概要で説明されているワークフローまたはアクションを実行する場合に適用できます。
制限事項
- 上記の説明にある範囲とタスクが明確に一致する場合にのみ、このスキルを使用してください。
- 環境固有の検証、テスト、または専門家によるレビューの代わりとして、出力を扱わないでください。
- 必要な入力、権限、安全上の境界、または成功基準が不足している場合は、作業を中断して確認を求めてください。
書き込みを行う前に、プロジェクト、イベントペイロード、機能フラグの正確なターゲティングとロールアウトを確認してください。有効なフラグは実際のユーザーに影響するため、ロールバック用の設定を保持し、範囲を限定したロールアウトをテストしてください。検索結果から個人データやイベントデータをエクスポートしたり、プロジェクトの API キーをログに記録したりしないでください。イベントの取り込み確認は、クエリで利用できることの証明にはなりません。ポーリングに上限を設け、再試行のたびに挿入識別子を保持してください。