Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
auditverify
command
Command auditverify is the operator/auditor-facing tool for the audit log's tamper-evidence guarantee (internal/audit's hash chain): point it at any exported audit.log and it reports whether the chain is intact, or names the exact line/sequence number where it breaks.
|
Command auditverify is the operator/auditor-facing tool for the audit log's tamper-evidence guarantee (internal/audit's hash chain): point it at any exported audit.log and it reports whether the chain is intact, or names the exact line/sequence number where it breaks. |
|
blastradius
command
Command blastradius answers one question, with no setup and no integration: how much damage can this agent's tools actually do?
|
Command blastradius answers one question, with no setup and no integration: how much damage can this agent's tools actually do? |
|
devtoken
command
Command devtoken mints a dev-only signed identity JWT for local testing.
|
Command devtoken mints a dev-only signed identity JWT for local testing. |
|
loadtest
command
Command loadtest is the concurrent-load + latency benchmark harness.
|
Command loadtest is the concurrent-load + latency benchmark harness. |
|
mockupstream
command
Command mockupstream plays "the real enterprise service": it never trusts the proxy blindly, it verifies each capability token itself - a biscuit token's full signature chain plus its appended checks (internal/capability.Verify).
|
Command mockupstream plays "the real enterprise service": it never trusts the proxy blindly, it verifies each capability token itself - a biscuit token's full signature chain plus its appended checks (internal/capability.Verify). |
|
rinwall
command
Command proxy is the JIT capability firewall itself: loads the tool registry and policy bundle, then serves both the REST and MCP adapters against the same transport-agnostic handler.
|
Command proxy is the JIT capability firewall itself: loads the tool registry and policy bundle, then serves both the REST and MCP adapters against the same transport-agnostic handler. |
|
internal
|
|
|
adapter/mcp
Package mcp exposes the handler as an MCP server over two transports: Streamable HTTP (POST /mcp, spec 2025-06-18, back-compatible with 2024-11-05/2025-03-26 clients) and stdio (stdio.go), for clients that launch a local server process rather than connect to a URL.
|
Package mcp exposes the handler as an MCP server over two transports: Streamable HTTP (POST /mcp, spec 2025-06-18, back-compatible with 2024-11-05/2025-03-26 clients) and stdio (stdio.go), for clients that launch a local server process rather than connect to a URL. |
|
adapter/rest
Package rest is one of the two adapters (see internal/adapter/mcp for the other): the conventional reverse-proxy path for agents calling REST/function-calling APIs directly rather than through an MCP server.
|
Package rest is one of the two adapters (see internal/adapter/mcp for the other): the conventional reverse-proxy path for agents calling REST/function-calling APIs directly rather than through an MCP server. |
|
adminui
Package adminui embeds the minimal reviewer console served at GET /admin.
|
Package adminui embeds the minimal reviewer console served at GET /admin. |
|
approval
Package approval implements the three-tier mechanism for Class C (irreversible) tools, replacing naive "approve or deny every call" HITL - which trains reviewers to rubber-stamp - with a tiered design where only the irreducible remainder ever reaches a live person.
|
Package approval implements the three-tier mechanism for Class C (irreversible) tools, replacing naive "approve or deny every call" HITL - which trains reviewers to rubber-stamp - with a tiered design where only the irreducible remainder ever reaches a live person. |
|
audit
Package audit is the append-only event log every decision lands in: a local JSONL file by default, or a Postgres table in multi-instance mode (postgres.go).
|
Package audit is the append-only event log every decision lands in: a local JSONL file by default, or a Postgres table in multi-instance mode (postgres.go). |
|
authn
Package authn verifies the delegated human's identity.
|
Package authn verifies the delegated human's identity. |
|
capability
Real Vault dynamic AWS credentials, alongside dbsecrets.go.
|
Real Vault dynamic AWS credentials, alongside dbsecrets.go. |
|
classify
Package classify infers a tool's reversibility class from its name, description, and schema - the single biggest onboarding barrier this system had.
|
Package classify infers a tool's reversibility class from its name, description, and schema - the single biggest onboarding barrier this system had. |
|
compliance
Package compliance turns the raw material this proxy already collects - the tamper-evident audit log (internal/audit) and the reversibility registry (internal/registry) - into the thing a SOC2 auditor or a customer's compliance team actually wants: a structured summary over a time period, not a JSONL file they have to grep themselves.
|
Package compliance turns the raw material this proxy already collects - the tamper-evident audit log (internal/audit) and the reversibility registry (internal/registry) - into the thing a SOC2 auditor or a customer's compliance team actually wants: a structured summary over a time period, not a JSONL file they have to grep themselves. |
|
discover
Package discover turns a live MCP server into a runnable tool catalog with no human in the loop, which is what makes a one-command start possible at all.
|
Package discover turns a live MCP server into a runnable tool catalog with no human in the loop, which is what makes a one-command start possible at all. |
|
handler
AWS-backed tool execution - the real Vault dynamic-secrets path (aws/sts/<role>, a genuine sts:AssumeRole against the actual AWS account) alongside the existing biscuit/HTTP and DB paths.
|
AWS-backed tool execution - the real Vault dynamic-secrets path (aws/sts/<role>, a genuine sts:AssumeRole against the actual AWS account) alongside the existing biscuit/HTTP and DB paths. |
|
mcpclient
Package mcpclient is the client half of MCP - what this proxy needs to forward a call ONWARD to an upstream MCP server, as opposed to internal/adapter/mcp which is the server half that agents connect to.
|
Package mcpclient is the client half of MCP - what this proxy needs to forward a call ONWARD to an upstream MCP server, as opposed to internal/adapter/mcp which is the server half that agents connect to. |
|
metrics
Package metrics records per-stage durations from internal/handler and exposes p50/p95 via cmd/rinwall's /metrics endpoint, so the latency claims in docs/REFERENCE.md are numbers rather than assertions.
|
Package metrics records per-stage durations from internal/handler and exposes p50/p95 via cmd/rinwall's /metrics endpoint, so the latency claims in docs/REFERENCE.md are numbers rather than assertions. |
|
policy
Package policy embeds OPA directly in the proxy process - no network hop to a separate policy service, no per-call serialization round trip.
|
Package policy embeds OPA directly in the proxy process - no network hop to a separate policy service, no per-call serialization round trip. |
|
provenance
Real implementation, validated against the live Anthropic API before being wired in here: forced tool-use (not a plain text response asking for JSON) is what guarantees structured output - a plain-text prompt asking for JSON came back markdown-fenced in testing, which forced tool-use avoids entirely.
|
Real implementation, validated against the live Anthropic API before being wired in here: forced tool-use (not a plain text response asking for JSON) is what guarantees structured output - a plain-text prompt asking for JSON came back markdown-fenced in testing, which forced tool-use avoids entirely. |
|
proxytypes
Package proxytypes is the transport-agnostic core representation an intercepted tool call is normalized into, regardless of whether it arrived over the REST adapter or the MCP adapter.
|
Package proxytypes is the transport-agnostic core representation an intercepted tool call is normalized into, regardless of whether it arrived over the REST adapter or the MCP adapter. |
|
registry
Package registry holds the one contract every mutating tool must satisfy before an agent is ever allowed to call it: a declared reversibility class and an allowlist argument schema.
|
Package registry holds the one contract every mutating tool must satisfy before an agent is ever allowed to call it: a declared reversibility class and an allowlist argument schema. |
|
risk
Package risk computes a continuous score used ONLY to add friction, never to grant access on its own - the earlier design critique was explicit that an ML/heuristic risk score is a soft, adversarially-attackable signal, and must never be a standalone ALLOW condition for a mutating call.
|
Package risk computes a continuous score used ONLY to add friction, never to grant access on its own - the earlier design critique was explicit that an ML/heuristic risk score is a soft, adversarially-attackable signal, and must never be a standalone ALLOW condition for a mutating call. |
|
saga
Persistence for the saga Store - same reasoning as internal/approval's: a proxy restart mid-run must not silently lose the ability to compensate steps that already executed.
|
Persistence for the saga Store - same reasoning as internal/approval's: a proxy restart mid-run must not silently lose the ability to compensate steps that already executed. |
|
usage
Package usage turns the audit log's real, per-call judge token usage into a cost report - both judges this project has: the text provenance judge (internal/provenance, PROVENANCE_JUDGE_USAGE entries) and the screenshot-reasoning one (internal/visualprovenance, VISUAL_PROVENANCE_JUDGE_USAGE entries).
|
Package usage turns the audit log's real, per-call judge token usage into a cost report - both judges this project has: the text provenance judge (internal/provenance, PROVENANCE_JUDGE_USAGE entries) and the screenshot-reasoning one (internal/visualprovenance, VISUAL_PROVENANCE_JUDGE_USAGE entries). |
|
validate
Package validate implements allowlist-only payload validation: recursively canonicalize known encodings, then check the decoded value against a strict per-field schema.
|
Package validate implements allowlist-only payload validation: recursively canonicalize known encodings, then check the decoded value against a strict per-field schema. |
|
visualprovenance
Real implementation, validated against the live Anthropic API with three deliberately-constructed test screenshots before this file was written - a legitimate order-review page, a fake "System Notice" payment-approval dialog embedded in an email, and a page where the stated intent ("clicking Cancel") didn't match the actual button at the target coordinate ("Delete Account").
|
Real implementation, validated against the live Anthropic API with three deliberately-constructed test screenshots before this file was written - a legitimate order-review page, a fake "System Notice" payment-approval dialog embedded in an email, and a page where the stated intent ("clicking Cancel") didn't match the actual button at the target coordinate ("Delete Account"). |
Click to show internal directories.
Click to hide internal directories.