Feature Flagging

Feature flag configuration and rollout planning for controlled releases

509 stars

Best use case

Feature Flagging is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Feature flag configuration and rollout planning for controlled releases

Teams using Feature Flagging should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/feature-flags/SKILL.md --create-dirs "https://raw.githubusercontent.com/a5c-ai/babysitter/main/library/specializations/product-management/skills/feature-flags/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/feature-flags/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How Feature Flagging Compares

Feature / AgentFeature FlaggingStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Feature flag configuration and rollout planning for controlled releases

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Feature Flagging Skill

## Overview

Specialized skill for feature flag configuration and rollout planning. Enables product teams to plan and manage controlled feature releases with proper targeting, monitoring, and rollback strategies.

## Capabilities

### Flag Design
- Generate feature flag specifications
- Design flag naming conventions
- Create flag documentation templates
- Define flag types (release, experiment, ops, permission)
- Plan flag dependencies and interactions

### Rollout Planning
- Design rollout percentage strategies
- Create flag targeting rules
- Plan canary and gradual rollouts
- Define geographic or segment-based rollouts
- Create rollout schedules

### Operations
- Generate kill switch procedures
- Track flag lifecycle and cleanup
- Monitor flag impact on metrics
- Plan flag deprecation
- Create incident response procedures

## Target Processes

This skill integrates with the following processes:
- `product-launch-gtm.js` - Feature flag rollout for launches
- `beta-program.js` - Beta feature flagging
- `conversion-funnel-analysis.js` - A/B test flag management

## Input Schema

```json
{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": ["design", "rollout", "audit", "deprecate"],
      "description": "Operation mode"
    },
    "feature": {
      "type": "object",
      "properties": {
        "name": { "type": "string" },
        "description": { "type": "string" },
        "type": { "type": "string", "enum": ["release", "experiment", "ops", "permission"] },
        "owner": { "type": "string" },
        "impactLevel": { "type": "string", "enum": ["low", "medium", "high", "critical"] }
      }
    },
    "rolloutStrategy": {
      "type": "object",
      "properties": {
        "type": { "type": "string", "enum": ["percentage", "segment", "geographic", "gradual"] },
        "stages": { "type": "array", "items": { "type": "object" } },
        "criteria": { "type": "object" }
      }
    },
    "existingFlags": {
      "type": "array",
      "items": { "type": "object" },
      "description": "Existing flags for audit or cleanup"
    }
  },
  "required": ["mode"]
}
```

## Output Schema

```json
{
  "type": "object",
  "properties": {
    "flagSpec": {
      "type": "object",
      "properties": {
        "key": { "type": "string" },
        "name": { "type": "string" },
        "description": { "type": "string" },
        "type": { "type": "string" },
        "defaultValue": { "type": "boolean" },
        "variations": { "type": "array", "items": { "type": "object" } },
        "targetingRules": { "type": "array", "items": { "type": "object" } },
        "prerequisites": { "type": "array", "items": { "type": "string" } }
      }
    },
    "rolloutPlan": {
      "type": "object",
      "properties": {
        "stages": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "stage": { "type": "string" },
              "percentage": { "type": "number" },
              "targeting": { "type": "object" },
              "duration": { "type": "string" },
              "successCriteria": { "type": "array", "items": { "type": "string" } },
              "rollbackTriggers": { "type": "array", "items": { "type": "string" } }
            }
          }
        },
        "metrics": { "type": "array", "items": { "type": "string" } },
        "alerts": { "type": "array", "items": { "type": "object" } }
      }
    },
    "killSwitch": {
      "type": "object",
      "properties": {
        "procedure": { "type": "array", "items": { "type": "string" } },
        "owner": { "type": "string" },
        "escalation": { "type": "array", "items": { "type": "string" } }
      }
    },
    "lifecycle": {
      "type": "object",
      "properties": {
        "createdDate": { "type": "string" },
        "plannedRemovalDate": { "type": "string" },
        "cleanupTasks": { "type": "array", "items": { "type": "string" } }
      }
    }
  }
}
```

## Usage Example

```javascript
const flagPlan = await executeSkill('feature-flags', {
  mode: 'rollout',
  feature: {
    name: 'New Dashboard Experience',
    description: 'Redesigned analytics dashboard with AI insights',
    type: 'release',
    owner: 'product-team',
    impactLevel: 'high'
  },
  rolloutStrategy: {
    type: 'gradual',
    stages: [
      { name: 'internal', percentage: 100, duration: '3 days' },
      { name: 'beta', percentage: 10, duration: '1 week' },
      { name: 'early-adopters', percentage: 25, duration: '1 week' },
      { name: 'general', percentage: 100, duration: 'permanent' }
    ]
  }
});
```

## Dependencies

- Feature flag platforms (LaunchDarkly, Split, Flagsmith)
- Monitoring and alerting systems

Related Skills

feast-feature-store

509
from a5c-ai/babysitter

Feature store management skill for online/offline feature serving, feature registration, and training-serving consistency.

Feature Engineering Optimizer

509
from a5c-ai/babysitter

Optimizes feature engineering pipelines and feature store configurations

Feature Intake

509
from a5c-ai/babysitter

Parse and normalize features from text descriptions, images, and screenshots into structured requirements.

process-builder

509
from a5c-ai/babysitter

Scaffold new babysitter process definitions following SDK patterns, proper structure, and best practices. Guides the 3-phase workflow from research to implementation.

Workflow & Productivity

babysitter

509
from a5c-ai/babysitter

Orchestrate via @babysitter. Use this skill when asked to babysit a run, orchestrate a process or whenever it is called explicitly. (babysit, babysitter, orchestrate, orchestrate a run, workflow, etc.)

yolo

509
from a5c-ai/babysitter

Run Babysitter autonomously with minimal manual interruption.

user-install

509
from a5c-ai/babysitter

Install the user-level Babysitter Codex setup.

team-install

509
from a5c-ai/babysitter

Install the team-pinned Babysitter Codex workspace setup.

retrospect

509
from a5c-ai/babysitter

Summarize or retrospect on a completed Babysitter run.

resume

509
from a5c-ai/babysitter

Resume an existing Babysitter run from Codex.

project-install

509
from a5c-ai/babysitter

Install the Babysitter Codex workspace integration into the current project.

plan

509
from a5c-ai/babysitter

Plan a Babysitter workflow without executing the run.