Human review for AIthat has to be right. Read your own evals.Then earn the right to stop. Your AI is mostly right.Tenali counts the mostly.

Your agent files what it can't call. You decide, and the verdicts become a number you can defend.

Your agent files what it can't call. You clear it from the keyboard and get a number you can defend.

Your agent called it done. You judge what it couldn't call; Tenali says how far to trust the rest.

  • One SQLite file
  • Nothing phones home
  • Calls no model

Does the transcript say what the reader says?

Names, numbers, and places must match. Spelling of ordinary words doesn't count.

1
0:00 Space Play
Real recordingLibriVox, public domain
2

Listen first. The reference answer appears after you decide.

Write down what right means.

You find the rule by grading, not before it. When a card splits people, the rubric gets a new version, and every label keeps the one it was judged against.

You find the rule by grading, not before it. When a card splits people the rubric gets a new version, every label keeps the one it was judged against, and you can't hand off a question you haven't pinned down.

Nobody knows what “correct” means until a card makes them argue about it. When that happens the rubric gets a new version and every old label keeps the question it actually answered, because Tenali has seen what happens to people who pool versions.

v1

The transcript matches the recording.

F“Reader says fourteen, text says forty”3 of 5 reviewers failed this card
v2

The transcript matches the recording. Names, numbers, and places must match exactly. Ordinary spelling doesn't count.

of passed.

94.6%

is what you can claim

It is the low end of a 95% Wilson interval, and each nine costs about ten times the labels.

To claimLabels you need
80%
90%
95%
99%
All passingWith one failure Assumes a random sample and correct labels. Wrong labels lower what you can claim.

From you to people you trust.

Once the rubric holds, the next reviewer doesn't have to be you. Every answer lands in one gold set, with who gave it and which rubric it used, and each row below says whether it works today.

Once the rubric holds, the next reviewer doesn't have to be you. Every answer lands in one gold set with a name and a rubric version on it, and each row below says how far that actually goes today.

Once the rubric holds, you may stop being the only judge in the building. Every answer lands in one gold set with a name on it and the rubric it answered, and each row below says exactly how far that goes today, because Tenali does not round up.

Working

You, on your machine Your queue, your labels, your stats, in one SQLite file. Nobody else sees them. In private beta.

The local tool is the part that's done. It runs on your machine: your agent files cards, you clear them from the keyboard, and the cards, verdicts, and stats stay in one SQLite file in your project. It never calls a model, so it doesn't care which one wrote the output: tuned for Claude Code and Codex, and anything that speaks MCP, or the Python API, plugs in. The open-source release is being finished; until then it's in private beta.

# in any project
tenali setup      # your agent gets the review tools
tenali ui         # 127.0.0.1:7847, p / f / d
tenali stats      # pass rate, calibration, threshold
A judge you already run Post the answers your own model or rule gave, and Tenali grades them against your labels only.

A question is a typed definition: pass/fail, a choice, or a score. record_judgments takes the judge's answers and you get agreement, a calibration table with its chance floor, and the lowest confidence threshold that has honestly earned automation. Tenali never calls a model itself.

You, signed in anywhere A batch on tenali.dev that nobody but you can see or take.

Post with "audience": {"mode": "me"} and the batch goes nowhere but your own Work page: not the board, not another reviewer. Nobody is paid for it, so there's no GOLD, no escrow, and no reward floor, and your answers can't move your reputation either way.

Reviewers who qualified Anyone on tenali.dev who passed that kind of work, on a token with no cash value.

POST /batches takes a batch, escrows its GOLD reward, puts it in front of the people who qualified, and hands back every verdict with its rationale and timing. A batch posted this way is visible to qualified reviewers, so don't send cards you wouldn't show one.

Next

Your team Colleagues answer the same batch, so you see where you disagree before calling it ground truth.

A teammate clears the same cards you did, under their own name. Their answers sit beside yours, never pooled, and the report says where you disagree, which is usually a rubric finding rather than a wrong reviewer. On tenali.dev a criterion is already your question, versioned and private to your workspace; pulling its answers into the same gold set as your local labels is the next thing being built.

Later

A guest After the team: a revocable link to one criterion, no account, for the expert on edge cases.
Paying strangers fairly We can't price it honestly yet, so the proof of concept runs on GOLD, a token with no cash value.

Your labels are the answer key.

Before you hand a criterion to anyone else, label 30 cards yourself, failures included. Those answers are what the next reviewer is scored against, and they can argue back when the key is wrong.

$ tenali export --project transcripts
{"case_key":"c7",…,"criterion_version":2,"verdict":"fail",…}

We'll tell you the day it opens.

The open-source release is being finished. Until it opens, an account lets you take practice cards.

The open-source release is being finished. Until then, an account gets you practice cards to clear.

The open-source release is being finished. Until then, Tenali has practice cards, and opinions about your answers.

Want to review for others? Try reviewing.