Skip to main content
npx -y @maximhq/bifrost --transport-version v1.4.0-prerelease1
Bifrost(HTTP)
1.4.0-prerelease1
  • refactor: governance plugin refactored for extensibility and optimization
  • feat: new MCP gateway (server including) along with code mode
  • feat: added health monitoring to mcp
  • feat: added responses format tool execution support to mcp
  • feat: new e2e tracing
  • fix: gemini thought signature handling in multi-turn conversations

💥 BREAKING CHANGES

  • Plugin Interface: TransportInterceptor removed, replaced with HTTPTransportMiddleware The TransportInterceptor function has been removed from the plugin interface. Plugins using HTTP transport interception must migrate to HTTPTransportMiddleware. Migration summary:
    // v1.3.x (removed)
    TransportInterceptor(ctx *BifrostContext, url string, headers map[string]string, body map[string]any) (map[string]string, map[string]any, error)
    
    // v1.4.x+ (new)
    HTTPTransportMiddleware() BifrostHTTPMiddleware
    // where BifrostHTTPMiddleware = func(next fasthttp.RequestHandler) fasthttp.RequestHandler
    
    Key API changes:
    • Function renamed: TransportInterceptor -> HTTPTransportMiddleware
    • Signature changed: Now returns a middleware wrapper instead of accepting/returning header/body maps
    • Added dependency: Requires github.com/valyala/fasthttp import
    • Flow control: Must explicitly call next(ctx) to continue the chain
    See Plugin Migration Guide for complete migration instructions and code examples.
Core
1.3.0
  • feat: added code mode to mcp
  • feat: added health monitoring to mcp
  • feat: added responses format tool execution support to mcp
  • feat: adds central tracer for e2e tracing

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor removed, replaced with HTTPTransportMiddleware The TransportInterceptor method has been removed from the Plugin interface in schemas/plugin.go. All plugins must now implement HTTPTransportMiddleware() instead. Old API (removed in core v1.3.0):
    TransportInterceptor(ctx *BifrostContext, url string, headers map[string]string, body map[string]any) (map[string]string, map[string]any, error)
    
    New API (core v1.3.0+):
    HTTPTransportMiddleware() BifrostHTTPMiddleware
    // where BifrostHTTPMiddleware = func(next fasthttp.RequestHandler) fasthttp.RequestHandler
    
    Key changes:
    • Method renamed: TransportInterceptor -> HTTPTransportMiddleware
    • Return type changed: Now returns a middleware function instead of modified headers/body
    • New import required: github.com/valyala/fasthttp
    • Flow control: Must call next(ctx) explicitly to continue the middleware chain
    • New capability: Can now intercept and modify responses (not just requests)
    Migration for plugin consumers:
    1. Update your plugin to implement HTTPTransportMiddleware() instead of TransportInterceptor()
    2. If your plugin doesn’t need HTTP transport interception, return nil from HTTPTransportMiddleware()
    3. Update tests to verify the new middleware signature
    See Plugin Migration Guide for complete instructions and code examples.
Framework
1.2.0
  • feat: adds new tracing framework for allowing plugins to enable e2e tracing

BREAKING CHANGES

  • DynamicPlugin: TransportInterceptor replaced with HTTPTransportMiddleware The DynamicPlugin loader now expects plugins to export HTTPTransportMiddleware instead of TransportInterceptor. Old symbol lookup (removed in framework v1.2.0):
    plugin.Lookup("TransportInterceptor")
    // Expected: func(ctx *BifrostContext, url string, headers map[string]string, body map[string]any) (map[string]string, map[string]any, error)
    
    New symbol lookup (framework v1.2.0+):
    plugin.Lookup("HTTPTransportMiddleware")
    // Expected: func() BifrostHTTPMiddleware
    
    Impact on dynamic plugins (.so files):
    • Plugins compiled for core v1.2.x will fail to load with error: plugin: symbol HTTPTransportMiddleware not found
    • Recompile all dynamic plugins against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for migration instructions.
governance
1.4.0
  • refactor: extracted governance store into an interface for extensibility
  • refactor: extended the way governance store handles rate limits
  • chore: added e2e tests for governance plugin
  • chore: upgraded versions of core to 1.3.0 and framework to 1.2.0

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor replaced with HTTPTransportMiddleware This plugin now implements HTTPTransportMiddleware() instead of TransportInterceptor() to comply with core v1.3.0. What changed:
    • Old: TransportInterceptor(ctx, url, headers, body) (headers, body, error)
    • New: HTTPTransportMiddleware() BifrostHTTPMiddleware
    For plugin consumers:
    • If you import this plugin directly, no code changes are required
    • If you extend this plugin, update your implementation to use HTTPTransportMiddleware()
    • Recompile any code that depends on this plugin against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for details.
jsonparser
1.4.0
  • chore: upgraded versions of core to 1.3.0 and framework to 1.2.0

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor replaced with HTTPTransportMiddleware This plugin now implements HTTPTransportMiddleware() instead of TransportInterceptor() to comply with core v1.3.0. What changed:
    • Old: TransportInterceptor(ctx, url, headers, body) (headers, body, error)
    • New: HTTPTransportMiddleware() BifrostHTTPMiddleware
    For plugin consumers:
    • If you import this plugin directly, no code changes are required
    • If you extend this plugin, update your implementation to use HTTPTransportMiddleware()
    • Recompile any code that depends on this plugin against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for details.
logging
1.4.0
  • feat: logging now uses central accumulator vs its own; reducing total memory consumption during runtime
  • chore: upgraded versions of core to 1.3.0 and framework to 1.2.0

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor replaced with HTTPTransportMiddleware This plugin now implements HTTPTransportMiddleware() instead of TransportInterceptor() to comply with core v1.3.0. What changed:
    • Old: TransportInterceptor(ctx, url, headers, body) (headers, body, error)
    • New: HTTPTransportMiddleware() BifrostHTTPMiddleware
    For plugin consumers:
    • If you import this plugin directly, no code changes are required
    • If you extend this plugin, update your implementation to use HTTPTransportMiddleware()
    • Recompile any code that depends on this plugin against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for details.
maxim
1.5.0
  • chore: upgraded versions of core to 1.3.0 and framework to 1.2.0

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor replaced with HTTPTransportMiddleware This plugin now implements HTTPTransportMiddleware() instead of TransportInterceptor() to comply with core v1.3.0. What changed:
    • Old: TransportInterceptor(ctx, url, headers, body) (headers, body, error)
    • New: HTTPTransportMiddleware() BifrostHTTPMiddleware
    For plugin consumers:
    • If you import this plugin directly, no code changes are required
    • If you extend this plugin, update your implementation to use HTTPTransportMiddleware()
    • Recompile any code that depends on this plugin against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for details.
mocker
1.4.0
  • chore: upgraded versions of core to 1.3.0 and framework to 1.2.0

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor replaced with HTTPTransportMiddleware This plugin now implements HTTPTransportMiddleware() instead of TransportInterceptor() to comply with core v1.3.0. What changed:
    • Old: TransportInterceptor(ctx, url, headers, body) (headers, body, error)
    • New: HTTPTransportMiddleware() BifrostHTTPMiddleware
    For plugin consumers:
    • If you import this plugin directly, no code changes are required
    • If you extend this plugin, update your implementation to use HTTPTransportMiddleware()
    • Recompile any code that depends on this plugin against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for details.
otel
1.1.0
  • feat: otel now uses central accumulator reducing the total amount of memory consumed in runtime
  • chore: upgraded versions of core to 1.3.0 and framework to 1.2.0

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor replaced with HTTPTransportMiddleware This plugin now implements HTTPTransportMiddleware() instead of TransportInterceptor() to comply with core v1.3.0. What changed:
    • Old: TransportInterceptor(ctx, url, headers, body) (headers, body, error)
    • New: HTTPTransportMiddleware() BifrostHTTPMiddleware
    For plugin consumers:
    • If you import this plugin directly, no code changes are required
    • If you extend this plugin, update your implementation to use HTTPTransportMiddleware()
    • Recompile any code that depends on this plugin against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for details.
semanticcache
1.4.0
  • chore: upgraded versions of core to 1.3.0 and framework to 1.2.0

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor replaced with HTTPTransportMiddleware This plugin now implements HTTPTransportMiddleware() instead of TransportInterceptor() to comply with core v1.3.0. What changed:
    • Old: TransportInterceptor(ctx, url, headers, body) (headers, body, error)
    • New: HTTPTransportMiddleware() BifrostHTTPMiddleware
    For plugin consumers:
    • If you import this plugin directly, no code changes are required
    • If you extend this plugin, update your implementation to use HTTPTransportMiddleware()
    • Recompile any code that depends on this plugin against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for details.
telemetry
1.4.0
  • chore: upgraded versions of core to 1.3.0 and framework to 1.2.0

BREAKING CHANGES

  • Plugin Interface: TransportInterceptor replaced with HTTPTransportMiddleware This plugin now implements HTTPTransportMiddleware() instead of TransportInterceptor() to comply with core v1.3.0. What changed:
    • Old: TransportInterceptor(ctx, url, headers, body) (headers, body, error)
    • New: HTTPTransportMiddleware() BifrostHTTPMiddleware
    For plugin consumers:
    • If you import this plugin directly, no code changes are required
    • If you extend this plugin, update your implementation to use HTTPTransportMiddleware()
    • Recompile any code that depends on this plugin against core v1.3.0+ and framework v1.2.0+
    See Plugin Migration Guide for details.