nyantused-cpun / folio

Listed

兰亭 (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.

masterOther View source

Installation

npx -y @deepseek-ai/dsh plugin --profile web add github:nyantused-cpun/folio

This installation command is an unverified starting point generated from the GitHub repository address.

README

Maintainer-authored documentation snapshot.

View on GitHub ↗
Commit 0e0daf6Synced Aug 18, 2026

兰亭(Folio)· 咨询/汇报材料生成引擎

🚧 社区共建(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 做判断的,云端模型做按需补位的。 凡是「错了要重来、客户可见、可复现」的环节全部由确定性代码执行,模型只在判断、理解、生成语言处出手。


环境要求(Requirements)

依赖要求说明
操作系统Windows 10/11首发仅 Windows;macOS/Linux 安装脚本在 v1.1 路线
PowerShell5.1+ 或 7安装脚本用 powershell / pwsh 均可
Python≥ 3.10安装脚本自动探测 py / python / python3;未找到会失败并提示官网
Git需要git clone 获取仓库
网络首次安装需访问 PyPIinstall.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 升级语义召回

快速开始(≤5 分钟)

# 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 keyreview 的独立 LLM 会话(DSH 下可用子代理替代,零 key)

PPT 转换(python-pptx 自研后端)

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·引用审计)

三大卖点

  1. 深度适配 DSH:skill 原生识别 + 守卫插件 + 15 个原生工具 + 会话协议事件插件 + agent preset,两条命令装齐;
  2. 方法论可换可组合:换领域不换引擎——咨询/市场营销/投资分析的方法论以 Folio Packs 形式即插即换(楷书=轻包 / 行书=标准包 / 草书=重包),欢迎社区发布;
  3. 极致特化的长程任务:20 页材料进,四格式带质量门自动出,会话结束自动存档审计。

目录结构

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 Packs)

想给 Folio 换一套方法论(市场营销/投资分析/战略咨询)?skills/packs-authoring 就是教你创作的 skill——问答式生成包骨架,不需要写代码。欢迎发布你的方法论包。

社区生态 / 友情链接(持续维护)

Folio 聚焦「长程材料生成」,不重复造社区已经做好的轮子。以下社区项目可作为互补、对照或迁移入口;具体兼容性请以各仓库 README 与 awesome-dsh-plugins 的 L0-L4 兼容报告为准。

  • Awesome 目录
  • 已在兰亭路线中
    • DSH-better-sidebar — 右侧预览 / 迷你 IDE 工作台
    • dsh-at-file — 输入框 @文件 快捷引用(见 awesome 目录)
    • dsh-vision-toolkit — 社区读图全家桶,可作 vision-bridge 对照
  • 互补增强(优先补全)
    • DSH-better-sidebar — 右侧预览区 / 迷你 IDE 工作台(P0)
      • dsh-github-connector — GitHub 集成(P0,见 awesome 目录)
      • context-vista — Token 可视化(P0,见 awesome 目录)
      • dsh-agent-teams — 团队可视化 / 多 Agent 面板(P0,见 awesome 目录)
      • dsh-undo / dsh-record-replay / dsh-obsidian-export / dsh-share(P1 按需)
  • 参考 / 对照
    • dsh-plugin-claude-bridge / dsh-claude-move(Claude 生态适配暂不考虑)
    • dsh-memory-evolve(长期记忆设计参考)
    • ModLens / dsh-qwen-mm(社区读图方案参考)

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 版本的绑定关系、社区插件为什么没直接引入、平台现状。

1. 版本对齐

  • 当前对齐 DSH 0.1.0-rc.6(本机 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
  • 所有接口按 rc.6 源码逐行核实;DSH 升级后请重跑插件验证(setup/install-folio-plugins.ps1 -Verify)。

2. 社区插件:看了什么、为什么没直接装

我们调研过 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-teamsP0 想用,但暂缓启用(装而未挂):peer 依赖双副本/Symbol 分裂,官方 plugin 通道稳定前不启用
方向排除dsh-plugin-claude-bridge / dsh-claude-moveClaude 生态适配暂不考虑
  • 我们借鉴了社区 defineTool 封装模式,但 15 个 folio_* 工具全部自研;
  • 分发基建(marisa / dsh-hub / dsh-plugin-radar)作为参考,官方无统一方案前不引入。

3. 极简模式与平台

  • 兰亭 preset 最初设计对齐 DSH 官方 minimal 蓝本(不挂 code 工具、无冗余,塑造专用平台体验);
  • 实际基线采用 standard 模板 + 精选工具(禁用 codex/claude 等),原因是官方 minimal 在 Windows 上存在 PTY 兼容问题(terminal inspection is unsupported on platform win32)——这是对 Windows 的兼容性修正,不是偏离方向;
  • 当前 首发 Windows;macOS/Linux 安装脚本(install.sh)在 v1.1 路线中。

4. Linux / macOS 适配

目前 Folio 面向 Windows 首发。欢迎其他开发者贡献 macOS/Linux 的安装脚本与环境适配;如果官方 DSH 工具链在跨平台上更成熟,我们也乐意等官方完善后跟进。

状态与路线

  • v1.0.2(当前,2026-08-16):CI 流水线 + 社区友好基建(Issue/PR 模板、dev 依赖、真实仓库地址)+ 运行时目录去宿主化(.trae.folio)+ 中英双语示例产出(HTML/PPTX)。变更见 CHANGELOG.md,示例见 GitHub Release v1.0.2
  • v1.0.1:guard 作用域隔离 + 插件包名 @nyantused/folio-dsh-* + preset 入仓。
  • v1.0.0:首个正式发布——五段价值链全链路 + DSH 深度适配 + LLM host 模式(0 key 起步)+ 安装脚本/自检。
  • v1.1 优先补全(开源后第一波)
    1. 右侧预览区:接入 DSH-better-sidebar(或自研 folio-preview 兜底)
    2. GitHub 集成:dsh-github-connector 或自研 folio_github 工具
    3. Token 可视化:context-vista 或自研会话 Token 面板
    4. 团队可视化:dsh-agent-teams 或基于 DSH subagent 事件的自研面板
  • v1.1 其余规划domain-pack.yml 方法论包契约(机械校验)+ 市场营销冒烟包 + PPT 截图目检的跨平台支持(当前 --shots 依赖本机 PowerPoint)
  • 下一步迭代(功能方向,欢迎共建)
    • 丰富 PPT 叙事的模板与图例
    • 丰富 UI 版式
    • Word 处理优化
    • 长文本优化
    • 接入社区插件:选中某一部分直接发给 AI 改
  • 平台:Windows 首发(macOS/Linux 安装脚本待补,欢迎社区贡献 install.sh / 环境适配;或等待官方工具链更成熟后跟进);PPT 转换的 PowerPoint 截图要求见安装脚本输出

许可证

MIT · 中文名「兰亭」取自《兰亭集序》——材料亦可成章。

Project files and signals

Shown items are public repository signals detected in the directory snapshot.

TestsDetected
Contributing guideDetected
DocumentationDetected

Repository information

Language
Python
License
MIT
Latest release
v1.0.2
Last updated
Aug 16, 2026, 3:22 AM

Install deliberately

Review source code, permissions, lifecycle hooks, dependencies and network access. Test untrusted plugins in an isolated environment.