jpskill.com
💼 ビジネス コミュニティ

feature-flag-system

新機能の段階的リリースやA/Bテスト、本番環境でのテストなどを実現するために、機能フラグ(トグル)を実装し、新機能の展開を制御したり、機能のライフサイクルを管理したりするSkill。

📜 元の英語説明(参考)

Implement feature flags (toggles) for controlled feature rollouts, A/B testing, canary deployments, and kill switches. Use when deploying new features gradually, testing in production, or managing feature lifecycles.

🇯🇵 日本人クリエイター向け解説

一言でいうと

新機能の段階的リリースやA/Bテスト、本番環境でのテストなどを実現するために、機能フラグ(トグル)を実装し、新機能の展開を制御したり、機能のライフサイクルを管理したりするSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o feature-flag-system.zip https://jpskill.com/download/21422.zip && unzip -o feature-flag-system.zip && rm feature-flag-system.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/21422.zip -OutFile "$d\feature-flag-system.zip"; Expand-Archive "$d\feature-flag-system.zip" -DestinationPath $d -Force; ri "$d\feature-flag-system.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して feature-flag-system.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → feature-flag-system フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
7

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

フィーチャーフラグシステム

目次

概要

フィーチャーフラグを実装して、デプロイとリリースを分離し、段階的なロールアウト、A/B テストを可能にし、緊急キルスイッチを提供します。

使用場面

  • 段階的な機能のロールアウト
  • A/B テストと実験
  • カナリアデプロイメント
  • 特定のユーザー向けのベータ機能
  • 緊急キルスイッチ
  • トランクベース開発
  • ダークローンチ
  • 運用フラグ(メンテナンスモード)
  • ユーザー固有の機能

クイックスタート

最小限の動作例:

interface FlagConfig {
  key: string;
  enabled: boolean;
  description: string;
  rules?: FlagRule[];
  variants?: FlagVariant[];
  createdAt: Date;
  updatedAt: Date;
}

interface FlagRule {
  type: "user" | "percentage" | "attribute" | "datetime";
  operator: "in" | "equals" | "contains" | "gt" | "lt" | "between";
  attribute?: string;
  values: any[];
}

interface FlagVariant {
  key: string;
  weight: number;
  value: any;
}

interface EvaluationContext {
  userId?: string;
// ... (完全な実装についてはリファレンスガイドを参照してください)

リファレンスガイド

references/ ディレクトリ内の詳細な実装:

ガイド 内容
Feature Flag Service (TypeScript) フィーチャーフラグサービス (TypeScript)
React Hook for Feature Flags フィーチャーフラグ用 React Hook
Feature Flag with Analytics アナリティクス付きフィーチャーフラグ
LaunchDarkly-Style SDK LaunchDarkly スタイル SDK
Admin UI for Feature Flags フィーチャーフラグ用管理 UI

ベストプラクティス

✅ DO

  • わかりやすいフラグ名を使用する
  • フラグの目的とライフサイクルを文書化する
  • 段階的なロールアウトを実装する
  • フラグの評価を追跡する
  • 古いフラグを定期的にクリーンアップする
  • 実験にフィーチャーフラグを使用する
  • 重要な機能にキルスイッチを実装する
  • 有効状態と無効状態の両方をテストする
  • 安定したロールアウトのために一貫したハッシュを使用する
  • 非技術系ユーザー向けに管理 UI を提供する

❌ DON'T

  • 永続的な設定にフラグを使用する
  • 古いフラグで技術的負債を蓄積する
  • フラグのクリーンアップをスキップする
  • フラグを細かすぎにする
  • フラグのチェックをどこでもハードコードする
  • アナリティクスとモニタリングをスキップする
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Feature Flag System

Table of Contents

Overview

Implement feature flags to decouple deployment from release, enable gradual rollouts, A/B testing, and provide emergency kill switches.

When to Use

  • Gradual feature rollouts
  • A/B testing and experiments
  • Canary deployments
  • Beta features for specific users
  • Emergency kill switches
  • Trunk-based development
  • Dark launching
  • Operational flags (maintenance mode)
  • User-specific features

Quick Start

Minimal working example:

interface FlagConfig {
  key: string;
  enabled: boolean;
  description: string;
  rules?: FlagRule[];
  variants?: FlagVariant[];
  createdAt: Date;
  updatedAt: Date;
}

interface FlagRule {
  type: "user" | "percentage" | "attribute" | "datetime";
  operator: "in" | "equals" | "contains" | "gt" | "lt" | "between";
  attribute?: string;
  values: any[];
}

interface FlagVariant {
  key: string;
  weight: number;
  value: any;
}

interface EvaluationContext {
  userId?: string;
// ... (see reference guides for full implementation)

Reference Guides

Detailed implementations in the references/ directory:

Guide Contents
Feature Flag Service (TypeScript) Feature Flag Service (TypeScript)
React Hook for Feature Flags React Hook for Feature Flags
Feature Flag with Analytics Feature Flag with Analytics
LaunchDarkly-Style SDK LaunchDarkly-Style SDK
Admin UI for Feature Flags Admin UI for Feature Flags

Best Practices

✅ DO

  • Use descriptive flag names
  • Document flag purpose and lifecycle
  • Implement gradual rollouts
  • Track flag evaluations
  • Clean up old flags regularly
  • Use feature flags for experiments
  • Implement kill switches for critical features
  • Test both enabled and disabled states
  • Use consistent hashing for stable rollouts
  • Provide admin UI for non-technical users

❌ DON'T

  • Use flags for permanent configuration
  • Accumulate technical debt with old flags
  • Skip flag cleanup
  • Make flags too granular
  • Hard-code flag checks everywhere
  • Skip analytics and monitoring

同梱ファイル

※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。