This project has been archived by its maintainers, and is no longer receiving any updates.
Argus Gate
The Argus boundary for AI agents: one install that puts every tool call, skill, MCP action, and agent-to-agent request of any model through Argus, and makes executors refuse any action that lacks an Argus-signed capability token.
The four capabilities
- Enforcement - every agent action evaluated against the operator's policy before it executes, with typed reason codes for every block.
- Evidence - every decision signed into a tamper-evident Merkle +
Ed25519 chain, verifiable offline with
argus evidence verify. - Abstention - graded authority (full, scaled, safe-halt) instead of binary allow or deny, and INCONCLUSIVE fail-closed instead of a guess.
- The Record - a signed deliberation record per action: what the agent proposed, what the gate saw, and what happened.
Install
pip install argus-gate
Requires the Argus SDK v0.8 line (argus>=0.8) and Python 3.10 or newer.
Quickstart
Gate an MCP server in one command:
python -m argus_gate.mcp.gateway \
--server-id filesystem \
--policy policy.txt \
--policy-signer platform_policy_key_1 --policy-key <hex public key> \
--class-map class_map.json \
-- npx -y @modelcontextprotocol/server-filesystem /workspace
Wrap the server with token verification:
python -m argus_gate.mcp.middleware \
--server-id filesystem \
--key-list key_list.bin \
-- npx -y @modelcontextprotocol/server-filesystem /workspace
Model middleware:
from argus_gate.adapters.model import ModelGate, ModelToolCall
gate = ModelGate(core) # core: a GateCore with prefix "model"
outcome = gate.evaluate(ModelToolCall("openai", "delete_all_users", {}, "call-1"))
# outcome.decision == "deny", with the typed reason; nothing executes.
Evidence chain:
from argus_gate.evidence import GateChainRecorder
chain = GateChainRecorder(record_key=record_key, load_authority_key=load_key)
chain.start(policy_hash, policy_source=text)
# wire as the GateCore recorder: every decision is signed into the chain
chain.export("gate_chain.json")
# then, offline: argus evidence verify gate_chain.json --level L2
Contents
| Area | What ships |
|---|---|
| Token library | Capability tokens: issue, verify, revoke, replay protection; Python and TypeScript byte-identical to conformance vectors. |
| MCP adapter | Stdio gateway and drop-in server middleware with tool definition pinning. |
| Model adapters | OpenAI, Anthropic, and Google tool-calling middleware, one shared engine, identical decisions. |
| Framework hooks | LangGraph, OpenAI Agents SDK, CrewAI, AutoGen, and A2A. |
| Executor guards | Shell, file, database, and HTTP guards with incident replays. |
| Evidence chain | GateChainRecorder with the third-party offline verification walkthrough. |
| Policy packs | Coding, customer support, browser, data, and robotics packs mapped to OWASP ASI01 to ASI10 and NIST agent identity controls. |
License: proprietary. See the repository for the specification, the conformance matrix, and the verification walkthroughs.
Metadata
Release files for argus-gate 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| argus_gate-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for argus_gate-1.0.0-py3-none-any.whl |
Release files / argus_gate-1.0.0-py3-none-any.whl
| Download URL | argus_gate-1.0.0-py3-none-any.whl |
|---|---|
| Size | 245.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5d1bd1cdad01a34c7242b3643f7fcd8f33ca2d32b89fdde6f0137d0d0279abae
|
|
BLAKE2b-256 checksum How to use checksums |
484dd0248ed727c3a858608e72090968cb20aaff39a0f70453089d118cf4dfe4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.17
|
Security for argus-gate 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.