前言¶
在 DeepSeek Harness(DSH)里做标书,常见做法是拆成多轮对话:人工粘贴招标文件、自己对照评分表列目录、再逐章让模型写正文,最后用外部工具排版或导出 Word。步骤之间缺少统一状态,中断后难以从磁盘恢复;企业资质与业绩若未锚定,正文里容易出现与事实不一致的表述。社区插件 dsh-plugin-bidkit(维护者 Jegozhou,MIT)把「读招标文件 → 生成高分目录 → 写超长正文 → 合规体检 → 导出排版级 Word」串成一条可在会话里恢复的流水线,并在 Harness 侧边栏提供标书工作台只读展示进度。
下面介绍它的定位、能力与安装用法;事实以 GitHub 仓库 README 为准。
这是什么¶
BidKit 是面向招投标全流程的原生 DSH 插件:结构化解析招标文件、按评分标准编排目录、基于企业知识库与全局事实锚定撰写章节、全量合规审查,以及纯 JavaScript 生成 .docx。分类上属于社区目录中的工作流类插件。
实现上采用 Clean-room 设计:不引入独立 Agent 运行时、外部数据库或任务队列,也不桥接外部进程;能力由 DSH 原生 Cordis 体系承载——ctx.tools 注册工具、ctx.effect 管理生命周期、ctx.inject(['webServer']) 为工作台提供接口、ctx.providers 暴露可组合服务。启用或关闭插件即挂载或卸载全部注册,无残留。
核心功能¶
招标文件解析与多标段¶
lib/parse.js 对招标文件做 18 项深度结构化解析:编号/标题分节、★实质性条款识别与分类、评分表抽取(技术/商务/价格;价格公式缺表时按正文补齐)、标段与阶段判定。解析结果保留 lots[] 与阶段信息,目录与评分可按标段复用;每项给出原文证据与覆盖率。
企业知识库与高分目录¶
lib/kb.js 对企业素材做目录索引、分块,并用中文 bigram + BM25 检索,返回文件、标题与原文块,写章节前先查资料,减少资质与业绩上的编造。
lib/outline.js 按评分标准生成目录:每个评分细则映射为一个二级章节,★条款挂到必须响应它的章节,字数按分值权重分配,并输出 rationale。
长正文、事实锁定与配图¶
- 无字数上限正文:
bid_section_write一节一文件,支持append续写;bid_handoff_plan可将未完成章节切成子智能体批次(PTC/subagent),每批携带全局事实与写作策略。 - 全局事实锁定:
bid_facts_lock锁定企业名称、资质编号、业绩金额、工期、质保等;每次写入回报 used/missing,体检规则检测与锁定值矛盾的表述。 - 配图:
lib/figure.js将 Mermaid 子集与 flow/architecture 规格转为图元模型,输出 SVG(工作台)与 Word 原生矢量形状(导出),中文标签为文字而非图片字。
合规审查与 Word 导出¶
lib/review.js 做全量合规审查:★条款未响应、必备项缺失、占位符、事实冲突、未写或过短章节、否定性承诺、错别字与标点、自重复、配图缺失、跨标书相似度(围标/串标风险)等。
lib/docx.js 用纯 JS OOXML 与自写 ZIP(node:zlib)生成排版级 .docx:封面、自动目录域、中文 eastAsia 字体、页码域、表格样式、矢量图。
标书工作台 UI¶
client.js 在 Harness 中提供 main 整页面板与侧边栏图标,四个视图:招标解析、目录编排、章节预览、风险审查。数据来自同源只读接口 /dsh-plugin-bidkit/api/*,主题 token 与宿主一致,卸载即移除。
本包零运行时依赖,不需要 npm install;package.json 要求 Node >=22.5,当前包版本为 0.1.0。
安装与启用¶
仓库地址:https://github.com/Jegozhou/dsh-plugin-bidkit(MIT)。
先在本地取得仓库目录(README 给出的方式为克隆到指定路径):
git clone https://github.com/Jegozhou/dsh-plugin-bidkit.git ~/dsh-plugin-bidkit
然后在 DSH 会话中,通过 Desktop 插件页或 plugin_manager 工具,把克隆下来的目录交给插件管理器:
plugin_manager install_bundle target: ~/dsh-plugin-bidkit
安装后侧边栏会出现「标书工作台」。用户若在补丁层覆盖配置,需在 cordis.patch.yml 中重述完整 config 块,例如:
- id: dsh-plugin-bidkit
name: 'dsh-plugin-bidkit'
config:
dataDir: '' # 默认 <DSH_HOME>/bidkit/projects
kbDir: '' # 可选:默认企业素材目录
allowWrite: true # false 时所有写工具只读报错
defaultTargetWords: 0 # 0 表示按评分权重推导全文目标
典型用法¶
一次典型闭环可按 README 中的工具链顺序调用(名称如下,参数见工具说明):
bid_project_create(name, tender_path)
→ bid_parse_tender / bid_commit_parse # 18 项 + ★ + 评分
→ bid_kb_index / bid_kb_search # 真实企业素材
→ bid_facts_lock # 全局事实锚定
→ bid_outline_plan # 评分对齐目录
→ bid_section_write × N(或 bid_handoff_plan + 子智能体)
→ bid_figure_add # 架构图/流程图
→ bid_review # 废标项/一致性/错别字/查重
→ bid_export_docx # 排版级 Word
状态与可恢复性¶
一个项目对应一个目录:project.json 索引解析、目录、事实、体检与导出;sections/<id>.md 存正文(一节一文件);另有 figures/*.svg、exports/*.docx、tender/source.md。写操作为「临时文件 + rename」原子写;中断后可通过 bid_project_status / bid_section_read 从磁盘继续。插件不持有跨会话内存状态。
测试¶
维护者在仓库内提供 Node 内置测试:
node --test test/runtime.test.js test/api.test.js test/docx.test.js
README 注明 16/16 覆盖宿主侧闭环、工作台 HTTP 契约、OOXML 结构与 CRC;更完整的实机验收说明见仓库 docs/VERIFICATION.md。
适用场景与注意¶
适合:已在 DSH 中开发或使用 Cordis 插件、需要把标书环节工具化(解析—目录—写作—审查—导出)并希望在 Harness 内可视化进度的团队或个人。
注意:
- 插件以当前 DSH 进程权限运行,安装前应阅读源码与 MIT 许可证,确认
allowWrite、数据目录与企业素材路径符合内控要求。 - DSH 生态理念是「一切皆插件」;SkillHub 目录页 为社区站点,与 DeepSeek / 幻方无官方从属关系,不要将其等同于官方应用商店。
结尾¶
dsh-plugin-bidkit 把招投标关键步骤收敛为 Cordis 原生工具链与可恢复的磁盘项目结构,并用标书工作台把解析、目录、章节与风险审查可视化。若要查看分类与简介,可打开社区目录 Jegozhou/dsh-plugin-bidkit;源码、配置与验收文档见 GitHub。