☰
VCPChat 共笔文坊 Scriptorium V3:三态解耦与渲染态直接编辑的人机共笔完全指南
2026/10/27 1:49:07 网站建设 项目流程
  • AI 应用
  • 大模型
  • RAG
  • 语音
  • 音频
  • 即时通讯
  • 桌面应用
  • 后端

【免费下载链接】VCPChat

VCPChat,VCP原生分布式引擎终端项目,地球上第一个AGI-OS桌面级交互系统,语义级垂直打穿AI-UI/UX-APP以及人类想象力的一切。

项目地址:https://gitcode.com/gh_mirrors/vc/VCPChat
点击查看免费下载

VCPChat 的内置模块 Scriptorium(共笔文坊)是一套 AI-native 可编程文档与演示创作系统。它最大的突破在于"三态解耦"架构:连续编辑态、阅读预览态与混合源码态互不干扰,且人类可以直接在渲染后的文档上点击修改文字,每一次修改都会被无损映射回唯一源码——AI Agent 则在同一份真源上以 PR(提案)方式协作,不再抢你的鼠标。

A document is a place, not a file.文档不应是一棵等待序列化的 DOM,也不该是某个应用独占的二进制黑箱。

为什么传统编辑器总在"割裂"你的写作?

写 Markdown 的读者都熟悉两种痛苦:

  1. 左边写源码,右边看预览——写作与成品被割裂,光标永远不在"最终效果"上;
  2. 在富文本 DOM 上编辑——一旦把渲染结果反序列化回源码,分隔符风格被改写、缩进漂移、LaTeX 被写回派生 DOM,原作者的表达方式全丢了。

Scriptorium V3 拒绝二选一。它的答案是一条源码保持型渲染编辑管线:你看到的成品文档就是编辑对象,但编辑器操作的始终是原始源码字符。

三态解耦:一份文档,三种视角

Scriptorium 把"创作"这个动作拆成三个互不污染的状态,对应界面上方的工作面切换按钮(源码见 scriptorium.html):

状态面向谁做什么对应实现
🔧连续编辑态人类作者直接点击渲染后的文档修改文字与对象scriptorium-flow-editor.js
📖阅读预览态读者与排版纸张分页阅读、放映、导出 PDFscriptorium-pagination.js
📝混合源码态你与 Agent用 CodeMirror 直接编辑唯一真源scriptorium-source-editor.js

三态背后是同一份唯一真源。编辑态的任何输入都转换成源码区间事务;阅读态的分页、放映只是派生视图,绝不反向污染源码。这就是"解耦"的含义:编辑态的复杂性不会转嫁给读者,阅读态的渲染产物也不会变成文档的真相。

渲染态直接编辑:V3 的核心机制

当你第一次点击渲染后的文字时,发生了什么?这是整个系统最精妙的部分:

  1. 平时是静态渲染树——浏览器原生拖选、跨块选择、右键菜单全部保留,不会被自定义编辑器抢走;
  2. 确认是"编辑意图"的点击后,该局部区域才被替换成一棵临时"视觉编辑树",且系统先验证不变量editableSourceText(visualEditor) === 原始源码片段,不满足就拒绝进入编辑,而不是冒险写回;
  3. Markdown 语法不是被删除,而是按上下文显隐——标题井号、列表前缀平时隐藏,光标进入对应行才显现,你看到的始终是接近成品的排版;
  4. 光标是源码偏移,不是 DOM 偏移——点击、拖选、输入法组合输入、Enter 换行,全部换算回源码字符位置;
  5. 每次写入都是一笔带防护的源码事务,提交前检查expected原文、内容哈希、稳定原子边界(Mermaid、公式、可编程岛)和文档修订号,任何一项过期就拒绝写入,绝不覆盖未知的新内容。

格式工具同样不调用浏览器富文本命令:粗体、颜色、列表最终都被表达为对真源的 Markdown 或受控 HTML 变换。未被你触碰的源码字节,不会因为一次正文输入而被全篇重写。

这套事务引擎的完整设计在官方说明中有详细展开,推荐精读 ScriptoriumModules/README.md。

人机共笔:Agent 是协作者,不是远程桌面

ScriptoriumCollaborator 让 Agent 以文档协作者身份加入,同时获得三种互补认知:

  • 语义:文档信息、修订状态、VDOCX 章节目录 / VPPTX 页面目录;
  • 源码:按行读取 Markdown 或页面 HTML、正则检索、读取你当前视口附近的源码;
  • 视觉:当前视口的真实截图 + 标准 Markdown 语义摘要。

Agent 先理解"写了什么",再看"如何实现",最后确认"看起来怎样"。而所有写操作都必须走PR 协议:Agent 携带署名(maid)、幂等requestId与expectedRevision提交最小变更 → 你在右侧"文脉"面板并排查看源码差异与渲染差异→ 允许、拒绝或填写回执 → 允许后才合并并建立快照(实现见 scriptorium-pr-diff.js 与 scriptorium-lineage-store.js)。

这带来一个有趣的协作形态:每个人类都可以带着自己的 Agent 团队加入同一份作品。多支团队各自提出署名变更、接受审阅、取得回执,所有贡献汇入同一条可审计的"文脉"——它相当于面向 AI-native 文档的加强版 Git,还多出了渲染结果差异与人工审批这两层传统 Git 无法表达的证据。

快速上手:从启动到第一次共笔

  1. 启动 VCPChat(项目根目录下):
npm install npm start
  1. 从 VCPChat 的**"文坊"入口**或托盘菜单进入 Scriptorium,即可看到上图中"连续编辑 / 阅读预览 / 混合源码 / CSS 源码"四个工作面按钮;
  2. 新建或导入:支持 HTML、Markdown、TXT、RTF、DOCX、PPTX 导入;导出连续流 HTML、分页 HTML、放映 HTML 与 PDF,导出物是自运行的浏览器成品,读者无需安装任何环境;
  3. 邀请 Agent:Agent 可通过 17 个协作者命令(GetOutline、GetSource、GetVisualContext、SubmitSourcePr等)阅读与提案,完整字段约定见 plugin-manifest.json 与服务实现 ScriptoriumCollaboratorService.js。

关键源码导航

想深入三态解耦的实现,建议按此顺序阅读(均在 ScriptoriumModules/ 目录):

  • vdoc-hybrid-compiler.js:混合编译器vdoc-hybrid-compiler/3,生成"带源码字符区间和内容哈希的编译编辑区";
  • scriptorium-flow-editor.js:渲染态编辑事务、Selection / 输入法 / 剪切粘贴协同;
  • scriptorium-render-coordinator.js:渲染缓存与三个工作面的状态协调;
  • scriptorium-document-store.js:唯一文档模型与真源适配;
  • vdoc-container.js:.vdocx/.vpptxv2 ZIP 工程容器与 SHA-256 内容寻址资源。

写在最后

VCPChat 共笔文坊 Scriptorium V3 证明了一件事:一份文档可以同时是人类自然书写的成品、Agent 精确操作的源码、受控执行的程序,以及拥有作者与审批历史的共同作品。

你点击渲染后的一个字,直接修改它;系统仍然知道这个字来自源码的哪里,仍然保留周围没有被触碰的一切——无法证明安全无损时,宁可拒绝自动写入,也不伪造一次看似成功的编辑。这正是人机共笔应有的姿态。

  • AI 应用
  • 大模型
  • RAG
  • 语音
  • 音频
  • 即时通讯
  • 桌面应用
  • 后端

【免费下载链接】VCPChat

VCPChat,VCP原生分布式引擎终端项目,地球上第一个AGI-OS桌面级交互系统,语义级垂直打穿AI-UI/UX-APP以及人类想象力的一切。

项目地址:https://gitcode.com/gh_mirrors/vc/VCPChat
点击查看免费下载

相关推荐

上一篇:FilmCraft Web版:WASM+WebCodecs+OPFS让浏览器变身视频剪辑工作台
下一篇:esp32-c3-adblock刷机教程:PlatformIO环境搭建到一键烧录完整流程

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询