dsh-plugin-verified-search
f0909172434
Verified current-source search workflow for DeepSeek Harness
nyantused-cpun/folio
兰亭 (Folio) · 咨询材料生成引擎:15 个 DSH 原生工具 + 会话协议自动执行 + L0 守卫 + 可换方法论包,零 key 起步。Consulting material engine for DeepSeek Harness: HTML/PPT/DOCX/quote with mechanical quality gates, bilingual demo outputs in the v1.0.2 release. Help wanted: Word layout, Excel formatting/formulas, Linux/mac ports.
PROJECT TOPICS
PROJECT README
🚧 社区共建(Community help wanted)
当前欠缺(欢迎提供相关链接 / PR / 经验分享):
- Word 处理排版
- Excel 带格式表格处理与公式处理
- Linux / macOS 适配
下一步迭代计划:
- 丰富 PPT 叙事模板与图例
- 丰富 UI 版式
- Word 处理优化
- 长文本优化
- 接入社区插件:选中某一部分直接发给 AI 改
有相关链接或想贡献,欢迎提 Issue / PR / Discussion。
English TL;DR — Folio is a DSH-native material-generation engine for consultants: 15 schema-validated
folio_*tools, session-protocol auto-save, an L0 guard, and a swappable methodology-pack system. Zero API keys to start (L0); one embedding key unlocks semantic recall (L1). Requirements: Windows 10/11, PowerShell, Python ≥ 3.10 — Node.js not required. See the English product brief, or open the bilingual demo outputs in the v1.0.2 release. Help wanted: Word layout, Excel formatting/formulas, Linux/mac ports.
材料生成引擎 + 可组合方法论包,首发深度适配 DSH。 Folio = 对开本/作品集:把客户扔进来的材料,装订成能送达的汇报材料。
Folio 是给 AI 宿主(DeepSeek Harness / Trae / Kimi 等)外挂的长程任务执行引擎,特化于一件事:从客户材料到咨询/汇报交付物的全链路——接入材料 → 建立记忆 → 应用方法论 → 生成产出 → 守住质量。
引擎做机械的,AI 做判断的,云端模型做按需补位的。 凡是「错了要重来、客户可见、可复现」的环节全部由确定性代码执行,模型只在判断、理解、生成语言处出手。
| 依赖 | 要求 | 说明 |
|---|---|---|
| 操作系统 | Windows 10/11 | 首发仅 Windows;macOS/Linux 安装脚本在 v1.1 路线 |
| PowerShell | 5.1+ 或 7 | 安装脚本用 powershell / pwsh 均可 |
| Python | ≥ 3.10 | 安装脚本自动探测 py / python / python3;未找到会失败并提示官网 |
| Git | 需要 | git clone 获取仓库 |
| 网络 | 首次安装需访问 PyPI | install.ps1 用 pip 安装 requirements.txt |
| DSH | 仅插件层需要:已安装且 dsh 在 PATH,版本对齐 0.1.0-rc.6 |
不装 DSH 也能用 CLI 内核(L0);装了才有 15 工具 / 守卫 / 会话协议 |
| Node.js | 不需要 | PPT 转换用 python-pptx;JS 插件由 DSH 宿主加载 |
| PowerPoint | 可选 | 仅 pptd-build --shots 截图目检需要(COM);不装则跳过截图,PPTX 生成正常 |
| API key | 零 key 可跑(L0) | 建议按 docs/能力配置引导 配 1 个 embedding key 升级语义召回 |
# 1. 获取
git clone https://github.com/nyantused-cpun/folio.git folio
cd folio
# 2. 一条命令安装内核(建 venv + 装依赖 + 生成配置 + 自检)
.\setup\install.ps1
# 3. DSH 插件层(可选但推荐)——两种方式任选:
# 方式 A:npm 一键安装(插件已发布 npm;安装 folio-dsh-tools 即含 15 工具 + L0 守卫)
dsh plugin --profile web add @nyantused/folio-dsh-tools
dsh plugin --profile web add @nyantused/folio-dsh-events
# 方式 B:仓库脚本安装(额外做 pre-sales preset 作用域隔离,推荐完整使用)
.\setup\install-folio-plugins.ps1 -Install
# 4. 看自检结果
# 输出示例:✅ Python 3.12 ✅ 依赖齐全 ✅ python-pptx(PPT 转换后端可用)
# 当前能力等级 L0:零 key 可跑(DSH 下读图/搜索/审查走宿主原生)
装完后:重启 DSH → 开新会话 → 直接说「帮我做一份 XX 方案」。引擎的 skills 已由插件安装脚本自动同步到 .agents/skills/,DSH 会直接识别;若未走脚本安装,可手动补跑 python _cli.py skills-sync。
零配置起步:不配任何 key 也能跑(L0);配 1 个 embedding key 解锁语义召回(L1);配读图/搜索 key 解锁独立 CLI 场景(L2)。每个能力槽位的取舍见 docs/能力配置引导。
| 等级 | 配置 | 得到什么 |
|---|---|---|
| L0 | 无 | 切片 + BM25 + 生成渲染 + 质量门禁;DSH 下读图/搜索/独立审查走宿主原生 |
| L1 | +1 个 embedding key | 语义召回("那个做化工的客户"→ 找到对应档案);不配自动降级纯 BM25 |
| L2 | +读图/搜索 key | 独立 CLI 场景全量(非 DSH 宿主) |
| L3 | +独立审查 chat key | review 的独立 LLM 会话(DSH 下可用子代理替代,零 key) |
HTML / DOCX / 报价三种格式零外部依赖,装完即用。PPT 转换由自研 python-pptx 后端完成(PPTD_BACKEND=python_pptx,随 requirements 安装),不依赖 node 工具链;pptd-build --shots 逐页截图目检需要本机 PowerPoint(COM),没有则跳过截图。PPT 工程由 html-build 同源生成 .pptd,再 pptd-build 转 PPTX。
| # | 模块 | 做什么 |
|---|---|---|
| 1 | 接入材料(Intake) | 把客户扔进来的材料变成可检索的资产(建档·解析·切片·索引) |
| 2 | 建立记忆(Chronicle) | 跨会话记住项目事实与决策(决策记录·世界书·语义召回) |
| 3 | 应用方法论(Craft) | 按可替换的方法论框架把材料拆成事实(skill 路由·大纲·主题守卫) |
| 4 | 生成产出(Press) | 从事实渲染成四格式交付物(HTML/PPTX/DOCX/报价,同源) |
| 5 | 守住质量(Proof) | 机械检查 + 独立审查双层防幻觉(门禁·verify·review·引用审计) |
folio/
├── _cli.py # 根级 CLI 转发入口(`python _cli.py <命令>`,实现见 src/)
├── .env.example # 环境配置模板(install.ps1 会自动复制为根 .env;留空即 L0)
├── src/ # 内核(63 个 CLI 子命令,含 3 个已废弃兼容入口 + 渲染器 + 检索/记忆/质量链)
├── skills/ # 11 个方法论 skill(含 packs-authoring 创作指南)
├── plugins/ # DSH 插件层:folio-tools(15 个原生工具 + L0 守卫子入口)+ folio-events(会话协议,preset 挂载)
├── preset/ # 兰亭 agent preset 模板(install-folio-plugins.ps1 安装时落盘/替换占位符)
├── setup/ # 一键安装脚本(install.ps1 内核 + install-folio-plugins.ps1 插件层)
├── docs/ # 定位 / 能力引导 / usage 快速上手教程
└── tests/ # 测试套件(61 个文件;基线含客户材料已裁,见下)
.venv\Scripts\python.exe -m pytest tests
说明:原始测试基线(golden specs)含真实客户材料,发布版已裁剪;渲染回归测试可自行用虚构材料重建基线(
tests/baseline_kit.py的思路,见仓库历史)。
30 分钟跑通第一份方案:见 docs/usage.md(虚构客户全流程教程,零 key)。
想给 Folio 换一套方法论(市场营销/投资分析/战略咨询)?skills/packs-authoring 就是教你创作的 skill——问答式生成包骨架,不需要写代码。欢迎发布你的方法论包。
Folio 聚焦「长程材料生成」,不重复造社区已经做好的轮子。以下社区项目可作为互补、对照或迁移入口;具体兼容性请以各仓库 README 与 awesome-dsh-plugins 的 L0-L4 兼容报告为准。
@文件 快捷引用(见 awesome 目录)P0 社区插件(右侧预览 / GitHub / Token / 团队)脚本已提供,但 2026-08-15 起暂缓启用(装而未挂):peer 依赖在 profile node_modules 缺失或双副本会引发 dsh-scope Symbol 分裂,官方 plugin 通道稳定后再开启。当前不要直接跑 -Install,可先 -DryRun / -Verify 看计划:
pwsh .\setup\install-community-plugins.ps1 -DryRun
pwsh .\setup\install-community-plugins.ps1 -Verify
脚本会从 awesome-dsh-plugins 自动解析仓库、clone 到 ~/.dsh/community-plugins/、建 Junction 并写 patch,最后重启 dsh web 生效。
2026-08-15 对外口径:让使用者一眼知道 Folio 与 DSH 版本的绑定关系、社区插件为什么没直接引入、平台现状。
dsh -V 实测);插件 peer 依赖为 @deepseek-ai/dsh-agent ^0.1.0-rc.6、@deepseek-ai/dsh-tools ^0.1.0-rc.6、@deepseek-ai/cordis ^4.0.1。setup/install-folio-plugins.ps1 -Verify)。我们调研过 DSH 社区约 200+ 插件,最终没有直接引入,原因分三类:
| 类别 | 代表插件 | 结论 |
|---|---|---|
| 能力重叠 | dsh-memory-evolve、ModLens / dsh-vision-toolkit / dsh-qwen-mm、dsh-my-rsi | 兰亭已有自研实现(记忆/召回、vision-bridge、guard),只作参考,不替换 |
| 兼容风险 | DSH-better-sidebar、dsh-github-connector、context-vista、dsh-agent-teams | P0 想用,但暂缓启用(装而未挂):peer 依赖双副本/Symbol 分裂,官方 plugin 通道稳定前不启用 |
| 方向排除 | dsh-plugin-claude-bridge / dsh-claude-move | Claude 生态适配暂不考虑 |
defineTool 封装模式,但 15 个 folio_* 工具全部自研;terminal inspection is unsupported on platform win32)——这是对 Windows 的兼容性修正,不是偏离方向;目前 Folio 面向 Windows 首发。欢迎其他开发者贡献 macOS/Linux 的安装脚本与环境适配;如果官方 DSH 工具链在跨平台上更成熟,我们也乐意等官方完善后跟进。
.trae → .folio)+ 中英双语示例产出(HTML/PPTX)。变更见 CHANGELOG.md,示例见 GitHub Release v1.0.2。dsh-github-connector 或自研 folio_github 工具context-vista 或自研会话 Token 面板dsh-agent-teams 或基于 DSH subagent 事件的自研面板domain-pack.yml 方法论包契约(机械校验)+ 市场营销冒烟包 + PPT 截图目检的跨平台支持(当前 --shots 依赖本机 PowerPoint)MIT · 中文名「兰亭」取自《兰亭集序》——材料亦可成章。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。