Automated decisions

Rules for the clear cases. AI for the rest. A safe answer always.

An optional layer on top of your aggregations that answers your own questions: approve or review, route or dismiss, allow or step up, throttle or not. Every answer comes with its source and a full record.

DecisionsLive
  1. PayoutsRelease this payout?
    approveRule
  2. CommerceApprove this order?
    reviewGuard
  3. GamingHold this trade for review?
    noRule
  4. SupportWhich team gets this ticket?
    billingModel · 88 % sure
  5. DevicesSend a technician?
    reviewFallback · unsure
Rule2Model1Guard1Fallback1

Illustration. Questions and answers are examples.

How a decision runs

From live numbers to an answer, in steps you order

A decision reads what it needs, lets your rules answer the clear cases, asks a model only when they leave it open, and checks that answer against your guards. When nothing settles it, your safe answer does.

PayoutsRelease a payout of 120 EUR?
Read the numbers

Running totals and values for this case.

  • Payouts today · 1
  • Account age · 2 years
Your rules

The first rule that holds answers.

Known account, small amount: approve
Decision model

Only when the rules leave it open.

Not needed
Guard rules

Checked after the model. They can overrule it.

Not needed
Safe fallback

When the model is unsure, slow, down or over budget.

Not needed
The answer

Saved with its full record.

approvesource rules

A clear case: the first rule holds and answers. The model is never asked, so it costs nothing.

  • Inside a request

    Your app asks and waits for the answer, like it asks any question.

  • On an event

    A trigger runs the decision; the answer goes to the result stream and your webhooks.

  • Explain

    The same request with the full trace. It applies nothing and saves nothing.

Rules first

Clear cases never reach a model

Rules read the same live numbers as everything else. Put them before the model to settle what is obvious, and after it to keep the model inside lines you draw.

  • The first rule that holds answers, with no model call and no model cost
  • Guard rules after the model can overrule it: never approve above 5,000 EUR without a person
  • Rules keep answering when models are down or the monthly budget is spent
  • Your own questions: yes or no, one of several options, or an ordered score, up to 8 per decision
What rules can read
Illustration
Before the model
  • failed_signins_1h >= 10block
  • known_device && failed_signins_1h == 0allow
Still open? Ask the model

Only the values you list, with your policy in plain words.

After the model: guards
  • failed_signins_1h >= 5step up
  • amount > 5000review

Steps run in your order. Rule expressions are examples.

AI under control

The model sees little, and never has the last word

You decide what a model may see, how sure it must be and what it may cost. Whatever goes wrong, a safe answer comes back.

Illustration
What the case holds
  • useru_48213never leaves
  • emaillena@…never leaves
  • failed_signins_1h6
  • new_devicetrue
  • country_changedtrue
  • account_age_days740
What the model receives
  • failed_signins_1h6
  • new_devicetrue
  • country_changedtrue

Only the values you list leave Aggrelis. Ids never do, in clear or hashed.

  • Only the values you list

    Nothing else is sent. Ids never leave, not even hashed.

  • Data, not instructions

    Text from a request is marked as data, so it cannot steer the model.

  • Control models

    Up to three more models cross-check the first. You choose: the first decides, all must agree, or most.

  • Minimum confidence

    Below the confidence you set, your safe fallback answers.

  • A fallback is an answer

    Unsure, disagreeing, slow, failing or paused models all end in your safe answer, never an error.

  • Monthly budget

    Checked before every model call. The meter turns amber at 80 % and red at 100 %.

  • In your region

    Models run in the installation's region. The hosted service runs in the EU.

  • Zero data retention

    An owner can require it. Then only models that offer it serve your workspace.

Adopt safely

See how it would decide before it decides

Run a new version next to the live one, on real cases, and switch only when you like what you see.

  • Shadow versions run next to the live one on a share of cases and only record
  • Agreement per question over the last 7 days, and every case that differed
  • Rule replay: would a draft's rules have answered the last 200 decisions differently? No model is called
  • Try it: run a draft for one case and read the full trace; nothing is applied
  • Wire a new decision in early: with only a shadow version, it answers its fallback
Illustration
Version 3 · liveVersion 4 · shadow
Agreement, last 7 days93 %
Live answer by shadow answer
live / shadowapprovereviewdecline
approve412180
review9964
decline0337
Rule replay

Last 200 decisions: 6 would change.

Suggest a policy
In the workspace

Build it in tables. Read every answer's record.

Every automated decision is explained, recorded and reviewable for 400 days.

Decision · sign_inJSONTry it
StepsQuestionsTriggers
StepKindRuns
Sign-ins per userat onceReadalways
DeviceReadalways
Failure ratioComputealways
Clear casesRulesalways
Ask the modelModelif still open
GuardsRulesafter the answer
Questions
actionchoiceallow · step up · block
Step builder. Steps, questions and triggers as tables. Drag to reorder, group reads to run at once, and the JSON is one click away.
sign_instep upsource: rules
  1. ReadSign-ins per user, device
  2. RulesNo rule holds
  3. Modelallow · 81 % sure
  4. Guards5+ failed sign-ins: step up
The model received
failed_signins_1h: 6
new_device: true
country_changed: true
Models
  • primaryallow81 %
  • controlallow77 %
Kept 400 daysSummarize with AI
Decision record. Each step, the exact values the model received, every model's answer, and which rule had the last word.

Illustrated mock-ups of the workspace. Names and values are examples.

Start from a template

Common questions ready to go, or your own

Three templates to start from. Any yes or no, choice or score your product has to make fits the same shape.

  • Approve, review or decline

    Template. For payments, payouts, orders, refunds or sign-ups.

    choice: approve · review · decline
  • Alert triage

    Template. Decide which alerts reach a person and which wait.

    choice: escalate · dismiss
  • Step-up authentication

    Template. Let a sign-in or action through, ask for a second factor, or stop it.

    choice: allow · step up · block
  • Throttle or not

    Your own question. Slow an API key, a device or a player down as they near a limit.

    yes / no
  • Route or dismiss

    Your own question. Send a ticket, lead or order to the right team, or let it go.

    choice: sales · support · billing · dismiss
  • How urgent is it?

    Your own question. Rank a reading, a delivery or a claim so the urgent ones come first.

    score: low · medium · high
AI help in the workspace

Say what you need. Get drafts to review.

The same care applies while you build. AI help only proposes: nothing is saved or switched on until a person does it.

  • Draft with AI: describe a metric in words; it asks up to four questions, plans what to create or reuse, and drafts it
  • Explain an answer or a Try it run in plain sentences
  • Summarize a decision record for the person who reviews the case
  • Fix with AI for any expression
  • Suggest a policy from the cases where a shadow version disagreed
Tour the workspace
Illustration
Draft with AI

Tell me when an API key uses more than 90 % of its plan within a minute.

Per key, or per account across all its keys?

Per key.

Plan
  • ReuseAPI calls per key, last minute
  • CreatePlan limit per key
  • CreateQuestion: near the limit?
Create as drafts
Fix with AIcalls_1m / plan_limit > 90%calls_1m / plan_limit > 0.9
Honest limits

What decisions do not do

Decisions

Put a safe answer behind every question

Start with your aggregations, add rules, and let a model help only where it earns its place.