refactor: 删除旧格式文件,不保留向后兼容

This commit is contained in:
Johnson
2026-02-25 08:44:57 +08:00
parent 3479e182ab
commit eb95c7ace3
5 changed files with 2 additions and 817 deletions

View File

@@ -10,15 +10,11 @@ DesireCore 官方应用商店与服务注册表数据仓库。
├── SCHEMA_VERSION # 数据格式版本2.0.0 ├── SCHEMA_VERSION # 数据格式版本2.0.0
├── manifest.json # 仓库元数据 ├── manifest.json # 仓库元数据
├── apps/ ├── apps/
── index.json # StoreApp[] 应用列表(v2: 含 install 字段) ── index.json # StoreApp[] 应用列表(含 install 字段)
│ └── apps.json # [旧版兼容] 应用列表
├── mcp/ ├── mcp/
│ └── index.json # RegisteredService[] MCP 服务(含 install + connection │ └── index.json # RegisteredService[] MCP 服务(含 install + connection
├── services/ ├── services/
── index.json # RegisteredService[] HTTP 服务 ── index.json # RegisteredService[] HTTP 服务
│ ├── services.json # [旧版兼容] 所有服务MCP + HTTP 混合)
│ ├── descriptors.json # [旧版兼容] → models/descriptors.json
│ └── categories.json # [旧版兼容] → models/categories.json
├── models/ ├── models/
│ ├── descriptors.json # ServiceDescriptor[] 模型能力描述符 │ ├── descriptors.json # ServiceDescriptor[] 模型能力描述符
│ └── categories.json # ServiceCategoryDescriptor[] 模型分类 │ └── categories.json # ServiceCategoryDescriptor[] 模型分类
@@ -27,15 +23,6 @@ DesireCore 官方应用商店与服务注册表数据仓库。
└── service-status.json # 服务状态 UI 配置 └── service-status.json # 服务状态 UI 配置
``` ```
## v2 新增
- **`mcp/index.json`**MCP 服务独立目录,每个条目包含 `install`(安装方式)和 `connection`(连接配置)
- **`models/`**AI 模型描述符从 `services/` 移出
- **`apps/index.json`**:应用增加 `install` 字段
- **`services/index.json`**:仅 HTTP 服务
旧路径文件保留用于向后兼容,新版客户端优先读取新路径。
## 数据格式 ## 数据格式
所有 JSON 文件遵循 DesireCore 定义的 JSON Schema 所有 JSON 文件遵循 DesireCore 定义的 JSON Schema

View File

@@ -1,186 +0,0 @@
[
{
"id": "dify",
"name": "Dify",
"icon": "linear-gradient(135deg, #1C64F2, #7C3AED)",
"iconLetter": "D",
"shortDesc": "开源 AI 应用开发平台,支持 RAG、Agent、工作流编排",
"fullDesc": "Dify 是一个开源的 LLM 应用开发平台,提供从 Agent 构建到 AI Workflow 编排、RAG 检索、模型管理等能力,轻松构建和运营生成式 AI 原生应用。支持数百种模型接入。",
"category": "ai-platform",
"tags": ["LLM", "RAG", "Agent", "Workflow"],
"version": "0.8.3",
"latestVersion": "0.8.3",
"author": "Dify.AI",
"githubUrl": "https://github.com/langgenius/dify",
"stars": 56200,
"installStatus": "not_installed",
"requirements": {
"docker": true,
"minMemory": "4GB",
"minDisk": "10GB",
"ports": [3000, 5001]
},
"configNeeded": ["Docker 运行环境", "OpenAI API Key可选"]
},
{
"id": "ragflow",
"name": "RagFlow",
"icon": "linear-gradient(135deg, #F97316, #EF4444)",
"iconLetter": "R",
"shortDesc": "基于深度文档理解的开源 RAG 引擎",
"fullDesc": "RagFlow 是一款基于深度文档理解构建的开源 RAG 引擎。可以为各种规模的企业及个人提供流畅的 RAG 工作流结合大语言模型LLM针对用户各类不同的复杂格式数据提供可靠的问答以及有理有据的引用。",
"category": "rag",
"tags": ["RAG", "文档理解", "知识库"],
"version": "0.14.0",
"latestVersion": "0.15.0",
"author": "InfiniFlow",
"githubUrl": "https://github.com/infiniflow/ragflow",
"stars": 28400,
"installStatus": "not_installed",
"requirements": {
"docker": true,
"minMemory": "8GB",
"minDisk": "20GB",
"ports": [9380, 443, 80]
},
"configNeeded": ["Docker 运行环境", "Elasticsearch / Infinity 数据库"]
},
{
"id": "open-webui",
"name": "Open WebUI",
"icon": "linear-gradient(135deg, #6366F1, #8B5CF6)",
"iconLetter": "O",
"shortDesc": "自托管的 AI 对话界面,支持 Ollama 和 OpenAI 兼容 API",
"fullDesc": "Open WebUI 是一个可扩展的自托管 AI 界面,支持完全离线操作。支持多种 LLM 运行器,包括 Ollama 和 OpenAI 兼容 API内置 RAG 集成、网页浏览、代码执行等功能。",
"category": "chat",
"tags": ["Chat", "Ollama", "WebUI"],
"version": "0.4.8",
"latestVersion": "0.4.8",
"author": "Open WebUI",
"githubUrl": "https://github.com/open-webui/open-webui",
"stars": 52800,
"installStatus": "not_installed",
"requirements": {
"docker": true,
"minMemory": "2GB",
"minDisk": "5GB",
"ports": [8080]
},
"configNeeded": ["Docker 运行环境", "Ollama 或 OpenAI API Key"]
},
{
"id": "n8n",
"name": "n8n",
"icon": "linear-gradient(135deg, #EA4B71, #D93668)",
"iconLetter": "n",
"shortDesc": "可视化工作流自动化平台,支持 400+ 集成",
"fullDesc": "n8n 是一个可扩展的工作流自动化工具。使用公平代码许可,拥有原生 AI 能力,可以连接任何东西。支持自托管,提供丰富的第三方服务集成节点。",
"category": "workflow",
"tags": ["Automation", "Workflow", "Integration"],
"version": "1.64.0",
"latestVersion": "1.64.0",
"author": "n8n-io",
"githubUrl": "https://github.com/n8n-io/n8n",
"stars": 50600,
"installStatus": "not_installed",
"requirements": {
"docker": true,
"minMemory": "2GB",
"minDisk": "5GB",
"ports": [5678]
},
"configNeeded": ["Docker 运行环境", "数据库SQLite / PostgreSQL"]
},
{
"id": "coze",
"name": "Coze",
"icon": "linear-gradient(135deg, #3B82F6, #1D4ED8)",
"iconLetter": "C",
"shortDesc": "字节跳动 AI Bot 开发平台(开源社区版)",
"fullDesc": "Coze 是一个 AI 聊天机器人和应用开发平台,提供 LLM、知识库、插件和工作流等能力。支持快速构建、测试和部署 AI Bot无需编程经验。",
"category": "ai-platform",
"tags": ["Bot", "LLM", "插件"],
"version": "0.5.0",
"latestVersion": "0.5.0",
"author": "Coze",
"githubUrl": "https://github.com/coze-dev/coze",
"stars": 12300,
"installStatus": "not_installed",
"requirements": {
"docker": true,
"minMemory": "4GB",
"minDisk": "8GB",
"ports": [8800]
},
"configNeeded": ["Docker 运行环境", "API Key 配置"]
},
{
"id": "lobechat",
"name": "LobeChat",
"icon": "linear-gradient(135deg, #000000, #333333)",
"iconLetter": "L",
"shortDesc": "开源高性能聊天机器人框架,支持多模型和插件",
"fullDesc": "LobeChat 是一个开源的现代设计 ChatGPT/LLM UI 框架支持多模型服务提供商OpenAI / Claude / Gemini / Ollama 等),多模态和可扩展的插件系统。一键免费部署私有 ChatGPT/Claude 应用。",
"category": "chat",
"tags": ["Chat", "多模型", "插件"],
"version": "1.20.0",
"latestVersion": "1.20.0",
"author": "LobeHub",
"githubUrl": "https://github.com/lobehub/lobe-chat",
"stars": 48900,
"installStatus": "not_installed",
"requirements": {
"docker": true,
"minMemory": "1GB",
"minDisk": "3GB",
"ports": [3210]
},
"configNeeded": ["Docker 运行环境", "OpenAI API Key可选"]
},
{
"id": "anythingllm",
"name": "AnythingLLM",
"icon": "linear-gradient(135deg, #10B981, #059669)",
"iconLetter": "A",
"shortDesc": "全能型 AI 桌面应用,支持 RAG、Agent 和文档对话",
"fullDesc": "AnythingLLM 是一个全能型 AI 应用,可以将任何文档、资源或内容转化为上下文,供任何 LLM 在聊天中使用。支持多用户管理、权限控制和嵌入式对话。",
"category": "tools",
"tags": ["RAG", "Desktop", "文档对话"],
"version": "1.6.2",
"latestVersion": "1.6.2",
"author": "Mintplex Labs",
"githubUrl": "https://github.com/Mintplex-Labs/anything-llm",
"stars": 30200,
"installStatus": "not_installed",
"requirements": {
"docker": true,
"minMemory": "2GB",
"minDisk": "5GB",
"ports": [3001]
},
"configNeeded": ["Docker 运行环境", "LLM API Key"]
},
{
"id": "openclaw",
"name": "OpenClaw",
"icon": "linear-gradient(135deg, #F59E0B, #DC2626)",
"iconLetter": "O",
"shortDesc": "开源 Agent 运行时平台,支持多 Agent 编排和工具策略",
"fullDesc": "OpenClaw 是一个开源的 Agent 运行时平台,提供嵌入式运行时、会话管理、工具策略控制、多 Agent 编排、Sandbox 隔离执行等能力。支持流式输出、对话压缩、队列管理和 hooks 扩展,适合构建企业级 AI 应用。",
"category": "ai-platform",
"tags": ["Agent", "Runtime", "Multi-Agent", "Sandbox"],
"version": "0.9.0",
"latestVersion": "0.9.0",
"author": "OpenClaw",
"githubUrl": "https://github.com/openclaw/openclaw",
"stars": 8500,
"installStatus": "not_installed",
"requirements": {
"docker": true,
"minMemory": "4GB",
"minDisk": "10GB",
"ports": [8080, 3000]
},
"configNeeded": ["Docker 运行环境", "Node.js 18+", "API Key 配置"]
}
]

View File

@@ -1,50 +0,0 @@
[
{
"id": "language",
"label": "语言模型",
"icon": "message-circle",
"order": 1,
"description": "文本对话、推理、翻译等语言处理服务",
"origin": "builtin"
},
{
"id": "voice",
"label": "语音模型",
"icon": "volume-2",
"order": 2,
"description": "语音合成、识别、复刻等语音处理服务",
"origin": "builtin"
},
{
"id": "vision",
"label": "视觉模型",
"icon": "eye",
"order": 3,
"description": "图像理解、OCR、图像/视频生成等视觉处理服务",
"origin": "builtin"
},
{
"id": "vector",
"label": "向量模型",
"icon": "bar-chart-3",
"order": 4,
"description": "文本向量化和检索重排序",
"origin": "builtin"
},
{
"id": "omni",
"label": "全能模型",
"icon": "globe",
"order": 5,
"description": "原生多模态模型,同时具备文本、视觉、语音能力",
"origin": "builtin"
},
{
"id": "action",
"label": "操控模型",
"icon": "monitor",
"order": 6,
"description": "桌面操控、代码执行等需要 Agent Loop 编排的交互式服务",
"origin": "builtin"
}
]

View File

@@ -1,423 +0,0 @@
[
{
"id": "chat",
"version": "1.0.0",
"category": "language",
"display": {
"label": "主对话",
"shortLabel": "Chat",
"groupLabel": "Chat 模型",
"icon": "message-circle",
"description": "通用对话服务Agent 核心交互能力"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "reasoning",
"version": "1.0.0",
"category": "language",
"display": {
"label": "推理",
"shortLabel": "Reason",
"groupLabel": "推理模型",
"icon": "brain",
"description": "复杂推理服务,适合深度思考和分析任务"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "fast",
"version": "1.0.0",
"category": "language",
"display": {
"label": "快速",
"shortLabel": "Fast",
"groupLabel": "快速模型",
"icon": "zap",
"description": "低延迟响应,适合简单快速任务"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "responses",
"version": "1.0.0",
"category": "language",
"display": {
"label": "Responses",
"shortLabel": "Resp.",
"groupLabel": "Responses",
"icon": "circle-help",
"description": "OpenAI Responses API高级推理与工具使用"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "translation",
"version": "1.0.0",
"category": "language",
"display": {
"label": "翻译",
"shortLabel": "Trans",
"groupLabel": "翻译模型",
"icon": "languages",
"description": "多语种互译服务"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "tts",
"version": "1.0.0",
"category": "voice",
"display": {
"label": "语音合成",
"shortLabel": "TTS",
"groupLabel": "TTS 语音合成",
"icon": "volume-2",
"description": "将文本转换为语音音频"
},
"modelFields": [
{
"name": "voices",
"type": "array",
"items": "string",
"label": "可选音色",
"description": "该模型支持的音色列表",
"required": true
},
{
"name": "supportedAudioFormats",
"type": "array",
"items": "string",
"label": "支持的音频格式",
"description": "支持的输出格式列表",
"required": true
}
],
"origin": "builtin",
"mutable": false
},
{
"id": "asr",
"version": "1.0.0",
"category": "voice",
"display": {
"label": "语音识别",
"shortLabel": "ASR",
"groupLabel": "ASR 语音识别",
"icon": "mic",
"description": "将语音音频转换为文本"
},
"modelFields": [
{
"name": "maxAudioLength",
"type": "number",
"label": "最大音频时长",
"description": "支持的最大音频时长(秒)",
"required": false
},
{
"name": "supportedInputFormats",
"type": "array",
"items": "string",
"label": "支持的输入格式",
"description": "支持的音频输入格式列表",
"required": false
},
{
"name": "streamingSupported",
"type": "boolean",
"label": "流式支持",
"description": "是否支持流式语音识别",
"required": false
}
],
"origin": "builtin",
"mutable": false
},
{
"id": "voice_clone",
"version": "1.0.0",
"category": "voice",
"display": {
"label": "声音复刻",
"shortLabel": "VClone",
"groupLabel": "声音复刻",
"icon": "audio-lines",
"description": "通过少量样本克隆声音"
},
"modelFields": [
{
"name": "maxCloneSamples",
"type": "number",
"label": "最大参考音频数",
"description": "允许的最大参考音频样本数",
"required": false
},
{
"name": "minCloneDuration",
"type": "number",
"label": "最短参考时长",
"description": "最短参考音频时长(秒)",
"required": false
}
],
"origin": "builtin",
"mutable": false
},
{
"id": "realtime_voice",
"version": "1.0.0",
"category": "voice",
"display": {
"label": "实时语音",
"shortLabel": "RtVoice",
"groupLabel": "实时语音交互",
"icon": "phone",
"description": "低延迟实时语音交互"
},
"modelFields": [
{
"name": "supportedModes",
"type": "array",
"items": "string",
"label": "支持的模式",
"description": "支持的交互模式列表",
"required": false
},
{
"name": "latencyMs",
"type": "number",
"label": "典型延迟",
"description": "典型延迟(毫秒)",
"required": false
}
],
"origin": "builtin",
"mutable": false
},
{
"id": "simultaneous_interpret",
"version": "1.0.0",
"category": "voice",
"display": {
"label": "同声传译",
"shortLabel": "SimInterp",
"groupLabel": "同声传译",
"icon": "globe",
"description": "实时同声传译服务"
},
"modelFields": [
{
"name": "streamingSupported",
"type": "boolean",
"label": "流式支持",
"description": "是否支持流式传译",
"required": false
}
],
"origin": "builtin",
"mutable": false
},
{
"id": "vision",
"version": "1.0.0",
"category": "vision",
"display": {
"label": "视觉",
"shortLabel": "Vision",
"groupLabel": "视觉模型",
"icon": "eye",
"description": "图像理解与分析"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "ocr",
"version": "1.0.0",
"category": "vision",
"display": {
"label": "OCR",
"shortLabel": "OCR",
"groupLabel": "OCR",
"icon": "pen-line",
"description": "光学字符识别"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "image_gen",
"version": "1.0.0",
"category": "vision",
"display": {
"label": "文生图",
"shortLabel": "ImgGen",
"groupLabel": "文生图",
"icon": "palette",
"description": "根据文本描述生成图像"
},
"modelFields": [
{
"name": "supportedImageSizes",
"type": "array",
"items": "string",
"label": "支持的图像尺寸",
"description": "支持的输出图像尺寸列表",
"required": false
},
{
"name": "supportedStyles",
"type": "array",
"items": "string",
"label": "支持的风格",
"description": "支持的生成风格列表",
"required": false
}
],
"origin": "builtin",
"mutable": false
},
{
"id": "video_gen",
"version": "1.0.0",
"category": "vision",
"display": {
"label": "文生视频",
"shortLabel": "VidGen",
"groupLabel": "文生视频",
"icon": "clapperboard",
"description": "根据文本描述生成视频"
},
"modelFields": [
{
"name": "maxVideoDuration",
"type": "number",
"label": "最大视频时长",
"description": "支持的最大视频时长(秒)",
"required": false
},
{
"name": "supportedResolutions",
"type": "array",
"items": "string",
"label": "支持的分辨率",
"description": "支持的视频分辨率列表",
"required": false
}
],
"origin": "builtin",
"mutable": false
},
{
"id": "embedding",
"version": "1.0.0",
"category": "vector",
"display": {
"label": "向量化",
"shortLabel": "Embed",
"groupLabel": "Embedding",
"icon": "bar-chart-3",
"description": "文本向量化,用于语义搜索和检索"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "rerank",
"version": "1.0.0",
"category": "vector",
"display": {
"label": "重排序",
"shortLabel": "Rerank",
"groupLabel": "Rerank",
"icon": "search",
"description": "检索结果重排序,提升搜索精度"
},
"modelFields": [],
"origin": "builtin",
"mutable": false
},
{
"id": "omni",
"version": "1.0.0",
"category": "omni",
"display": {
"label": "全能模型",
"shortLabel": "Omni",
"groupLabel": "全能模型",
"icon": "globe",
"description": "原生多模态模型,同时具备文本、视觉、语音能力"
},
"modelFields": [
{
"name": "supportedModes",
"type": "array",
"items": "string",
"label": "支持的模式",
"description": "支持的交互模式列表",
"required": false
},
{
"name": "latencyMs",
"type": "number",
"label": "典型延迟",
"description": "典型延迟(毫秒)",
"required": false
}
],
"origin": "builtin",
"mutable": false
},
{
"id": "computer_use",
"version": "1.0.0",
"category": "action",
"display": {
"label": "桌面操控",
"shortLabel": "CmpUse",
"groupLabel": "桌面操控",
"icon": "monitor",
"description": "通过截屏和鼠标/键盘控制实现桌面自动化"
},
"modelFields": [
{
"name": "supportedActions",
"type": "array",
"items": "string",
"label": "支持的操作",
"description": "该模型支持的桌面操作列表",
"required": true
},
{
"name": "toolVersion",
"type": "string",
"label": "Tool 版本",
"description": "该模型对应的 computer tool 版本标识",
"required": true
},
{
"name": "betaFlag",
"type": "string",
"label": "Beta 请求头",
"description": "该模型需要的 beta header 值",
"required": true
}
],
"origin": "builtin",
"mutable": false
}
]

View File

@@ -1,143 +0,0 @@
[
{
"id": "fs-mcp",
"name": "Filesystem MCP",
"description": "本地文件系统操作,支持读写、搜索、监控文件变化",
"protocol": "mcp",
"status": "offline",
"origin": "manual",
"endpoint": "stdio:///usr/local/bin/fs-mcp",
"transport": "stdio",
"capabilities": ["file_read", "file_write", "file_search", "file_watch"],
"version": "1.2.0",
"author": "Anthropic",
"tags": ["文件系统", "本地"]
},
{
"id": "github-mcp",
"name": "GitHub MCP",
"description": "代码仓库操作,支持 PR、Issue、代码搜索和仓库管理",
"protocol": "mcp",
"status": "offline",
"origin": "manual",
"endpoint": "stdio:///usr/local/bin/github-mcp",
"transport": "stdio",
"capabilities": ["repo_read", "pr_manage", "issue_manage", "code_search"],
"version": "0.9.1",
"author": "GitHub",
"tags": ["代码", "Git", "PR"]
},
{
"id": "dify-mcp",
"name": "Dify MCP Bridge",
"description": "Dify 平台 Agent 工具集桥接,支持调用 Dify 内置工具和自定义工具",
"protocol": "mcp",
"status": "offline",
"origin": "app",
"sourceAppId": "dify",
"sourceAppName": "Dify",
"endpoint": "http://localhost:3000/mcp",
"transport": "http",
"capabilities": ["tool_invoke", "workflow_trigger", "knowledge_query"],
"version": "0.8.3",
"author": "Dify.AI",
"tags": ["Agent", "工具集", "Workflow"]
},
{
"id": "db-mcp",
"name": "Database MCP",
"description": "PostgreSQL 数据库查询与管理,支持 SQL 执行和 Schema 浏览",
"protocol": "mcp",
"status": "offline",
"origin": "manual",
"endpoint": "stdio:///usr/local/bin/db-mcp",
"transport": "stdio",
"capabilities": ["sql_query", "schema_browse", "data_export"],
"version": "0.5.2",
"author": "Community",
"tags": ["数据库", "PostgreSQL", "SQL"]
},
{
"id": "browser-mcp",
"name": "Browser MCP",
"description": "网页浏览与爬取支持截图、DOM 操作和内容提取",
"protocol": "mcp",
"status": "offline",
"origin": "manual",
"endpoint": "stdio:///usr/local/bin/browser-mcp",
"transport": "stdio",
"capabilities": ["page_navigate", "screenshot", "dom_query", "content_extract"],
"version": "1.0.3",
"author": "Playwright Team",
"tags": ["浏览器", "爬虫", "截图"]
},
{
"id": "dify-rag",
"name": "Dify RAG API",
"description": "Dify 知识库检索服务,支持语义搜索和多知识库联合检索",
"protocol": "http",
"status": "offline",
"origin": "app",
"sourceAppId": "dify",
"sourceAppName": "Dify",
"endpoint": "http://localhost:3000/api/v1/datasets",
"capabilities": ["semantic_search", "multi_dataset", "relevance_ranking"],
"version": "0.8.3",
"author": "Dify.AI",
"tags": ["RAG", "知识库", "检索"]
},
{
"id": "ragflow-pipeline",
"name": "RagFlow Pipeline",
"description": "深度文档理解 RAG 引擎,支持复杂格式文档解析和多级检索",
"protocol": "http",
"status": "offline",
"origin": "app",
"sourceAppId": "ragflow",
"sourceAppName": "RagFlow",
"endpoint": "http://localhost:9380/api/v1",
"capabilities": ["doc_parsing", "deep_retrieval", "citation"],
"version": "0.14.0",
"author": "InfiniFlow",
"tags": ["RAG", "文档理解", "Pipeline"]
},
{
"id": "baidu-map",
"name": "百度地图 API",
"description": "地理位置服务,支持地理编码、路线规划和 POI 搜索",
"protocol": "http",
"status": "offline",
"origin": "manual",
"endpoint": "https://api.map.baidu.com/v3",
"capabilities": ["geocoding", "route_plan", "poi_search", "distance_calc"],
"version": "3.0",
"author": "百度",
"tags": ["地图", "地理位置", "POI"]
},
{
"id": "deepl-translate",
"name": "DeepL 翻译",
"description": "高质量多语言翻译服务,支持 30+ 语言互译和文档翻译",
"protocol": "http",
"status": "offline",
"origin": "manual",
"endpoint": "https://api-free.deepl.com/v2",
"capabilities": ["text_translate", "doc_translate", "language_detect"],
"version": "2.0",
"author": "DeepL",
"tags": ["翻译", "多语言", "NLP"]
},
{
"id": "wecom-webhook",
"name": "企业微信 Webhook",
"description": "企业微信机器人消息通知支持文本、Markdown 和卡片消息",
"protocol": "http",
"status": "offline",
"origin": "manual",
"endpoint": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send",
"capabilities": ["text_message", "markdown_message", "card_message"],
"version": "1.0",
"author": "腾讯",
"tags": ["通知", "企业微信", "Webhook"]
}
]