Blog Post
A Redesigned RuleSet Editor, Now With a Decision Table
We have rebuilt the RuleSet editor in AI Rule Engine around a decision table.
If you have ever authored a RuleSet with more than a handful of rules, you know the old shape of the problem: each rule was its own card, each condition lived behind its own dialog, and comparing two rules meant opening both and holding the difference in your head. The rules were correct, but the set of rules was hard to see.
The new editor fixes that. Open the Rules tab of any RuleSet and you now get a grid. Every rule is a row. Every context key you test is a column. The whole ruleset is visible at once.
IF on the Left, THEN on the Right
The table is split into two bands. On the left, under IF · Conditions, is one column per context key your rules test. On the right, under THEN · Outputs, is one column per value your rules produce.
Reading a rule is now reading a row across. Comparing two rules is reading two rows down. A gap in your logic shows up as a gap in the grid — an empty cell in a column where every other rule has a test.
Columns are yours to shape. Add a condition column or an output column from the toolbar, click a column header to change which context key it binds to (with autocomplete over the keys your project already defines), and remove a column you no longer need.
Type the Condition, Skip the Dialog
The biggest change is that most conditions no longer need a dialog at all. Click a cell and type.
The cell grammar is the shorthand you would use if you were describing the rule out loud:
>= 1000
not empty
contains "priority"
starts with "INV-"
> 5 and <= 20
Comparisons, contains / starts with / ends with and their not forms, empty / not empty, regex literals between slashes, and multiple tests joined with and all parse from the cell. Output cells take a value directly. If the text does not parse, the cell tells you why, in place, before you commit.
For anything the shorthand cannot express — AI-prompt matching, nested and/or groups, cross-key comparisons — press Ctrl+Enter or click the cell to open the full condition editor in a draggable, resizable overlay, right over the table. The row you are editing stays on screen behind it.
Rules that are too complex to project into columns do not get flattened or hidden. They render as a single Advanced condition chip spanning the condition band, with a summary in the tooltip, and open straight into the full editor. Nothing is lost in translation. The same is true for rules that reference a named condition or hand their outputs to a named ActionSet — the table shows you that is what is happening rather than pretending otherwise.
Actions Where You Can See Them
Each row’s actions are chips in the Actions column. Add inline actions or a named ActionSet from the row, drag chips to reorder execution, and remove one with a click. Actions that add values to the context are marked distinctly, so you can see where a rule feeds the context for the rules that follow it.
Per-rule execution settings — randomize action order, run actions in parallel — live in a Rule settings overlay off the row menu, and the flags appear as small icons on the row itself once set. You can tell at a glance which rules behave unusually.
Hit Policy in the Toolbar
The hit policy is no longer buried in a details tab. It sits at the top of the table as a badge — Match First, Match N, or Match All — editable in place. Shuffle and parallel toggles sit next to it. The badge and the Details tab stay in sync — they are the same controls, just surfaced where you are actually reading the rules.
That matters because hit policy changes what the table means. Under First match, a rule’s position determines whether it ever runs. Now the policy is right above the rows it governs.
Advisory Checks
The editor quietly looks for two problems as you work.
Duplicates — two rules with identical conditions. Shadowed rules — a rule that can never fire because an earlier rule under a First policy already matches everything it would. Both are flagged with an icon on the affected row and summarized in the toolbar.
These are advisory. We do not block your save or rewrite your rules. Some duplication is intentional, and some shadowing is a work in progress. But when it is not intentional, you find out while authoring instead of during a run.
Everything Else Still Works
Rules reorder by dragging the row handle, or via Move to top / Move to bottom in the row menu. Each row has an enable toggle, so you can disable a rule without deleting it — disabled rows stay visible and dim. Duplicate a row to start a variant from a working rule. Rename a rule inline.
Read-only viewers get the same table, minus the editing affordances. Reviewing someone else’s RuleSet is now the same experience as writing your own.
Why This Matters
Decision tables are not a new idea — they are how business logic has been specified for decades, and how DMN standardized it. What has been missing is a table that is also the editor, backed by a real rule engine, with an escape hatch for the rules that do not fit the grid.
That is what this release is. Simple rules read like a spreadsheet. Complex rules keep their full expressive power. The same RuleSet holds both, and you never have to choose the wrong representation to get your work done.
For teams where the person who understands the business rule is not always the person who writes it, this changes the review conversation. You can put the table in front of a stakeholder and they can read it.
Available Now
The redesigned RuleSet editor is live. Open any existing RuleSet and it is already there — your rules project into the table automatically, no migration required.
Visit RuleEngine.ai to try it.
The AI Rule Engine Team