给运行中的 Harness 开一扇门
dsh-api-gateway 把运行中的 DeepSeek Harness 变成 HTTP API——REST + SSE、密钥认证、会话接管。任何客户端、任何语言。
dsh plugin --profile web add github:litestartup-com/dsh-api-gateway
Harness 的 UI 很好,但它缺一扇门
DeepSeek Harness 自带 Web 界面,但第三方系统——IM 桥接、脚本、别的服务——没法「点按钮」。官方 Python SDK 是嵌入式运行时,跑隔离任务用的,不是通往你正在运行的那套部署的门。我们要的是一层薄薄的 HTTP 面:一把钥匙,同一批 GUI 在驱动的会话,任何东西都能和我们的 agent 对话。
九个端点,一把钥匙
REST + SSE
建会话、发消息、逐 token 流式回复、取消回合——服务器在每个回合结束时关闭流。
会话接管
发现任意会话并接管:实时「共驾」一个 GUI 会话,或带全量历史冷恢复一个离线会话。
推理分离
回复把可见答案和思考过程分开——绝不混成一个 blob。
可扩展
在 Cordis 事件总线上发布会话/消息/回合事件,其他插件可以审计、告警或转发。
工作区原生
API 会话落入真实工作区,在侧栏里和 GUI 会话一样分组展示。
任意语言
curl、Python、PowerShell、浏览器——只要会说 HTTP 都行。仓库自带参考客户端。
五分钟发出第一个 API 调用
dsh plugin --profile web add github:litestartup-com/dsh-api-gateway # 安装
BASE=http://127.0.0.1:3080/api-gw/v1
KEY=$(curl -s -X POST $BASE/key | jq -r .apiKey) # 一次性领取密钥
SID=$(curl -s -X POST $BASE/sessions -H "Authorization: Bearer $KEY" | jq -r .sessionId)
curl -s -X POST $BASE/sessions/$SID/messages -H "Authorization: Bearer $KEY" \
-H 'Content-Type: application/json' -d '{"content":"你好"}' # 202 accepted
它也是 Oh! dsh 的地基
这扇门正是 Oh! dsh——我们的 agent 管理器——用来中继聊天、派发工作、计量用量的底座。如果你要在 DSH 上搭自己的控制面,从这里开始。
路线图
多租户安全:多密钥管理、按密钥限流、按密钥隔离工作区。
管理后台:密钥、限流、会话监控、用量审计。
双工流式:WebSocket 全双工,SSE 保留为轻量选项。
生态与运维:生成式瘦客户端、部署指南、指标导出。