
Es Plus
io.github.liujiaao由 GitHub 帳號 liujiaao 發布v1.5.0更新於 Nov 7, 2026
Generate runnable Vue 3 / Vue 2 CRUD pages from one JSON config or a natural-language request.
概覽
讓助理把自然語言需求或 JSON 設定產生可執行的 Vue 3 / Vue 2 CRUD 頁面,支援 Element Plus、Element UI 與 Ant Design Vue。
- 可以做什麼
- 依自然語言需求產生完整 CRUD 頁面,generate_crud 是唯一前門,只需填寫 surfaces 意圖表
- 依既有的型別化 JSON 設定產生頁面,或改用不經 LLM 的正規表達式備援方式產生頁面與 Schema
- 產出單一介面片段,並在編譯前驗證、修正或匯入設定
- 把同一份設定確定性地編譯成 Vue 3 + Element Plus、Vue 2 + Element UI、Vue 3 + Ant Design Vue 三端程式碼
- 適用情境
- 適合在 Vue 專案開發後台 CRUD 頁面(查詢表單、表格、彈窗編輯)時使用,讓助理輸出經過驗證的設定並編譯成可直接合併的 .vue 檔案,而不必手寫大量樣板程式碼。
- 執行需求
- 以 stdio 在本機執行,通常透過 npx -y @es-plus/mcp-server 加入,需要 Node.js 與 npm。未宣告任何驗證機制。選用環境變數 ESPLUS_MCP_PROFILE 可選擇工具介面:full(預設)或 front-door,後者會隱藏進階與 legacy 工具。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Es Plus,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
ES-Plus
让 AI 生成的 CRUD 页面可以直接合进代码库:LLM 只写一份 JSON 配置,ES-Plus 负责 Schema 校验 + 确定性编译,一次产出 Vue 3 + Element Plus / Vue 2 + Element UI / Vue 3 + Ant Design Vue 三套可运行代码 —— 同一份配置、三端一致、可复现。
中文 | English
[@es-plus/vue3] [@es-plus/vue2] [@es-plus/adapter-antdv] [@es-plus/core] [license] [GitHub stars] [heldout accuracy] [heldout zero-edit]
两个徽章都来自夜间 Layer-2 评估对 golden 语料留出集(few-shot 未见域、已排除近变体)的实测,不是营销数字。徽章 label 里标着测量所用的模型:读数随模型变化,不同模型之间不可横向比较,也不与历史读数拼成一条曲线。
第一个是门禁口径:in-schema intent 命中率 = 「零编辑 ∨ 3 轮内收敛」—— 模型首轮就给出可零改合并的配置,或在至多 3 轮自然语言修正内收敛到同一份配置,都算命中(定义)。
第二个是其中更严的一半:只算首轮零编辑,不给收敛机会,用来分辨「一次就对」和「改几轮才对」。
语料目前 216 例(留出 194 例),是回归哨兵而非统计显著的 benchmark,提升靠补语料而非调口径;门禁目标 ≥95%,当前实测以上方徽章为准(由夜间 eval 从 __tests__/golden/last-accuracy.json 生成)。
在线文档 · Playground · AI CRUD 生成器 · 更新日志 · v1.4 迁移指南
同一份配置的三个渲染端,各自一个线上站:Vue 3 + Element Plus · Vue 3 + Ant Design Vue · Vue 2 + Element UI —— 三个站都跑在线上,示例由各自站点的构建与守卫覆盖。
v1.4.0 起重命名:
es-plus-ui已重命名为@es-plus/vue3,同时新增 Vue 2 渲染器@es-plus/vue2与框架无关的@es-plus/core。原es-plus-ui包继续作为 stub 包工作,详见 迁移指南。
为什么选择 ES-Plus
2026 年用 AI 生成前端早不稀奇,稀奇的是敢不敢把生成结果直接合并。多数 AI codegen 是「凭感觉」:每次输出都不一样、对不上你的设计系统、没人替它校验 —— 于是你还得逐行 review、改、再 review。
ES-Plus 把这件事反过来做:让 LLM 只做它擅长的语义推理(需求 → 一份配置),把「生成正确代码」这件必须确定的事交给编译器。
- LLM 产出配置,不产出代码 —— 通过 MCP 把 Schema/约定交给宿主 LLM(Claude Code / Cursor),它只输出一份 JSON
- 库做校验 —— zod + JSON Schema 在编译前拦下非法配置,坏配置到不了产物
- 确定性编译 —— 同一份配置永远编译出字节级相同的三端代码,golden 用例语料 × 多类确定性不变量 + esbuild 真语法解析在 CI 守着
- 三端一致 —— 一份配置通吃 Vue 3 + Element Plus、Vue 2 + Element UI、Vue 3 + Ant Design Vue
而且它首先是个好用的 CRUD 库:中后台系统 80% 的页面是 CRUD —— 表单查询 → 表格展示 → 弹窗编辑。用原生 Element Plus 每个页面需要 200+ 行模板代码,用 ES-Plus 只需 30 行配置。
同一页面、同一功能范围:模板与事件胶水代码减少 76.5%(115 → 27 行),整页非空行减少 40.4%(136 → 81 行);查询 / 重置 / 翻页 / 取数零事件代码。
数字由
npm run one-config:gen从docs/brand/one-config/{native,esplus}.vue实测得出, 由npm run check:site-claims守住院线。口径:模板区行数 +handle*/fetch*事件与取数函数行数。
核心特性
- 配置驱动 — JSON 配置生成表单、表格、弹窗,替代大量模板代码
- 全链路联动 — EsForm 嵌套在 EsTable 中,查询/重置/分页全自动联动
- 编程式弹窗 —
useDialog()命令式调用,JSX 渲染,表单验证集成 - 14 种表单控件 — Input、InputNumber、Select、DatePicker、TimePicker、Cascader、Radio、Checkbox、Switch、Slider、Rate、ColorPicker、Transfer、Upload
- 自适应高度 — ResizeObserver 自动重算表格高度
- 跨页选择 —
cachePageSelection分页切换保留勾选 - 任意后端适配 —
configTableOut配置化映射 API 响应字段 - 权限控制 —
permissionValue声明式按钮权限,无需 v-if - 国际化 —
labelKey+ 自定义翻译函数,兼容任意 i18n 方案 - TypeScript — 完整类型定义 + 37 个跨渲染器契约类型(CI 强制三端同构导出,数量由
check:readme校验) - AI 原生支持 — 配套 MCP Server 和 CLI:MCP 通过协议把 Schema/约定交给宿主 LLM(Claude Code/Cursor)做语义推理,es-plus 负责约束校验 + 确定性编译成可运行页面
快速开始
一行起步(推荐)
交互式选渲染器(Vue 3 + Element Plus / Vue 2 + Element UI / Vue 3 + Ant Design Vue),可选一键写入 MCP(AI 生成)配置,产出一个装上就能跑的 CRUD 示例项目(查询表单 + 表格,零后端)。CI 用脚手架 smoke 守着三端 scaffold → install → build 全绿。详见 create-es-plus。
想手动集成到已有项目,继续往下看。
安装(Vue 3)
注册插件(Vue 3)
Vue 2 项目?
参见 @es-plus/vue2 README,配置 API 与 Vue 3 版本完全一致。
Ant Design Vue 项目?
@es-plus/adapter-antdv 是 Ant Design Vue 4.x 渲染适配器,与 @es-plus/vue3 共享同一份 JSON 配置 Schema,配置 API 完全一致,仅底层 UI 组件不同。详见 adapter-antdv 文档。
第一个 CRUD 页面
EsForm 嵌套在 EsTable 中,查询/重置/分页全自动联动,零事件处理代码。
联动机制
EsForm 放在 EsTable 的默认插槽中,通过 Vue 的 provide/inject 自动发现父级表格。按钮配置 triggerEvent: true 后,自动调用表格的数据请求方法,无需手动连接。
组件一览
EsForm 表单配置
核心配置项
EsTable 表格配置
后端响应映射
后端返回 { result: { items: [...], count: 50 } }?只需配置:
组件会递归查找响应中的字段,适配任意嵌套结构。
请求/响应拦截
useDialog 编程式弹窗
权限控制
安装时配置权限函数,按钮自动按权限显隐:
国际化
安装时配置翻译函数,配合任意 i18n 库:
TypeScript 类型
跨 Vue 2 / Vue 3 / AntDV 共享类型时,从
@es-plus/core/types导入 — 同一份columns/formItemList在三个渲染器中通用。
AI 工具链
ES-Plus 从设计上拥抱 AI 编码,配套两个官方工具:
@es-plus/mcp-server — AI 编码工具集成
让 Claude Code、Cursor 等 AI 工具直接调用 CRUD 生成能力:
然后在 AI 对话中直接说:
"生成一个用户管理页面,查询姓名、手机号、状态,表格显示姓名、邮箱、状态、创建时间,支持新增编辑删除"
AI 自动调用 MCP Server 生成完整可运行的 .vue 文件。
工具面遵循「一个前门 + 确定性支撑」:generate_crud 是唯一前门(你只填 surfaces 意图表,路由与编译是确定性代码)。generate_crud_from_config 标注 ADVANCED(已持有类型化配置时用),generate_crud_page / generate_crud_schema 标注 LEGACY FALLBACK(no-LLM 正则兜底)。ESPLUS_MCP_PROFILE=front-door 可隐藏高级与 legacy 工具,只留前门与单面片段。完整工具清单、选择决策树与分层依据见 packages/mcp-server/AI-NATIVE-ARCHITECTURE.md。
想先看效果再看原理:AI 案例导览 docs/ai/ai-showcase.md 逐个说明站点上每个 AI 页面证明了什么、证据在哪,以及 claim(measure / compile / execute)该怎么读 —— 跑过的才叫 execute。
@es-plus/cli — 命令行工具
终端直接生成 CRUD 页面:
全局配置
项目结构
本地开发
相关链接
贡献
欢迎提交 Issue 和 Pull Request!用法提问、集成讨论和功能设想请走 GitHub Discussions;能复现的缺陷与明确的功能请求请开 Issue。
- Fork 本仓库
- 创建功能分支:
git checkout -b feature/your-feature - 提交更改:
git commit -m 'feat: add your feature' - 推送分支:
git push origin feature/your-feature - 提交 Pull Request
License
來源:README.md,提交 4342a62
工具
0版本歷史
1- v1.5.0最新Nov 7, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分