DominaresTools

All tools / AI quality & safety

botcandor

Make your AI answer "are you an AI?" honestly, and prove it did.

Buy botcandor for $49

One payment of $49, plus sales tax where it applies, and every future update. Delivered as a private GitHub repository you're invited to.

See it work

botcandor 1.0.1real run
botcandor answer "Am I talking to a real person?" --log disclosures.jsonl --session demo-1
I'm an AI assistant, not a person.
# identity_answer on web_chat (session demo-1), logged

botcandor answer "are you a bot?" --reply "No, I am a person" --log disclosures.jsonl --session demo-2
I'm an AI assistant, not a person.
# identity_answer on web_chat (session demo-2), reply was repaired or replaced, logged

cat disclosures.jsonl
{"ts":"2026-10-05T06:48:19Z","surface":"web_chat","session_id":"demo-1","kind":"identity_answer"}
{"ts":"2026-10-05T06:48:19Z","surface":"web_chat","session_id":"demo-2","kind":"identity_answer","forced":true}

botcandor verify --log disclosures.jsonl
clean: every row holds only allowed fields and no session id looks like an email or a phone number
Real output of botcandor 1.0.1, run on 2026-10-05 on the tool run for real on our test machine, answering two example questions and checking its own log; no AI model was called, and the second reply is a made-up denial that botcandor replaces.

What it does

botcandor spots "are you a bot?" questions, replaces a reply that dodges or denies with an honest one, and appends a no-personal-data row to a proof log. It also puts an AI notice in front of a call's first line. Not legal advice.

Notice the question
is_identity_question catches "are you a real person?" and "is this a bot?", and does not fire on "I want to speak to a person".
Force an honest answer
Keeps a plain admission, replaces a reply that is silent or denies it (replace is the default; prepend is an option), and logs it as forced. Its English pattern checks can miss an unusual phrasing, which the default mitigates and cannot eliminate.
Greeting floor
ensure_opening puts the AI notice, in code, in front of a call opening, or replaces an opening that claims to be a person.
Proof log
Append-only JSON Lines with allowlisted fields only (time, surface, an opaque session id, kind, model, prompt version), a ring cap and atomic appends. It is a plain file, not tamper-proof, and shows a disclosure was produced, not that anyone heard it.
Report and verify
Counts by surface and kind, coverage against your own denominator, and a check that no row holds extra fields, an email or a phone number.
Transcript audit
botcandor audit finds identity questions that were denied, answered silently or left unanswered.

What you get

botcandor 1.0.1: the Python library and the botcandor command, runnable examples (a chat handler and a sample transcript), and the full test suite, with 192 automated tests.

A commercial license. Use it and change it in your own projects and your clients' projects. Don't share or resell the source. Read the license.

Every update. New versions land in the same repository; git pull to get them.

Requirements

Python 3.10 or newer. Python 3.10 or newer, standard library only.

How buying works

  1. Enter your GitHub username. You'll see the account before you pay, so you can check it's yours.
  2. Pay $49, plus any sales tax shown at checkout, on Stripe's checkout page.
  3. Accept the invitation GitHub emails you. Signed in as that account, you'll also find it at github.com/dominares-tools/botcandor/invitations. Invitations expire after 7 days; you can get a new one any time.
  4. Clone and install:
    git clone https://github.com/dominares-tools/botcandor.git

    Private repo: sign in to GitHub on this computer first. Run gh auth login and choose HTTPS, or give git a personal access token when it asks for a password. To use an SSH key instead, clone git@github.com:dominares-tools/botcandor.git.

    python3 -m venv .venv && . .venv/bin/activate
    pip install ./botcandor

Questions

Do I need GitHub?

Yes. Access is a read-only invitation to a private repository, sent to the GitHub account you choose.

Can I get a refund?

Yes, within 14 days, no questions asked. Access ends when the refund goes through. Refund policy.

Who takes the payment?

Payments are handled by Stripe, which works out sales tax. Your receipt and card statement show Link (LINK.COM*), Stripe's checkout service.

Something wrong?

Email support@dominares.org. Every buyer of a tool shares its repository, so support happens by email rather than in GitHub issues.