The instrument
Turn loose instructions into bounded, testable procedures.
The rubr_flow DSL plus a validator that catches vague conditions, missing stop rules, and absent output contracts.
rubr_flow blocks
A native format for instructions an agent can actually follow.
For teams that need stricter control, rubr_flow turns loose intent into a compact procedure an agent can follow.
Intent without machinery
Review our onboarding flow and fix anything confusing.
rubr_flow procedure
TASK "Improve onboarding completion"
CONTEXT
user is new to [PRODUCT]
primary action is [TARGET ACTION]
INPUTS
current_flow = app screens
analytics_notes = drop-off data
support_themes = user confusion reports
RULES
change only copy and step order
preserve required legal text
ON missing_context
ASK user "Which onboarding detail is missing?" -> missing_detail
FLOW
REVIEW each screen -> friction_notes
RANK issues by user impact
EDIT the highest-impact issue
OUTPUT
changed_copy: final text
rationale: why this improves completion
risk_notes: constraints preserved
VERIFY
PASS WHEN user can identify the next action in one passThis is not another prompt type. It is the control surface for turning intent into bounded agent work.
Run an auditWhat makes a procedure testable.
rubr_flow is pseudocode for instructions. Each block forces a decision that loose prose leaves implicit — which is exactly what lets you write a check against the result.
TASK · CONTEXT · INPUTS
What the agent is doing, what it may assume, and exactly what it receives.
RULES · FLOW
The boundaries it must respect and the ordered steps it follows — with stop rules, so it cannot wander.
OUTPUT · VERIFY
The shape of a correct result and the check that says whether the result is actually correct.
Validated before it runs
The validator flags vague conditions, missing stop rules, and absent output contracts before an agent ever follows the procedure.
Answers before you start.
Explicit inputs, bounded steps, a stop rule, and an output contract — so you can write a check that says whether the result is correct. Loose prose has none of these, which is why it drifts. rubr_flow makes them mandatory.
Know which instructions are ready to run.
Validate a rubr_flow fileFollow the review loop as it ships.
Notes on AI artifact testing, rubr_flow conversion, evals, and proof reports.