jiezeng2004-design/dsh-chatgpt-bridge ↗★ 0
dsh-chatgpt-bridge
MCP bridge: lets ChatGPT Web create, view, continue and control DeepSeek Harness (DSH) agent sessions through the official MCP protocol. The bridge only connects; DSH keeps its session, agent, tool, approval and workspace security model.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:jiezeng2004-design/dsh-chatgpt-bridge说明文档
阅读完整 README ↗dsh-chatgpt-bridge
An MCP bridge that lets ChatGPT Web create, view, continue and supervise DeepSeek Harness (DSH) agent sessions through the official Model Context Protocol. v0.2.0 — Visible Sessions & Goal Supervision. The bridge only connects — DSH keeps its own session log, agent loop, tools, skills, subagents, workflows, approvals, sandbox and workspace security model. It is a standalone DSH plugin: zero DSH core modifications.
Self-hosted / dogfooding development: implemented against the installed DeepSeek Harness source (
0.1.0-rc.6) and verified end-to-end against a live local DSH runtime with the official MCP SDK client.
Architecture
ChatGPT Web
|
| MCP (Streamable HTTP / stdio)
v
dsh-chatgpt-bridge ask user --> dsh_approve --> wait again
+-- waiting_for_user --> ask user --> dsh_answer_question --> wait again
+-- completed / failed / cancelled --> done (result is in the wait payload)
continuation_requiredis an MCP client contract: ChatGPT should calldsh_wait_goalagain in the same assistant turn until the loop stops. Do not reply “the task is running in the background” and end the turn.- One MCP call waits internally (≈500ms polls, up to 25s). Do not spam
dsh_get_task_statusevery few hundred milliseconds. waiting_for_approval/waiting_for_usersetneeds_user_actionand do not continue. Never auto-approve; never guess the answer.dsh_stop_goalis the user-facing “stop DSH” tool. It is idempotent (already_stopped=trueif the session is already terminal).- Optional
request_idondsh_start_goalmakes connector retries in the same process idempotent. It is an in-memory map (cap 256), not a Goal DB. After a process restart, continue withsession_id. dsh_health.capabilities.goalSupervisionis always true in v0.2.
Low-level tools remain for inspection and one-shot messages.