Skip to main content

Convert DeepSeek API to OpenAI Responses API

Project description

deepseek2responses

Convert DeepSeek API to OpenAI Responses API. Run locally, plug into any tool that speaks Responses API (Codex, etc.).

Quick start

uv tool install deepseek2responses
deepseek2responses

Or from source:

git clone https://github.com/Lhy723/deepseek2responses && cd deepseek2responses
uv tool install .
deepseek2responses

First run prompts for your DeepSeek API key and saves to ~/.deepseek2responses/config.yaml. Subsequent runs just deepseek2responses.

Or run directly without installing:

export DEEPSEEK_API_KEY=sk-your-deepseek-key
uv run deepseek2responses

Output:

Proxy API key: dH7kXp2m...
Bind:     http://0.0.0.0:19199
Endpoint: http://127.0.0.1:19199/v1/responses

Configure Codex

Manually edit the two files below, or use cc-switch to manage providers via GUI.

~/.codex/auth.json:

{"OPENAI_API_KEY": "deepseek"}

~/.codex/config.toml:

model = "deepseek-v4-pro"
model_provider = "deepseek"
model_context_window = 1000000
model_max_output_tokens = 393216
model_reasoning_effort = "high"
disable_response_storage = true

[model_providers.deepseek]
name = "DeepSeek"
base_url = "http://127.0.0.1:19199/v1"
wire_api = "responses"
requires_openai_auth = true
request_max_retries = 1

Start proxy:

uv run deepseek2responses --no-auth

Then completely quit Codex (menu bar → Quit) and reopen.

FAQ

Codex 桌面端连不上代理(502 Bad Gateway)

macOS 上 Codex 桌面端存在本地网络权限问题。解决步骤:

  1. 开启 VPN
  2. 启动 Codex 桌面端
  3. 关闭 VPN
  4. 正常使用 Codex

每次重启 Codex 前都需要重复此流程。

Config file

Config stored at ~/.deepseek2responses/config.yaml. First run creates it automatically. Edit manually for advanced settings:

deepseek_api_key: "sk-your-key"
host: "127.0.0.1"
# port: 19199
# api_key: "fixed-proxy-key"
# model_mapping:
#   "gpt-4.1": "deepseek-v4-pro"

Use --config for a custom path.

CLI options

--config, -c    Path to config file
--port, -p      Override server port
--no-auth       Disable proxy API key auth
--version, -v   Show version

How it works

Receives OpenAI Responses API requests, converts to DeepSeek Chat Completions API (/v1/chat/completions), and converts responses back. Supports multi-turn conversation, tool calling, and thinking/reasoning mode.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deepseek2responses-0.1.0.tar.gz (33.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

deepseek2responses-0.1.0-py3-none-any.whl (15.2 kB view details)

Uploaded Python 3

File details

Details for the file deepseek2responses-0.1.0.tar.gz.

File metadata

  • Download URL: deepseek2responses-0.1.0.tar.gz
  • Upload date:
  • Size: 33.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for deepseek2responses-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ad5799bb41d1df8058a545615f8e99982e3f33078eeb66279e89a798b90ce004
MD5 c00e920dc5d0565445aa1e500df6f643
BLAKE2b-256 95918b7c26ac402bf69863eb33ab4bdfd494e5d14e4a5b991d3df661f2330c91

See more details on using hashes here.

File details

Details for the file deepseek2responses-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: deepseek2responses-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 15.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for deepseek2responses-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8e319289d2ba5778ed0a93f658444869cc534f19444a22cf25bc861c1f326eb6
MD5 ceab12d5dbc8468f1cc510c69e4696c8
BLAKE2b-256 a6a69f1c485f1b885ac4387840046fc9208093c60b46a73d86c0d0a3b7e832ac

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page