mcpField
F
feature-flags-python

feature-flags-python

github.com/posthog開発7695 回インストール今日更新
リポジトリ

feature-flags-python について

Python アプリに PostHog のフィーチャーフラグを追加するスキルです。SDK の使い方とベストプラクティスに加え、サーバー側評価、例外捕捉、プライバシー保護、終了前のイベント送信を案内します。

主な機能

  1. 01フィーチャーフラグ実装ガイド
  2. 02ブール型フラグを標準に設定
  3. 03サーバー側評価の推奨
  4. 04例外の自動捕捉
  5. 05個人情報に配慮したイベント処理
  6. 06終了時のイベント送信

活用シーン

  1. 01Python ロジックでのフラグ判定
  2. 02画面のちらつきを抑えるフラグ評価
  3. 03例外とイベント計測の設定
  4. 04ユーザー属性とイベントの安全な設定

MCP 対応

PostHog MCP サーバーの接続を確認し、利用可能な場合はツールで PostHog のフィーチャーフラグの作成、一覧表示、更新、削除を行うよう案内します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/posthog/skills --skill feature-flags-python

インストール後、Claude Code で/feature-flags-pythonを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
adding-feature-flag-code.md
best-practices.md
python.md

詳細

Python 向け PostHog フィーチャーフラグ

このスキルは、Python アプリケーションに PostHog のフィーチャーフラグを追加するのに役立ちます。

参照ファイル

  • references/python.md - Python フィーチャーフラグのインストールに関するドキュメント
  • references/adding-feature-flag-code.md - フィーチャーフラグコードの追加に関するドキュメント
  • references/best-practices.md - フィーチャーフラグのベストプラクティスに関するドキュメント

API の詳細とフレームワーク固有のパターンについては、ドキュメントを参照してください。

主な原則

  • 環境変数:PostHog キーには常に環境変数を使用してください。ハードコードしないでください。
  • 変更を最小限に:フィーチャーフラグのコードは既存のロジックに追加してください。既存のコードを置き換えたり、再構成したりしないでください。
  • まずはブール値フラグ:ユーザーが多変量フラグを明確に求めている場合を除き、ブール値のフラグチェックを使用してください。
  • 可能な限りサーバー側で:UI のちらつきを避けるため、サーバー側でのフラグ評価を優先してください。

PostHog MCP ツール

PostHog MCP サーバーが接続されているか確認してください。利用可能な場合は、フィーチャーフラグの管理(作成、一覧表示、更新、削除)に関連するツールを探してください。ユーザーがダッシュボードで手動操作する必要がないよう、これらのツールを使って PostHog でフラグを直接管理してください。

フレームワークのガイドライン

  • ソースコードは venv/site-packages ディレクトリにあることに注意してください
  • posthog は Python SDK のパッケージ名です
  • pip install posthog または pip install -r requirements.txt で依存関係をインストールしてください。また、シェルコマンドで >= などのバージョン指定子を引用符で囲まずに使用しないでください
  • CLI やスクリプトでは、終了前に posthog.shutdown() を必ず呼び出してください。そうしないと、すべてのイベントが失われます
  • モジュールレベルの posthog.api_key 設定ではなく、必ず Posthog() クラスのコンストラクター(インスタンスベースの API)を使用してください
  • 例外を自動的に追跡できるよう、Posthog() コンストラクターには必ず enable_exception_autocapture=True を指定してください
  • capture() のイベントプロパティに PII を絶対に送信しないでください。メールアドレス、氏名、電話番号、住所、IP アドレス、ユーザー生成コンテンツは含めないでください
  • PII は capture() のイベントプロパティではなく、identify() の人物プロパティに含めてください。安全なイベントプロパティには、message_length、form_type、ブール値フラグなどのメタデータがあります
  • 終了時にすべてのイベントがフラッシュされるよう、posthog_client.shutdown を atexit.register() に登録してください
  • Python SDK には identify() メソッドがありません。人物プロパティの設定には posthog_client.set(distinct_id=user_id, properties={...}) を使用するか、コンテキスト内で identify_context(user_id) を使用してください

コメント