posthog-automation について
posthog-automationは、Rube MCPとComposioのPostHogツールキットを通じてPostHog操作を自動化するスキルです。プロダクト分析とフィーチャーフラグ管理のワークフロー向けです。
主な機能
- 01分析イベントの送信
- 02条件や日付によるイベント絞り込み
- 03フィーチャーフラグの確認と作成
- 04組織プロジェクトのページネーション付き一覧
- 05現在のユーザーと権限の取得
活用シーン
- 01PostHogにユーザー行動イベントを記録
- 02プロジェクトのイベントデータを確認
- 03プロジェクトのフラグと配信ルールを設定
- 04APIユーザーと組織の情報を確認
MCP 対応
このスキルはRube MCP経由でComposioのPostHogツールキットを呼び出します。クライアントでRube MCPへの接続とPostHog接続の有効化が必要です。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ davepoon/ buildwithclaude --skill posthog-automationインストール後、Claude Code で/posthog-automationを入力して読み込まれたか確認します。
詳細
Rube MCP を使った PostHog の自動化
Rube MCP 経由で Composio の PostHog ツールキットを利用し、PostHog のプロダクト分析とフィーチャーフラグ管理を自動化します。
ツールキットのドキュメント:composio.dev/toolkits/posthog
前提条件
- Rube MCP に接続されている必要があります(RUBE_SEARCH_TOOLS が利用可能)
RUBE_MANAGE_CONNECTIONSで有効な PostHog 接続が必要です(ツールキットはposthog)- 現在のツールスキーマを取得するため、必ず最初に
RUBE_SEARCH_TOOLSを呼び出してください
セットアップ
Rube MCP の入手方法:クライアント設定で https://rube.app/mcp を MCP サーバーとして追加します。API キーは不要です。エンドポイントを追加するだけで動作します。
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 | (none) |
| ユーザープロフィール | POSTHOG_RETRIEVE_CURRENT_USER_PROFILE | (none) |
Composio によって提供