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.1.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.1.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: claude_sdk_verigent-0.1.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.1.0.tar.gz
Algorithm Hash digest
SHA256 31a35f9a0aa462390cde6989c396f71e3c51cc9dea986567793eacefa36fb664
MD5 4ddae8d62c2ae09e72f9a7c20e6638e7
BLAKE2b-256 5501778c67095e29e1153728d04ee97c76cdf5e029e8d0a877ebeafb61097a64

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for claude_sdk_verigent-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2178b7daa0f90603779dbc8037ff804ff060c451dd6853a307a6d323e62241a2
MD5 c94470881812e60674479bb4d91bfb5c
BLAKE2b-256 4a05606599d1d61b3853fb241778704b9059137ce38cae3143a12afac56cd59b

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