Loom
简体中文 | English
基于 AI 的 JSON Schema 文档生成器,集成 TUI 交互、Web 浏览器与 Mock 服务

✨ 特性
- 🤖 AI 驱动的 Schema 生成 —— 通过 TUI 聊天界面与大模型(DeepSeek、OpenAI)对话生成和更新 JSON Schema API 文档
- 🧩 实体(Entity)建模 —— 在
docs/entities 中维护可复用的实体 Schema,通过 x-entity-ref 在接口 Schema 中引用
- 📚 现代 Web 浏览器 —— 基于 React 的 SPA,用于浏览模块、接口和实体,支持交互式 Schema 渲染
- ⚡ Mock 服务 —— 基于 JSON Schema 动态生成贴近真实的 Mock 数据
- 🖥️ TUI 内服务控制 —— 直接在 TUI 中启动/停止/重启 Mock 与 Web Viewer(
/mock、/view)
- 🗂️ Manifest 索引 —— 内置
loom manifest rebuild 命令重建依赖/索引一致性
- ⬆️ 自动升级提示 —— 启动时检查 npm 上的新版本,确认后可自动升级
- 🔧 TypeScript 优先 —— 完整类型定义,现代化的 TypeScript 架构
📦 安装
环境要求
- Node.js ≥ 18.0.0
- npm 或 yarn
- DeepSeek API Key(必需)
全局安装
bash
npm install -g @vegamo/loom
# 或
yarn global add @vegamo/loom
⚙️ 配置
配置文件
默认全局配置路径:
- macOS/Linux:
~/.loom/config.json
- Windows:
%APPDATA%/loom/config.json
首次运行 loom chat 时,会以交互向导的形式引导你创建/更新该全局配置文件。
聊天首次引导的默认值:
provider:deepseek
model:deepseek-chat
baseURL:https://api.deepseek.com/v1
apiKey:必填,需由用户输入
你也可以手动创建全局配置:
json
{
"outDir": "docs",
"llm": {
"provider": "deepseek",
"model": "deepseek-chat",
"baseURL": "https://api.deepseek.com/v1",
"apiKey": "your_deepseek_api_key",
"temperature": 0.7,
"maxTokens": 2000
},
"serve": {
"port": 3000,
"host": "0.0.0.0"
},
"mock": {
"port": 3001,
"host": "0.0.0.0"
}
}
docs/ 目录仍保留在各项目目录中(通过 --dir 指定),不会被移动到全局存储。
🚀 快速开始
1. 生成 API 文档
bash
# 启动交互式 TUI 来生成 JSON Schema
loom chat
# 或指定项目目录
loom chat --dir ./my-api-project
在 loom chat 中,你也可以控制本地服务:
/mock、/mock stop、/mock restart [port]
/view、/view stop、/view restart [port]
2. 浏览文档
bash
# 启动 Web 文档浏览器
loom view
# 或指定端口
loom view --port 8080