Files
wehub-resource-sync a1fa97429b
Release / Tag + GitHub Release (push) Waiting to run
Deploy Documentation to Pages / build (push) Waiting to run
Deploy Documentation to Pages / deploy (push) Blocked by required conditions
Sync Codex Skills Symlinks / sync (push) Waiting to run
chore: import upstream snapshot with attribution
2026-07-13 12:41:47 +08:00
..

Feature Flags Architect

End-to-end discipline for feature flags: classify, ship, ramp, retire.

Most teams treat flags as throwaway if-statements. This skill treats them as a controlled lifecycle with measurable debt — and ships the tools to enforce it.

What's inside

  • 3 stdlib Python tools — flag debt scanner, rollout planner, kill-switch auditor
  • 4 reference docs — taxonomy, provider comparison, rollout strategies, lifecycle
  • /flag-cleanup slash command — runs the full quarterly cleanup workflow
  • Asset template — feature flag request form

Install

Claude Code

# Via Claude Code marketplace
/plugin install feature-flags-architect

# Or clone the repo
git clone https://github.com/alirezarezvani/claude-skills.git
cd claude-skills/engineering/feature-flags-architect

Other tools (Codex CLI, Cursor, Antigravity, OpenCode, Gemini CLI)

The skill ships with a context: fork SKILL.md, so it loads via the standard skill mechanism each tool supports. See cross-tool compatibility in the SKILL.md frontmatter.

Quick start

SKILL=engineering/feature-flags-architect/skills/feature-flags-architect

# Audit your repo for stale flags
python "$SKILL/scripts/flag_debt_scanner.py" --repo . --max-age-days 90

# Plan a phased rollout
python "$SKILL/scripts/rollout_planner.py" --population 100000 --target-percent 100 --duration-days 14 --strategy ring

# Verify every flag has a kill switch
python "$SKILL/scripts/kill_switch_audit.py" --repo . --flag-doc docs/feature-flags.md

When to use

  • Adding a new flag and need a rollout plan
  • Auditing a codebase for orphaned or stale flags
  • Choosing a flag provider (LaunchDarkly vs GrowthBook vs Statsig vs Unleash vs Flipt vs DIY)
  • Designing a kill-switch path for a risky launch
  • Cleaning up flag debt before a release freeze

Key principles

  1. Flags are a lifecycle, not an if-statement: request → design → ship → ramp → cleanup → archive
  2. 4 flag types with different lifespans: Release / Experiment / Operational / Permission
  3. Every flag has a documented kill switch — owner, type, trigger, dashboard
  4. Rollout strategy by risk, not preference (ring for risky, linear for medium, log for low)
  5. Quarterly cleanup is non-negotiable — debt compounds

Skill structure

feature-flags-architect/
├── README.md                              # this file
├── .claude-plugin/plugin.json             # 8-field plugin manifest
└── skills/feature-flags-architect/
    ├── SKILL.md                           # main skill spec
    ├── scripts/
    │   ├── flag_debt_scanner.py           # find stale flags
    │   ├── rollout_planner.py             # generate phased schedule
    │   └── kill_switch_audit.py           # verify documentation
    ├── references/
    │   ├── flag_taxonomy.md               # 4 types decision tree
    │   ├── provider_comparison.md         # LD/GB/Statsig/Unleash/Flipt/DIY
    │   ├── rollout_strategies.md          # ring/linear/log/cohort
    │   └── flag_lifecycle.md              # 6-phase lifecycle
    └── assets/
        └── flag_request_template.md       # PR template

Verifiable success

A team using this skill should achieve:

  • 100% of new flags pass kill_switch_audit.py at merge time
  • flag_debt_scanner.py --max-age-days 90 returns ≤5 stale flags repo-wide
  • Every flag has a documented owner, type, kill switch, and dashboard
  • Mean time to retire a Release flag: <60 days from 100% rollout

License

MIT — see repo root LICENSE.