xxiaoxiong/dsh-ci
面向 DeepSeek Harness 的通用 CI/CD 能力,支持 GitHub Actions、有限失败证据提取、源码定位诊断,以及带审批控制的重跑与取消操作。
这是一个 DeepSeek Harness(DSH)插件。本站汇总其 GitHub README、安装信息、维护状态与公开安全信号。
dsh-ci - DeepSeek Harness 通用 CI/CD 插件
dsh-ci 是为 DeepSeek Harness (DSH) 设计的跨平台、Provider 无关的 CI/CD 辅助插件。它能让智能代理(Agent)高效查看 CI 状态、快速定位失败源头、提取限制大小的日志,并在用户授权后安全地重跑或取消 CI 流程。
当前版本已实现 GitHub Actions Provider。在设计上,它的架构完全中立,便于后续无缝扩展接入 GitLab CI、Jenkins、CircleCI 等其他平台。
目标架构
DSH Agent
↓
Generic CI Tools (ci_status, ci_failure 等通用工具)
↓
ctx.ci (CIService 服务接口)
↓
GitHubActionsProvider (实现类)
↓
GitHub Actions REST API
核心特性
- 跨平台中立工具:内置 9 个通用的 Agent 工具。
- 自动工作区识别:解析本地 Git 信息(origin 远端、分支、HEAD 提交),无需用户手动输入 owner/repo 即可自动匹配对应的存储库。
- 失败证据提取:提取故障日志片段(默认上限 8KB),仅包含错误行周边的少量上下文,防范上下文空间爆满。
- 内置错误解析器注册表 (FailureParser Registry):支持通过匹配日志错误行定位源文件、代码行及对应函数。第一版已适配:
- TypeScript 编译错误 (
tsc) - Jest / Vitest 测试框架失败
- pytest 测试报错
- Maven / Gradle 构建故障
- Go 测试异常
- Cargo (Rust) 编译错误
- ESLint 检查错误
- Docker 构建异常
- npm 依赖安装失败
- 通用进程 Exit Code 异常
- TypeScript 编译错误 (
- 敏感数据脱敏:智能脱敏日志中可能泄漏的各类 Token、私钥、密码和 AWS Access Key 等。
- 写操作安全防护:写操作(
ci_rerun、ci_cancel)默认处于关闭状态(writeEnabled: false),触发需经过 DSH Approval 审批流显式授权。
安装
您可以使用 DeepSeek Harness CLI 直接加载本插件:
dsh plugin add dsh-ci
插件配置
在 DSH 配置文件 settings.json 或 settings.local.json 中配置如下参数:
{
"plugins": {
"dsh-ci": {
"writeEnabled": false,
"maxLogSize": 8192,
"maxEvidenceItems": 50,
"apiBase": "https://api.github.com"
}
}
}
身份凭证配置
本插件自动接入 DSH 凭证通道,寻找 Token 优先级为:
GH_TOKEN环境变量GITHUB_TOKEN环境变量- GitHub CLI 工具 (
gh命令行工具) 的本地登录授权凭证
工具接口参考
本插件提供 9 个标准 Agent 工具:
ci_status:查询当前分支/提交的整体 CI 状态。ci_runs:列表展示历史工作流运行记录。ci_run:查询单次工作流运行的详情信息。ci_jobs:展示工作流内的 Job 以及 Step 运行情况。ci_failure:分析错误运行(Failed Run),精准匹配错误段落,提取代码错误位置(文件路径、行号、测试用例名称)及日志片段。ci_log:提取并脱敏指定 Job/Step 的部分日志。ci_artifacts:查看构建产物元数据。ci_rerun:重跑失败的 CI 流程。需具备写入授权。ci_cancel:终止正在运行的工作流。始终需要用户审批。
安全机制
- 不可信数据过滤:日志视为不可信输入,通过内置正则表达式,避免潜在的 Prompt 注入。
- 凭证隔离:绝不会在 Tool Result 或日志输出中包含任何明文 token。
- 确认防重防错:支持
dryRun参数,写操作强依赖 Harness 交互确认,严控未经授权的写入请求。
开源协议
MIT 协议。
安全与安装证据
该分数只基于公开仓库元数据与本站登记的安装证据,不等同于代码安全审计。
来源可追溯
来自公开插件目录,并链接到公开 GitHub 仓库。
许可证
仓库声明 MIT 许可证。
维护活跃度
最近 180 天内有代码更新。
安装证据
尚未登记可复验的精确安装元数据,请按仓库说明手动检查。
安装生命周期脚本
已检查的包元数据未声明安装生命周期脚本。