Tiers & Pricing
Overview
Section titled “Overview”codegen is available in three tiers. All tiers use the same binary and the same rule engine — the tier controls which features are unlocked, not which version of the engine you run.
Some features below are gated by the licence at run time today; others are documented as gated but the runtime gate will land in a future release. Each section flags its current enforcement status.
For: Open-source projects, personal experiments, evaluation.
License: Free, no time limit. No commercial use.
The Community tier includes the full rule engine. There are no artificial rule count limits, no watermarks in generated output, and no expiry.
For: Individual developers building commercial software.
License: Per-user, non-transferable. Covers one person across all their machines.
Everything in Community, plus:
TUI diff viewer
Section titled “TUI diff viewer”codegen --dry-run --show-tui opens a side-by-side FTXUI diff of the existing and proposed contents of every output file (and every inline-edit target) before anything is written. You approve or reject the apply step interactively.
codegen -i ./include -a ToString --dry-run --show-tuiToday: enforced. Without the Professional flag on the cached licence, --show-tui emits E102 and prints the count of would-be files instead of opening the viewer.
Note: plain
--dry-run(without--show-tui) is available on every tier — it emits a unified diff (zero context) to stdout. The Professional gate covers only the interactive viewer.
VS Code DAP debugger
Section titled “VS Code DAP debugger”Step through .luau rule scripts in VS Code using the LuaU DAP server. Set breakpoints, inspect the entity payload, walk the call stack. See VS Code DAP Debugger for setup.
Today: enforced. Builds require the LUAU_ENV_ENABLE_DEBUGGER compile-time flag for the --debug flag to be exposed at all; at runtime, without the Professional flag set on the cached licence, --debug emits E102 and exits.
Workspace integration (--use-workspace)
Section titled “Workspace integration (--use-workspace)”codegen --use-workspace pulls include paths and preprocessor defines straight from your build system (codexx.workspace.yaml or compile_commands.json), so rules see the same translation-unit context as your compiler — no hand-maintained -I/-D lists.
codegen -i ./include -a JSONSerializable --use-workspaceToday: enforced. Without the Professional flag set on the cached licence, --use-workspace emits E102 and exits — fall back to passing -I/-D manually.
For: Engineering organisations that ship production software.
License: Per-seat, organisation-managed. Seats are assigned via the team dashboard.
Everything in Professional, plus:
CMake helper package
Section titled “CMake helper package”A find_package(codegen) config module + codegen_rule() helper that wires generated files into your CMake target graph, so headers re-trigger codegen automatically before compilation.
Today: the helper package is not yet shipped. The Professional-tier --use-workspace flow already pulls includes/defines from codexx.workspace.yaml or compile_commands.json automatically; drive codegen with add_custom_command against the binary in the meantime. See CMake Integration for the current and planned path.
Shared preamble & grouping libraries
Section titled “Shared preamble & grouping libraries”Drop reusable Lua modules into <rulesDir>/../shared/ (for example .codegen/shared/):
- Every
.luaufile in that directory is loaded in alphabetical filename order, concatenated, and prepended to every rule’s handler at execution time. Anything declared at the top level (functions, tables of constants, type maps) is therefore available to every rule withoutrequire. - A
<rulesDir>/../shared/.envfile is loaded as a baseline dotenv; per-rule.enventries override it.
Version-control the shared/ directory alongside your rules; standardise output conventions across the whole codebase.
Today: enforced. Without the Team flag set on the cached licence, the engine detects <rulesDir>/../shared/, emits E102, and skips loading it (rules run with their own scripts only).
Priority support
Section titled “Priority support”Direct response SLA. Bug reports from Team customers are triaged within one business day.
Comparison table
Section titled “Comparison table”| Feature | Community | Professional | Team | Today’s enforcement |
|---|---|---|---|---|
| Full rule engine | ✓ | ✓ | ✓ | — |
| Commercial use | ✗ | ✓ | ✓ | not enforced |
| TUI diff viewer | ✗ | ✓ | ✓ | enforced |
| VS Code DAP debugger | ✗ | ✓ | ✓ | enforced |
Workspace integration (--use-workspace) | ✗ | ✓ | ✓ | enforced |
CMake helper package (find_package + codegen_rule()) | ✗ | ✗ | ✓ | not implemented |
Shared .codegen/shared/ libs | ✗ | ✗ | ✓ | enforced |
| Priority support | ✗ | ✗ | ✓ | n/a |
| Price (monthly) | Free | €12/mo | from €24/seat/mo | |
| Price (annual) | Free | €99/yr | from €230/seat/yr |
Frequently asked questions
Section titled “Frequently asked questions”Can I evaluate the Professional features before buying? Yes — Professional includes a 14-day free trial and Team includes a 30-day free trial. A card is required at checkout, but no charge happens during the trial. Cancel before it ends and you’re not billed. Trials apply to monthly and annual plans alike. The Community tier separately ships the full rule engine free forever for everything outside the Professional/Team gated features.
Are there volume discounts on Team? Yes. Team is €24 / seat / month at 1–4 seats, €20.40 / seat / month at 5–19 seats (15% off), and €18 / seat / month at 20+ seats (25% off). Annual billing stacks ~20% on top of each bracket.
Does a Team seat cover the same person across multiple machines?
A seat covers one person, but each machine activates separately and binds the cached licence token to that machine’s fingerprint. Today, transferring a licence to a different machine means deactivating it on the old machine and re-activating on the new one — both done in the codexx_dtdk_manager TUI ([D] deactivate-license, then Enter to activate).
What happens if I stop paying? The engine reverts to Community-tier behaviour. Your rules, configs, and generated files are unaffected.
Is there an academic or OSS project discount? OSS projects (public repository, OSI-approved license) can request a Professional licence at no cost. Contact support with a link to your repository.
Can the Team tier be used in air-gapped environments? See License Activation.