Keelin-app agent backbone · demoHow it worksGitHub

Portfolio project

An assistant that changes data, safely.

Keel is the assistant inside Ratebook, a pricing app for trade contractors made up for this demo. It answers how-to questions from the help center and prepares changes you preview, approve and can undo. Role checks run in the API, not the prompt; large changes need an Owner; a stale preview fails cleanly instead of overwriting newer work; and every step is traced.

Sign in as one of the team

You get a private copy of the demo company that only you see, kept for 24 hours. Switch person at any time from the bottom of the menu; the data stays, so you can send a change from the Admin to the Owner.

Preview, approve, undo

Every change is a dry run first: a changeset with each old and new value. Approving applies it in one transaction; undo runs it backwards with the same checks.

The user's permissions, never more

The assistant calls tools with the user's own identity, narrowed to each tool's scopes. Viewers can't change anything; billing modules are Owner-only.

One tool layer, two clients

The same tool registry backs the in-app assistant and an MCP server, so Claude Desktop gets the same rules, and its changes wait for approval in the app.

Traced and tested

Each run records the model's tool calls, policy decisions, approvals and writes, linked from the audit log. An eval set with prompt-injection cases runs before prompt or model changes.