前言¶
在做 DeepSeek Harness(DSH)智能体时,如果接入 PollyReach 的电话能力,通常要处理凭据持久化、账户激活、外呼任务提交、结果轮询、余额查询和来电数据读取等步骤。dsh-pollyreach 把这部分流程封装为 DSH 插件:它向当前 Harness 注册 PollyReach 相关工具和一个 skill,也提供一组 shell 脚本用于人工调试。
下面介绍它的定位、能力、安装方式、配置和安全注意事项。
这是什么¶
dsh-pollyreach 是一个可分发的 DeepSeek Harness 插件包,包名为 dsh-pollyreach,版本为 1.0.3,许可证为 MIT。
它的主要作用是:
- 注册并安全持久化 PollyReach 凭据;
- 完成账户激活并获取分配的电话号码;
- 提交外呼任务并轮询完整结果;
- 查询信用余额,不把零余额当作无效令牌;
- 获取未读来电数据,不展平 API 响应;
- 更新来电应答提示词。
插件会注册七个原生模型可调用工具,并注册 PollyReach skill。仓库地址为 https://github.com/PollyReach/pollyreach-dsh-plugin;已核实资料未提供独立维护者字段。
核心工具¶
下面列出插件注册的工具及其用途:
| 工具 | 用途 |
|---|---|
pollyreach_register |
注册并原子保存新凭据 |
pollyreach_activation_status |
检查/轮询激活并保存分配的号码 |
pollyreach_send_call |
提交一个外呼任务 |
pollyreach_query_call |
轮询实际外呼结果 |
pollyreach_balance |
返回完整余额响应 |
pollyreach_inbound_calls |
返回未读来电数据 |
pollyreach_update_inbound_prompt |
修改来电应答行为 |
这些工具面向模型调用;脚本部分则适合在模型工具管线之外做诊断。
环境要求¶
使用 dsh-pollyreach 前,先确认运行环境满足以下条件:
1、Node.js 22.19 或更新版本。
2、DeepSeek Harness 版本为 @deepseek-ai/dsh 0.1.0-rc.7,并且与 @deepseek-ai/dsh-tools 0.0.1-rc.1 兼容。
3、如果需要使用可选 shell 脚本,还需要 curl 和 jq。
安装与启用¶
先说明一点:dsh-pollyreach 会贡献 cordis.patch.yml,使用方不需要手动编辑生成的 profile manifest。
安装本地 checkout 时,可以把仓库绝对路径加入一个已有 profile:
dsh plugin --profile demo add /absolute/path/to/pollyreach-dsh-plugin
dsh --profile demo --dump-config
dsh --profile demo
安装打包后的发布版本时,先打出 tarball,再安装到 profile:
npm pack
dsh plugin --profile demo add ./dsh-pollyreach-1.0.3.tgz
如果包已经发布到 npm,资料给出的用户安装示例是:
dsh plugin --profile demo add dsh-pollyreach@1.0.3
如需移除:
dsh plugin --profile demo remove dsh-pollyreach
配置覆盖¶
默认配置来自插件自带的 cordis.patch.yml。如果需要在 profile 中覆盖默认值,要编辑 profile 的 cordis.patch.yml。这里有一个细节:patch 行会替换整个 config 对象,所以如果只想改一项,也要把想保留的其他值一起写全。
例如,配置可写成:
- id: pollyreach-tools
name: dsh-pollyreach
config:
apiBaseUrl: https://api.pollyreach.ai
credentialsPath: ~/.config/PollyReach/key.json
source: openclaw
requestTimeoutMs: 30000
pollIntervalMs: 2000
activationMaxAttempts: 60
queryMaxAttempts: 300
inboundMaxAttempts: 10
其中 source 默认值为 openclaw,原因是当前 PollyReach 设备注册 API 的约定;客户端运行环境仍是 DeepSeek Harness。
凭据安全¶
注册工具会把凭据保存为如下结构:
{
"token": "redacted",
"agent_name": "my-agent",
"activation_url": "https://agent.pollyreach.ai/auth?code=example",
"ai_virtual_phone": null
}
保存路径为 ~/.config/PollyReach/key.json。目录会创建为受限权限,文件以 0600 原子写入。注册工具的结果中会故意省略 token,避免把令牌暴露到对话或日志里。
不要提交真实凭据文件。资料中的 examples/key.example.json 只包含占位符。
手动调试脚本¶
插件包含用于手动使用的 shell CLI。它们适合在模型工具管线之外做诊断,并会自动读取同一份凭据文件;token 不会作为命令行参数传入。
常用脚本如下:
scripts/register.sh "Agent Name" "AI agent powered by DeepSeek Harness"
scripts/activation.sh
scripts/send.sh 'Call +1... and ask ...'
scripts/query.sh
scripts/balance.sh
scripts/inbound.sh
scripts/prompt_update.sh 'Answer professionally and take a detailed message.'
测试时可以通过 POLLYREACH_API_BASE_URL 和 POLLYREACH_CREDENTIALS_FILE 覆盖端点与路径。
验证与打包¶
在提交或发布前,可以运行检查和打包校验:
npm install
npm run check
npm run pack:check
测试使用 mock,不需要真实 PollyReach 账号。发布前还可以用一个临时 dsh profile 验证打包产物:
npm pack
dsh plugin --profile pollyreach-smoke add ./dsh-pollyreach-1.0.3.tgz
dsh --profile pollyreach-smoke --dump-config
适用场景与注意¶
dsh-pollyreach 适合需要在 DeepSeek Harness 中调用 PollyReach 电话工具、同时保留人工脚本调试入口的场景。
使用前注意:
1、插件会在当前 dsh 进程权限下运行,安装前应检查源码、许可证和依赖版本。
2、本插件面向当前 DeepSeek Harness 开发者预览版本;预览 API 可能变化。发布新版前,应更新并重新测试固定的 peer 版本。
3、凭据文件属于敏感数据,不要写入仓库、日志或对话记录。
链接¶
GitHub:https://github.com/PollyReach/pollyreach-dsh-plugin
已核实资料未提供目录页 URL,因此这里不附目录链接。