Directories
¶
| Path | Synopsis |
|---|---|
|
app
|
|
|
actor
Package actor carries the identity of the caller making a request.
|
Package actor carries the identity of the caller making a request. |
|
adapter
Package adapter provides the generic adapter framework: a Spec type that bundles wire-shape metadata (inbound URL paths, upstream URL path, auth strategy, canonical translator, token extractor), a generic pipeline.Adapter implementation parameterised by path and auth strategy, a Registry of Specs, and a generic route mounter that iterates registered specs.
|
Package adapter provides the generic adapter framework: a Spec type that bundles wire-shape metadata (inbound URL paths, upstream URL path, auth strategy, canonical translator, token extractor), a generic pipeline.Adapter implementation parameterised by path and auth strategy, a Registry of Specs, and a generic route mounter that iterates registered specs. |
|
adapters
Package adapters names the wire protocol the relay speaks to an upstream.
|
Package adapters names the wire protocol the relay speaks to an upstream. |
|
authz
Package authz answers "can this actor perform this action on this resource?" — a deliberate seam so the v1 always-allow implementation can later be swapped for Casbin / OpenFGA / Keto without touching call sites.
|
Package authz answers "can this actor perform this action on this resource?" — a deliberate seam so the v1 always-allow implementation can later be swapped for Casbin / OpenFGA / Keto without touching call sites. |
|
batch
Package batch is the batch subsystem: it accepts bulk inference submissions, runs each item as a background job (via the jobq module), and exposes submit/poll/cancel/results over the customer-facing /v1 surface.
|
Package batch is the batch subsystem: it accepts bulk inference submissions, runs each item as a background job (via the jobq module), and exposes submit/poll/cancel/results over the customer-facing /v1 surface. |
|
binding
Package binding is the domain layer for the HostBinding entity — the first-class join that declares "Model M is served by Host H, via wire adapter A, under upstream name U, priced by Pricing P."
|
Package binding is the domain layer for the HostBinding entity — the first-class join that declares "Model M is served by Host H, via wire adapter A, under upstream name U, priced by Pricing P." |
|
catalog
Snapshot assembly.
|
Snapshot assembly. |
|
catalogembed
Package catalogembed composes manifest YAML into the SDK catalog embed schema.
|
Package catalogembed composes manifest YAML into the SDK catalog embed schema. |
|
catalogvalidate
Package catalogvalidate is the cross-entity graph linter for the catalog repo's `data/` tree.
|
Package catalogvalidate is the cross-entity graph linter for the catalog repo's `data/` tree. |
|
catalogview
Package catalogview builds consumer-facing read projections of catalog data for the admin/UX surface ("API UX"): a model's hosts, its pricing per host, the policies that grant it.
|
Package catalogview builds consumer-facing read projections of catalog data for the admin/UX surface ("API UX"): a model's hosts, its pricing per host, the policies that grant it. |
|
host
Package host is the domain layer for the Host entity — a serving endpoint the relay forwards requests to.
|
Package host is the domain layer for the Host entity — a serving endpoint the relay forwards requests to. |
|
hosthealth
Package hosthealth records and reads per-host runtime reachability — the observed-state counterpart to host.Spec.
|
Package hosthealth records and reads per-host runtime reachability — the observed-state counterpart to host.Spec. |
|
hostkey
Package hostkey is the domain layer for the HostKey entity — a credential the relay uses to authenticate to a Host (a serving endpoint).
|
Package hostkey is the domain layer for the HostKey entity — a credential the relay uses to authenticate to a Host (a serving endpoint). |
|
httpapi
Package httpapi holds the HTTP layer for both Relay planes.
|
Package httpapi holds the HTTP layer for both Relay planes. |
|
httpapi/control
GET /catalog/graph — the whole catalog as a minimal graph for the admin model picker.
|
GET /catalog/graph — the whole catalog as a minimal graph for the admin model picker. |
|
httpapi/inference
Package inference's Dispatch is the shape-agnostic per-request flow.
|
Package inference's Dispatch is the shape-agnostic per-request flow. |
|
keypool
Package keypool implements per-key circuit-breaker state and configurable Pool selection over healthy keys.
|
Package keypool implements per-key circuit-breaker state and configurable Pool selection over healthy keys. |
|
manifest
Package wire handles conversion between the operator-facing YAML/JSON wire format and the domain structs in the app/* entity packages.
|
Package wire handles conversion between the operator-facing YAML/JSON wire format and the domain structs in the app/* entity packages. |
|
meta
Package meta holds the identity primitives every domain entity carries: UUIDv7 id, DNS-1123 slug name, free-text display name, and provenance.
|
Package meta holds the identity primitives every domain entity carries: UUIDv7 id, DNS-1123 slug name, free-text display name, and provenance. |
|
metricslog
Package metricslog is the Prometheus observer on the lifecycle spine.
|
Package metricslog is the Prometheus observer on the lifecycle spine. |
|
model
Package model is the domain layer for the Model entity — a container for a family of dated checkpoints (Snapshots).
|
Package model is the domain layer for the Model entity — a container for a family of dated checkpoints (Snapshots). |
|
modelref
Package modelref parses the catalog reference DSL used by Policy grants and the /catalog/resolve admin endpoint.
|
Package modelref parses the catalog reference DSL used by Policy grants and the /catalog/resolve admin endpoint. |
|
payloadlog
Package payloadlog is the second lifecycle observer (after app/usagelog): it captures the full request + response bodies of opted-in requests for audit, debug, and replay, and pushes them to a Sink (file today, S3 next) off the hot path.
|
Package payloadlog is the second lifecycle observer (after app/usagelog): it captures the full request + response bodies of opted-in requests for audit, debug, and replay, and pushes them to a Sink (file today, S3 next) off the hot path. |
|
pipeline
Package pipeline orchestrates one inference request: reserve inbound budget, acquire an upstream key (and its upstream reservation) via policy.Service, call the adapter, stream back, commit in post-flight.
|
Package pipeline orchestrates one inference request: reserve inbound budget, acquire an upstream key (and its upstream reservation) via policy.Service, call the adapter, stream back, commit in post-flight. |
|
policy
Package policy is the domain layer for the Policy entity — the named group that bundles Models (m:n), ProviderKeys (m:n), and an optional single RateLimit (m:1, the one rule set that applies to traffic through this Policy).
|
Package policy is the domain layer for the Policy entity — the named group that bundles Models (m:n), ProviderKeys (m:n), and an optional single RateLimit (m:1, the one rule set that applies to traffic through this Policy). |
|
pricing
Package pricing is the domain layer for the Pricing entity — a named rate sheet owned by a Host and applied to one or more Models.
|
Package pricing is the domain layer for the Pricing entity — a named rate sheet owned by a Host and applied to one or more Models. |
|
provider
Package provider is the domain layer for the Provider entity — the vendor / author of a Model.
|
Package provider is the domain layer for the Provider entity — the vendor / author of a Model. |
|
proxy
Package proxy is the second inference flow: transparent forwarding of caller-supplied upstream credentials.
|
Package proxy is the second inference flow: transparent forwarding of caller-supplied upstream credentials. |
|
ratelimit
Package ratelimit is the domain layer for the RateLimit entity — a named rule set (requests / tokens / concurrency caps) attachable to a Policy, ProviderKey, or Model.
|
Package ratelimit is the domain layer for the RateLimit entity — a named rule set (requests / tokens / concurrency caps) attachable to a Policy, ProviderKey, or Model. |
|
relaykey
Package relaykey is the domain layer for the RelayKey entity — an inbound API key the relay issues to a client.
|
Package relaykey is the domain layer for the RelayKey entity — an inbound API key the relay issues to a client. |
|
routing
PolicyAllows answers "is this Model reachable through this Policy?" without picking a binding or a key — the question /v1/models needs to answer.
|
PolicyAllows answers "is this Model reachable through this Policy?" without picking a binding or a key — the question /v1/models needs to answer. |
|
secret
agent.go implements pipeline.KeyAgent: the out-of-band handler for failed upstream keys.
|
agent.go implements pipeline.KeyAgent: the out-of-band handler for failed upstream keys. |
|
seed
Package seed orchestrates loading YAML config into Postgres for the app/ arch.
|
Package seed orchestrates loading YAML config into Postgres for the app/ arch. |
|
session
Package session wraps alexedwards/scs/v2 with a kv.Store-backed session store and the small amount of glue that turns scs payloads into our app/actor.Actor.
|
Package session wraps alexedwards/scs/v2 with a kv.Store-backed session store and the small amount of glue that turns scs payloads into our app/actor.Actor. |
|
settings
Package settings is the typed-sectioned config layer.
|
Package settings is the typed-sectioned config layer. |
|
settingswatch
Package settingswatch applies a value-typed settings section to a live consumer, re-applying whenever the section changes.
|
Package settingswatch applies a value-typed settings section to a live consumer, re-applying whenever the section changes. |
|
transport/ws
Package ws is a customer-facing WebSocket transport for the inference data plane.
|
Package ws is a customer-facing WebSocket transport for the inference data plane. |
|
usagelog
Package usagelog is the first consumer of pkg/lifecycle's Hook + Collector surface.
|
Package usagelog is the first consumer of pkg/lifecycle's Hook + Collector surface. |
|
bench
|
|
|
fakeanthropic
Package fakeanthropic is a test stub that replays captured Claude Code session responses as a minimal Anthropic Messages API server.
|
Package fakeanthropic is a test stub that replays captured Claude Code session responses as a minimal Anthropic Messages API server. |
|
fakeanthropic/cmd
command
Command fakeanthropic runs a minimal fake Anthropic Messages API that replays captured Claude Code session responses.
|
Command fakeanthropic runs a minimal fake Anthropic Messages API that replays captured Claude Code session responses. |
|
loadgen
command
Command loadgen sends a steady-rate stream of /v1/messages requests at a Relay endpoint.
|
Command loadgen sends a steady-rate stream of /v1/messages requests at a Relay endpoint. |
|
replay
command
Command replay exercises Relay's /v1/messages endpoint against every turn from a captured Claude Code session JSONL.
|
Command replay exercises Relay's /v1/messages endpoint against every turn from a captured Claude Code session JSONL. |
|
cmd
|
|
|
catalog-embed
command
catalog-embed reads the public catalog YAML tree and writes sdk/catalog/catalog.json.
|
catalog-embed reads the public catalog YAML tree and writes sdk/catalog/catalog.json. |
|
catalog-schemas
command
catalog-schemas dumps JSON Schema files for every catalog wire kind, one file per kind under <out>/.
|
catalog-schemas dumps JSON Schema files for every catalog wire kind, one file per kind under <out>/. |
|
catalog-validate
command
catalog-validate runs the schema-generic graph linter (catalogvalidate.ValidateGraph) against a directory of YAML manifests and prints findings.
|
catalog-validate runs the schema-generic graph linter (catalogvalidate.ValidateGraph) against a directory of YAML manifests and prints findings. |
|
icon-import
command
icon-import downloads provider icons from OpenRouter's events/all-providers.json into a target directory (typically the relay-ui repo's public/provider/ folder).
|
icon-import downloads provider icons from OpenRouter's events/all-providers.json into a target directory (typically the relay-ui repo's public/provider/ folder). |
|
litellm-import
command
Package main implements the litellm-import CLI for the new app/ architecture.
|
Package main implements the litellm-import CLI for the new app/ architecture. |
|
relay
command
Command relay is the wyolet-relay data + control plane binary.
|
Command relay is the wyolet-relay data + control plane binary. |
|
relay-stats
command
relay-stats — thin HTTP client for the relay control plane's /usage/events + /usage/summary endpoints.
|
relay-stats — thin HTTP client for the relay control plane's /usage/events + /usage/summary endpoints. |
|
relay/web
Package web embeds the relay-ui single-page app and serves it from the control plane.
|
Package web embeds the relay-ui single-page app and serves it from the control plane. |
|
internal
|
|
|
config
Package config centralizes all RELAY_* env var parsing for the relay binary.
|
Package config centralizes all RELAY_* env var parsing for the relay binary. |
|
identity
Package identity owns the User catalog kind and the SecretRef resolution machinery used to pull credential material out of the environment, files, or (discouraged) inline literals — pydantic-SecretStr style.
|
Package identity owns the User catalog kind and the SecretRef resolution machinery used to pull credential material out of the environment, files, or (discouraged) inline literals — pydantic-SecretStr style. |
|
storage
Package storage owns the Postgres connection pool and runs migrations.
|
Package storage owns the Postgres connection pool and runs migrations. |
|
jobq
module
|
|
|
migrations
|
|
|
postgres
Package pgmigrations embeds the postgres migration SQL files.
|
Package pgmigrations embeds the postgres migration SQL files. |
|
pkg
|
|
|
crypto
Package crypto provides AES-GCM-256 encryption primitives and master-key helpers for Relay's stored-secret subsystem.
|
Package crypto provides AES-GCM-256 encryption primitives and master-key helpers for Relay's stored-secret subsystem. |
|
filter
Package filter is a declarative, allowlist-based query engine for list endpoints.
|
Package filter is a declarative, allowlist-based query engine for list endpoints. |
|
ids
Package ids generates immutable resource identifiers.
|
Package ids generates immutable resource identifiers. |
|
lifecycle
Package lifecycle is the in-process hook registry every request-runner (pipeline, proxy, future ws/batch) fires events into.
|
Package lifecycle is the in-process hook registry every request-runner (pipeline, proxy, future ws/batch) fires events into. |
|
metrics
Package metrics owns the Prometheus registry and the /metrics HTTP handler.
|
Package metrics owns the Prometheus registry and the /metrics HTTP handler. |
|
payload
Package payload is the storage contract for request/response body capture: the Record shape and the Sink/Reader interfaces its backends satisfy.
|
Package payload is the storage contract for request/response body capture: the Record shape and the Sink/Reader interfaces its backends satisfy. |
|
payload/clickhouse
Package clickhouse provides a ClickHouse-backed implementation of payload.Sink, payload.Reader, and payload.Closer — the Langfuse-style "text bodies in ClickHouse" backend for the Logs view.
|
Package clickhouse provides a ClickHouse-backed implementation of payload.Sink, payload.Reader, and payload.Closer — the Langfuse-style "text bodies in ClickHouse" backend for the Logs view. |
|
payload/file
Package file is the JSONL file backend for payload logging: one Record per line.
|
Package file is the JSONL file backend for payload logging: one Record per line. |
|
payload/s3
Package s3 is the object-store backend for payload logging: one JSON object per Record.
|
Package s3 is the object-store backend for payload logging: one JSON object per Record. |
|
ratelimit
Package ratelimit implements a sliding-window-counter rate limiter with a two-phase Reserve/Commit API.
|
Package ratelimit implements a sliding-window-counter rate limiter with a two-phase Reserve/Commit API. |
|
secret
Package secret is the relay's unified secret-resolution layer: a backend-agnostic Ref pointing at a credential, and a Resolver that turns it into plaintext.
|
Package secret is the relay's unified secret-resolution layer: a backend-agnostic Ref pointing at a credential, and a Resolver that turns it into plaintext. |
|
secret/aws
Package aws resolves secret.KindAWS refs by fetching from AWS Secrets Manager.
|
Package aws resolves secret.KindAWS refs by fetching from AWS Secrets Manager. |
|
secret/azure
Package azure resolves secret.KindAzure refs by fetching from Azure Key Vault.
|
Package azure resolves secret.KindAzure refs by fetching from Azure Key Vault. |
|
secret/bitwarden
Package bitwarden resolves KindBitwarden secrets by fetching encrypted vault data from Vaultwarden/Bitwarden and decrypting client-side.
|
Package bitwarden resolves KindBitwarden secrets by fetching encrypted vault data from Vaultwarden/Bitwarden and decrypting client-side. |
|
secret/gcp
Package gcp resolves secret.KindGCP refs by fetching from GCP Secret Manager.
|
Package gcp resolves secret.KindGCP refs by fetching from GCP Secret Manager. |
|
secret/onepassword
Package onepassword resolves secret.KindOnePassword refs via the official 1Password Go SDK and a service-account token.
|
Package onepassword resolves secret.KindOnePassword refs via the official 1Password Go SDK and a service-account token. |
|
slug
Package slug derives DNS-1123-compatible identifiers from free-text display names, with deterministic collision suffixes.
|
Package slug derives DNS-1123-compatible identifiers from free-text display names, with deterministic collision suffixes. |
|
usage/clickhouse
Package clickhouse provides a ClickHouse-backed implementation of usage.Sink, usage.Reader, and usage.Closer.
|
Package clickhouse provides a ClickHouse-backed implementation of usage.Sink, usage.Reader, and usage.Closer. |
|
usage/file
Package file is the JSONL file backend for usage logging: a Sink that appends one event per line and a Reader that scans the same file.
|
Package file is the JSONL file backend for usage logging: a Sink that appends one event per line and a Reader that scans the same file. |
|
usage/postgres
Package postgres implements usage.Sink, usage.Reader, and usage.Closer backed by PostgreSQL.
|
Package postgres implements usage.Sink, usage.Reader, and usage.Closer backed by PostgreSQL. |
|
usage/valkey
Package valkey is a TTL-bounded usage Sink + Reader backed by pkg/kv.
|
Package valkey is a TTL-bounded usage Sink + Reader backed by pkg/kv. |
|
sdk
module
|
Click to show internal directories.
Click to hide internal directories.