Lavish-axi 总体架构解析CLI、本地服务器与沙箱 iframe 如何协同工作【免费下载链接】lavish-axiHTML is the new markdown. Lavish is the new editor for your HTML artifacts.项目地址: https://gitcode.com/gh_mirrors/la/lavish-axiLavish-axiLavish Editor是一个本地优先的 HTML 产物协作编辑器采用「CLI 本地服务器 沙箱 iframe」三层架构Agent 写好 HTML 文件后用lavish-axi 文件一条命令在本地浏览器打开用户可以直接圈选元素、批注文本、编辑 Mermaid 白板再通过长轮询把反馈送回给 Agent。整个闭环不依赖云端本文带你快速看懂这三层是如何协同的。整体架构一次反馈是如何流动的Lavish 的协作回路可以拆成 4 步Agent 产出产物Agent 按用户请求生成一个 HTML 文件计划、对比表、架构图、报告等CLI 打开评审界面lavish-axi html-file确保本地服务器在运行并在浏览器中打开该文件的评审页用户做标注在页面里点选元素、选中文字批注、排队提示词或把布局问题从收件箱里批量加入队列Agent 轮询取回lavish-axi poll html-file长轮询等待用户一提交反馈就原路返回给 Agent。这个流程在 README 的 How It Works 一节中有完整的 ASCII 流程图核心设计是**「文件路径即身份」**会话以 HTML 文件的路径为键sessionKey 用规范路径的 sha256 前 16 位作键Agent 无需处理任何不透明 ID直接说文件名即可。第一层CLI 与后台服务器的进程模型CLI 是整个架构的入口源码入口为 cli.js核心命令有命令作用lavish-axi html-file打开或恢复一个评审会话openCommandlavish-axi poll html-file长轮询等待用户反馈pollCommandlavish-axi export / share导出单文件 HTML / 发布到第三方托管lavish-axi stop关闭后台服务器它的关键设计是「一个后台服务器服务所有会话」CLI 以分离detached方式拉起lavish-axi server子进程startServer然后轮询/health接口拿到{ ok, app, version }才认为就绪之后每次调用 CLI都会先探测本机是否已有同版本服务器ensureServer有则复用、版本旧则优雅替换因此多个 Agent 在同一台机器上可以共享同一个服务器和同一份会话状态会话状态统一存放在~/.lavish-axi/state.json可用LAVISH_AXI_STATE_DIR改服务器空闲 30 分钟自动退出零云依赖。服务器本体是 server.js约 3000 行的 Express 应用它承担三个角色评审页服务、产物文件服务器、反馈事件总线基于 WebSocket 的实时通道 EventEmitter长轮询。第二层沙箱 iframe —— 产物如何被安全地打开打开评审页后页面结构是「外框 内嵌 iframe」外框chrome 页由 createChromeHtml 生成负责对话面板、批注卡片、发送按钮等 UI内嵌的 iframe 指向/artifact/:key/index.html加载的就是 Agent 写的那个 HTML 文件本身。安全隔离是这层的核心规则很清晰iframe 使用sandbox属性allow-scripts allow-forms allow-popups等没有allow-same-origin产物脚本拿不到外框 DOM 的任何特权内外通信只能走postMessage。为了让产物可批注服务器在产物响应时只做一处注入——injectLavishSdk 在/body前追加一个script src/sdk.js?key...标签。这个小 SDKartifact-sdk.js在 iframe 内提供元素/文本批注、DOM 快照、渲染期布局体检以及白板和表格语义解析。这个最小注入原则带来一个重要好处保存在磁盘上的 HTML 文件与直接双击打开时渲染效果完全一致Lavish 不往产物里塞任何设计系统或标记。一个有趣的延伸如果你要求 Agent 输出可编辑的 Mermaid 白板渲染出的每张 Mermaid 图都会被 SDK 替换成内嵌的 Excalidraw 画布点击即可解锁编辑实现见 whiteboard-core.js、whiteboard-store.js编辑摘要随反馈送回后Agent 只需更新产物里的 Mermaid 源码——源码始终是权威导出文件仍然是普通 Mermaid。第三层长轮询反馈回路 —— 把用户的话送回 Agent这是三层协同的最后一公里设计上有几个值得新手理解的点排队与送达分离用户在批注卡片或对话面板里提交的内容先进入服务器队列浏览器立即显示已排队气泡poll命令返回时反馈即被消费所以 Agent 端拿到后要完整读取响应轮询是有独占性的同一会话同一时刻只有一个poll持有者第二个并发poll会收到类型化错误而不是静默等待响应字段顺序是契约prompts、artifact_failures、next_step都排在可能很大的dom_snapshot之前即使 Agent 截断输出用户的原话和下一步指令也不会丢断线不丢反馈poll 被中断或超时后重跑是安全的队列里的反馈一直保留到真正交付为止。布局问题收件箱Layout issues也走同一条路SDK 在 iframe 内被动体检产物溢出、文字被裁切、遮挡等问题只进收件箱、永不主动唤醒 Agent——只有用户点击Queue selected fixes把问题批量入队后才会作为一条普通反馈随发送到达 Agent。这是刻意的被动检测设计避免自动修复的来回折腾。安全边界本地服务器不是免检通道虽然默认只监听127.0.0.1Lavish 仍给本地服务器加了两道全局中间件Host 头白名单拒绝任何Host缺失或不属于本服务器的请求用于防御 DNS rebinding 攻击Origin/Referer 守卫所有会改变状态的接口提交反馈、上传附件、发布分享等只接受来自自家评审页的同源请求无头请求的 CLI 控制通道则不受影响。另外会话键是派生而非秘密知道文件路径就等于知道会话键所以任何接口都不把持有键当作授权依据。附件上传也做了内容寻址id 是文件内容的 sha256 尺寸配额 参考计数清理路径完全由服务器决定客户端无法指向任意文件。关键模块路径速查模块职责src/cli.js全部 CLI 命令、服务器拉起与探测逻辑src/server.jsExpress 服务器、评审页与产物路由src/html-transform.js产物 SDK 注入唯一改动点src/artifact-sdk.jsiframe 内批注/快照/布局体检 SDKsrc/session-store.js会话状态、反馈队列与文件路径会话键src/layout-warnings.js布局问题生命周期指纹、状态机src/export-bundle.js本地资源内联的导出/分享打包src/whiteboard-core.jsMermaid → Excalidraw 白板核心总结三层各司其职CLI是 Agent 侧的唯一接口负责会话编排与反馈交付零安装即可npx -y lavish-axi运行本地服务器是所有会话共享的中枢负责状态持久化、实时事件与安全边界沙箱 iframe让任意 Agent 产出的 HTML 在隔离环境里既活着可交互、可批注又安全无同源特权且不改一个字节地保存。三者通过「文件路径做身份 postMessage 通信 长轮询交付」串成一个完整的 Human-AI 评审闭环——这正是 Lavish 把HTML is the new markdown落地的方式。想继续深入了解可以阅读 AGENTS.md 中的架构章节与 README.md 的完整 CLI 参考。【免费下载链接】lavish-axiHTML is the new markdown. Lavish is the new editor for your HTML artifacts.项目地址: https://gitcode.com/gh_mirrors/la/lavish-axi创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
人形机器人真正的瓶颈不是硬件,而是数据 人形机器人是不是又要泡沫了,这两年被问得最多的就是这个问题。每次发布会开完,总有人拿着电机峰值扭矩、关节自由度、灵巧手抓握力这些参数反复对比,朋友圈里各种拆机报告、供应链图谱满天飞。但你要是真跑到产线上、实验室里蹲一段时间就会… · 2026/9/26 6:19:45
Jev爆火背后:纯文本模型如何赢得14万开发者? 1. 硅谷疯抢的“哑巴AI”:Jev凭什么让14万开发者坐不住过去这几周,我朋友圈里搞技术的人几乎都在聊一个名字:Jev。乍一听你可能觉得这又是什么套壳应用,但实际用下来,它跟我以前见过的那些“什么都想要”的大模型完全不… · 2026/9/26 6:19:39
用AI Skills搭建小红书获客自动化体系:从选题到归档全流程 如果你做过小红书获客,大概率会对下面这段描述有同感:早上打开后台先刷一遍消息,然后想今天发什么,憋两个小时写出一篇笔记,发布之后隔几分钟就点开看看评论,遇到问价的有空就回两句,没空就打一… · 2026/9/26 6:19:39
802.11a基带I/Q数据包解析与PHY层验证实战 简介:本资源是面向通信工程专业学生、无线网络研究人员及MATLAB实践者的802.11a协议仿真学习包,聚焦OFDM调制、多径信道建模与同步算法等核心难点,助力深入理解高速WLAN物理层设计原理。压缩包共75个文件,含52个MATLAB源码&#x… · 2026/9/26 6:56:04
Claude Code源码是假的?真相与安全落地指南 简介:本资源为Anthropic官方Claude Code CLI工具的完整源码泄露包,面向AI工程、CLI工具开发及大模型Agent系统研究者,可用于深入理解AI编程助手的本地化实现逻辑与MCP协议集成方案。代码库结构清晰,含1903个文件,以133… · 2026/9/26 6:56:04
监事会关键绩效考核标准与监督职能效能优化路径解析 在公司治理中,监事会作为关键的监督机构,承担着确保公司运营合规、财务透明及管理决策合理的重要职能。为了有效评估监事会的履职情况,企业通常会设定一系列的绩效考核指标。这些指标不仅关注监事会工作的完成数量,还特别强调其执行的时效性和准确性,从而确保监督职能的高… · 2026/9/26 6:56:04
NetSurveillance DVR 配置与运维实战:端口映射、客户端接入与录像导出 简介:NetSurveillance DVR网络访问插件是面向安防监控场景的IE浏览器控件包,用于通过局域网或互联网远程连接DVR设备,实现实时画面预览、录像回放与PTZ云台控制。资源共61个文件、总大小1.07MB,以dll动态库、ocx控件、ini/xml配置… · 2026/9/26 6:55:57
AI修Bug为何会把正确代码改错?实战防治指南 先说明一下,我今天聊的不是“AI 能不能写代码”这种老话题,而是更扎心的一个问题:AI 明明帮你找到了 Bug,结果它把 Bug 修完的同时,把旁边原本正确的代码也给改了。标题里那句话就是我最近踩坑的真实写照——AI 写代码… · 2026/9/26 6:55:57
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46