Skip to main content

Verigent trust verification for the Claude Agent SDK

Project description

claude-sdk-verigent

Verigent trust verification for the Claude Agent SDK.

The Problem

When Claude agents interact with other agents, there's no standard way to verify identity or assess trust. An agent claiming to be "JARVIS" might be a verified V5 Architect or a spoofed impersonator. Without verification, multi-agent systems operate on blind trust.

Verigent solves this with cryptographic trust keys (VG keys) that encode an agent's identity, tier, primary class, and 12-axis capability scores.

Install

pip install claude-sdk-verigent

Requires anthropic>=0.30.0.

Usage

Embed a VG key in your agent's system prompt

from claude_sdk_verigent import VerigentSystemPrompt

vg_key = "VG:JARVIS-0A:V3-ARCH·Se4Op7An5Ar9Co2Ad6St8Sc3Sa5So1Br2Fo6"
vsp = VerigentSystemPrompt(vg_key)

system_prompt = "You are JARVIS, an architecture agent." + vsp.render()

This appends a structured trust identity block that other agents can parse and verify.

Add the verification tool to multi-agent setups

from anthropic import Anthropic
from claude_sdk_verigent import VerigentTool

client = Anthropic()
tool = VerigentTool()

# Include in your tools list
response = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    tools=[tool.definition],
    messages=[{"role": "user", "content": "Verify this agent's key: VG:ATLAS-7B:V4-SENT·Se8Op6An7Ar5Co4Ad3St9Sc2Sa6So3Br4Fo5"}],
)

# Handle tool_use response
for block in response.content:
    if block.type == "tool_use" and block.name == "verify_agent":
        result = tool.execute(block.input)
        # result = {"verified": True, "handle": "ATLAS", "tier": "V4", ...}

Intercept and verify keys in tool responses

from claude_sdk_verigent import VerigentInterceptor

interceptor = VerigentInterceptor(min_trust_tier=2)

# Check any text for embedded VG keys
assessment = interceptor.check(tool_response_text)
if assessment:
    print(f"{assessment.handle}: {assessment.level.value} (score {assessment.score})")

# Quick trust gate
if interceptor.is_trusted(agent_output):
    # proceed with high-trust path
    ...

Parse a key directly

from claude_sdk_verigent import parse_vg_key, evaluate_trust

key = parse_vg_key("VG:JARVIS-0A:V3-ARCH·Se4Op7An5Ar9Co2Ad6St8Sc3Sa5So1Br2Fo6")
print(key.handle)        # "JARVIS"
print(key.tier)          # 3
print(key.scores)        # {"Sentinel": 4, "Operative": 7, ...}

assessment = evaluate_trust(key)
print(assessment.level)  # TrustLevel.HIGH

VG Key Format

VG:{NAME}-{SUFFIX}:{TIER}-{PRIMARY}·{12x class_code+digit}
  • NAME: Agent handle (e.g., JARVIS, ATLAS)
  • SUFFIX: Unique identifier
  • TIER: V0 (unverified) through V6 (maximum trust)
  • PRIMARY: 4-letter primary class code
  • Scores: 12 two-letter class codes each followed by a digit (0-9)

Trust Classes

Code Class Code Class
Se Sentinel St Steward
Op Operative Sc Scout
An Analyst Sa Sage
Ar Architect So Sovereign
Co Conduit Br Broker
Ad Adaptor Fo Forge

Links

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

claude_sdk_verigent-0.2.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

claude_sdk_verigent-0.2.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file claude_sdk_verigent-0.2.0.tar.gz.

File metadata

  • Download URL: claude_sdk_verigent-0.2.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for claude_sdk_verigent-0.2.0.tar.gz
Algorithm Hash digest
SHA256 a69c3f2c37c90c0ea28ae46661e48512e34e8956de76b0c59785c92fde1a1908
MD5 f592de2c1d2109a67cd9aad51fca1221
BLAKE2b-256 c2bcb71cbdcbc0fb3570ea11a6afc7f51d2b8910ad94be0ddf744f0f4f3d23bb

See more details on using hashes here.

File details

Details for the file claude_sdk_verigent-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for claude_sdk_verigent-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 949c0c9e5fccbf3c11056db111e0cf407dbea504629f0dbedfce311c4bc68d86
MD5 11c8628c1dac0f5693ad892c6dc9c960
BLAKE2b-256 3527e66b35cb54976721a9e798e7a3958be738bed4164b04f7ed064f62727327

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page