deepseek-harness-sdk-rs

by loner1024

2 工具与能力github收录于 08-23

驱动 DeepSeek Harness 的 Rust SDK:把 harness 运行时作为子进程启动,经 stdio 讲行分隔 JSON-RPC 2.0

Rust SDK for driving DeepSeek Harness. The SDK spawns the harness runtime as a subprocess and speaks the line-delimited JSON-RPC 2.0 protocol over its stdio. The runtime is the…

安装

dsh plugin --profile web add github:loner1024/deepseek-harness-sdk-rs

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

README

目录

English | 中文

驱动 DeepSeek Harness 的 Rust SDK。SDK 把 harness 运行时作为子进程启动,通过其 stdio 上的按行分帧 JSON-RPC 2.0 协议通信。运行时是随 Python SDK 分发的单文件可执行程序;Rust 客户端是协议的 clean-room 重实现,镜像 Python SDK 的分层。

包

目录 Crate 职责
sdk deepseek-harness-sdk-rs 高层轮次 API、低层 JSON-RPC 客户端与运行时下载器

行为

SDK 惰性启动运行时,并在多次 run() 调用间持有它。未给任何显式启动通道时,默认开启的 runtime-download feature 从 PyPI 风格的索引拉取平台运行时 wheel、校验摘要并缓存可执行程序;显式指定 runtime_bin 或 command/args 的调用方可以关闭该 feature。与 Python SDK 的低层对齐包括:逐次请求超时覆盖(request_with_timeout)、超时错误携带运行时 stderr 尾部诊断、cwd/runtime_cwd 符号链接消解处理,以及通知过滤器失败的隔离。SDK 参考覆盖生命周期、结果、通知、运行时选择、配置与错误。

示例

示例 展示内容
simple 零配置单任务运行。
resolve 通过下载器解析平台运行时并打印路径。
deep_research 深度研究:web_search/web_fetch 加子代理工具,从通知流渲染子代理报告。
export DEEPSEEK_API_KEY=sk-your-key-here
cargo run --example deep_research -- "self-hosted vector databases"

与 DeepSeek Harness 的关系

本仓库是 Rust SDK 的独立主仓库。SDK 驱动的运行时是 DeepSeek Harness 项目以 deepseek-harness-runtime-bin 发布的单文件可执行程序;SDK 遵循该运行时文档化的 stdio JSON-RPC 协议,并为测试固定自己的运行时 wheel 版本。贡献以本仓库的 PR 形式进行;deepseek-harness-sdk-rs 的 crates.io 发布也由本仓库通过 Trusted Publishing 负责。

贡献者工作流

用 cargo fmt --all、cargo clippy --all-targets --features test-support -- -D warnings 与 cargo test --features test-support 构建和测试;test-support feature 构建机制层测试所驱动的 dsh-fake-runtime 二进制。CI 会对从 PyPI 下载的真实运行时可执行程序跑无密钥 smoke 层;本地缺少运行时环境变量时该测试自行跳过。

原始 README: https://github.com/Loner1024/deepseek-harness-sdk-rs/blob/main/README.zh.md ↗