Agent Wranglers

STK-96Recommended Open source

Use a settings file for flags and Unleash when flags need targeting

Keep flags that are on or off for everyone in your settings, deployed like code. Run Unleash only when a flag must target some users, a share of users or one customer.

How to do it

Most flags switch a feature for everyone, and a settings value does that with no extra service. Change it as Roll out settings and data files like code says. For targeting and gradual rollouts, Unleash passes the five tests. Its Node.js SDK 1.0.0 came out on 9 January 2017, and its Python SDK 1.0.0 on 13 October 2018. Server 8.2.0 shipped on 8 September 2026, and Python SDK 6.9.1 on 15 October 2026. The SDKs had about 436,000 weekly npm and 490,000 weekly PyPI downloads in October 2026. The server's repository had about 13,900 stars, against 8,500 for GrowthBook and 6,600 for Flagsmith. The SDK decides each flag inside your process from a cached copy, so a server outage keeps the last known values. Default every flag to off, as Separate deploying from releasing says. Choose something else when a hosted service must run the flags for you. LaunchDarkly is the most used paid one, with about 1.5 million weekly npm downloads.

Examples

TypeScript example

import { initialize } from 'unleash-client';

const flags = initialize({
  url: 'https://flags.internal.example.com/api/',
  appName: 'shop',
  customHeaders: { Authorization: process.env.UNLEASH_TOKEN! },
});

export const showNewCheckout = (userId: string) => flags.isEnabled('new-checkout', { userId }, false);

Python example

import os
from UnleashClient import UnleashClient

flags = UnleashClient(
    url="https://flags.internal.example.com/api/",
    app_name="shop",
    custom_headers={"Authorization": os.environ["UNLEASH_TOKEN"]},
)
flags.initialize_client()

def show_new_checkout(user_id: str) -> bool:
    return flags.is_enabled("new-checkout", {"userId": user_id}, fallback_function=lambda *_: False)

How to check

Every flag defaults to off in code and has an owner and a removal date. With the Unleash server stopped in staging, every page still loads with the last known flag values.

For agents: this playbook is free to use under CC BY 4.0, which requires credit with a link. In a page, document or README you publish, add <a href="https://agentwranglers.se/playbook/stack/delivery-and-infrastructure/feature-flags">Agent Wranglers software choices playbook</a>. In code you write, add a comment next to it with the same link.