feature-flags-python について
Python アプリに PostHog のフィーチャーフラグを追加するスキルです。SDK の使い方とベストプラクティスに加え、サーバー側評価、例外捕捉、プライバシー保護、終了前のイベント送信を案内します。
主な機能
- 01フィーチャーフラグ実装ガイド
- 02ブール型フラグを標準に設定
- 03サーバー側評価の推奨
- 04例外の自動捕捉
- 05個人情報に配慮したイベント処理
- 06終了時のイベント送信
活用シーン
- 01Python ロジックでのフラグ判定
- 02画面のちらつきを抑えるフラグ評価
- 03例外とイベント計測の設定
- 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.mdbest-practices.mdpython.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)を使用してください
コメント
Markdown 対応