Skip to content

feat(bash): add DeepSeek Responses provider - #78

Open
lloydzhou wants to merge 6 commits into
mainfrom
feature/deepseek-responses-bash
Open

feat(bash): add DeepSeek Responses provider#78
lloydzhou wants to merge 6 commits into
mainfrom
feature/deepseek-responses-bash

Conversation

@lloydzhou

Copy link
Copy Markdown
Owner

概要

  • 为 Bash 运行时新增显式 responses provider,通过 DeepSeek /responses 流式端点工作。
  • 转换 Claude 内部消息、函数工具调用及工具结果;解析文本、推理、函数参数增量、用量与失败终态。
  • 修复失败终态不再持久化空 assistant/tool 历史。

验证

  • bash -n src/agent.sh
  • Responses 两个 AWK 转换器空输入语法检查
  • git diff --check
  • bash tests/test.sh(219 通过,0 失败)

范围

仅 Bash 运行时支持此 provider。Go、Rust、C 尚未实现 responses provider;现有 DeepSeek Anthropic 兼容模式未变。

@lloydzhou

Copy link
Copy Markdown
Owner Author

自审结论

已逐项检查请求转换、SSE 转换、工具参数转义、失败终态与摘要路径。

  • 函数调用参数在 Responses 字符串层与合成 Claude SSE 层之间先解码再编码,避免二次转义导致工具输入截断。
  • response.failed / response.incomplete 会上报错误和 usage,且 agent 不会将该轮空 assistant/tool 结果写入会话历史。
  • 覆盖请求体、文本/推理、双工具调用、增量参数、function_call_output 回传、失败/重试、端到端工具调用及 Responses compact。
  • 全量 Bash 测试:219 通过,0 失败。

限制:本拉取请求仅实现 Bash;Go、Rust、C 尚未支持此 provider。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant