Feature

Jev Armour (Beta)

A decision-model guard that checks every prompt before your chat model answers.

Jev Armour sits in front of every chat model on TokenRex. When you enable it, your prompt is first judged by Jev — a fast decision model that returns typed judgments instead of text. Jev checks whether the prompt is clear and whether answering it would force the model to invent facts. Unclear prompts come back as a clarifying question before any chat-model tokens are spent; clear prompts go through unchanged; and the finished reply is verified against the prompt, with a warning flag when claims look unsupported. Your prompt text is never rewritten — Jev only decides, and TokenRex acts on the decision.

Enable
"armour": true
Endpoints
Chat Completions + Responses
Beta price
Checks free during beta

What you get

  • Catches unclear, ambiguous or conflicting prompts before the model guesses
  • Returns a clarifying question with no chat-model charge when context is missing
  • Adds a short anti-hallucination guard note to risky-but-answerable prompts
  • Verifies each finished reply against the prompt and flags unsupported claims
  • Fails open: if the guard is unreachable, your request proceeds normally
  • One flag on the endpoints you already call — no new SDK, no prompt changes

Common use cases

Customer support botsRAG answersFinance and legal draftsHealthcare intakeEducation tutorsAgent pipelines

How it works

  1. 1
    Keep your existing call
    Jev Armour works on POST /v1/chat/completions and POST /v1/responses with any chat model.
  2. 2
    Add the flag
    Set "armour": true in the request body. Send stream:false — streaming is not covered in the beta.
  3. 3
    Read the armour block
    Every response returns an armour object with the decision: clear, needs_clarification (with a question to ask your user) or unavailable.
  4. 4
    Handle warnings
    When armour.warning is "reply_unverified", show the reply with your own caution UI or ask the user to confirm the facts.

Code examples

from openai import OpenAI

client = OpenAI(
    api_key="sk-tb-YOUR_KEY",
    base_url="https://tokenrex.ai/api/public",
)

resp = client.chat.completions.create(
    model="gpt-6-astra",
    extra_body={"armour": True},  # Jev Armour (Beta)
    messages=[{"role": "user", "content": "Summarise the attached report."}],
)

armour = resp.model_extra.get("armour", {})
if armour.get("status") == "needs_clarification":
    print("Ask the user:", armour["question"])  # no chat-model charge
else:
    if armour.get("warning") == "reply_unverified":
        print("Warning: reply may contain unverified claims")
    print(resp.choices[0].message.content)

Frequently asked questions

Does Jev Armour change my prompt?

No. Your text is never rewritten. Jev only judges it; TokenRex may add a short guard instruction alongside it, or ask a clarifying question first.

What does it cost?

Armour checks are free during the beta. You only pay the normal chat-model tokens when the model actually answers.

Does it work with streaming?

Not in the beta. Send stream:false (or omit stream) when using Armour; streaming requests with Armour return a clear 400 explaining this.

What happens if the guard is down?

The request proceeds normally with armour.status "unavailable". Armour never silently blocks a request.

Can it block unsafe prompts?

The beta focuses on clarity and hallucination risk, not content moderation. Blocking rules may come later.