DSH Hub

Xuxchloris/deepseek-harness-sdr-plugin

deepseek-harness-sdr-plugin

ToolWorkflow24 GitHub stars· updated 2026-08-18

deepseek-harness-sdr-plugin is a community DeepSeek Harness plugin. Read the repository README before installing.

Install

npx @deepseek-ai/dsh plugin --profile web add @xuxchloris/dsh-sdr

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

deepseek-harness-sdr-plugin DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/deepseek-harness-sdr-plugin.svg)](https://dshhub.dev/plugins/deepseek-harness-sdr-plugin)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from Xuxchloris/deepseek-harness-sdr-plugin, cleaned of badges and images.

DeepSeek Harness SDR Plugin

DeepSeek Harness 的外贸获客 SDR 插件。安装后在 DSH Web 的模式菜单中选择「SDR 数字员工」,Agent 按九阶段销售流程工作:解析任务、开发客户、公司背调、评分、写开发信、人工审批、跟进计划、报价素材、结案。

阶段顺序由服务端状态机决定,模型不能跳阶段。开发信必须经人工批准才能进入后续流程。Email、WhatsApp、CRM 默认 dry-run,不会发出真实消息。

安装

要求 DeepSeek Harness 0.1.0-rc.6、Node.js 20+

dsh plugin --profile web add @xuxchloris/dsh-sdr
dsh web

重启 Web 后新建会话,在模式菜单选择「SDR 数字员工」。旧会话仍使用旧 preset,需要新建。

从源码安装:

git clone https://github.com/Xuxchloris/deepseek-harness-sdr-plugin.git
cd deepseek-harness-sdr-plugin
dsh plugin --profile web add ".\packages\dsh-sdr"
dsh web

preset 写入 $DSH_HOME/.agent-presets/sdr;Windows 未设置 DSH_HOME 时是 %USERPROFILE%\.dsh\.agent-presets\sdr。安装器不会覆盖没有 dsh-sdr 管理标记的同名 preset。

使用

在 SDR 模式中输入任务,例如:

开发 3 个美国户外用品客户

Agent 调用 sdr_create_task 创建任务,然后反复调用 sdr_next_step 推进,每次只完成一个阶段。

第 6 阶段时,sdr_review_drafts 列出开发信草稿,等人工选择。只要还有草稿没批,sdr_continue_after_approval 就拒绝放行。批准凭证绑定草稿内容哈希:草稿改过后,原来的批准自动失效,需要重新审批。

用离线演示跑一遍,实际顺序是这样的:

> 开发 3 个美国户外用品客户

sdr_create_task              创建任务,进入 task_parse
sdr_next_step × 4            客户发现 → 公司背调 → 评分 → 生成 3 封开发信草稿
sdr_next_step                进入 human_approval,流程停在这里
sdr_continue_after_approval  拒绝:仍有 3 封草稿未获批准
sdr_review_drafts            列出 3 封草稿,等人工逐封选择
(人工批准全部草稿)
sdr_continue_after_approval  校验草稿哈希,放行
sdr_next_step × 3            跟进计划 → 报价素材 → 结案报告,附 11 条审计事件

没有 DSH Web 时可以跑离线演示,合成数据,不需要凭证:

npm.cmd test --prefix ".\packages\dsh-sdr"
node ".\scripts\demo_dsh_sdr.mjs"

架构

flowchart LR
    U[DSH Web / SDR 模式] --> T[Cordis 原生工具]
    T --> S[dsh-sdr Node runtime]
    S --> SOP[九阶段 SOP 状态机]
    S --> G[审批哈希门控]
    S --> L[Lead Registry 去重]
    S --> K[Hybrid RAG 知识库]
    S --> A[审计事件与结案报告]
    S --> C[Connector Registry]
    C --> E[Email dry-run]
    C --> W[WhatsApp 预留]
    C --> R[CRM 预留]
    K --> J[本地 JSON]
    K --> P[PostgreSQL / pgvector]

DSH 负责 Agent loop、工具调用和人机交互;插件负责任务状态、审批、去重、知识库和发送边界。模型没有 send_email 之类的通用发送工具可用。

工具

工具作用
sdr_create_task创建任务;相同请求幂等返回原任务
sdr_next_step执行服务端决定的下一阶段
sdr_review_drafts列出草稿,发起人工审批
sdr_continue_after_approval校验批准后放行后续阶段
sdr_get_task / sdr_get_report读取任务状态、结案报告
sdr_audit_log回放工具调用、阶段和审批事件
sdr_knowledge_search检索企业知识
sdr_knowledge_upsert写入知识(需显式开启)
sdr_knowledge_list列出知识条目摘要
sdr_knowledge_evaluate评测召回质量(Recall@K、MRR)
sdr_connector_status查看 connector 状态
sdr_configure_connector写入非敏感 connector 配置(需显式开启)

知识库

知识库存放产品、品牌、认证、报价政策、市场规则等资料,供开发信草稿和结案报告引用,引用记录来源和版本。默认实现是本地原子 JSON 文件,支持全文检索,可注入 embedding 和 reranker;生产环境可换成 PostgreSQL + pgvector,见 lib/postgres-rag.js

默认只读。允许 Agent 写入用户确认过的知识时开启:

$env:DSH_SDR_AGENT_KNOWLEDGE = '1'

密码、API key、token 不会进入知识库、工具参数或审计日志。

外部连接

Email、WhatsApp、CRM 都走 connector 接口,默认实现是 dry-run,send() 返回 blocked-dry-run。接真实渠道需要部署方注册自己的 connector 实现,审批流程不变。

允许 Agent 补充部署配置时开启 DSH_SDR_AGENT_CONFIG=1。Agent 只能写 host、port、provider、发件人和凭证引用名,写不了密码和 token 的值。DSH_SDR_AGENT_LIVE_CONFIG=1 只保存 live 配置,不会自动启用真实发送。

任务状态默认保存在 %USERPROFILE%\.dsh\.dsh-sdr\state.json,可用 DSH_SDR_DATA_FILE 改路径。JSON 写入先落临时文件再 rename,进程中断不会写坏状态。

项目结构

Related plugins