📋 更新记录
本页面记录 Rabetbase CLI、Lovrabet Runtime CLI 与 TypeScript SDK 的重要更新历史。
2026-04-28
Lovrabet Runtime CLI
- 🚀 补充 Lovrabet CLI 面向业务场景的 AI 操作套件发布说明
Lovrabet CLI 正式作为 Lovrabet 运行态进入 AI 生态的操作入口发布,面向 Agent、交付实施、业务运维和企业 IT,把应用目录、数据集、数据操作、SQL、BFF 与诊断能力收束成稳定命令。
- 官网地址:Lovrabet CLI
- 文档地址:业务系统 Lovrabet CLI 2.0
它的核心价值不是替代后台页面,而是把企业系统里的数据、规则、接口和历史经验整理成 AI 可以理解、调用、审计和复用的业务操作能力,让一次业务请求可以沉淀为可重复、可控、可协作的 Agent 工作流。
-
✨ 新增
lovrabet updatelovrabet update支持从 npm 更新 CLI,可通过--latest、--beta或--version指定版本,并默认同步刷新官方 Skill; -
🧭 应用决议语义收敛:
defaultApp是默认候选,不是强上下文Agent 场景下,用户显式提供的
--app/--appcode优先;未显式指定时,defaultApp只作为第一个候选验证。若用户需求明显指向订单、商品、库存、CRM、工单等业务域,应先验证默认候选的数据集是否匹配,验证不成立再扩大到应用列表,避免误进错误应用。 -
📚 文档结构调整:业务主路径与高级技术资料分层
Lovrabet CLI 2.0 文档新增「高级使用:配置、缓存与集成排障」,将
.lovrabet.json、app cache、AccessKey 作用域、二开常量和集成排障说明从业务人员主路径中拆出,面向企业 IT、交付实施、二开开发者和 Skill 维护者使用。
2026-04-20
Lovrabet Runtime CLI
-
✨ 新增
skill install与auth info— v2.0.3lovrabet skill install现在可直接通过官方skillsCLI 安装发布版 Lovrabet Skill;同时新增lovrabet auth info,可读取当前 accessKey 对应的登录用户信息,方便排查“当前到底在用谁的认证”。
2026-04-18
Rabetbase CLI
-
✨ 新增只读
data命令组 — v2.1.2-beta.1新增
rabetbase data filter与rabetbase data getOne,以 SDK 语义直接查询真实行数据,适合排查字段值、联调前端 / BFF 请求,以及快速核对数据集行为。
2026-04-15
Rabetbase CLI
-
🔒 版本策略升级为“可提醒 + 可阻断” — v2.1.2-beta.1
CLI 现在会从 CDN 读取稳定版与最低支持版本策略:
- 低于
stableVersion时给出升级提醒 - 低于
minimumVersion时直接阻止关键命令继续执行
这样项目创建、运行等入口可以统一收敛到受支持版本,减少“旧 CLI + 新模板 / 新协议”导致的问题。
- 低于
2026-04-13
Lovrabet Runtime CLI
-
🔄 认证初始化收敛为
auth init— v2.0.2原先分散在初始化流程里的认证重建能力,收敛为
lovrabet auth init。该命令会清空当前作用域配置后重新写入新的accessKey/env,适合配置混乱时一键重建。
2026-04-12
TypeScript SDK
-
✨ v1.4.1:Client AK、
batchCreate()、$notNull全面补齐SDK 这一版把运行态最常用的三块能力补完整:
- Client AK 鉴权:支持仅传
accessKey的client-ak模式,走/client/接口并自动注入X-User-AK - 批量创建:新增
batchCreate(),OpenAPI 使用paramList,WebAPI / Client AK 使用原始数组请求体,单次最多 1000 条 - 非空过滤:
filter()新增$notNull条件运算符,便于直接筛选非空字段
- Client AK 鉴权:支持仅传
Lovrabet Runtime CLI
-
✨ 鉴权与应用目录模型重构 — v2.0.1 / v2.0.2
Runtime CLI 在这几个版本中进一步收敛到 AccessKey + 远端应用目录 模型:
accessKey成为主认证路径,doctor会明确提示 session cookie 路径已移除app list/app pull统一围绕远端应用目录与本地缓存工作app use只保存defaultApp这类用户意图,app import支持从.rabetbase.json迁移默认应用选择
-
🩺 新增
doctor诊断与data batchCreate— v2.0.1lovrabet doctor可检查全局 / 项目配置、JSON 合法性、默认应用与 AccessKey;lovrabet data batchCreate支持 JSON 数组或{ items: [...] }写法,与 SDK 的批量写入能力保持一致。
Rabetbase CLI
-
🧭 应用视图命名更清晰:
app discover→app remote— v2.1.2-beta.1平台目录视图与本地配置视图正式分开:
rabetbase app list看本地 / 合并配置,rabetbase app remote看当前登录账号在平台上可访问的应用,减少多应用场景下的歧义。
2026-04-09
Rabetbase CLI
-
✨ 数据库连接(dblink)命令组上线 — v2.1.0 / v2.1.1
新增
db list、db detail、db create、db update、db delete、db test、db analyze-start、db analyze-cancel、db analyze-status、db tables、db diff等命令,把工作台里的数据库连接、测连、增量分析、差异查看搬到 CLI。 -
🩺 多应用合并诊断继续补强 — v2.1.1
rabetbase doctor现在会显示合并后的有效配置及来源;app list对当前应用、默认应用与配置来源的标注也进一步对齐入口解析逻辑。
2026-04-06
Rabetbase CLI
-
✨ SQL 拉取、本地配置隔离与 API 作用域控制完善 — v2.0.10 – v2.0.13
这一轮把 CLI 2.0 上线后的几项高频缺口补齐:
sql pull:可把平台自定义 SQL 批量拉到本地.rabetbase/sql/inherit: false:项目可彻底隔离全局配置,避免跨仓库污染api list/api pull --global:明确区分“只看项目 apps”和“合并全局 + 项目”upgrade --yes:支持全流程非交互升级,便于脚本与 CI 使用
2026-04-04
Rabetbase CLI 2.0
-
✨ Rabetbase CLI 2.0 文档全新上线 — 完整的 2.0 版本文档体系
基于全新架构重写的 CLI 2.0 文档,覆盖所有核心功能模块:
- 全新安装与从 CLI 1.x 升级两篇独立指引,互相引用
- 命令参考:详解 13 个全局 Flags(
--jq、--dry-run、--yes等)和环境变量 - 典型使用场景重写:前端对接数据、SQL 开发工作流、BFF 脚本开发、AI 协作、CI/CD 自动化
- API 与数据集、BFF 脚本、代码生成与菜单、自定义 SQL、Schema 等核心命令文档
- 配置:应用、环境、多应用与配置项参考、风险等级控制、运维与诊断
- CLI 1.x 命令对照方便老用户迁移
-
📝 文档结构优化
- 导航栏:Lovrabet CLI 替换为 Rabetbase CLI 2.0,MCP & Skills 移至历史文档
- 侧边栏菜单名称更直白:「全新安装」「从 CLI 1.x 升级」「配置:应用、环境、多应用」
- 所有正文
---水平分隔符清除,避免 Docusaurus 渲染异常 - 修复
intro.md → index.md路由冲突,/docs/rabetbase-cli/正常访问
-
🌐 完整英文翻译 — 所有 Rabetbase CLI 2.0 文档同步英文版本
TypeScript SDK
-
✨ update / delete 调用体验优化 — v1.3.7 版本统一前端 SDK 与 BFF 的调用方式
update()和delete()新增对象参数写法,与 BFF 脚本中context.client的调用风格完全对齐:// ✅ 推荐写法(对象合并,前后端一致)
await client.models.users.update({ id: 1001, name: '张三' });
await client.models.users.update({ id: [1001, 1002], status: 'active' });
await client.models.users.delete({ id: 1001 });
await client.models.users.delete({ id: [1001, 1002, 1003] });
// ✅ 兼容写法(仍然可用)
await client.models.users.update(1001, { name: '张三' });
await client.models.users.delete(1001);为什么改?
- 前端 SDK 和 BFF
context.client调用风格统一,降低心智负担 - 对象合并写法更符合 RESTful 语义,AI 生成代码也更自然
- 旧写法完全兼容,无需修改现有代码
- 前端 SDK 和 BFF
-
🔧 runtimeDomain 替代 serverUrl — v1.3.7
新增
runtimeDomain配置字段,与 CLI 的.rabetbase.json命名对齐。serverUrl标记为@deprecated,向下兼容保留。const client = createClient({
appCode: 'your-app',
runtimeDomain: 'https://runtime.my-company.com', // 新字段
// serverUrl: '...', // 旧字段,仍可用
}); -
📝 默认环境名称变更 —
online→production(online仍可用)
2026-03-26
提示:以下内容属于 CLI 1.x 时代的历史记录。Rabetbase CLI 2.0 已于 2026-04-04 正式上线,建议直接查看 CLI 2.0 文档。
Lovrabet CLI
-
🔄 Skills 安装方式变更 - 推荐使用
npx skills安装Skills 安装方式已迁移到
npx skills工具,旧的lovrabet skill install命令已废弃:# ✅ 新方式(推荐)
npx skills add lovrabet/lovrabet-skill
# ❌ 旧方式(已废弃)
# lovrabet skill install --cursor为什么要变?
- ✅ 无需安装 CLI,直接使用 npx
- ✅ 总是使用最新版本的 Skills
- ✅ 更符合生态规范
Lovrabet SDK
-
✨ 批量操作支持 - v1.3.7 版本新增批量更新和批量删除能力
SDK 现已支持批量操作,大幅提升数据处理效率:
// 批量更新 - 最多 1000 条
await client.models.users.update(
[1001, 1002, 1003, 1004, 1005],
{ status: "inactive", updateTime: new Date().toISOString() }
);
// 批量删除 - 最多 1000 条
await client.models.orders.delete([1001, 1002, 1003]);核心特性:
- 单次最多处理 1000 条记录
- 支持单条 ID 和 ID 数组两种方式
- 操作是原子性的,要么全部成功,要么全部失败
- OpenAPI 和 WebAPI 模式都支持
- 超过限制会抛出明确的错误提示
适用场景:
- 批量修改状态(如:批量激活/禁用用户)
- 批量更新字段(如:批量设置标签)
- 批量清理测试数据
- 批量删除过期记录
👉 API 使用指南
-
📝 文档完善 - 新增完整的使用指南文档
新增
help/lovrabet-sdk-guide.md(16KB),包含:- 批量操作详细说明和最佳实践
- 高级查询(filter 方法)完整指南
- 数据导出(Excel)、SQL API、下拉选项等所有功能
- 聚合统计(aggregate)使用指南
- 常见问题和最佳实践
Lovrabet CLI
-
✨ Windows 10 兼容性优化 - v1.3.4 版本全面提升 Windows 10 支持
CLI 现已完全兼容 Windows 10,在所有主流终端中都能正常使用:
核心改进:
- 🔧 路径处理优化 - 使用
path.join()替代硬编码分隔符,自动适配 Windows 路径格式 - 🚀 进程执行优化 - 采用
execa替代spawn,提供更好的跨平台进程管理 - 🎨 Emoji 显示修复 - 移除不兼容的 emoji,使用 ASCII 字符替代,确保在 CMD/PowerShell 中正常显示
修复示例:
# 修复前(显示为方框)
🚀 正在生成文档...
❌ 生成失败
# 修复后(正常显示)
* 正在生成文档...
[ERROR] 生成失败测试覆盖:
- ✅ Windows CMD - 所有功能正常
- ✅ PowerShell - 所有功能正常
- ✅ Git Bash - 所有功能正常(推荐)
- ✅ WSL - 所有功能正常(推荐)
- ✅ Cmder - 所有功能正常
- 🔧 路径处理优化 - 使用
-
🗑️ 移除
add page命令 - v1.3.4 版本简化命令集移除了
lovrabet add page命令,推荐使用更灵活的方式:替代方案:
# 使用 API 生成 + 手动创建页面
lovrabet api pull # 生成 API 配置
# 然后手动创建页面组件,更灵活可控为什么移除:
- 页面模板过于简单,不适合实际业务场景
- 手动创建页面更灵活,可以自定义组件结构
- 使用 SDK + API 配置是更好的开发模式
👉 命令参考
2026-02-12
文档重构
- 📝 menu update 命令文档完善 - 增加迭代更新流程说明
Lovrabet CLI
-
✨ i18n 国际化支持 - v1.3.3 版本新增国际化能力
CLI 现已支持多语言切换,提升全球用户体验:
# 切换显示语言
lovrabet config set locale en # 英文
lovrabet config set locale zh # 中文(默认)核心特性:
- 内置中英文双语支持
- 所有提示消息和文档支持多语言
- 易于扩展新增语言
Lovrabet SDK
-
✨ filter 多表查询支持 - filter API 现已支持跨表关联查询
无需编写 SQL 即可实现表关联,使用点号语法自动关联:
const result = await client.models.orders.filter({
// select 中使用点号语法获取关联表字段
select: [
"id",
"order_date",
"total_amount",
"customer.name", // 关联客户表的姓名
"customer.phone", // 关联客户表的电话
"customer.company", // 关联客户表的公司
],
// where 中也可以使用点号语法
where: {
status: { $eq: "completed" },
"customer.is_signed": { $eq: true }, // 只查询已签约客户
},
// orderBy 同样支持点号语法
orderBy: [{ order_date: "desc" }, { "customer.name": "asc" }],
currentPage: 1,
pageSize: 20,
});
// 返回结果自动包含关联数据
result.tableData.forEach((order) => {
console.log(order.customer?.name); // 直接访问关联字段
});核心特性:
- 使用
表名.字段名语法,无需额外配置 - 自动使用 LEFT JOIN,保证主表数据不丢失
- 在
select、where、orderBy中均可使用 - 支持最多 5 层嵌套关联
- 字段选择减少数据传输
- 与 filter 条件、排序完全兼容
- 使用
2026-01-26
Lovrabet SDK
-
✨ 新增模型别名配置文档 - 详细介绍人类友好的模型访问方式
核心功能:
- 使用别名代替复杂的 datasetCode 访问数据集
- CLI 自动生成配置,无需手动编写
- 完整的 TypeScript 类型支持
访问方式对比:
// 使用别名(推荐)- 清晰易读
const orders = await client.models.orders.filter();
const customers = await client.models.customers.filter();
// 使用 datasetCode - 不易读
const orders =
await client.models.dataset_8d2dcbae08b54bdd84c00be558ed48df.filter();CLI 自动生成:
lovrabet api pull生成的配置包含:
datasetCode- 数据集唯一标识tableName- 数据表名alias- 人类友好的别名(camelCase 格式)
👉 模型别名配置文档
-
📝 BFF API 文档发布 - 完整的 BFF API 使用指南
BFF (Backend For Frontend) API 从 v1.3.0 版本开始支持:
// 调用后端函数
const result = await client.bff.execute({
scriptName: "calculatePrice",
params: { productId: "123", quantity: 10 },
}); -
📝 语法糖文档发布 - safe 和 sqlSafe 完整使用指南
版本要求:
safe函数:v1.3.0+sqlSafe函数:v1.3.0+
简化的错误处理:
import { safe, sqlSafe } from "@lovrabet/sdk";
// safe - 普通 API
const { data, error } = await safe(() => client.models.users.filter());
if (!error) {
console.log(data);
}
// sqlSafe - SQL 查询
const { data, error } = await sqlSafe(() =>
client.sql.execute({ sqlCode: "xxx" })
);
if (!error) {
console.log(`查询到 ${data.length} 条记录`);
data.forEach((row) => console.log(row));
}👉 语法糖文档
-
📝 SQL API 变更说明 - 推荐使用新的命名空间方式
从 v1.1.19 开始,推荐使用
client.sql.execute()代替旧的client.api.executeSql():// ✅ 推荐:使用 client.sql 命名空间
const data = await client.sql.execute({
sqlCode: "fc8e7777-06e3847d",
params: { userId: "123" },
});
// ⚠️ 兼容:旧方式仍然可用
const data = await client.api.executeSql("fc8e7777-06e3847d", {
userId: "123",
});
Lovrabet 工具链
-
🤖 AI Vibe Coding 体系 - CLI、SDK、MCP 三位一体,全面赋能 AI 辅助开发
三大核心工具:
工具 核心功能 用户价值 Lovrabet CLI 项目初始化、代码生成、菜单同步、AI 集成配置 一键完成繁琐配置,节省 80% 初始化时间 Lovrabet SDK TypeScript SDK,提供 CRUD、Filter、SQL、BFF 四大 API 类型安全的数据访问,减少 60% 接口调试时间 Lovrabet MCP AI IDE 数据集访问能力,自动生成代码 AI 直接理解业务模型,代码生成准确率 90%+ 🔧 Lovrabet CLI (v1.2.5+) - 开发效率倍增器
# 项目初始化
lovrabet init # 快速配置 appCode
lovrabet api pull # 自动生成 SDK 配置(api.ts)
# AI 集成(新增)
lovrabet mcp install --cursor # 配置 Cursor MCP
# skill 安装已迁移到 npx
# npx skills add lovrabet/lovrabet-skill # 新方式(推荐)
# 菜单管理
lovrabet menu sync # 同步本地页面到平台菜单用户价值:
- ⚡ 快速启动:新项目 5 分钟完成配置,而非 1 小时手动设置
- 🎯 零配置错误:自动生成配置文件,避免 appCode、datasetCode 拼写错误
- 🔄 自动同步:菜单一键同步,无需手动在平台逐个创建
- 🤖 AI 就绪:一键安装 MCP 和 Skill,AI 立即理解项目结构
📦 Lovrabet SDK (v1.3.0+) - 类型安全的数据访问层
// CRUD 操作
const users = await client.models.users.filter({ status: "active" });
const user = await client.models.users.create({ name: "Alice" });
// 高级查询(Filter API)
const result = await client.models.orders.filter({
where: { amount: { $gte: 100, $lte: 500 } },
select: ["id", "amount", "status"],
orderBy: [{ createTime: "desc" }],
});
// 自定义 SQL(SQL API)
const stats = await client.sql.execute({
sqlCode: "user-stats",
params: { startDate: "2025-01-01" },
});
// 后端函数(BFF API)
const price = await client.bff.execute({
scriptName: "calculatePrice",
params: { productId: "123", quantity: 10 },
});用户价值:
- 🛡️ 类型安全:TypeScript 全程提示,编译期发现 90% 错误
- 🚀 开发提速:统一 API 风格,无需记忆多套接口规范
- 🎨 灵活查询:Filter API 支持复杂条件,无需写 SQL
- 🔌 业务解耦:BFF API 封装复杂逻辑,前端专注 UI
🧠 Lovrabet MCP - AI 的数据集知识库
让 AI IDE(Cursor、Claude Code、Windsurf)能够:
- 📊 理解数据模型:直接访问数据集字段、类型、枚举值、关联关系
- 🤖 生成准确代码:基于真实元数据生成 SDK 调用代码,字段名 100% 正确
- 🔍 智能 SQL 创建:5 步工作流(验证 → 确认 → 保存 → 测试 → 生成),防止 SQL 错误
- 📝 遵循规范:Skill 指导 AI 遵循项目开发规范(API 用法、UI 规范、错误处理)
Lovrabet Skill 六大模块:
模块 功能 技术价值 业务价值 TypeScript SDK 使用 Filter、SQL、BFF 完整用法 减少 API 误用 降低 30% 调试时间 MCP SQL 工作流 强制验证流程 防止 SQL 错误 避免生产数据问题 AntD UI 规范 避免"AI 味道"代码 统一 UI 风格 减少 UI 返工 API 集成指南 标准化调用模式 提高稳定性 缩短 50% 对接时间 菜单管理 自动化同步 避免配置错误 提升运维效率 BFF 脚本规范 最佳实践 提高可维护性 降低技术债务 支持的 AI IDE:
- Cursor (
.cursorrules+.cursor/skills/) - Windsurf (
.windsurf/workflows/) - Claude Code (
.claude/skills/) - Codex, OpenCode, Qoder, CodeBuddy, Trae
整体业务价值:
- 📈 开发效率提升 3-5 倍:AI 自动生成代码,减少 60-80% 重复劳动
- 🎯 学习成本降低 70%:新人 1 天上手,无需深入学习所有 API
- 🛡️ 错误率下降 80%:AI 遵循规范,避免常见错误(SQL 注入、字段拼写等)
- ⚡ 交付周期缩短 40%:从需求到上线,开发时间大幅压缩
- 🔄 代码质量提升:统一风格,团队协作更顺畅,代码审查更高效
-
📝 Skill 安装目录更正 - Cursor 的 skill 安装在
.cursor/skills/而非.cursor/commands/正确的文件结构:
your-project/
├── .cursorrules # Cursor 通用规则
├── .cursor/
│ └── skills/ # Cursor 技能 ✅
├── .windsurf/
│ └── workflows/ # Windsurf 工作流
├── .claude/
│ └── skills/ # Claude Code 技能
└── .lovrabet/
└── skill/ # 共享指南安装命令:
bash
新方式(推荐)
npx skills add lovrabet/lovrabet-skill
旧方式(已废弃)
lovrabet skill install --cursor
👉 [AI Skills 安装文档](/docs/lovrabet-cli/skills)
### 文档国际化
- 🌐 **完成英文翻译** - 所有新增和更新的文档已同步英文版本
**新增英文文档:**
- Model Alias Configuration(模型别名配置)
- BFF API Reference(BFF API 参考)
- Syntax Sugar(语法糖)
- Skill Installation(Skill 安装)
**更新英文文档:**
- API Usage Guide - 添加 BFF API 和 SQL API 变更说明
- 所有版本号已更正为 v1.3.0
**访问英文版:**
- 在浏览器中访问 `/en/` 路径
- 或使用页面右上角的语言切换器
---
## 2026-01-23
### Lovrabet CLI
- 📝 **skill 内容更新** - TypeScript SDK 使用指南全面升级
**01-filter-query → 01-typescript-sdk**
skill 指南重组为 **TypeScript SDK 使用指南**,覆盖三大核心 API:
| API | 说明 |
| ---------- | ----------------------------------------- |
| **Filter** | 数据集高级查询(where、select、orderBy) |
| **SQL** | 自定义 SQL 查询(`client.sql.execute()`) |
| **BFF** | 后端函数调用(`client.bff.execute()`) |
**新增内容:**
- SQL 自定义查询完整用法(对象参数格式)
- BFF 端点调用方法和错误处理
- 三大 API 对比表(用途、返回值、参数格式、错误处理)
- 统一的错误处理最佳实践
**API 调用方式:**
```typescript
// Filter - 高级查询
const result = await client.models.users.filter({
where: { status: { $eq: "active" } },
select: ["id", "name"],
currentPage: 1,
pageSize: 20,
});
// SQL - 自定义查询(推荐对象参数)
const data = await client.sql.execute({
sqlCode: "fc8e7777-06e3847d",
params: { userId: "123" },
});
// BFF - 后端函数(对象参数)
const result = await client.bff.execute({
scriptName: "getUserDashboard",
params: { userId: "123" },
});
错误处理规范:
- Filter/BFF: HTTP 错误抛出
LovrabetError - SQL: HTTP 错误抛出异常 + 业务错误用
execSuccess判断
Lovrabet SDK
-
✨ 三大 API 统一对象参数风格
SDK 现已统一推荐使用对象参数格式:
API 推荐格式 兼容格式 SQL { sqlCode, params }(sqlCode, params)BFF { scriptName, params }- 优势:
- 参数语义更清晰
- 便于扩展(如 BFF 支持
options传 Fetch 配置) - AI 工具更容易理解和生成
-
📝 响应处理逻辑统一
所有 API 响应处理统一:
- 成功:返回
data(业务数据层) - 失败:抛出
LovrabetError(由processResponse处理) - 应用层:负责检查业务状态(如 SQL 的
execSuccess)
- 成功:返回
2026-01-18
Lovrabet CLI
-
🤖 AI 集成能力 - v1.2.5 版本新增 MCP 配置和 skill 安装功能
MCP 配置命令 (
lovrabet mcp install)让 AI IDE 能够直接访问 Lovrabet 数据集:
lovrabet mcp install --cursor # 配置 Cursor MCP
lovrabet mcp install --claude # 配置 Claude Code MCP
lovrabet mcp install --other # 显示其他 IDE 配置指引- 自动写入
.cursor/mcp.json配置文件(Cursor) - 生成配置命令供手动执行(Claude Code)
- 复制 IDE 规则文件
skill 安装命令 (
lovrabet skill install)⚠️ 已废弃:推荐使用
npx skills add lovrabet/lovrabet-skill为 AI IDE 安装 Lovrabet 开发规范和指南:
# 旧方式(已废弃)
lovrabet skill install --cursor # 安装 Cursor skill
lovrabet skill install --all # 安装所有 IDE skill
# 新方式(推荐)
npx skills add lovrabet/lovrabet-skill支持的 IDE:
- Cursor (
.cursorrules+.cursor/commands/) - Windsurf (
.windsurf/workflows/) - Claude Code (
.claude/skills/) - Codex, OpenCode, Qoder, CodeBuddy, Trae
skill 内容:
- TypeScript SDK 使用指南(Filter、SQL、BFF 三大 API)
- MCP SQL 创建工作流(5 步强制流程)
- AntD UI 开发规范(避免 AI 味道)
- API 集成指南
- 菜单管理指南
- Backend Function 脚本编写规范
- 自动写入
2026-01-02
Lovrabet SDK
-
🤖 AI 友好的错误处理 - v1.2.5 版本增强
LovrabetError,新增description字段为 AI Coding 场景优化错误信息,帮助 LLM 理解错误原因并提供修复建议:
try {
await client.models.users.create({ invalid_field: "value" });
} catch (error) {
if (error instanceof LovrabetError) {
console.log(error.message); // "invalid_field列不存在"
console.log(error.code); // "SERVER_ERROR"
console.log(error.description);
// "服务端返回错误: invalid_field列不存在。错误类型: 参数错误。状态码: 400。
// 建议: 字段 "invalid_field" 不存在,请检查字段名是否拼写正确;
// 使用 MCP 工具获取数据集的正确字段列表"
}
}覆盖的错误类型:
MODEL_NOT_FOUND- 模型不存在,提供可用模型列表CONFIG_NOT_FOUND- 配置不存在,提供已注册配置列表SERVER_ERROR- 服务端参数错误,提供字段修复建议401 权限不足- 登录过期/appCode 无权限/HTTPS/CORS 等建议TIMEOUT- 请求超时,提供超时配置建议
2025-12-29 🎉 v1.2.0 重大版本发布
Lovrabet SDK v1.2.0
-
✨ 模型访问方式升级 - 支持标准方式和别名方式
// 标准方式(推荐)- 使用 dataset_ 前缀 + datasetCode
// 全局唯一,便于 AI 工具生成代码
const users =
await client.models.dataset_8d2dcbae08b54bdd84c00be558ed48df.filter();
// 别名方式(语法糖)- 使用配置的 alias
// 方便人类阅读,功能与标准方式完全一致
const users = await client.models.users.filter();别名只是一个指向,内部仍使用 datasetCode 访问,所有特性与标准方式相同。
-
✨ 配置结构重新设计 - 面向 AI 调用优化,重新设计了
registerModels函数的参数结构registerModels({
appCode: "your-app-code",
models: [
{
datasetCode: "8d2dcbae08b54bdd84c00be558ed48df",
tableName: "users",
alias: "users", // 可选:模型别名,语法糖
name: "用户表", // 可选:UI 显示名称
},
],
});新结构以 datasetCode 为核心标识,对 AI 更友好,生成的代码更规范。
-
✨ 模型管理器增强 - 新增多个管理方法
// 获取所有模型详细信息
const details = client.getModelListDetails();
// 返回: [{ datasetCode: '8d2dcbae08b54bdd84c00be558ed48df', alias: 'users', name: '用户表' }, ...]
// 动态添加模型
client.addModel({
datasetCode: "f7e6d5c4b3a2901234567890fedcba98",
tableName: "products",
alias: "products",
}); -
✅ 完全向下兼容 - 所有现有代码无需修改即可正常运行
Lovrabet CLI v1.2.0
-
✨ SDK 版本兼容性检查 - 启动时自动检测项目中的
@lovrabet/sdk版本- 如果检测到低于 1.2.0 版本,显示黄色警告提示升级
- 确保能使用最新的模型别名等功能
-
✨ API 配置结构优化 - 生成的配置对 AI 更友好,支持模型别名
// v1.2.0+ 生成的 api.ts
export const LOVRABET_MODELS_CONFIG = {
appCode: "my-app",
models: [
{
datasetCode: "8d2dcbae08b54bdd84c00be558ed48df",
tableName: "users",
alias: "users", // 模型别名,便于代码阅读
name: "用户管理", // UI 显示名称
},
],
} as const;👉 CLI 命令参考
Lovrabet MCP v1.2.0
-
⚡ 性能与稳定性大幅提升 - 底层架构全面升级,响应更快、运行更稳定
-
✨ 进一步减少 AI 幻觉 - 提供更精准的字段元数据(数据库类型、长度、自增等),帮助 AI 生成更准确的代码
-
✨ SDK/CLI 版本兼容指引 - 生成的代码会自动提示 SDK 版本要求,引导用户升级到 1.2.0+ 以使用别名访问等新特性
👉 MCP 服务文档
2025-12-03
Lovrabet SDK
-
✨ 新增 Excel 导出功能 - v1.1.24 版本支持将数据集导出为 Excel 文件
通过
excelExport()方法快速导出数据:// 导出所有数据
const fileUrl = await client.models.users.excelExport();
window.open(fileUrl, "_blank");
// 按条件筛选导出
const fileUrl = await client.models.users.excelExport({
status: "active",
createTime: "2025-01-01",
});核心特性:
- 返回可下载的文件 URL(OSS 地址)
- 支持传递筛选条件(
ListParams) - 直接使用
window.open()打开下载 - 仅 WebAPI 模式(Cookie 认证)支持
2025-11-21
Lovrabet SDK
-
✨ Filter API 支持 OpenAPI 模式 - v1.1.22 版本扩展 filter() 到全模式支持
从 v1.1.22 开始,
filter()方法同时支持 OpenAPI 模式 和 WebAPI 模式:// OpenAPI 模式下使用 filter
const client = createClient({
appCode: "your-app-code",
accessKey: process.env.LOVRABET_ACCESS_KEY,
models: { users: { tableName: "users", datasetCode: "ds-001" } },
});
const result = await client.models.users.filter({
where: {
$and: [
{ age: { $gte: 18, $lte: 45 } },
{ country: { $in: ["中国", "美国"] } },
],
},
select: ["id", "name", "age"],
orderBy: [{ createTime: "desc" }],
currentPage: 1,
pageSize: 20,
});更新内容:
- OpenAPI 模式现已支持
filter()高级过滤查询 - 与 WebAPI 模式保持一致的 API 接口
- 支持所有条件操作符和逻辑组合
- OpenAPI 模式现已支持
2025-11-15
Lovrabet SDK
-
✨ 新增 Filter API 高级过滤查询 - v1.1.21 版本支持更强大的数据筛选能力
通过
client.models.xxx.filter()方法进行复杂条件查询:// 范围查询 + 模糊搜索 + 字段筛选
const users = await client.models.users.filter({
where: {
age: { $gte: 18, $lte: 35 }, // 年龄 18-35
username: { $contain: "john" }, // 用户名包含 john
status: { $in: ["active", "pending"] }, // 状态为 active 或 pending
},
fields: ["id", "username", "age"], // 只返回这些字段
sortList: [{ createTime: "desc" }],
pageSize: 20,
});核心优势:
- 支持范围查询(
$gte、$lte) - 支持模糊匹配(
$contain、$startWith、$endWith) - 支持集合操作(
$in、$ne) - 支持复杂逻辑(
$and、$or) - 支持字段筛选,减少数据传输
适用场景:
- 复杂的数据筛选和搜索功能
- 多条件组合查询
- 高级数据分析和报表
- 支持范围查询(
2025-11-11
Lovrabet SDK
-
✨ 新增 SQL API 支持 - v1.1.19 版本支持执行自定义 SQL 查询
通过
client.api.executeSql()方法执行平台上配置的自定义 SQL:// 执行 SQL 查询
const data = await client.api.executeSql("fc8e7777-06e3847d");
// 应用层检查执行结果
if (data.execSuccess && data.execResult) {
data.execResult.forEach((row) => {
console.log(row);
});
}核心特性:
- 支持参数化查询,防止 SQL 注入
- 完整的 TypeScript 类型支持
适用场景:
- 复杂数据统计和聚合查询
- 跨表关联查询
- 自定义报表数据获取
- 灵活的数据分析需求
👉 详细使用指南
2025-11-04
Lovrabet CLI
-
✨ 新增菜单同步命令 - v1.1.15 版本新增
lovrabet menu sync开发完成新页面后,一键同步到 Lovrabet 平台,自动创建菜单:
lovrabet menu sync核心功能:
- 自动扫描本地
src/pages目录,对比平台菜单 - 可视化展示差异(绿色 ✓ 已存在,红色 ✗ 未创建)
- 批量创建缺失的菜单
- 支持配置 JS/CSS CDN 链接
- 实时验证 URL 格式和可达性
使用场景:
- 开发新页面后同步到平台
- 批量管理多个页面菜单
- 确保本地与平台一致
👉 详细使用指南
- 自动扫描本地
2025-10-25
OpenAPI 文档
- 🐛 修复 术语与示例不一致
- 全面统一
datasetId→datasetCode - 统一环境变量名为
LOVRABET_DATASET_CODE
- 全面统一
- 🎨 优化 列表返回结构描述
- 明确
filter返回包含paging/tableData/tableColumns - 示例与说明对齐,便于直接复制运行
- 明确
Lovrabet CLI
- 📝 校对命令文档
- 确认并补充
lovrabet api doc及--datasetcode、--params选项说明(与实现一致)
- 确认并补充
Lovrabet SDK
- 📝 README 示例对齐
- 示例统一为
datasetCode - 补充
filter返回结构读取示例(读取paging与tableColumns)
- 示例统一为
2025-10-18
Lovrabet SDK
-
✨ 新增下拉选项接口 - v1.1.18 版本支持快速获取表单选项数据
-
新增
getSelectOptions()方法,用于获取数据表的下拉选项 -
返回标准化的
{ label, value }格式,直接适用于前端组件 -
自动从数据表字段映射为选项数据
-
适用于 Select、Radio、Checkbox 等表单组件
-
仅 WebAPI 模式(Cookie 认证)支持
-
示例:
// 获取下拉选项
const options = await client.models.users.getSelectOptions({
code: "user_id", // 用作选项值的字段名
label: "user_name", // 用作显示文本的字段名
});
// 返回格式:
// [
// { label: '张三', value: 'user001' },
// { label: '李四', value: 'user002' }
// ]
// 在 React 中使用
<Select>
{options.map((option) => (
<Option key={option.value} value={option.value}>
{option.label}
</Option>
))}
</Select>;
-
-
📋 新增类型定义 - v1.1.17 版本
SelectOption接口:{ label: string, value: string }SelectOptionsParams接口:{ code: string, label: string }
-
⚠️ 明确 OpenAPI 模式限制 - v1.1.18 版本
- OpenAPI 模式暂不支持
delete()操作 - OpenAPI 模式暂不支持
getSelectOptions()操作 - 如需使用这些功能,请使用 WebAPI 模式(Cookie 认证)或自行开发 API 接口
- OpenAPI 模式暂不支持
Lovrabet CLI
-
🎨 优化命名约定 - v1.1.13 版本改进代码生成规范
- 数据集名称生成采用 camelCase 命名(首字母小写)
- 符合 JavaScript/TypeScript 变量命名规范
- 示例:
order_items表 → 生成orderItems模型(而非OrderItems)user_profile表 → 生成userProfile模型(而非UserProfile)
- 确保生成的代码风格统一,提升代码可读性
-
🔧 代码生成优化 - v1.1.13 版本
- 简化模型配置生成逻辑
- 提升代码生成性能和可维护性
2025-10-17
Lovrabet CLI
-
✨ 新增
lovrabet init命令 - v1.1.12 版本支持为现有项目快速初始化配置-
为已有项目添加 Lovrabet 配置支持
-
交互式输入 appcode,带实时格式验证
-
自动检测并防止覆盖现有配置文件
-
继承全局配置,无需重复设置
-
配置文件包含创建时间和 CLI 版本信息
-
使用示例:
# 交互式初始化
lovrabet init
# 直接指定 appcode
lovrabet init --appcode my-app-code
-
-
✨
lovrabet api doc增强 - v1.1.12 版本支持按需生成和自定义参数-
新增
--datasetcode参数:指定要生成文档的数据集 -
支持多个数据集(用逗号分隔)
-
智能验证:自动检查指定的数据集代码是否存在
-
统计反馈:显示匹配的数据集数量和无效的代码
-
支持通过
--params参数传递 JSON 格式的额外参数 -
使用示例:
# 生成所有数据集的文档
lovrabet api doc
# 只生成指定数据集的文档
lovrabet api doc --datasetcode ds_001
# 生成多个指定数据集的文档
lovrabet api doc --datasetcode ds_001,ds_002,ds_003
# 传递额外参数
lovrabet api doc --params '{"customField": "value"}'
-
-
📊 优化文件命名策略 - v1.1.12 版本提高文件名唯一性
- 短代码从 4 位扩展到 6 位
- 减少文件名冲突的可能性
2025-10-16
Lovrabet SDK
-
✨ 新增列表排序功能 - v1.1.16 版本支持多字段组合排序
-
使用
SortOrder枚举控制升序/降序 -
支持多字段优先级排序
-
同时兼容 OpenAPI 和 WebAPI 两种模式
-
示例:
import { SortOrder } from "@lovrabet/sdk";
const users = await client.models.users.filter(
{ currentPage: 1, pageSize: 20 },
[
{ priority: SortOrder.DESC }, // 优先级降序
{ createTime: SortOrder.DESC }, // 创建时间降序
{ name: SortOrder.ASC }, // 名称升序
]
);
-
-
🔧 ModelConfig 接口增强 - 新增
name可选字段,提升配置灵活性 -
🐛 调试功能优化 - v1.1.14 新增调试日志功能
- 支持输出完整 HTTP 请求详情(URL、Headers、Body)
- 通过
options.debug: true启用 - 便于排查接口调用问题
Lovrabet CLI
-
✨ 数据集管理优化 - v1.1.10 版本全面提升数据管理能力
- 智能去重机制:自动识别并去除重复数据集
- 优化 SDK 数据获取页面模板,精简 UI 组件
- 增强表格数据处理能力,提升性能
-
📄 API 文档生成 - 新增自动生成 API 文档功能
- 从数据集自动生成 API 使用文档
- 提供完整的接口说明和示例代码
- 支持自定义文档模板
-
📊 日志系统增强 - CLI 日志追踪能力全面升级
- 命令执行全流程追踪
- 增强错误定位能力
- 支持日志级别过滤
-
🎯 用户体验优化
- 改进 API 配置管理流程
- 优化交互提示信息
- 提升命令响应速度
2025-10-12
Java OpenSDK
-
✨ 新增 Java OpenSDK 完整文档体系
- 📖 快速开始 - 5 分钟完成第一个 CRUD 程序
- 📚 核心概念 - SDK 工作原理和认证机制详解
- 📋 API 参考 - 完整的接口文档和参数说明
- 💡 业务示例 - 5 个真实场景的完整实现(客户管理、订单同步、数据看板、数据中台、定时任务)
- 🚀 最佳实践 - 生产环境部署和性能优化指南
- ❓ 常见问题 - 覆盖安装、配置、开发全流程的疑难解答
-
🎨 优化 文档结构
- 调整菜单顺序,按照学习路径排列(快速开始 → 核心概念 → 示例 → 最佳实践 → API 参考 → FAQ)
- API 参考移至菜单末尾,便于快速上手后查阅
文档体验优化
-
🐛 修复 代码块语法高亮问题
- 为 Java、Gradle、YAML、Bash 等语言支持
- 为所有代码示例添加正确的语言标识符
-
🎨 优化 单文档模式显示效果
- 修复单文档模式下页面宽度限制问题
- 实现响应式设计,不同屏幕尺寸自适应边距(小屏压缩边距,大屏保持舒适阅读宽度)
内容完善
- 📝 更新 Rabetbase 介绍
- 补充 OpenAPI 当前状态说明(内测阶段,仅数据查询功能)
- 补充 Java OpenSDK 完整功能说明(支持完整 CRUD 操作)
- 新增快速开始指南,按技术栈分类(前端开发者、后端开发者)
- 新增技术选型对比表,帮助开发者选择合适方案
使用说明
本更新记录遵循以下格式:
- ✨ 新增 - 全新的功能或文档章节
- 🎨 优化 - 改进现有内容的表述或结构
- 🐛 修复 - 修正文档中的错误或问题
- 📝 完善 / 更新 - 补充或丰富现有内容
- 🔐 安全 - 与安全相关的更新
- ⚡ 性能 - 与性能优化相关的更新
- 📊 示例 - 新增或更新代码示例
- 🛠️ 工具 - 开发工具或辅助功能相关
- 📖 文档 - 文档相关的改进