Skip to main content

Governance MCP proxy for coding agents -- interposes Kevros verify/attest on every tool call.

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

kevros-code

Governance MCP proxy for coding agents. Interposes Kevros verify and attest calls on every tool invocation, so every action a coding agent takes is cryptographically authorized before it executes and cryptographically recorded after.

Why

Coding agents have root-equivalent blast radius on their target machine — they write files, run shell commands, install packages, push commits. A single untrusted action can exfiltrate secrets, corrupt source, or open a backdoor. Permission-before-power requires that every tool call be gated by a policy evaluation and recorded in an independently-verifiable audit chain. kevros-code is the thin proxy that sits between the agent and its tool layer to enforce that contract without changing the agent's code.

Installation

pip install kevros-code

Quick Start

from kevros_code import GovernedMCPProxy

# Zero config — uses KEVROS_API_KEY env var or auto-signs up for the
# free tier (1,000 calls/month) on first use
proxy = GovernedMCPProxy(agent_id="coding-agent-001")

# Wrap a tool-call function. The proxy intercepts, verifies, and attests.
@proxy.governed_tool
def edit_file(path: str, content: str) -> dict:
    # Original tool implementation unchanged
    with open(path, "w") as f:
        f.write(content)
    return {"status": "ok", "path": path}

# Under the hood, every call to edit_file() now:
#   1. Calls verify() with {action: "edit_file", payload: {path, content}}
#   2. If the decision is ALLOW → executes the real tool, records attest()
#   3. If the decision is CONSTRAIN → clamps the payload and records attest()
#   4. If the decision is DENY → raises ToolBlockedByGovernance

How it interposes

kevros-code is a passthrough proxy, not a replacement. The agent's tool code is unchanged; only the wrapper around it changes. The proxy:

  1. Normalizes the tool call into a canonical request shape (action_type, payload, agent_id, context)
  2. Calls Kevros verify to get a signed ALLOW / CONSTRAIN / DENY verdict
  3. On ALLOW, forwards the call to the real tool and captures the result
  4. On CONSTRAIN, clamps the payload (bounded fields only) and forwards
  5. On DENY, raises ToolBlockedByGovernance — the agent sees a structured refusal, not a silent failure
  6. Records attest() with the full context + decision + result for every call, producing a hash-chained provenance entry

The resulting audit trail can be verified independently by any auditor with the Kevros public key — no trust in the agent operator is required.

MCP-native mode

If you're running the agent through an MCP (Model Context Protocol) transport, kevros-code can inject as an MCP middleware layer:

from kevros_code.mcp_proxy import install_mcp_proxy

# Wraps every MCP tool call that passes through this server
install_mcp_proxy(
    server_name="my-coding-server",
    agent_id="coding-agent-001",
    policy_id="coding-agents-prod",
)

See examples/mcp_proxy_example.py in the source repo for a full working example.

What you get

  • Cryptographic authorization on every action — no action executes without a signed release token
  • Hash-chained provenance — every action is recorded in an append-only, tamper-evident ledger
  • Dual post-quantum signatures on attestation records (ML-DSA-87 FIPS 204 + SLH-DSA FIPS 205) so the audit trail remains verifiable against quantum-capable adversaries
  • Fail-closed — if the governance layer is unreachable, the agent is blocked from acting; it never "defaults to allow"
  • Zero code change in the agent itself beyond wrapping the tool calls

Pricing

  • Free: 1,000 governance calls per month, no credit card, auto-signup on first use
  • Starter ($29/mo): 5,000 calls/month for individual developers
  • Professional ($149/mo): 50,000 calls/month with priority support
  • Enterprise ($499/mo): 500,000 calls/month with SLA and dedicated support

Higher-tier plans and Azure/AWS Marketplace Managed Application deployments are available at https://marketplace.microsoft.com/en-us/marketplace/apps/taskhawk.kevros-ai-governance-gateway.

Documentation

License

BSL-1.1 (Business Source License 1.1). Commercial use requires a license agreement with TaskHawk Systems, LLC. Contact sales@taskhawktech.com.

Support

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

kevros_code-0.3.14.tar.gz (15.6 kB view details)

Uploaded Source

Built Distribution

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

kevros_code-0.3.14-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file kevros_code-0.3.14.tar.gz.

File metadata

  • Download URL: kevros_code-0.3.14.tar.gz
  • Upload date:
  • Size: 15.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for kevros_code-0.3.14.tar.gz
Algorithm Hash digest
SHA256 dfd3acd736e44f7bf43bf65c32e871082e4202d42564c889ad16d6735f480f6d
MD5 dbaf52076c9b311b1b2f7463fdc66e6b
BLAKE2b-256 fd5eb4a1fb403ee7141b4d8a8c1e7aef1cf38fa45bb9b42092ce297226e413c3

See more details on using hashes here.

File details

Details for the file kevros_code-0.3.14-py3-none-any.whl.

File metadata

  • Download URL: kevros_code-0.3.14-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for kevros_code-0.3.14-py3-none-any.whl
Algorithm Hash digest
SHA256 ddd5acf023bbada460484b3904eb9be337908b95f246e764815bf68dd7961769
MD5 20a299476a89df6a78797559005df792
BLAKE2b-256 fa45b94847014d6a652c154b5cb83d8e1646cc292f808602f7e331cb0813bcb8

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