Skip to main content
Glama

arifOS — Constitutional AI Governance

666 Judge · Verdict

arif_judge
Read-only

Evaluate proposed operations against policy and safety constraints. Weighs blast radius, reversibility, and permission level. Returns binding verdict (SEAL for approved, HOLD for blocked, SABAR for awaiting conditions). Approval verdict is required prior to calling arif_forge. Outputs: evaluation verdict and authorization receipt.

Input Schema

NameRequiredDescriptionDefault
modeNo'judge' (default) — render a verdict on candidate; 'intercept' — pre-flight gate before an action runs; 'validate' — re-check a prior verdict; 'hold' — place an action into a cooling period; 'escalate' — refer the decision to the human owner.judge
nonceNoOne-time random string (e.g. a UUID) making this request unique; protects against replay of the same call.
domainNoSubject area for claim evaluation, e.g. 'geoscience' or 'finance'.
key_idNoWhich of your registered keys produced actor_signature, e.g. 'key-1'.
actor_BNoYour calibrated confidence for a prediction, 0.0–1.0 (Brier-style score component).
actor_idNoYour agent identity, e.g. 'kimi-code/FI-008' or 'claude/sonnet'. Recorded in the audit log so this action is attributed to you.
evidenceNoThe facts the verdict should rest on — a JSON list like [{"fact": "tests pass", "source": "CI"}], or an object.
actor_PhiNoJSON map of supporting signals about you, e.g. {"consistency": 0.9, "track_record": 0.7}.
candidateNoThe action or claim being judged, stated plainly, e.g. 'delete table users in prod'.
claim_textNoThe exact claim sentence under judgment, e.g. 'uptime exceeded 99% in August'.
session_idNoSession id returned by arif_init (looks like 'sess-…'). Pass it on every call after init so the action is attributed to your governed session.
action_tierNoHow risky the action is: 'standard', 'high', or 'critical' — higher tiers demand stronger evidence.standard
claim_classNoEpistemic strength of the claim: 'OBS' (directly observed), 'DER' (derived from observations), 'INT' (interpreted), 'SPEC' (speculative), 'UNKNOWN' (cannot witness — honest null; maps to TruthClass.UNK, weight 0.30, cannot authorize mutation). RULE absence-null: 'not in my knowledge' is NOT evidence a claim is false — label UNKNOWN, never FALSE.
niat_paramsNoJSON intent-calibration settings, e.g. {"sincerity": 0.8, "stated_goal": "verify the claim"}.
action_classNoKind of action under judgment: 'OBSERVE' (read-only), 'DRAFT' (compose text), 'MUTATE' (change state), 'IRREVERSIBLE' (permanent).
blast_radiusNoWho or what the action can affect: 'self', 'session', 'organ', or 'federation'.
seal_purposeNoOne sentence saying why this verdict/record must exist, e.g. 'closing deployment D-17'. Stored permanently alongside the record.
session_tokenNoSession Continuity Token (SCT) — the credential string arif_init returned alongside session_id. Pass it back on follow-up calls to prove the session is yours; without it the kernel treats you as unauthenticated.
context_sourceNoWhere the candidate came from: 'session', 'file', or 'memory'.
heart_critiqueNoJSON result of an ethics/dignity check, e.g. {"coercion": false, "dignity": 0.9} — feeds the verdict.
vault_entry_idNoId of the permanent-ledger entry this verdict should attach to (from an earlier arif_seal response).
actor_signatureNoCryptographic signature over the request, if your agent holds a key — proves the call genuinely came from actor_id. Omit if you have no key.
authority_tokenNoAuthority credential CLAIMED for this proposal (payload field, not proof). The judge records the claim and still verifies identity separately — an unverified token never upgrades an OBSERVE_ONLY session, and verdicts remain binding regardless of what the token asserts.
entropy_pathwayNoHow the action changes system order: 'reduces', 'neutral', or 'increases' complexity.
entropy_receiptNoJSON receipt from an entropy computation, bound to this judgment.
authority_effectNoWhat permission a SEAL verdict would grant, e.g. 'execute forge plan P-9'.
cooldown_entry_idNoId of an existing cooling-period record to consult before this action may proceed.
sovereign_receiptNoReference to the human owner's explicit approval, for the rare case where they have already decided directly.
reversibility_levelNoHow hard the action would be to undo: 'reversible', 'hard', or 'irreversible'.
requested_capabilityNoThe specific capability being requested, e.g. 'forge.execute' — checked against the capability registry.
constitutional_chain_idNoId of the evidence chain this call belongs to (observe→think→judge→seal). Copy it from the earlier step's response to link the steps together.

Output Schema

NameRequiredDescriptionDefault
metaYes
toolYes
resultYes
statusYes
delta_SNo
reasonsYes
actor_idNo
timestampYes
session_idNo
nine_signalYes
output_policyNo
stage_progressionNo
philosophical_anchorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / evidence / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": true,
      -    "type": "object"
      -  },
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": true,
      +    "type": "object"
      +  },
      +  {
      +    "items": {},
      +    "type": "array"
      +  },
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "actor_id": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "delta_S": {
      +      "anyOf": [
      +        {
      +          "type": "number"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "meta": {
      +      "additionalProperties": true,
      +      "type": "object"
      +    },
      +    "nine_signal": {
      +      "additionalProperties": true,
      +      "properties": {
      +        "delta": {
      +          "properties": {
      +            "en": {
      +              "type": "string"
      +            },
      +            "plane": {
      +              "type": "string"
      +            },
      +            "state": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "state",
      +            "en"
      +          ],
      +          "type": "object"
      +        },
      +        "omega": {
      +          "properties": {
      +            "en": {
      +              "type": "string"
      +            },
      +            "plane": {
      +              "type": "string"
      +            },
      +            "state": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "state",
      +            "en"
      +          ],
      +          "type": "object"
      +        },
      +        "overall": {
      +          "properties": {
      +            "en": {
      +              "type": "string"
      +            },
      +            "state": {
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "psi": {
      +          "properties": {
      +            "en": {
      +              "type": "string"
      +            },
      +            "plane": {
      +              "type": "string"
      +            },
      +            "state": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "state",
      +            "en"
      +          ],
      +          "type": "object"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "output_policy": {
      +      "type": "string"
      +    },
      +    "philosophical_anchor": {
      +      "additionalProperties": true,
      +      "type": "object"
      +    },
      +    "reasons": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "result": {
      +      "additionalProperties": true,
      +      "properties": {
      +        "actor_verified": {
      +          "type": "boolean"
      +        },
      +        "human_approved": {
      +          "type": "boolean"
      +        },
      +        "judgment": {
      +          "type": "string"
      +        },
      +        "mode": {
      +          "type": "string"
      +        },
      +        "nine_signal": {
      +          "additionalProperties": true,
      +          "type": "object"
      +        },
      +        "reasons": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "verdict": {
      +          "type": "string"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "session_id": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "stage_progression": {
      +      "anyOf": [
      +        {
      +          "type": "null"
      +        },
      +        {
      +          "properties": {
      +            "current_stage": {
      +              "type": "string"
      +            },
      +            "next_prompt": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            },
      +            "next_stage": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            },
      +            "next_tool": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            }
      +          },
      +          "type": "object"
      +        }
      +      ]
      +    },
      +    "status": {
      +      "type": "string"
      +    },
      +    "timestamp": {
      +      "type": "string"
      +    },
      +    "tool": {
      +      "const": "arif_judge"
      +    }
      +  },
      +  "required": [
      +    "status",
      +    "tool",
      +    "result",
      +    "meta",
      +    "timestamp",
      +    "nine_signal",
      +    "reasons"
      +  ],
      +  "type": "object"
      +}
  3. Changed1 schema field changed
    • changedInput schema / properties / mode / enum
      Previous value: -[
      -  "intercept",
      -  "judge",
      -  "validate",
      -  "hold",
      -  "escalate",
      -  "score",
      -  "collapse"
      -]New value: +[
      +  "intercept",
      +  "judge",
      +  "validate",
      +  "hold",
      +  "escalate"
      +]
  4. Changed1 schema field changed
    • addedInput schema / properties / authority_token / description
      Added value: +"Authority credential CLAIMED for this proposal (payload field, not proof). The judge records the claim and still verifies identity separately — an unverified token never upgrades an OBSERVE_ONLY session, and verdicts remain binding regardless of what the token asserts."
  5. Changed1 schema field changed
    • changedInput schema / properties / mode / enum
      Previous value: -[
      -  "intercept",
      -  "judge",
      -  "validate",
      -  "hold",
      -  "escalate"
      -]New value: +[
      +  "intercept",
      +  "judge",
      +  "validate",
      +  "hold",
      +  "escalate",
      +  "score",
      +  "collapse"
      +]
  6. Changed1 schema field changed
    • changedInput schema / properties / mode / enum
      Previous value: -[
      -  "intercept",
      -  "judge",
      -  "validate",
      -  "hold",
      -  "escalate",
      -  "score",
      -  "collapse"
      -]New value: +[
      +  "intercept",
      +  "judge",
      +  "validate",
      +  "hold",
      +  "escalate"
      +]
  7. Changed1 schema field changed
    • changedInput schema / properties / mode / enum
      Previous value: -[
      -  "intercept",
      -  "judge",
      -  "validate",
      -  "hold",
      -  "escalate"
      -]New value: +[
      +  "intercept",
      +  "judge",
      +  "validate",
      +  "hold",
      +  "escalate",
      +  "score",
      +  "collapse"
      +]
  8. Changed1 schema field changed
    • removedInput schema / properties / _envelope
      Removed value: -{
      -  "default": null,
      -  "description": "Reserved for the transport layer — never fill this in.",
      -  "title": "Envelope"
      -}
  9. Added

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds useful behavioral context beyond the annotations: it explains the factors weighed, the binding nature of the verdict, the verdict labels, and that it produces an authorization receipt. It does not detail authentication/session requirements, but the annotations and schema already cover safety and parameter-level behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four compact sentences, front-loads the core purpose, then states the verdict semantics and the key workflow prerequisite. Every sentence contributes useful information without repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich schema and output schema, the description covers the tool's purpose, verdict model, key prerequisite, and outputs adequately. It could say more about the mode parameter and session/auth expectations, but those are already heavily documented in the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents all 31 parameters in detail. The description adds only a high-level reference to blast radius, reversibility, and permission level, which are already represented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: evaluate proposed operations against policy and safety constraints. It also names the concrete verdict outputs and links the tool to the workflow by saying approval is required before arif_forge.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly indicates when the tool is needed: prior to calling arif_forge. It does not explicitly describe when not to use it or name alternative sibling tools beyond the forge prerequisite, so it falls short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.