Skip to content
aYOUne

Feature flags

Feature flags

A feature flag is a named switch. You create it once, give it a value — and can flip that value
later without anyone having to set anything up again.

Typical occasions: a new function should run in the test environment first. A setting should
differ between preview and live operation. Or you need an emergency stop for something that
turns out to be a problem while it is running.

Where to find this

Configuration → Development & DevOps → Flags

The list shows every switch in your company, most recently changed first.

ColumnMeaning
NameThe unique key of the switch
TypeWhat it is meant for — see below
ValueWhat is currently set
DescriptionWhat it is there for
ArchivedWhether it still takes effect
ChangedWhen someone last touched it

Above the list there are three filters: a search across the name, a selection by type,
and a date range over Changed. Past a few dozen switches, the search is the fastest route.

Creating a switch

Flags → New flag

The form has four sections. Exactly one field is mandatory.

Basics

FieldNote
NameMandatory. The unique key — the interface suggests a spelling like shop.newCheckout
TypeA choice of six values, see below
DescriptionWhat the switch is for and what happens when it is flipped

The description is the real advice of this chapter. A switch outlives the person who created
it. Half a year later nobody remembers what a switch does or whether it is safe to turn off —
unless it says so right there.

The six types

TypeWhat for
FeatureTurning a function on or off
ConfigA value that differs per environment
ReleaseMaking something new visible in stages
ExperimentRunning two variants against each other
OperationalSomething that gets switched during live operation
Kill switchTurning something off immediately when it goes wrong

The type changes nothing about the effect — it sorts. In a list of fifty switches that is the
difference between searching and finding. Feature is preselected.

Value

The default value of the switch. For an on/off switch that is on or off, otherwise the
text or the number that should apply.

Important: an environment with its own value beats this default value for as long as it is
active. So the default applies everywhere no environment says otherwise.

Environments

This is where you separate the switch by environment. Each row has three entries:

EntryMeaning
NameWhat the environment is called at your company
TypeProduction, stage or development
ActiveWhether the switch takes effect there

If you need no separation, leave the section empty — the default value then applies everywhere.
That is the more common case, and it is perfectly fine.

Administration

This section is collapsed and rarely needed when creating a switch.

FieldNote
ProjectOptional. Assigns the switch to a project
ArchivedOff. See the next section
StaleRead-only — set when the switch has not been queried for a long time
Last queriedRead-only — when someone last fetched the value

You cannot set the last two fields yourself; they come out of actual use. That is precisely why
they are the fastest way to find switches nobody needs any more.

Finally, Save. Cancel takes you back to the list.

Changing a switch

Click the entry in the list. It is the same form as when creating one.

Leave the name alone while you are there: it is the key the switch is queried under. Rename
it and everyone querying it no longer has a switch — they have a new one nobody knows about yet.

Tidying up: archive rather than delete

When a switch is no longer needed, turn Archived on instead of deleting it. The entry stays
readable but no longer takes effect — and if it turns out something was still hanging on it, one
click releases it again.

Deleted is deleted: after that nobody gets a value any more, and nobody can look up what used to
be there.

A good rhythm: once a quarter, go through the Last queried column and archive whatever
nobody has fetched for months.

Where to start

  1. Work out the description first, then the name. If you cannot say the purpose in one

sentence, what you usually need is a decision, not a switch.

  1. Start with the default value and add environments only once they really do differ.
  2. Set the type correctly from the outset. Fixing it afterwards is tedious.

If you cannot see the flags

The area is permission-controlled like any other. If the entry is missing, the permission is
missing — not the feature. The chapter Users and roles explains how the two relate.

Work with this page

Ready-made instructions for your AI tool. Copy, paste, go — the AI fetches the content itself via the address in the text.

Summarise the steps for me The essentials, in the right order.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/admin-handbook/feature-flags.md
The complete collection: https://ayoune.com/en/docs/admin-handbook.md

Summarise the content for me.

- First, in two sentences: what is this about?
- Then the steps in the order I need to take them.
- One line per step, in plain language.
- At the end: what I should have ready beforehand.

Leave out nothing I need in order to actually finish.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
Explain what I need this for What it is good for — and when it is worth it.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/admin-handbook/feature-flags.md
The complete collection: https://ayoune.com/en/docs/admin-handbook.md

Explain to me what I need this for.

1. Which problem does it solve? In one sentence, from my point of view.
2. Three typical situations in which it genuinely helps me.
3. When I do NOT need it — that saves me time.
4. What I can do instead if it is not a fit.

Stick to what the source says. Where it gives nothing, say so openly instead
of guessing.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
Help me set this up Step by step, asking me as you go.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/admin-handbook/feature-flags.md
The complete collection: https://ayoune.com/en/docs/admin-handbook.md

Walk me through the setup step by step.

- First tell me what I need to have ready (access, data, time).
- Then take me through ONE step at a time. Wait for my "next".
- For each step, say how I can tell that it worked.
- If something goes wrong, ask me for the exact message instead of guessing.

If the instructions leave a point open, tell me so rather than inventing it.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
Help me with a problem Narrow down the cause instead of guessing.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/admin-handbook/feature-flags.md
The complete collection: https://ayoune.com/en/docs/admin-handbook.md

Help me narrow down a problem.

- First ask me what I observe and what I expected instead.
- From that, derive the most likely causes consistent with this source.
- For each cause, give me ONE test that confirms or rules it out.
- Order them so the cheapest test comes first.

Do not guess. If the source does not cover the problem, tell me where I should
look next.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
Explain it in plain words No jargon, from the ground up.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/admin-handbook/feature-flags.md
The complete collection: https://ayoune.com/en/docs/admin-handbook.md

Explain the content so that someone without prior knowledge understands it.

- Start with the purpose: why does this exist at all?
- Explain technical terms in half a sentence on first use.
- One everyday comparison where it genuinely holds — none where it limps.
- At the end: the three things worth remembering.

Do not shorten by dropping conditions. A simplification that hides a
prerequisite is a false statement.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
A checklist to tick off To follow along while you do it.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/admin-handbook/feature-flags.md
The complete collection: https://ayoune.com/en/docs/admin-handbook.md

Turn this into a **tick-off checklist** for practical use.

- Exactly one action per item, in the imperative.
- Order it so that no item depends on a later prerequisite.
- Prerequisites and pitfalls as indented sub-items.
- End with an acceptance step: how do I know everything is right?
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.

Was this article helpful?

👎 No (0)
Leave a comment