Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
bench
|
|
|
harness
command
Command harness runs the Keyway accuracy benchmark corpus and emits a scorecard (PRD Β§13).
|
Command harness runs the Keyway accuracy benchmark corpus and emits a scorecard (PRD Β§13). |
|
l2
command
Command l2 is the live-probe (L2) benchmark rig.
|
Command l2 is the live-probe (L2) benchmark rig. |
|
mutations
Package mutations generates benchmark scenarios: known contract changes (true positives) and no-op changes (false positives).
|
Package mutations generates benchmark scenarios: known contract changes (true positives) and no-op changes (false positives). |
|
realworld
Package realworld validates Keyway against documented, real-world JWT/JWKS incidents (CVEs, GitHub issues, postmortems).
|
Package realworld validates Keyway against documented, real-world JWT/JWKS incidents (CVEs, GitHub issues, postmortems). |
|
Package cloud is the multi-tenant hosted layer ("Keyway Cloud") on top of the open-source engine.
|
Package cloud is the multi-tenant hosted layer ("Keyway Cloud") on top of the open-source engine. |
|
cmd
|
|
|
keyway
command
Command keyway is the Keyway CLI.
|
Command keyway is the Keyway CLI. |
|
keyway-cloud
command
Command keyway-cloud is the multi-tenant hosted API ("Keyway Cloud"): accounts, projects, and persisted auth-contract analysis over the shared engine.
|
Command keyway-cloud is the multi-tenant hosted API ("Keyway Cloud"): accounts, projects, and persisted auth-contract analysis over the shared engine. |
|
keyway-runner
command
Command keyway-runner is the Keyway daemon: the same functionality as the CLI but defaulting to `serve` (API + scheduler) for in-VPC deployment.
|
Command keyway-runner is the Keyway daemon: the same functionality as the CLI but defaulting to `serve` (API + scheduler) for in-VPC deployment. |
|
internal
|
|
|
agentauth
Package agentauth statically analyzes an agent / MCP / on-behalf-of token against the agent-auth invariants in the threat taxonomy (internal/threats, "agent" domain).
|
Package agentauth statically analyzes an agent / MCP / on-behalf-of token against the agent-auth invariants in the threat taxonomy (internal/threats, "agent" domain). |
|
api
Package api serves the Keyway HTTP API (PRD Β§12) and the embedded web dashboard.
|
Package api serves the Keyway HTTP API (PRD Β§12) and the embedded web dashboard. |
|
app
Package app is Keyway's application (use-case) layer.
|
Package app is Keyway's application (use-case) layer. |
|
attack
Package attack is Keyway's generative, invariant-based JWT attack harness.
|
Package attack is Keyway's generative, invariant-based JWT attack harness. |
|
attribution
Package attribution binds contract changes to their cause: a git commit/PR, a Kubernetes deploy, or a Keycloak admin event (PRD Β§16 OPEN-5).
|
Package attribution binds contract changes to their cause: a git commit/PR, a Kubernetes deploy, or a Keycloak admin event (PRD Β§16 OPEN-5). |
|
blastradius
Package blastradius answers "if I make this change, who breaks?" and derives a safe grace period (PRD Β§10).
|
Package blastradius answers "if I make this change, who breaks?" and derives a safe grace period (PRD Β§10). |
|
cli
Package cli builds the Keyway command tree, shared by the `keyway` CLI and the `keyway-runner` daemon binaries.
|
Package cli builds the Keyway command tree, shared by the `keyway` CLI and the `keyway-runner` daemon binaries. |
|
config
Package config loads and validates Keyway runtime configuration from a YAML file and/or environment variables.
|
Package config loads and validates Keyway runtime configuration from a YAML file and/or environment variables. |
|
contract
Package contract assembles the derived contract graph, hashes it canonically, and manages versioning / the baseline flow.
|
Package contract assembles the derived contract graph, hashes it canonically, and manages versioning / the baseline flow. |
|
coordination
Package coordination provides the cross-process seams a multi-replica Keyway deployment needs: a shared idempotency store (so a retried write replays the same result on any replica) and a leader gate (so exactly one replica runs the scheduler).
|
Package coordination provides the cross-process seams a multi-replica Keyway deployment needs: a shared idempotency store (so a retried write replays the same result on any replica) and a leader gate (so exactly one replica runs the scheduler). |
|
diff
Package diff compares two contract versions and classifies each field change.
|
Package diff compares two contract versions and classifies each field change. |
|
discovery
Package discovery derives the consumer inventory automatically from cluster and config sources.
|
Package discovery derives the consumer inventory automatically from cluster and config sources. |
|
discovery/envoy
Package envoy discovers consumers from Envoy jwt_authn provider configuration.
|
Package envoy discovers consumers from Envoy jwt_authn provider configuration. |
|
discovery/istio
Package istio discovers consumers from Istio RequestAuthentication resources (confidence 1.0 β declarative and unambiguous).
|
Package istio discovers consumers from Istio RequestAuthentication resources (confidence 1.0 β declarative and unambiguous). |
|
discovery/k8s
Package k8s discovers consumers from Kubernetes Services, their backing workloads, and projected service-account token volumes (PRD Β§7.3).
|
Package k8s discovers consumers from Kubernetes Services, their backing workloads, and projected service-account token volumes (PRD Β§7.3). |
|
discovery/kube
Package kube builds Kubernetes API clients for the in-cluster discovery path.
|
Package kube builds Kubernetes API clients for the in-cluster discovery path. |
|
discovery/oidcclient
Package oidcclient discovers consumers from an OIDC provider's client registry (Keycloak).
|
Package oidcclient discovers consumers from an OIDC provider's client registry (Keycloak). |
|
issuer
Package issuer defines the issuer adapter interface and provides per-issuer-type implementations (keycloak, k8ssa, generic).
|
Package issuer defines the issuer adapter interface and provides per-issuer-type implementations (keycloak, k8ssa, generic). |
|
issuer/generic
Package generic implements issuer.Adapter for a generic OIDC issuer whose signing keys Keyway controls locally.
|
Package generic implements issuer.Adapter for a generic OIDC issuer whose signing keys Keyway controls locally. |
|
issuer/k8ssa
Package k8ssa implements issuer.Adapter for Kubernetes service-account token issuers.
|
Package k8ssa implements issuer.Adapter for Kubernetes service-account token issuers. |
|
issuer/keycloak
Package keycloak implements issuer.Adapter for Keycloak realms.
|
Package keycloak implements issuer.Adapter for Keycloak realms. |
|
issuer/localkeys
Package localkeys manages a set of locally-controlled signing keys and the JOSE operations Keyway performs with them: minting tokens, publishing a JWKS, and running the announce β active β retired key lifecycle used by the canary flow (PRD Β§4.1, Β§6, Β§10).
|
Package localkeys manages a set of locally-controlled signing keys and the JOSE operations Keyway performs with them: minting tokens, publishing a JWKS, and running the announce β active β retired key lifecycle used by the canary flow (PRD Β§4.1, Β§6, Β§10). |
|
issuer/oidc
Package oidc provides OIDC discovery and JWKS fetching over HTTP, shared by issuer adapters that read an issuer's published metadata.
|
Package oidc provides OIDC discovery and JWKS fetching over HTTP, shared by issuer adapters that read an issuer's published metadata. |
|
issuerregistry
Package issuerregistry builds and holds live issuer adapters, the runtime home of Keyway-operated signing keys and canary state.
|
Package issuerregistry builds and holds live issuer adapters, the runtime home of Keyway-operated signing keys and canary state. |
|
keystore
Package keystore persists Keyway-operated signing keys so canary state survives a daemon restart (KI-09).
|
Package keystore persists Keyway-operated signing keys so canary state survives a daemon restart (KI-09). |
|
libdefaults
Package libdefaults ships Keyway's library-behavior database and looks up known JWKS behavior by library name and version.
|
Package libdefaults ships Keyway's library-behavior database and looks up known JWKS behavior by library name and version. |
|
model
Package model holds Keyway's core domain types.
|
Package model holds Keyway's core domain types. |
|
notify
Package notify delivers change events to external sinks (Slack, webhooks).
|
Package notify delivers change events to external sinks (Slack, webhooks). |
|
ports
Package ports holds the small shared interfaces (hexagonal "ports") that would otherwise be duplicated across domain packages only to dodge an import cycle.
|
Package ports holds the small shared interfaces (hexagonal "ports") that would otherwise be duplicated across domain packages only to dodge an import cycle. |
|
probe
Package probe mints synthetic tokens and verifies consumer behavior against real staging endpoints (PRD Β§6).
|
Package probe mints synthetic tokens and verifies consumer behavior against real staging endpoints (PRD Β§6). |
|
store
Package store defines the persistence interface for Keyway and provides implementations (see store/postgres).
|
Package store defines the persistence interface for Keyway and provides implementations (see store/postgres). |
|
store/memory
Package memory is an in-memory store.Store implementation.
|
Package memory is an in-memory store.Store implementation. |
|
store/open
Package open is the store composition helper: it turns a DSN into a store.Store, so callers depend on the persistence interface rather than a concrete backend.
|
Package open is the store composition helper: it turns a DSN into a store.Store, so callers depend on the persistence interface rather than a concrete backend. |
|
store/postgres
Package postgres implements store.Store on PostgreSQL via pgx (PRD Β§2).
|
Package postgres implements store.Store on PostgreSQL via pgx (PRD Β§2). |
|
threats
Package threats is Keyway's JWT/JWKS/OIDC threat taxonomy β the *denominator* against which detection coverage is measured.
|
Package threats is Keyway's JWT/JWKS/OIDC threat taxonomy β the *denominator* against which detection coverage is measured. |
|
version
Package version exposes build metadata injected at link time via -ldflags.
|
Package version exposes build metadata injected at link time via -ldflags. |
|
pkg
|
|
|
apitypes
Package apitypes holds the public request/response shapes for the Keyway HTTP API (PRD Β§12).
|
Package apitypes holds the public request/response shapes for the Keyway HTTP API (PRD Β§12). |
Click to show internal directories.
Click to hide internal directories.