> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getbifrost.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# v2.2.1

> v2.2.1 changelog - 2026-09-19

<Update label="Bifrost Enterprise" description="v2.2.1">
  ## Changelog

  v2.2.1 moves the enterprise gateway onto OSS transports v2.2.1. API key scopes are now clamped to the caller's own permissions at create and update. Virtual key search now matches the assigned user's name or email, and the assignee column is resolved in one batched query per page instead of one request per row. The OSS release also carries three security fixes: resource IDs are validated before they enter outbound URL paths, Bedrock S3 bucket names can no longer redirect signed requests to a caller-chosen host, and the billing idempotency key can no longer be forged through the `x-request-id` header.

  ## ✨ Features

  * **API Key Scope Ceiling** - Creating or updating an API key now clamps the granted scopes to the permissions the caller holds. Unknown permission ids are rejected with 400, scopes the caller does not hold are rejected with 403 naming the offending permissions, and a key's own scopes win the permission check even when the creator's role is broader. Local-admin and auth-disabled requests keep their existing bypass.
  * **Scope Ceiling in the API Key Picker** - The scope picker shows the ceiling before save: permissions above the caller's own are rendered locked with a lock icon and cannot be toggled on, while a locked scope already on the key stays removable so access can always be lowered. If the server still returns a 403 because the permission map went stale, the denied scopes are highlighted inline and the caller's permissions are re-fetched. The picker is built on a shared `PermissionMatrix` component with search and per-resource bulk select, now used by both API key scopes and role permissions.
  * **Virtual Key Assignee Search and Batched Resolution** - Virtual key search now matches the assigned user's name or email through the enterprise store, which previously delegated search to the base store and silently dropped the assignee filter. The "Assigned To" column on the list page and in CSV export is resolved with a single batched query per page instead of one request per key.
  * **Access-Profile MCP Grants in DAC Scopes** - Own-data and team-data scoped reads now treat access-profile grants as a first-class visibility path for MCP servers and Virtual MCPs. An MCP server granted exclusively through a user's access profile was previously invisible to that user under DAC scoping, because access-profile-managed virtual keys intentionally carry no VK-to-MCP assignment rows.
  * **Unknown MCP Calls Recorded as Observations** - When an MCP tool call cannot be matched to any known installation in the device inventory (stale inventory, removed server, unrecognized name), the gateway now records it as an observation with `status=unknown` and full attribution metadata instead of issuing a hard denial, and the rest of the batch continues under normal enforcement. True policy denials and guardrail failures are still enforced strictly.

  ## 🌎 Open Source Features

  * **Virtual Key Assignees and Expanded Search** - The virtual key list resolves `assigned_user` for every row via a single batch lookup, and VK search matches team, customer and user names in addition to key fields, so keys can be found by who owns them.
  * **User Attribution in Prometheus Metrics** - The telemetry plugin's metrics export includes user id and user name labels, so per-user usage and error rates can be graphed and alerted on directly.
  * **Prompt Cache Breakpoints Capability** - A `SupportsPromptCacheBreakpoints` model capability with a name-based fallback for OpenRouter gates `prompt_cache_breakpoint` forwarding, so OpenRouter's non-Claude models stop rejecting requests that carry it.
  * **MCP Observed Latency** - Native (observed) MCP tool-call latency from `observed_latency_ms` is surfaced in the logs duration column and detail sheet, kept clearly distinct from true execution time and never fabricating a synthetic start timestamp on the timeline.

  ## 🐞 Fixed

  * **Access Profile Role-Detach Revocation Scope** - Detaching a role from an access profile now revokes the profile only from the detached role's users, sparing users whose remaining role still grants the profile.
  * **Resource ID Path Injection (OSS)** - Caller-supplied resource IDs (batch, file, video, container, response IDs, cached content names) were interpolated into outbound URL paths unvalidated; a crafted ID could redirect the request to an unintended upstream endpoint. A central `EscapeResourceID` helper validates and escapes every such ID.
  * **Bedrock S3 SSRF (OSS)** - A caller-supplied `s3://` file ID or `s3_bucket` param could control the upstream host of a SigV4-signed connection; bucket names are now validated with a DNS-compatible regex.
  * **Caller-Forged Billing Idempotency (OSS)** - The billing idempotency key included the caller-controllable `x-request-id`, so two requests sharing a chosen ID collided and the second was never charged. An internally minted `BillingNonce` is mixed into the key, making it unforgeable.
  * **Abandoned Non-Streaming Request Hung Forever (OSS)** - The worker kept a `ctx.Done()` arm on an already-claimed delivery send, so a non-streaming caller could hang indefinitely.
  * **Repeated Empty Thinking Blocks (OSS)** - Streaming chat chunks emitted empty reasoning/message fields on every content delta, which clients rendered as repeated empty thinking blocks.
  * **Claude Code Thread Continuations Behind Key Rotation (OSS)** - Server-side conversation threads are bound to the upstream account that creates them, which per-request key selection cannot guarantee; the Anthropic integration now declares itself stateless, refusing continuations with a 400 `thread_unsupported_request` so the client resends the turn in full, and stripping `thread` from create requests so no orphaned thread state accumulates upstream.
  * **Gemini Flash-Lite Minimal Thinking Promoted to Low (OSS)** - `gemini-3.1-flash-lite` requests silently promoted `minimal` thinking to `low` on Gemini and Vertex; the text model's four supported levels are now registered.
  * **Config.json Virtual Key Limits Broke Under UI Edits (OSS)** - VK rate limits and budgets created via the config.json standalone-limits flow and then edited through the UI produced duplicate, conflicting ownership records; a migration consolidates ownership into VK-scoped model configs while preserving usage counters.
  * **Bedrock Service Tier Rejections (OSS)** - Service tier forwarding for Bedrock is now gated on explicit model capability metadata, failing closed when none exists.
  * **Anthropic Root-Level Tool Schema Compositions (OSS)** - Root-level `oneOf`/`anyOf`/`allOf` in a tool's `input_schema` are rewritten into a flat object schema before dispatch, unblocking tools that Anthropic would otherwise reject.
  * **GenAI Streaming TTS (OSS)** - Speech stream chunks routed through the `/genai` integration had no converter registered; streaming TTS now works, and a missing stream converter returns a clean error instead of panicking.
  * **xAI Usage and Cost (OSS)** - `completion_tokens` now folds reasoning tokens in so token totals add up, and streaming cost normalization preserves xAI's authoritative cost ticks instead of falling back to catalog pricing.
  * **OpenAI-Only `search_content_types` Forwarded Everywhere (OSS)** - The field is gated behind a per-provider capability check so Bedrock and other OpenAI-compatible backends receive a clean `web_search` tool.
  * **Claude Code `diagnostics` Field Rejected by Non-Native Providers (OSS)** - `diagnostics.previous_message_id` is stripped for providers that do not support it, fixing 400s on Bedrock, Vertex and Azure.
  * **Unreadable Bedrock Error Logs (OSS)** - AWS's flat `{"message", "__type"}` error shape now seeds the error message, and the logs UI falls back to the raw provider error body when no message could be extracted.
  * **Anthropic `container` Param Dropped (OSS)** - The string-form `container` param on `/anthropic/v1/messages` is now carried through the round trip, so container reuse stops provisioning a fresh container every time.
  * **Responses API Finish Reason Missing From OTEL Spans (OSS)** - `gen_ai.response.finish_reason` is now emitted on the `llm.call` span for `/v1/responses` requests, matching the chat path.
  * **Cohere Fallback Response Shape (OSS)** - Responses served by a fallback from a non-Cohere provider are converted to the Cohere v2 shape instead of returning the raw normalized response.
  * **Skill Serving Race (OSS)** - Fixed a race condition in the skill serving handler.
  * **Log and Dashboard Label Truncation (OSS)** - Long model and provider labels truncate from the start so the distinctive suffix stays visible, the logs model column is wider, and key picker options are keyed by id so duplicate labels stop highlighting together.

  ## 🗄️ Database Migrations

  * **migrate\_vk\_standalone\_limits\_to\_model\_configs** - Consolidates virtual key standalone budgets and rate limits into VK-scoped model configs: standalone budgets are re-pointed to the VK's top-level model config (created if missing, usage preserved), orphaned duplicate UUID rate-limit rows created by the UI are deleted with the model config re-pointed to the canonical config.json row, and `vk.rate_limit_id` is cleared.

  ## 🐙 Closed OSS Issues

  * [#123](https://github.com/maximhq/bifrost/issues/123) - Files API Support
  * [#5707](https://github.com/maximhq/bifrost/issues/5707) - string-form `container` param on /anthropic/v1/messages is silently dropped - container reuse provisions a fresh container
  * [#7204](https://github.com/maximhq/bifrost/issues/7204) - Responses API path never sets gen\_ai.response.finish\_reason in OTEL traces (refusals invisible to observability)
  * [#7287](https://github.com/maximhq/bifrost/issues/7287) - Gemini 3.1 Flash-Lite minimal thinking is silently promoted to low
  * [#7294](https://github.com/maximhq/bifrost/issues/7294) - Streaming chat chunks emit empty reasoning/message fields on every content delta, causing repeated thinking blocks
  * [#7308](https://github.com/maximhq/bifrost/issues/7308) - non-streaming caller hangs forever - worker keeps a ctx.Done() arm on a claimed delivery send (regression from #6972)

  ## 📀 Base OSS version

  `transports/v2.2.1` (pinned as `github.com/maximhq/bifrost/transports v1.6.12-0.20260918214249-f44b5410fb7b`), with core `v1.9.1`, framework `v1.7.2`, governance `v1.8.1`, and logging `v1.8.1`.

  ## 🔌 If you are compiling plugin against this release - use following deps

  ```go theme={null}
  module github.com/maximhq/bifrost-enterprise/transports

  go 1.27.0

  require (
  	github.com/bytedance/sonic v1.15.3-0.20260730064818-2a36d6da63e2
  	github.com/coreos/go-oidc/v3 v3.18.0
  	github.com/fasthttp/router v1.5.4
  	github.com/google/cel-go v0.30.0
  	github.com/google/uuid v1.6.0
  	github.com/maximhq/bifrost-enterprise/core v0.0.0
  	github.com/maximhq/bifrost-enterprise/framework v0.0.0
  	github.com/maximhq/bifrost-enterprise/plugins v0.0.0
  	github.com/maximhq/bifrost/core v1.9.1
  	github.com/maximhq/bifrost/framework v1.7.2
  	github.com/maximhq/bifrost/plugins/governance v1.8.1
  	github.com/maximhq/bifrost/plugins/logging v1.8.1
  	github.com/maximhq/bifrost/plugins/routing v1.1.1
  	github.com/maximhq/bifrost/plugins/semanticcache v1.6.4
  	github.com/maximhq/bifrost/transports v1.6.12-0.20260918214249-f44b5410fb7b
  	github.com/stretchr/testify v1.11.1
  	github.com/valyala/fasthttp v1.74.0
  	golang.org/x/sync v0.22.0
  	gorm.io/driver/sqlite v1.6.0
  	gorm.io/gorm v1.31.1
  )

  require (
  	cel.dev/expr v0.25.2 // indirect
  	cloud.google.com/go v0.123.0 // indirect
  	cloud.google.com/go/auth v0.20.0 // indirect
  	cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect
  	cloud.google.com/go/bigquery v1.74.0 // indirect
  	cloud.google.com/go/compute/metadata v0.9.0 // indirect
  	cloud.google.com/go/iam v1.7.0 // indirect
  	cloud.google.com/go/monitoring v1.24.3 // indirect
  	cloud.google.com/go/pubsub/v2 v2.4.0 // indirect
  	cloud.google.com/go/secretmanager v1.16.0 // indirect
  	cloud.google.com/go/storage v1.62.1 // indirect
  	dario.cat/mergo v1.0.2 // indirect
  	github.com/Azure/azure-sdk-for-go/sdk/azcore v1.20.0 // indirect
  	github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.13.1 // indirect
  	github.com/Azure/azure-sdk-for-go/sdk/internal v1.11.2 // indirect
  	github.com/AzureAD/microsoft-authentication-library-for-go v1.6.0 // indirect
  	github.com/BobuSumisu/aho-corasick v1.0.3 // indirect
  	github.com/ClickHouse/ch-go v0.65.0 // indirect
  	github.com/ClickHouse/clickhouse-go/v2 v2.32.0 // indirect
  	github.com/DataDog/datadog-agent/comp/core/tagger/origindetection v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/obfuscate v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/opentelemetry-mapping-go/otlp/attributes v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/proto v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/remoteconfig/state v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/template v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/trace v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/trace/log v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/trace/otel v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/trace/stats v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/trace/traceutil v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/util/log v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/util/scrubber v0.77.0 // indirect
  	github.com/DataDog/datadog-agent/pkg/version v0.77.0 // indirect
  	github.com/DataDog/datadog-go/v5 v5.8.3 // indirect
  	github.com/DataDog/dd-trace-go/v2 v2.8.2 // indirect
  	github.com/DataDog/go-libddwaf/v4 v4.9.0 // indirect
  	github.com/DataDog/go-runtime-metrics-internal v0.0.4-0.20260217080614-b0f4edc38a6d // indirect
  	github.com/DataDog/go-sqllexer v0.1.13 // indirect
  	github.com/DataDog/go-tuf v1.1.1-0.5.2 // indirect
  	github.com/DataDog/sketches-go v1.4.8 // indirect
  	github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.33.0 // indirect
  	github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.55.0 // indirect
  	github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.55.0 // indirect
  	github.com/Masterminds/goutils v1.1.1 // indirect
  	github.com/Masterminds/semver/v3 v3.4.0 // indirect
  	github.com/Masterminds/sprig/v3 v3.3.0 // indirect
  	github.com/Microsoft/go-winio v0.6.2 // indirect
  	github.com/ProtonMail/go-crypto v1.1.6 // indirect
  	github.com/STARRY-S/zip v0.2.1 // indirect
  	github.com/andybalholm/brotli v1.2.2 // indirect
  	github.com/antlr4-go/antlr/v4 v4.13.1 // indirect
  	github.com/apache/arrow/go/v15 v15.0.2 // indirect
  	github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect
  	github.com/armon/go-metrics v0.4.1 // indirect
  	github.com/aws/aws-sdk-go-v2 v1.42.0 // indirect
  	github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.10 // indirect
  	github.com/aws/aws-sdk-go-v2/config v1.32.14 // indirect
  	github.com/aws/aws-sdk-go-v2/credentials v1.19.14 // indirect
  	github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.21 // indirect
  	github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.29 // indirect
  	github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.29 // indirect
  	github.com/aws/aws-sdk-go-v2/internal/ini v1.8.6 // indirect
  	github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.22 // indirect
  	github.com/aws/aws-sdk-go-v2/service/bedrockruntime v1.50.6 // indirect
  	github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.7 // indirect
  	github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.13 // indirect
  	github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.21 // indirect
  	github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.21 // indirect
  	github.com/aws/aws-sdk-go-v2/service/s3 v1.99.0 // indirect
  	github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.42.3 // indirect
  	github.com/aws/aws-sdk-go-v2/service/signin v1.0.9 // indirect
  	github.com/aws/aws-sdk-go-v2/service/sso v1.30.15 // indirect
  	github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.19 // indirect
  	github.com/aws/aws-sdk-go-v2/service/sts v1.41.10 // indirect
  	github.com/aws/smithy-go v1.27.1 // indirect
  	github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
  	github.com/bahlo/generic-list-go v0.2.0 // indirect
  	github.com/beorn7/perks v1.0.1 // indirect
  	github.com/blevesearch/go-porterstemmer v1.0.3 // indirect
  	github.com/bodgit/plumbing v1.3.0 // indirect
  	github.com/bodgit/sevenzip v1.6.0 // indirect
  	github.com/bodgit/windows v1.0.1 // indirect
  	github.com/buger/jsonparser v1.2.0 // indirect
  	github.com/bytedance/gopkg v0.1.3 // indirect
  	github.com/bytedance/sonic/loader v0.5.2 // indirect
  	github.com/cenkalti/backoff v2.2.1+incompatible // indirect
  	github.com/cenkalti/backoff/v4 v4.3.0 // indirect
  	github.com/cenkalti/backoff/v5 v5.0.3 // indirect
  	github.com/cespare/xxhash/v2 v2.3.0 // indirect
  	github.com/charmbracelet/colorprofile v0.3.1 // indirect
  	github.com/charmbracelet/lipgloss v1.1.0 // indirect
  	github.com/charmbracelet/x/ansi v0.10.1 // indirect
  	github.com/charmbracelet/x/cellbuf v0.0.13 // indirect
  	github.com/charmbracelet/x/term v0.2.1 // indirect
  	github.com/cihub/seelog v0.0.0-20170130134532-f561c5e57575 // indirect
  	github.com/cloudflare/circl v1.6.3 // indirect
  	github.com/cloudwego/base64x v0.1.6 // indirect
  	github.com/cncf/xds/go v0.0.0-20260202195803-dba9d589def2 // indirect
  	github.com/coreos/go-semver v0.3.1 // indirect
  	github.com/coreos/go-systemd/v22 v22.6.0 // indirect
  	github.com/cyphar/filepath-securejoin v0.6.1 // indirect
  	github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
  	github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
  	github.com/dsnet/compress v0.0.2-0.20230904184137-39efe44ab707 // indirect
  	github.com/dustin/go-humanize v1.0.1 // indirect
  	github.com/ebitengine/purego v0.10.0 // indirect
  	github.com/emicklei/go-restful/v3 v3.13.0 // indirect
  	github.com/emirpasic/gods v1.18.1 // indirect
  	github.com/envoyproxy/go-control-plane/envoy v1.37.0 // indirect
  	github.com/envoyproxy/protoc-gen-validate v1.3.3 // indirect
  	github.com/fasthttp/websocket v1.5.12 // indirect
  	github.com/fatih/color v1.18.0 // indirect
  	github.com/fatih/semgroup v1.2.0 // indirect
  	github.com/felixge/httpsnoop v1.0.4 // indirect
  	github.com/fsnotify/fsnotify v1.9.0 // indirect
  	github.com/fxamacker/cbor/v2 v2.9.0 // indirect
  	github.com/gitleaks/go-gitdiff v0.9.1 // indirect
  	github.com/go-faster/city v1.0.1 // indirect
  	github.com/go-faster/errors v0.7.1 // indirect
  	github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
  	github.com/go-git/go-billy/v5 v5.9.0 // indirect
  	github.com/go-git/go-git/v5 v5.19.2 // indirect
  	github.com/go-jose/go-jose/v4 v4.1.4 // indirect
  	github.com/go-logr/logr v1.4.4 // indirect
  	github.com/go-logr/stdr v1.2.2 // indirect
  	github.com/go-ole/go-ole v1.3.0 // indirect
  	github.com/go-openapi/analysis v0.24.2 // indirect
  	github.com/go-openapi/errors v0.22.5 // indirect
  	github.com/go-openapi/jsonpointer v0.22.4 // indirect
  	github.com/go-openapi/jsonreference v0.21.4 // indirect
  	github.com/go-openapi/loads v0.23.2 // indirect
  	github.com/go-openapi/runtime v0.29.2 // indirect
  	github.com/go-openapi/spec v0.22.3 // indirect
  	github.com/go-openapi/strfmt v0.25.0 // indirect
  	github.com/go-openapi/swag v0.25.4 // indirect
  	github.com/go-openapi/swag/cmdutils v0.25.4 // indirect
  	github.com/go-openapi/swag/conv v0.25.4 // indirect
  	github.com/go-openapi/swag/fileutils v0.25.4 // indirect
  	github.com/go-openapi/swag/jsonname v0.25.4 // indirect
  	github.com/go-openapi/swag/jsonutils v0.25.4 // indirect
  	github.com/go-openapi/swag/loading v0.25.4 // indirect
  	github.com/go-openapi/swag/mangling v0.25.4 // indirect
  	github.com/go-openapi/swag/netutils v0.25.4 // indirect
  	github.com/go-openapi/swag/stringutils v0.25.4 // indirect
  	github.com/go-openapi/swag/typeutils v0.25.4 // indirect
  	github.com/go-openapi/swag/yamlutils v0.25.4 // indirect
  	github.com/go-openapi/validate v0.25.1 // indirect
  	github.com/go-viper/mapstructure/v2 v2.5.0 // indirect
  	github.com/goccy/go-json v0.10.5 // indirect
  	github.com/gogo/protobuf v1.3.2 // indirect
  	github.com/golang-jwt/jwt/v5 v5.3.1 // indirect
  	github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect
  	github.com/golang/protobuf v1.5.4 // indirect
  	github.com/google/btree v1.1.3 // indirect
  	github.com/google/flatbuffers v23.5.26+incompatible // indirect
  	github.com/google/gnostic-models v0.7.0 // indirect
  	github.com/google/pprof v0.0.0-20260802141513-ef3492d7dac3 // indirect
  	github.com/google/s2a-go v0.1.9 // indirect
  	github.com/googleapis/enterprise-certificate-proxy v0.3.16 // indirect
  	github.com/googleapis/gax-go/v2 v2.22.0 // indirect
  	github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 // indirect
  	github.com/grandcat/zeroconf v1.0.0 // indirect
  	github.com/grpc-ecosystem/grpc-gateway/v2 v2.29.0 // indirect
  	github.com/h2non/filetype v1.1.3 // indirect
  	github.com/hashicorp/consul/api v1.34.3 // indirect
  	github.com/hashicorp/errwrap v1.1.0 // indirect
  	github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
  	github.com/hashicorp/go-hclog v1.6.3 // indirect
  	github.com/hashicorp/go-immutable-radix v1.3.1 // indirect
  	github.com/hashicorp/go-metrics v0.5.4 // indirect
  	github.com/hashicorp/go-msgpack/v2 v2.1.5 // indirect
  	github.com/hashicorp/go-multierror v1.1.1 // indirect
  	github.com/hashicorp/go-retryablehttp v0.7.8 // indirect
  	github.com/hashicorp/go-rootcerts v1.0.2 // indirect
  	github.com/hashicorp/go-secure-stdlib/parseutil v0.2.0 // indirect
  	github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 // indirect
  	github.com/hashicorp/go-sockaddr v1.0.7 // indirect
  	github.com/hashicorp/go-version v1.8.0 // indirect
  	github.com/hashicorp/golang-lru v1.0.2 // indirect
  	github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
  	github.com/hashicorp/hcl v1.0.1-vault-7 // indirect
  	github.com/hashicorp/memberlist v0.5.4 // indirect
  	github.com/hashicorp/serf v0.10.1 // indirect
  	github.com/hashicorp/vault/api v1.23.0 // indirect
  	github.com/huandu/xstrings v1.5.0 // indirect
  	github.com/invopop/jsonschema v0.13.0 // indirect
  	github.com/jackc/pgpassfile v1.0.0 // indirect
  	github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect
  	github.com/jackc/pgx/v5 v5.9.2 // indirect
  	github.com/jackc/puddle/v2 v2.2.2 // indirect
  	github.com/jaswdr/faker/v2 v2.8.0 // indirect
  	github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
  	github.com/jinzhu/inflection v1.0.0 // indirect
  	github.com/jinzhu/now v1.1.5 // indirect
  	github.com/json-iterator/go v1.1.12 // indirect
  	github.com/kevinburke/ssh_config v1.2.0 // indirect
  	github.com/klauspost/compress v1.20.0 // indirect
  	github.com/klauspost/cpuid/v2 v2.3.0 // indirect
  	github.com/klauspost/pgzip v1.2.6 // indirect
  	github.com/kylelemons/godebug v1.1.0 // indirect
  	github.com/linkdata/deadlock v0.5.5 // indirect
  	github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
  	github.com/lufia/plan9stats v0.0.0-20260216142805-b3301c5f2a88 // indirect
  	github.com/magiconair/properties v1.8.10 // indirect
  	github.com/mailru/easyjson v0.9.1 // indirect
  	github.com/mark3labs/mcp-go v0.43.2 // indirect
  	github.com/mattn/go-colorable v0.1.14 // indirect
  	github.com/mattn/go-isatty v0.0.24 // indirect
  	github.com/mattn/go-runewidth v0.0.17 // indirect
  	github.com/mattn/go-sqlite3 v1.14.32 // indirect
  	github.com/maximhq/bifrost/plugins/compat v0.3.1 // indirect
  	github.com/maximhq/bifrost/plugins/maxim v1.7.4 // indirect
  	github.com/maximhq/bifrost/plugins/mocker v1.6.4 // indirect
  	github.com/maximhq/bifrost/plugins/modelcatalogresolver v1.1.4 // indirect
  	github.com/maximhq/bifrost/plugins/otel v1.5.4 // indirect
  	github.com/maximhq/bifrost/plugins/prompts v1.1.4 // indirect
  	github.com/maximhq/bifrost/plugins/telemetry v1.8.0 // indirect
  	github.com/maximhq/maxim-go v0.2.1 // indirect
  	github.com/mholt/archives v0.1.2 // indirect
  	github.com/miekg/dns v1.1.68 // indirect
  	github.com/minio/minlz v1.0.0 // indirect
  	github.com/minio/simdjson-go v0.4.5 // indirect
  	github.com/mitchellh/copystructure v1.2.0 // indirect
  	github.com/mitchellh/go-homedir v1.1.0 // indirect
  	github.com/mitchellh/mapstructure v1.5.0 // indirect
  	github.com/mitchellh/reflectwalk v1.0.2 // indirect
  	github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
  	github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
  	github.com/molecule-man/go-brrr v1.0.1 // indirect
  	github.com/muesli/termenv v0.16.0 // indirect
  	github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
  	github.com/nakabonne/tstorage v0.3.6 // indirect
  	github.com/nwaples/rardecode/v2 v2.2.2 // indirect
  	github.com/oapi-codegen/runtime v1.1.1 // indirect
  	github.com/oklog/ulid v1.3.1 // indirect
  	github.com/outcaste-io/ristretto v0.2.3 // indirect
  	github.com/paulmach/orb v0.11.1 // indirect
  	github.com/pelletier/go-toml/v2 v2.2.3 // indirect
  	github.com/petermattis/goid v0.0.0-20260226131333-17d1149c6ac6 // indirect
  	github.com/philhofer/fwd v1.2.0 // indirect
  	github.com/philippgille/chromem-go v0.7.0 // indirect
  	github.com/pierrec/lz4/v4 v4.1.22 // indirect
  	github.com/pinecone-io/go-pinecone/v5 v5.3.0 // indirect
  	github.com/pion/datachannel v1.6.0 // indirect
  	github.com/pion/dtls/v3 v3.1.5 // indirect
  	github.com/pion/ice/v4 v4.2.1 // indirect
  	github.com/pion/interceptor v0.1.44 // indirect
  	github.com/pion/logging v0.2.4 // indirect
  	github.com/pion/mdns/v2 v2.1.0 // indirect
  	github.com/pion/randutil v0.1.0 // indirect
  	github.com/pion/rtcp v1.2.16 // indirect
  	github.com/pion/rtp v1.10.1 // indirect
  	github.com/pion/sctp v1.9.2 // indirect
  	github.com/pion/sdp/v3 v3.0.18 // indirect
  	github.com/pion/srtp/v3 v3.0.10 // indirect
  	github.com/pion/stun/v3 v3.1.6 // indirect
  	github.com/pion/transport/v4 v4.0.2 // indirect
  	github.com/pion/turn/v4 v4.1.4 // indirect
  	github.com/pion/webrtc/v4 v4.2.9 // indirect
  	github.com/pjbgf/sha1cd v0.6.0 // indirect
  	github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
  	github.com/pkg/errors v0.9.1 // indirect
  	github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect
  	github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
  	github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect
  	github.com/prometheus/client_golang v1.23.2 // indirect
  	github.com/prometheus/client_model v0.6.2 // indirect
  	github.com/prometheus/common v0.67.5 // indirect
  	github.com/prometheus/procfs v0.19.2 // indirect
  	github.com/puzpuzpuz/xsync/v3 v3.5.1 // indirect
  	github.com/qdrant/go-client v1.16.2 // indirect
  	github.com/redis/go-redis/v9 v9.17.2 // indirect
  	github.com/rivo/uniseg v0.4.7 // indirect
  	github.com/rs/zerolog v1.34.0 // indirect
  	github.com/ryanuber/go-glob v1.0.0 // indirect
  	github.com/sagikazarmark/locafero v0.7.0 // indirect
  	github.com/sagikazarmark/slog-shim v0.1.0 // indirect
  	github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 // indirect
  	github.com/savsgio/gotils v0.0.0-20250408102913-196191ec6287 // indirect
  	github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 // indirect
  	github.com/secure-systems-lab/go-securesystemslib v0.10.0 // indirect
  	github.com/segmentio/asm v1.2.0 // indirect
  	github.com/segmentio/kafka-go v0.4.51 // indirect
  	github.com/sergi/go-diff v1.4.0 // indirect
  	github.com/shirou/gopsutil/v4 v4.26.3 // indirect
  	github.com/shopspring/decimal v1.4.0 // indirect
  	github.com/skeema/knownhosts v1.3.1 // indirect
  	github.com/sorairolake/lzip-go v0.3.5 // indirect
  	github.com/sourcegraph/conc v0.3.0 // indirect
  	github.com/spf13/afero v1.15.0 // indirect
  	github.com/spf13/cast v1.10.0 // indirect
  	github.com/spf13/pflag v1.0.10 // indirect
  	github.com/spf13/viper v1.19.0 // indirect
  	github.com/spiffe/go-spiffe/v2 v2.7.0 // indirect
  	github.com/stretchr/objx v0.5.3 // indirect
  	github.com/subosito/gotenv v1.6.0 // indirect
  	github.com/tetratelabs/wazero v1.11.0 // indirect
  	github.com/therootcompany/xz v1.0.1 // indirect
  	github.com/tidwall/gjson v1.18.0 // indirect
  	github.com/tidwall/match v1.1.1 // indirect
  	github.com/tidwall/pretty v1.2.1 // indirect
  	github.com/tidwall/sjson v1.2.5 // indirect
  	github.com/tinylib/msgp v1.6.3 // indirect
  	github.com/tklauser/go-sysconf v0.3.16 // indirect
  	github.com/tklauser/numcpus v0.11.0 // indirect
  	github.com/trailofbits/go-mutexasserts v0.0.0-20250514102930-c1f3d2e37561 // indirect
  	github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
  	github.com/ulikunitz/xz v0.5.15 // indirect
  	github.com/valyala/bytebufferpool v1.0.0 // indirect
  	github.com/wasilibs/go-re2 v1.9.0 // indirect
  	github.com/wasilibs/wazero-helpers v0.0.0-20240620070341-3dff1577cd52 // indirect
  	github.com/weaviate/weaviate v1.38.0 // indirect
  	github.com/weaviate/weaviate-go-client/v5 v5.7.1 // indirect
  	github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect
  	github.com/wlynxg/anet v0.0.5 // indirect
  	github.com/x448/float16 v0.8.4 // indirect
  	github.com/xanzy/ssh-agent v0.3.3 // indirect
  	github.com/xdg-go/pbkdf2 v1.0.0 // indirect
  	github.com/xdg-go/scram v1.1.2 // indirect
  	github.com/xdg-go/stringprep v1.0.4 // indirect
  	github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
  	github.com/yosida95/uritemplate/v3 v3.0.2 // indirect
  	github.com/yusufpapurcu/wmi v1.2.4 // indirect
  	github.com/zeebo/xxh3 v1.1.0 // indirect
  	github.com/zricethezav/gitleaks/v8 v8.30.1 // indirect
  	go.etcd.io/etcd/api/v3 v3.6.11 // indirect
  	go.etcd.io/etcd/client/pkg/v3 v3.6.11 // indirect
  	go.etcd.io/etcd/client/v3 v3.6.11 // indirect
  	go.mongodb.org/mongo-driver v1.17.7 // indirect
  	go.opencensus.io v0.24.0 // indirect
  	go.opentelemetry.io/auto/sdk v1.2.1 // indirect
  	go.opentelemetry.io/collector/component v1.51.1-0.20260205185216-81bc641f26c0 // indirect
  	go.opentelemetry.io/collector/featuregate v1.51.1-0.20260205185216-81bc641f26c0 // indirect
  	go.opentelemetry.io/collector/pdata v1.51.1-0.20260205185216-81bc641f26c0 // indirect
  	go.opentelemetry.io/collector/pdata/pprofile v0.145.1-0.20260205185216-81bc641f26c0 // indirect
  	go.opentelemetry.io/contrib/detectors/gcp v1.44.0 // indirect
  	go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.67.0 // indirect
  	go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.67.0 // indirect
  	go.opentelemetry.io/otel v1.45.0 // indirect
  	go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.44.0 // indirect
  	go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.44.0 // indirect
  	go.opentelemetry.io/otel/metric v1.45.0 // indirect
  	go.opentelemetry.io/otel/sdk v1.45.0 // indirect
  	go.opentelemetry.io/otel/sdk/metric v1.45.0 // indirect
  	go.opentelemetry.io/otel/trace v1.45.0 // indirect
  	go.opentelemetry.io/proto/otlp v1.10.0 // indirect
  	go.starlark.net v0.0.0-20260102030733-3fee463870c9 // indirect
  	go.uber.org/atomic v1.11.0 // indirect
  	go.uber.org/multierr v1.11.0 // indirect
  	go.uber.org/zap v1.27.1 // indirect
  	go.yaml.in/yaml/v2 v2.4.3 // indirect
  	go.yaml.in/yaml/v3 v3.0.4 // indirect
  	go4.org v0.0.0-20230225012048-214862532bf5 // indirect
  	golang.org/x/arch v0.23.0 // indirect
  	golang.org/x/crypto v0.55.0 // indirect
  	golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f // indirect
  	golang.org/x/mod v0.38.0 // indirect
  	golang.org/x/net v0.58.0 // indirect
  	golang.org/x/oauth2 v0.36.0 // indirect
  	golang.org/x/sys v0.47.0 // indirect
  	golang.org/x/telemetry v0.0.0-20260708182218-49f421fb7959 // indirect
  	golang.org/x/term v0.45.0 // indirect
  	golang.org/x/text v0.41.0 // indirect
  	golang.org/x/time v0.15.0 // indirect
  	golang.org/x/tools v0.48.0 // indirect
  	golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect
  	google.golang.org/api v0.282.0 // indirect
  	google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7 // indirect
  	google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa // indirect
  	google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa // indirect
  	google.golang.org/grpc v1.83.2 // indirect
  	google.golang.org/protobuf v1.36.12-0.20260120151049-f2248ac996af // indirect
  	gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect
  	gopkg.in/inf.v0 v0.9.1 // indirect
  	gopkg.in/ini.v1 v1.67.1 // indirect
  	gopkg.in/warnings.v0 v0.1.2 // indirect
  	gopkg.in/yaml.v3 v3.0.1 // indirect
  	gorm.io/driver/clickhouse v0.7.0 // indirect
  	gorm.io/driver/postgres v1.6.0 // indirect
  	k8s.io/api v0.36.1 // indirect
  	k8s.io/apimachinery v0.36.1 // indirect
  	k8s.io/client-go v0.36.1 // indirect
  	k8s.io/klog/v2 v2.140.0 // indirect
  	k8s.io/kube-openapi v0.0.0-20260317180543-43fb72c5454a // indirect
  	k8s.io/utils v0.0.0-20260210185600-b8788abfbbc2 // indirect
  	sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect
  	sigs.k8s.io/randfill v1.0.0 // indirect
  	sigs.k8s.io/structured-merge-diff/v6 v6.3.2 // indirect
  	sigs.k8s.io/yaml v1.6.0 // indirect
  )

  replace github.com/maximhq/bifrost-enterprise/core => ../core

  replace github.com/maximhq/bifrost-enterprise/framework => ../framework

  replace github.com/maximhq/bifrost-enterprise/plugins => ../plugins
  ```
</Update>
