llms.txt
+35 −13
https://featureflip.io/llms.txt
− Free to start, with SDKs for JavaScript, Cloudflare Workers, Python, C#, Java, Go, PHP, Ruby, Swift, Flutter, Android, and React.− - [Homepage](https://featureflip.io/): Feature flags without the tech debt. A GitHub Action opens one reviewable pull request per dead flag and removes the code path in thirteen languages once a rollout is finished, and every plan is one flat price with nothing metered.− - [Feature Flag Webhooks](https://featureflip.io/product/features/webhooks/): Outbound webhooks send a signed HTTP request to your endpoint whenever a flag, targeting rule, variation, segment, environment, project, SDK key, API token or the organization changes. HMAC-signed deliveries with rotatable signing secrets, filters by event type, project and environment, automatic retries, a delivery log with manual redelivery, and test events. Managed from the dashboard, the /api/v1 Management API, the− - [A/B Testing](https://featureflip.io/use-cases/a-b-testing/): Serve two variations to a sticky 50/50 split and record who saw which one — the flag delivers the experiment, your analytics call the winner.− - [Feature Flag Cost Calculators](https://featureflip.io/tools/): Six per-vendor calculators that run your own numbers through a published rate card and put the result next to Featureflip's flat price. Every rate carries a source link and a check date.− - [OpenFeature Feature Flags: Seven Language Providers](https://featureflip.io/blog/openfeature-feature-flags/): OpenFeature feature flags in Node.js, .NET, Python, Go, Java, PHP and Ruby: set up the Featureflip provider, map context, keep call sites vendor-neutral.− - [Account Security](https://featureflip.io/docs/guides/account-security/): Enable two-factor authentication (TOTP authenticator app plus recovery codes) and sign in with Google or GitHub, including what GitHub sign-in reads and why an unverified address is turned away.− - [Outbound Webhooks](https://featureflip.io/docs/guides/webhooks/): Subscribe an HTTPS endpoint to flag, targeting, segment, environment and key changes. Deliveries are HMAC-SHA256 signed, retried on failure, logged with one-click redelivery, and signed with rotatable secrets. Manageable from the dashboard, the Management API or the Terraform provider.− - [Analytics Integration](https://featureflip.io/docs/guides/analytics-integration/): Register an inspector when you create the client, and every flag evaluation reaches your own code as it happens, in every SDK except Cloudflare Workers. From there you can send exposures to PostHog, Amplitude, GrowthBook or any analytics tool you already run.− - [Bootstrap Client-Side Flags](https://featureflip.io/docs/guides/bootstrap/): Start the browser or React SDK with flag values so the first paint doesn't wait on the network. Pass values a server SDK evaluated while rendering the page (no request before first render, and the server-rendered HTML matches the first client render), or bootstrap: 'localStorage' to reuse the values the browser saw last visit, stored per client key and context. The server's values then replace them. Includes a Node.j− - [Flag Cleanup Action](https://featureflip.io/docs/integrations/flag-cleanup-action/): Remove dead feature flag code with a GitHub Action that opens one reviewable pull request per flag across thirteen languages, then archives the flag once the removal is deployed and the old traffic has drained.− - [OpenFeature](https://featureflip.io/docs/integrations/openfeature/): Evaluate Featureflip flags through the CNCF vendor-neutral OpenFeature standard, with providers for the Node.js, .NET, Python, Go, Java, PHP and Ruby SDKs.− - [Authentication](https://featureflip.io/docs/management-api/authentication/): Personal Access Tokens and organization-scoped Service Tokens, sent as bearer tokens.+ Free to start, with SDKs for JavaScript, Node.js, Cloudflare Workers, Python, C#, Java, Go, PHP, Ruby, the browser, React, Swift, Flutter and Android.+ ## For AI agents+ - [Using the Management API from an AI agent](https://featureflip.io/docs/management-api/agents/): The short path for a coding agent. A person signs up, confirms the email address, creates a Service Token (Organization Settings, Service Tokens) or a Personal Access Token (Settings, API Tokens) in the dashboard and hands it over as FEATUREFLIP_TOKEN, because tokens are created only there. With it the agent calls https://api.featureflip.io/api/v1 with Authorization: Bearer, checks GET /api/v1/me, + - [Management API OpenAPI Spec](https://featureflip.io/openapi/public-v1.json): Every /api/v1 endpoint, request and response.+ - [API Onboarding Descriptor](https://featureflip.io/.well-known/api-onboarding): Plans, credential types and the token-to-SDK-key flow in machine-readable form.+ - [MCP Server](https://featureflip.io/docs/integrations/mcp/): The same API as MCP tools, configured with the same FEATUREFLIP_TOKEN.+ - [Homepage](https://featureflip.io/): Feature flags without the tech debt. A GitHub Action opens one reviewable pull request per dead flag and removes the code path in twelve languages plus ERB and Blade templates once a rollout is finished, and every plan is one flat price with nothing metered.+ - [Feature Flag Webhooks](https://featureflip.io/product/features/webhooks/): Outbound webhooks send a signed HTTP request to your endpoint, a message to a Slack channel, a change event to Datadog or an annotation to Grafana, whenever a flag, targeting rule, variation, segment, environment, project, SDK key, API token or the organization changes. HMAC-signed deliveries with rotatable signing secrets, filters by event type, project and environment, automatic retries, a delivery log with manual re+ - [A/B Testing](https://featureflip.io/use-cases/a-b-testing/): Serve two variations to a sticky 50/50 split, hand each exposure to your analytics tool through an evaluation inspector, and check the split in the flag's Analytics tab. The flag delivers the experiment, your analytics call the winner.+ - [Feature Flag Cost Calculators](https://featureflip.io/tools/): Six per-vendor calculators that run your own numbers through a published rate card and put the result next to Featureflip's flat price, plus a cleanup cost calculator for your stale flag backlog. Every vendor rate carries a source link and a check date.+ - [Feature Flag Cleanup Cost Calculator](https://featureflip.io/tools/feature-flag-cleanup-cost-calculator/): Price a stale feature flag backlog from your own inputs only (flag counts, minutes per removal, hourly cost, carrying minutes per stale flag): the cost to clear it, its 12-month carrying cost, how fast it grows, the monthly cost of keeping up, and how many removals a cleanup tool needs to pay back its setup. No industry averages, every formula shown. Because a removal costs the same when+ - [OpenFeature provider for Android](https://featureflip.io/changelog/#openfeature-android) (2026-11-03): Android apps can read Featureflip flags through the OpenFeature Kotlin SDK. The io.featureflip:featureflip-android-openfeature package wraps the Featureflip Android SDK and fetches flags for the user you set, so every read is a cache lookup and a user switch is one setEvaluationContext call.+ - [Cleanup reads OpenFeature React hooks and leaves JSX tidy](https://featureflip.io/changelog/#flag-cleanup-openfeature-react) (2026-10-28): Version 1.17.0 of the flag cleanup Action removes flags read through OpenFeature's React SDK, so useBooleanFlagValue goes the way useFeatureFlag already did. It also puts code back on one line where a removal made room, which leaves less reformatting for review. Version 1.18.0 then removes more of the C# gate plumbing that earlier versions kept when they c+ - [See what a flag actually served](https://featureflip.io/changelog/#flag-evaluation-analytics) (2026-10-27): Every flag now has an Analytics tab. Pick an environment and a range of 7, 30 or 90 days, and it shows how many evaluations each variation got, day by day, and which targeting rule, rollout, default or off variation served them. The same breakdown is on /api/v1 and in the MCP server, so a script or an agent can check a rollout before widening it. Counts are evaluations, so one user eval+ - [OpenFeature provider for the browser and React](https://featureflip.io/changelog/#openfeature-web) (2026-10-27): Browser and React apps can read Featureflip flags through the OpenFeature web SDK. The @featureflip/openfeature-web package wraps the Featureflip browser SDK and fetches flags for the user you set, which keeps every read synchronous and makes a user switch one setContext call. React reaches it through @openfeature/react-sdk.+ - [Removal pull requests fix the tests and comments around a flag](https://featureflip.io/changelog/#flag-cleanup-tests-and-comments) (2026-10-26): A removal used to leave the tests about a flag, and the comments describing it, for you to fix by hand. Versions 1.14.0 to 1.16.0 of the flag cleanup Action handle more of that in the same pull request. A TypeScript test about the removed branch is deleted, a kept test's title stops naming a flag that is gone, and comments that describe the flag's st+ - [Rollouts skip a context they can't bucket](https://featureflip.io/changelog/#rollouts-skip-unbucketable-contexts) (2026-10-22): A percentage rollout needs a stable ID to put each user in the same bucket every time. A context without one used to get different answers depending on where it was evaluated: the hosted evaluation API drew a random bucket on every request, and the server SDKs served one fixed variation to all of them. Now the hosted API and every server SDK skip that rule, and the c+ - [Wrapper inlining reaches Python, Dart, PHP, Ruby and Swift](https://featureflip.io/changelog/#flag-cleanup-wrappers-every-language) (2026-10-21): The flag cleanup Action could already replace a call to a method that wraps one flag read with the value the flag serves, in Kotlin, Java, C#, Go, TypeScript and JavaScript. Versions 1.11.0 to 1.13.0 do the same in Python, Dart, PHP, Ruby and Swift, which covers every language a Featureflip SDK is written for. The same releases delete a comment that+ - [The MCP server sets up SDK keys, segments and environments](https://featureflip.io/changelog/#mcp-sdk-keys-segments) (2026-10-14): MCP server 0.2.0 lets an agent set up a project end to end. It can create projects, environments, SDK keys and segments, and edit one targeting rule without resending the whole list. A write can carry the etag of what the agent read, so a change someone else made in the meantime makes it fail rather than get overwritten. Claude Desktop users can install the server+ - [Client SDKs report the flags your app actually reads](https://featureflip.io/changelog/#client-sdk-read-reporting) (2026-10-08): Featureflip used to count every flag it sent a browser or mobile client as in use, whether your code read it or not. A client-side flag could therefore never look stale, and none could be archived while the app was open. The browser, React, Swift, Android and Flutter SDKs now report the flags your app reads, so stale detection and the archive guard work from real re+ - [Feature Flag Cleanup Business Case and Policy Template](https://featureflip.io/blog/feature-flag-cleanup-business-case/): Make the business case for feature flag cleanup: a pitch for each audience, copyable email, Slack and sprint templates, and an expiration policy to paste in.+ - [Feature Flag Code Review Checklist: What to Check in a PR](https://featureflip.io/blog/feature-flag-code-review-checklist/): A feature flag code review checklist for the three kinds of flag PR: adding a flag, building behind one and removing one, plus a template you can paste.+ - [Feature Flag Lifecycle Management: Archive, Remove, Audit](https://featureflip.io/blog/flag-lifecycle-management/): Feature flag lifecycle management is deciding a flag's exit when you create it. When to remove the code, when to archive, when to delete, and how to audit.+ - [Golden Vector Testing: Keeping Seven SDKs in Agreement](https://featureflip.io/blog/golden-vector-testing/): How we keep seven server SDKs giving the same flag answer: the evaluation engine generates the test vectors, and every SDK must match them in CI.+ - [OpenFeature Feature Flags: Nine Providers, Eight Languages](https://featureflip.io/blog/openfeature-feature-flags/): OpenFeature feature flags in Node.js, .NET, Python, Go, Java, PHP, Ruby, Web and Android: set up the Featureflip provider and keep call sites vendor-neutral.+ - [Critical Environments](https://featureflip.io/docs/guides/critical-environments/): Mark an environment critical so every change to what it serves needs a written reason, enforced by the server on the dashboard, the Management API (X-Intent-Reason header, 422 change_reason_required) and the MCP server, and recorded in the audit log. Project-wide changes such as segment, variation and archive edits need one when any environment in the project requires it, and scheduled changes keep the reason t+ - [Account Security](https://featureflip.io/docs/guides/account-security/): Enable two-factor authentication (TOTP authenticator app plus recovery codes), require it for every member of an organization (Team plan and above, with a grace period and an SSO exemption), and sign in with Google or GitHub, including what GitHub sign-in reads and why an unverified address is turned away.+ - [Outbound Webhooks](https://featureflip.io/docs/guides/webhooks/): Subscribe an HTTPS endpoint, a Slack channel, Datadog or Grafana to flag, targeting, segment, environment and key changes. Deliveries are HMAC-SHA256 signed, retried on failure, logged with one-click redelivery, and signed with rotatable secrets. Manageable from the dashboard, the Management API or the Terraform provider.+ - [Flag Evaluation Analytics](https://featureflip.io/docs/guides/flag-analytics/): Every flag's Analytics tab shows, per environment over 7, 30 or 90 UTC days, how many evaluations each variation got and which rule, default, off variation or prerequisite served them. Each percentage-rollout rule gets a sample-ratio check of its configured split against what it served. Counts are evaluations, not unique users. The same breakdown is on /api/v1 and in the MCP server's flag_evaluations tool. Every p+ - [Analytics Integration](https://featureflip.io/docs/guides/analytics-integration/): Register an inspector when you create the client, and every flag evaluation reaches your own code as it happens, in every SDK except Cloudflare Workers. From there you can send exposures to PostHog, Amplitude, GrowthBook or any analytics tool you already run, record each evaluation on the active OpenTelemetry span using the feature flag semantic conventions, or attach boolean flags to Sentry error events.+ - [Bootstrap Client-Side Flags](https://featureflip.io/docs/guides/bootstrap/): Start the browser or React SDK with flag values so the first paint doesn't wait on the network. Pass the values a server SDK evaluated while rendering the page, so the first client render matches the server HTML, or use bootstrap: 'localStorage' to reuse last visit's values. Fresh values from the server replace them. Examples for Node.js and for a Cloudflare Worker (@featureflip/edge bootstrapValues), plus keeping co+ - [Flag Cleanup Action](https://featureflip.io/docs/integrations/flag-cleanup-action/): Remove dead feature flag code with a GitHub Action that opens one reviewable pull request per flag across twelve languages plus ERB and Blade templates, then archives the flag once the removal is deployed and the old traffic has drained.+ - [OpenFeature](https://featureflip.io/docs/integrations/openfeature/): Evaluate Featureflip flags through the CNCF vendor-neutral OpenFeature standard, with providers for the Node.js, .NET, Python, Go, Java, PHP, Ruby, Android and Web (browser) SDKs.+ - [Authentication](https://featureflip.io/docs/management-api/authentication/): Personal Access Tokens and organization-scoped Service Tokens, sent as bearer tokens, and an organization's maximum personal token lifetime (Business plan and above).+ - [Using an AI Agent](https://featureflip.io/docs/management-api/agents/): How a coding agent gets its token from a person, finds the default project, creates flags, mints an SDK key, and what the Free plan's caps return.