乐享:腾讯知识库 API 集成 - Openclaw Skills

作者:互联网

2026-04-15

AI教程

什么是 腾讯乐享知识库 API?

腾讯乐享是专为组织协同设计的领先企业级知识管理平台。此技能通过 Openclaw Skills 实现与乐享生态系统的无缝交互,允许开发者和代理以编程方式管理团队、空间和层级化的知识条目。它弥合了本地工作流与云端企业智能之间的鸿沟。

通过利用此技能,用户可以自动化企业文档的全生命周期管理,从初始文件上传到复杂的块级编辑。它内置了对腾讯 AI 助手的支持,能够在内部数据孤岛中进行智能搜索和基于研究的问答,使其成为现代 Openclaw Skills 部署的重要组成部分。

下载入口:https://github.com/openclaw/skills/tree/main/skills/ajaxhe/lexiang-skill

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install lexiang-skill

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 lexiang-skill。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

腾讯乐享知识库 API 应用场景

  • 自动将本地 Markdown 文档同步到企业知识空间。
  • 构建使用公司内部知识进行研究和问答的自定义 AI 机器人。
  • 通过 API 以编程方式管理组织架构和团队权限。
  • 批量上传项目附件和文件到集中式知识库。
  • 开发自动报告工具,实时生成和更新在线文档块。
腾讯乐享知识库 API 工作原理
  1. 通过配置 App Key 和 Secret,并使用专门的初始化脚本生成临时持有者令牌来建立身份验证。
  2. 该技能通过遍历团队和空间来识别目标容器,从而确定组织结构。
  3. 知识条目通过树状层级进行管理,使用唯一的页面、文件夹和文件 ID。
  4. 写操作使用 JSON:API 规范执行,需要 x-staff-id 等特定标头进行身份验证。
  5. 文档内容可以通过批量 Markdown 文件上传或细粒度的逐块修改进行操作。
  6. AI 研究查询通过专用端点处理,从存储的知识中检索上下文相关的答案。

腾讯乐享知识库 API 配置指南

要在 Openclaw Skills 框架内开始使用此技能,请配置环境变量并初始化令牌缓存:

export LEXIANG_APP_KEY="your_app_key"
export LEXIANG_APP_SECRET="your_app_secret"
export LEXIANG_STAFF_ID="your_staff_id"

source scripts/init.sh

初始化脚本将自动处理令牌获取(有效期 2 小时)并将其缓存到 ~/.config/lexiang/token

腾讯乐享知识库 API 数据架构与分类体系

此技能根据乐享层级模型组织数据,确保与 Openclaw Skills 数据结构的兼容性:

层级 对象 描述
1 团队 用于空间分组的顶级组织单位。
2 空间 特定知识领域或项目的容器。
3 条目 页面、文件夹或文件等单个项目(支持 parent_id 嵌套)。
4 页面内最小的内容单位(如标题1、无序列表、表格)。

所有数据交换遵循 JSON:API 标准,要求在空间和条目之间定义清晰的关系。

name: lexiang
description: 腾讯乐享知识库 API 集成。提供团队、知识库、知识节点、在线文档块的完整 CRUD 操作,以及通讯录管理、AI 搜索/问答、文件上传、任务管理等功能。此 skill 适用于需要通过 API 管理乐享知识库内容(创建/查询/编辑文档、搜索知识、管理团队权限等)的场景。
homepage: https://lexiang.tencent.com/wiki/api/?event_type=link_exchange&event_channel=skill&event_detail=github
metadata: {"openclaw":{"emoji":"??"}}

腾讯乐享知识库 API

腾讯乐享知识库是企业级知识管理平台,提供知识库、团队协作、文档管理、AI助手等功能。

数据模型

  • Team(团队):顶级组织单元,一个团队下可以有多个知识库(Space)
  • Space(知识库):知识的容器,属于某个团队,包含多个条目(Entry),有 root_entry_id 作为根节点
  • Entry(条目/知识):知识库中的内容单元,可以是页面(page)、文件夹(folder)或文件(file),支持树形结构(parent_id)
  • File(文件):附件类型的条目,如 PDF、Word、图片等

层级关系:Team -> Space -> Entry(树形结构,root_entry_id 为根)

URL 规则

生成知识库链接时,必须使用企业专属域名(如 csig.lexiangla.com),禁止使用 https://lexiang.tencent.com/wiki/{id} 格式。

资源类型 URL 格式
团队首页 https://{domain}/t/{team_id}/spaces
知识库 https://{domain}/spaces/{space_id}
知识条目 https://{domain}/pages/{entry_id}

优先使用 API 响应中的 links 字段;如果 API 未返回完整链接,根据上述规则拼接。

凭证配置

环境变量

export LEXIANG_APP_KEY="your_app_key"
export LEXIANG_APP_SECRET="your_app_secret"
export LEXIANG_STAFF_ID="your_staff_id"  # 写操作必需

凭证配置优先级

  1. 环境变量(最高优先级)
  2. ~/.openclaw/openclaw.json 中的 skills.entries.lexiang.env 字段
  3. ~/.config/lexiang/credentials JSON 文件

初始化(加载凭证 + 获取 Token)

执行 scripts/init.sh 脚本自动处理凭证加载和 Token 获取:

source scripts/init.sh
# 之后可使用 $LEXIANG_TOKEN 和 $LEXIANG_STAFF_ID

Token 有效期 2 小时,获取频率限制 20次/10分钟。脚本会自动缓存到 ~/.config/lexiang/token

API 调用基础

请求头

# 读操作
-H "Authorization: Bearer $LEXIANG_TOKEN"
-H "Content-Type: application/json; charset=utf-8"

# 写操作(额外需要)
-H "x-staff-id: $LEXIANG_STAFF_ID"

需要 x-staff-id 的接口

所有写操作(创建/更新/删除)、AI 搜索/问答、权限设置

创建知识节点的格式

使用 JSON:API 规范格式,通过 relationships 指定所属知识库和父节点:

{
  "data": {
    "type": "kb_entry",
    "attributes": {"entry_type": "page", "name": "标题"},
    "relationships": {
      "space": {"data": {"type": "kb_space", "id": "SPACE_ID"}},
      "parent_entry": {"data": {"type": "kb_entry", "id": "PARENT_ID"}}
    }
  }
}

通用限制

  • 频率限制:大部分接口 3000次/分钟
  • 权限要求:需在 AppKey 的授权范围内

核心工作流

1. 查询知识

# 获取团队列表
curl "https://lxapi.lexiangla.com/cgi-bin/v1/kb/teams?limit=20" r
  -H "Authorization: Bearer $LEXIANG_TOKEN"

# 获取知识库列表
curl "https://lxapi.lexiangla.com/cgi-bin/v1/kb/spaces?team_id={team_id}&limit=20" r
  -H "Authorization: Bearer $LEXIANG_TOKEN"

# 获取知识列表
curl "https://lxapi.lexiangla.com/cgi-bin/v1/kb/entries?space_id={space_id}&limit=20" r
  -H "Authorization: Bearer $LEXIANG_TOKEN"

# 获取文档内容(HTML 格式)
curl "https://lxapi.lexiangla.com/cgi-bin/v1/kb/entries/{entry_id}/content?content_type=html" r
  -H "Authorization: Bearer $LEXIANG_TOKEN"

2. 创建文档

两种方式对比:

方式 优点 推荐场景
上传 Markdown 文件 简单高效、格式完整保留 批量创建文档、Markdown 内容发布
块接口 (page + blocks) 精确控制格式、可实时编辑 需要程序化编辑文档内容

推荐方式:上传 Markdown 文件

使用 scripts/upload_file.sh 脚本:

source scripts/init.sh
bash scripts/upload_file.sh ./document.md SPACE_ID [PARENT_ENTRY_ID]

3. AI 搜索与问答

# AI 搜索
curl -X POST "https://lxapi.lexiangla.com/cgi-bin/v1/ai/search" r
  -H "Authorization: Bearer $LEXIANG_TOKEN" r
  -H "x-staff-id: $LEXIANG_STAFF_ID" r
  -H "Content-Type: application/json; charset=utf-8" r
  -d '{"query": "搜索关键词"}'

# AI 问答(research=true 使用专业研究模式)
curl -X POST "https://lxapi.lexiangla.com/cgi-bin/v1/ai/qa" r
  -H "Authorization: Bearer $LEXIANG_TOKEN" r
  -H "x-staff-id: $LEXIANG_STAFF_ID" r
  -H "Content-Type: application/json; charset=utf-8" r
  -d '{"query": "问题内容", "research": false}'

使用块接口的关键注意事项

对于需要使用在线文档块接口的场景,注意以下要点(详细示例见 references/api-blocks.md):

  1. 新建文档不传 parent_block_id:直接插入内容到页面根节点
  2. 列表块字段名不同于类型名bulleted_listbulleted 字段,numbered_listnumbered 字段
  3. 标题块字段需匹配h1heading1h2heading2,不是 text
  4. 嵌套块必须使用 children 和 block_id:表格/引用/高亮块通过临时 ID 建立父子关系
  5. 不支持嵌套的类型h1-h5codeimageattachmentvideodividermermaidplantuml

常见错误排查

错误信息 原因 解决方案
必须指定员工账号 缺少 x-staff-id 添加 -H "x-staff-id: $LEXIANG_STAFF_ID"
data.attributes.entry_type 不能为空 请求格式错误 使用 JSON:API 规范格式
content_type 不能为空 缺少参数 添加 ?content_type=html
列表内容为空 字段名错误 无序列表用 bulleted,有序列表用 numbered
嵌套块创建失败 缺少关联 确保 children + block_id 配对
上传接口 404 旧版路径 使用 /v1/kb/files/upload-params

详细 API 参考

按需查阅以下参考文件获取完整的接口文档:

文件 内容 搜索关键词
references/api-contact.md 通讯录管理(成员/部门 CRUD) contact, user, department, staff
references/api-team-space.md 团队与知识库管理 team, space, 权限, subject
references/api-entries.md 知识节点 CRUD 与权限 entry, entries, page, directory, file
references/api-blocks.md 在线文档块接口(创建/编辑块内容) block, descendant, paragraph, table, list
references/api-other.md 任务/属性/日志/AI/素材/导出/SSO task, property, log, ai, search, qa, upload, sso

HTTP 错误码

状态码 说明
200/201 成功
204 删除成功
400 请求参数错误
401 Token 无效或过期
403 无权限
404 资源不存在
429 超出频率限制

相关推荐