Skip to content

Flag Reference

nguyenhx2 edited this page Aug 18, 2026 · 2 revisions

Flag reference

Flags are how the questionnaire's answers reach the scaffolder. They gate whole assets and conditional blocks inside them, which is what makes the build tailored rather than comprehensive.

Exactly one of windows / posix is required. The scaffolder validates the set and exits non-zero on an unknown flag, so a typo fails loudly instead of silently dropping a section.

Flag What it turns on
ai the project calls a model at run time; installs the AI-governance surface
audit read-only mode: agents analyse but never modify the source
db the project has a database; installs the data-model rule and the data-modeler seat
db_engineer split out a dedicated database engineer seat
db_seeder split out a dedicated seeding seat and the seed command
ddd domain-driven delivery; shared language and bounded contexts
deploy_ask deployment is gated behind an explicit human confirmation
light minimal ceremony; no methodology rule, review gate kept
long long-lived project; adds the Tier 3 seats (brainstormer, tech-researcher, history-tracker)
posix ship .sh hooks and register them for bash
pr_cli a pull-request CLI is available, so commands may call it
rtk install the opt-in rtk wrapper hook
solo_review one merged reviewer seat instead of separate code and security reviewers
target_codex the harness must also run in Codex; recorded so the port step and /harness-update know
target_cursor the harness must also run in Cursor; recorded so the port step and /harness-update know
tdd test-first delivery; tests are written before the implementation
terse install the terse output-style rule
tests derived: set when either unit or e2e is chosen
ui the project has a frontend; installs the frontend rule and UI-aware guidance
unit agents automate unit tests
windows ship .ps1 hooks and register them for PowerShell

Seeing the effect

Scaffold with the leanest answers and you get 7 seats. Answer yes to databases, tests and a long-lived project and you get 15. The range is computed from the scaffolder's own selection logic, so it cannot drift: see scripts/check_numbers.py.

Clone this wiki locally