ai-cur Contact for more details
Coming soon. Contact for more details.
Security

Visibility you can defend to your security team.

No prompts, no files, no ticket bodies. People see themselves, leads see their team, leaders see groups. And the whole record can run inside your own boundary.

Principles

Four promises, each one enforced in code.

  • Metadata only

    Amounts, people, dates and states. Never a prompt, a file, a diff or a ticket body, from any connector.

  • Not a way to watch people

    Individuals see themselves, leads see their own team, leaders see groups above a minimum size.

  • Your boundary, if you want it

    On your own servers, inside Databricks or inside ServiceNow, and hosted by us once sign-in opens. The same record in each.

  • Out of the request path

    ai-cur never sits between your people and their tools. It reads billing through each vendor's reporting API and never handles a model request, a prompt or a response.

Where it runs

Pick the one your security team will sign.

One engine, four ways to run it. The profile never changes who can see what or which figures appear.

Built, not yet live

Hosted by ai-cur

Our hosted profile runs on our servers, and sign-in is not open yet. Contact us for availability, a tenant of your own, and the same database rules as every other profile. The fastest way to a first view.

Implemented

On your own servers

Standalone and self-hosted: the full backend, its Postgres database and the browser app as one docker compose deployable inside your network, signing people in through your own identity provider. The record stays in your database, and the server needs no connection to us to run.

Implemented

Databricks App

ai-cur as a Databricks App over Delta tables, with Unity Catalog owning row-level access and column masks per role. Your AI cost record sits beside the rest of your data, governed by the rules you already have. Databricks' own AI Gateway budgets leave out provisioned throughput and inference on models hosted elsewhere1. ai-cur is built to read the bills of models hosted elsewhere directly, so that spend can land in the same record; reading Databricks' own provisioned throughput is planned.

Implemented

ServiceNow scoped app

A scoped app inside your instance: the AI cost record, billing ingestion, the desktop client's push and role-based views, next to the incidents, changes and requests your teams already work in. Coverage of AI Control Tower reports that assist counts vary between interactions, which makes the bill hard to predict2; the scoped app adds unit costs in money beside that governance.

What the code enforces

Rules held in the database, not in a promise.

Each of these is enforced by the schema or the service itself, in every profile. The report says the short version to every reader.

The What this report protects panel in ai-cur: signed-in identity from your identity provider, authorization in the database, aggregates without personal identifiers for wider scopes, and missing evidence shown as unavailable
What an engineer's report says it protects, at the foot of the page.

An append-only ledger

The charge ledger only grows: a row trigger refuses updates and deletes, and a statement trigger guards against TRUNCATE, the one bypass a row trigger cannot see. Both were confirmed enabled on our running host.

Views that fail closed

Every served view filters on the tenant context inside the database, so a request with no tenant context set gets zero rows by construction. Admin and finance views also need a role the web layer sets only after it finds a declared one.

Your content stays inside the boundary

No prompt, transcript or file content leaves your boundary. From GitHub it takes metadata: pull requests, commit counts, changed lines. The desktop client's activity index is contentless.

A revocable token per install

Each install holds its own token. Only a hash of the secret is stored and the secret is shown once; rotating keeps the old token alive for a short overlap, and revoking ends it at once.

Corrections that never overwrite

A correction is its own row naming the charge it supersedes. A row cannot supersede itself, and an unsettled correction cannot be reached, so nothing is counted twice or quietly erased.

Money always denominated

No currency is defaulted or backfilled. Where a group holds more than one currency, every money aggregate in the product returns no total and names the currencies it found, rather than adding them together.

A minimum cohort before comparison

Team comparisons wait for a minimum cohort. The cohort is the declared roster, not whoever happened to be active, and a comparison that is too small is withheld rather than published.

Source access state on every page

Every source carries its access state, and a page names the incomplete ones above the figures they touch, so a missing feed is never a silent zero.

Signed entitlements

What a plan includes is a signed document, checkable against a public JWKS key set at a well-known address, with the feature manifest pinned by path and digest.

Governed deletion, with grace

Deleting an account is governed: an email link can cancel the request for a short while, and the purge waits out a grace period on a request that has matured.

Standards

An open standard, so the record is never locked in.

The cost record is shaped after FOCUS version 1.4, the billing data specification the FinOps Foundation ratified on 4 June 20263, and the finance export uses FOCUS 1.4 names for six of its seven columns.

That is an alignment claim, not a certification, and no FOCUS validator has tested the record. The record already keeps the model and input and output tokens apart wherever a vendor reports them.

  1. 1Databricks, Unity AI Gateway budgets, docs.databricks.com, read 8 August 2026.
  2. 2CIO.com, article on spend visibility in ServiceNow AI Control Tower, cio.com, read 8 August 2026.
  3. 3FinOps Foundation, Introducing FOCUS 1.4, finops.org, read 9 August 2026.

Tell us where it would run.

Standalone, hosted, Databricks or ServiceNow: we will say plainly what is proved for your profile before you commit to anything.