adding-feature-flags — скилл для Claude Code: что делает
Настраивает фиче-флаги для поэтапного выката функций и A/B-тестирования через PostHog или переменные окружения.
npx skills add spencerpauly/awesome-cursor-skills --skill adding-feature-flags -a claude-codeЧто делает adding-feature-flags
Скилл помогает внедрить переключатели функций в клиентский и серверный код. Он предлагает два сценария: интеграцию с сервисом PostHog или простую локальную конфигурацию на базе переменных окружения в lib/feature-flags.ts.
Для серверной проверки с posthog-node потребуется ключ POSTHOG_API_KEY. Чтобы частые вызовы API не тормозили запросы к бэкенду, результаты проверки флагов придётся кешировать. В клиентском коде скилл подключает хук useFeatureFlagEnabled из библиотеки posthog-js/react.
Какие задачи решает
- внедрить постепенный релиз новой функциональности
- настроить A/B-тестирование компонентов интерфейса через PostHog
- создать локальные переключатели функций через переменные окружения
- добавить аварийное отключение для нестабильного кода
Примеры запросов агенту
- Добавь фиче-флаг для нового чекаута через PostHog
- Настрой локальный переключатель функций в lib/feature-flags.ts
- Сделай постепенный rollout фичи с проверкой на сервере
Как установить adding-feature-flags
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill adding-feature-flags -a claude-code2Вручную: положить файлы
~/.claude/skills/adding-feature-flags/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/adding-feature-flags/
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill adding-feature-flags -a codex2Вручную: положить файлы
.agents/skills/adding-feature-flags/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill adding-feature-flags -a cursor2Вручную: положить файлы
.cursor/skills/adding-feature-flags/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install spencerpauly/awesome-cursor-skills adding-feature-flags2Вручную: положить файлы
.github/skills/adding-feature-flags/SKILL.md1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill adding-feature-flags -a gemini-cli2Командой платформы
gemini skills install https://github.com/spencerpauly/awesome-cursor-skills --path resources/adding-feature-flagsВручную: положить файлы
.devin/skills/adding-feature-flags/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill adding-feature-flags -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о adding-feature-flags
Как установить adding-feature-flags в Claude Code?
Выполните команду npx skills add spencerpauly/awesome-cursor-skills --skill adding-feature-flags -a claude-code.
Что делает скилл adding-feature-flags?
Он даёт агенту инструкции по созданию фиче-флагов для поэтапного релиза или A/B-тестов через сервис PostHog либо локальный конфиг.
Что нужно для серверной проверки флагов через PostHog?
Потребуется установить библиотеку posthog-node и передать ключ POSTHOG_API_KEY в переменные окружения.
Исходный текст
SKILL.md · CC0-1.0
---
name: adding-feature-flags
description: Add feature flags to an application for gradual rollouts, A/B testing, and kill switches using PostHog, LaunchDarkly, or a simple local implementation.
---
# Add Feature Flags
Use this skill when the user asks to add feature flags, feature toggles, gradual rollouts, or A/B testing.
## Option A: PostHog Feature Flags (Recommended)
1. **Install PostHog** if not already present:
```bash
npm install posthog-js
```
2. **Use feature flags in code**:
```tsx
import { useFeatureFlagEnabled } from "posthog-js/react";
function MyComponent() {
const showNewFeature = useFeatureFlagEnabled("new-checkout-flow");
if (showNewFeature) return <NewCheckout />;
return <OldCheckout />;
}
```
3. **Server-side evaluation** — for server components or API routes:
```ts
import { PostHog } from "posthog-node";
const posthog = new PostHog(process.env.POSTHOG_API_KEY!);
const isEnabled = await posthog.isFeatureEnabled("new-checkout-flow", userId);
```
4. **Create flags in the PostHog dashboard** — set up targeting rules based on user properties, percentage rollouts, or cohorts.
## Option B: Simple Local Feature Flags
For projects that don't need a third-party service:
1. **Create a flags config** — `lib/feature-flags.ts`:
```ts
export const FLAGS = {
NEW_CHECKOUT: process.env.NEXT_PUBLIC_FF_NEW_CHECKOUT === "true",
DARK_MODE: process.env.NEXT_PUBLIC_FF_DARK_MODE === "true",
} as const;
```
2. **Use in components**:
```tsx
import { FLAGS } from "@/lib/feature-flags";
function App() {
return FLAGS.NEW_CHECKOUT ? <NewCheckout /> : <OldCheckout />;
}
```
3. **Add env vars** — add flags to `.env` and `.env.example`:
```
NEXT_PUBLIC_FF_NEW_CHECKOUT=false
NEXT_PUBLIC_FF_DARK_MODE=true
```
## Notes
- Use feature flags for all user-facing changes during rollout, not just experiments.
- Clean up stale flags — remove the flag and the old code path once a feature is fully rolled out.
- For server-side flags, cache the evaluation result to avoid per-request API calls.
- Name flags descriptively: `new-checkout-flow` not `flag-1`.
© spencerpauly · CC0-1.0 · spencerpauly/awesome-cursor-skills