Limits

What the agent may do on its own

These are the boundaries the model cannot argue its way past. Every decision is checked against them after the model answers, not before.

This page is the agent's rulebook. It shows which model is currently answering, the confidence it must clear before it may act without a person, the grace window and contact cooldown that pace its outreach, the balance above which an account is handed to a human, and the escalation ladder it climbs one rung at a time. Nothing here is a suggestion to the model. Each limit is enforced in code after the model responds, so no amount of prompting or drift can push a decision past them.

Connection

Which brain is answering

Reasoning

Offline policy engine

Gemini is not configured, so decisions run on rules.

Prediction

Python payment model

Checking for the payment model…

Batch scoring

Rust risk engine

Operational. A scheduled Cloud Run job re-scores the whole ledger in one pass, using the same formula as the live scorer.

To hand the decisions to Gemini, add one of these to.env.local and restart the server:

GEMINI_API_KEY=your-key

# or, on your paid Google Cloud project:
USE_VERTEX_AI=true
GOOGLE_CLOUD_PROJECT=your-project-id
GOOGLE_CLOUD_LOCATION=us-central1

Boundaries

Operating limits

Ladder

The order the agent climbs in

0WatchInside the grace window, or a promise is still in date. -
1NudgeA short note that assumes the invoice was simply missed.1d+
2PressNames the amount and asks for a payment date in writing.14d+
3NegotiateOffers to split the balance when the customer signals strain.30d+
4Final noticeStates the consequence and the date it takes effect.55d+
5Hand offA person takes the account from here.75d+

The agent may climb one rung per decision and never skips. A model that proposes a final notice to a customer who has only had one reminder is stepped back automatically, and the override is written into the decision log.

Calibration

How the autonomy threshold is set, honestly

Checking calibration status…

Data

Demonstration dataset

Restore brings the book back to the seeded sample: the thirty customers and thirty-six invoices, their conversations, and the original decisions. It also clears anything added or any runs made since the server started. It does not empty the app; it resets it to the starting dataset.

Arrearly is still in development, so there is no button to permanently remove the thirty-six seeded invoices from the app. If you need them cleared for a real deployment, contact the maker, Wiqi Lee.

Contact Wiqi Lee on X