---
title: "Bedrockify: OpenAI Compatible Proxy for Bedrock: Completions + Embeddings"
type: post
url: "https://robotpaper.ai/bedrockify-openai-compatible-proxy-for-bedrock-completions-embeddings/"
canonical: "https://robotpaper.ai/bedrockify-openai-compatible-proxy-for-bedrock-completions-embeddings/"
markdown_url: "https://robotpaper.ai/bedrockify-openai-compatible-proxy-for-bedrock-completions-embeddings.md"
published: "2026-04-03T21:06:47.000+00:00"
updated: "2026-10-22T21:58:01.000+00:00"
tags: ["AWS", "openclaw", "Tools"]
author: "Roy Osherove"
author_links: ["https://robotpaper.ai", "https://x.com/royosherove", "https://www.linkedin.com/in/osherove/", "https://forms.gle/jQSx5KoXvrVA1JCK7", "https://robotpaper.ai/about-roy.md"]
description: "Bedrockify is a fast Go proxy that gives Amazon Bedrock an OpenAI-compatible API for chat completions and embeddings. One line to run; works with OpenClaw."
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original post)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# Bedrockify: OpenAI Compatible Proxy for Bedrock: Completions + Embeddings

Happy to release [bedrockify: An OpenAI Completions compatible API with embeddings proxy API for bedrock](https://github.com/inceptionstack/bedrockify) usage. Many of the current agents don't support bedrock by default, but do support custom OpenAI api. This gives a proxy you can run easily in one line on the same machine as your agent , and point your agent to it. Written in go, it's fast, easy to run as a daemon and just works. Works with OpenClaw, Hermes and other agents.

## Supported APIs

[](https://github.com/inceptionstack/bedrockify#supported-apis)

| API | Endpoint | Description |
| --- | --- | --- |
| **Chat Completions** | `POST /v1/chat/completions` | Non-streaming and SSE streaming |
| **Embeddings** | `POST /v1/embeddings` | Titan, Cohere, Nova embedding models |
| **Models** | `GET /v1/models` | List available Bedrock foundation models |
| **Health** | `GET /` | Health check with config info |

### Features

[](https://github.com/inceptionstack/bedrockify#features)

### Core

[](https://github.com/inceptionstack/bedrockify#core)

-   **Unified proxy** — chat completions + embeddings on a single port
-   **OpenAI-compatible API** — drop-in for any OpenAI SDK client
-   **Streaming** — SSE streaming for chat completions with `stream_options.include_usage` support
-   **Tool use** — function calling via Bedrock Converse (`auto`, `required`, specific tool)
-   **Vision** — image inputs via base64 data URLs AND remote HTTP/HTTPS URLs
-   **Model aliases** — short names, OpenRouter IDs, bare Bedrock IDs all work
-   **Cross-region inference** — auto-prefixes (`us.`, `eu.`, `ap.`, `global.`) based on region

### Intelligence

[](https://github.com/inceptionstack/bedrockify#intelligence)

-   **Reasoning / Extended Thinking** — `reasoning_effort` (low/medium/high) for Claude 3.7/4/4.5 with `reasoning_content` in responses and streaming
-   **DeepSeek R1 Reasoning** — automatic format detection (string format for DeepSeek, object format for Claude)
-   **Interleaved Thinking** — `extra_body.thinking` for Claude 4/4.5 thinking between tool calls
-   **Prompt Caching** — `extra_body.prompt_caching` for up to 90% cost reduction, with `ENABLE_PROMPT_CACHING` env var for global default

### Compatibility

[](https://github.com/inceptionstack/bedrockify#compatibility)

-   **Application Inference Profiles** — pass ARN as model ID for cost tracking (no alias mangling)
-   **Developer role** — `developer` messages treated as system (OpenAI compatibility)
-   **Message coalescing** — consecutive same-role messages automatically merged (Bedrock requirement)
-   **No-prefill handling** — models that reject assistant-ending conversations (e.g. claude-opus-4-6) get automatic user continuation
-   **temperature/topP conflict** — auto-stripped for models that reject both simultaneously (Claude 4.5, Haiku 4.5, Opus 4.5)
-   **Extra body passthrough** — unknown `extra_body` keys forwarded to Bedrock `additionalModelRequestFields`

### Embedding Models

[](https://github.com/inceptionstack/bedrockify#embedding-models)

-   **Amazon Titan Embed v2** — 1024 dimensions, English + multilingual
-   **Cohere Embed v3/v4** — English, multilingual, latest v4 (1536 dims)
-   **Amazon Nova Multimodal Embeddings v2** — configurable dimensions (256/384/1024/3072)
-   **base64 encoding** — `encoding_format: "base64"` for compact responses

### Infrastructure

[](https://github.com/inceptionstack/bedrockify#infrastructure)

-   **Auth** — IAM/SigV4 (default) or Bedrock API key (bearer token)
-   **Adaptive retries** — max 8 attempts with adaptive backoff
-   **Config** — TOML file, env vars, CLI flags (layered priority)
-   **Systemd daemon** — `install-daemon` subcommand
-   **Self-update** — `update` subcommand

---

## About the author

**Roy Osherove** - Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

-   [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
-   [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
-   [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
-   [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
-   [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
-   [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

-   X: [https://x.com/royosherove](https://x.com/royosherove)
-   LinkedIn: [https://www.linkedin.com/in/osherove/](https://www.linkedin.com/in/osherove/)

### Contact

-   Contact form: [https://forms.gle/jQSx5KoXvrVA1JCK7](https://forms.gle/jQSx5KoXvrVA1JCK7)

### License

Content on robotpaper.ai is licensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): reuse, quote and adapt with attribution (Roy Osherove, link to the original post).

More about Roy and his other sites and projects: [https://robotpaper.ai/about-roy.md](https://robotpaper.ai/about-roy.md)
