Skip to content

Skill 清单

飞书知识库场景的全部能力定义,基于 Wiki-v2 API。 场景概览见 知识库,角色场景见 角色场景


架构总览


Skill / Tool 汇总

层级名称描述状态
Afeishu_wiki Skill飞书知识库 AI 对话技能🔲 待开发
Bsearch_wiki语义检索知识库内容(本地向量 + 飞书搜索)🔲 待开发
Blist_wiki_nodes浏览知识空间和节点目录🔲 待开发
Bcreate_wiki_page在知识库中创建新页面🔲 待开发
Bget_wiki_node_info获取节点详细信息🔲 待开发

A 层 — Skill

feishu_wiki

AI 对话入口,通过 SKILL.md 场景化组织,将用户自然语言意图路由到 B 层 Tool。

典型意图:

用户意图路由 Tool
"帮我查下知识库里关于 XX 的内容"search_wiki
"看看产品知识库的目录结构"list_wiki_nodes
"在运营空间下创建一篇 XX 文档"create_wiki_page
"这个文档在哪个空间?"get_wiki_node_info

B 层 — Python Tool 清单

公共行为

  • 飞书 tenant_access_token / user_access_token 鉴权
  • 权限过滤:返回前过滤无权访问的空间/节点
  • space_id / node_token 支持从飞书链接中解析
  • 错误时返回可读错误说明,不抛异常
  • 分页自动处理(page_size 上限 50)

1. search_wiki — 语义检索

参数必填说明
query用户的自然语言查询(最多 50 字符)
space_id限定在某个知识空间内检索
scopecompany(公开空间)/ department(本部门)/ all(老板全量)

检索策略: 优先走 Qdrant 语义检索(知识库定期同步到向量索引),兜底走飞书原生搜索 API。

返回内容: 匹配的 Wiki 页面列表(标题、相关段落摘要、链接)

底层 API:

方法路径权限 Scope
POST/wiki/v2/nodes/searchwiki:wiki:readonly

限制:仅支持 user_access_tokenquery 最多 50 字符;page_size 范围 1–50,默认 20。


2. list_wiki_nodes — 目录浏览

参数必填说明
space_id知识空间 ID,不填则列出所有空间
parent_node_token父节点 token,不填则列出空间根节点
max_depth否(默认 1)展示深度,最大 3

返回内容: 节点列表(标题、类型、链接、子节点数)

底层 API:

方法路径权限 Scope
GET/wiki/v2/spaceswiki:space:retrieve / wiki:wiki:readonly
GET/wiki/v2/spaces/:space_idwiki:space:read / wiki:wiki:readonly
GET/wiki/v2/spaces/:space_id/nodeswiki:node:retrieve / wiki:wiki:readonly

个人知识库的 space_id 可传 "my_library"page_size 最大 50。


3. create_wiki_page — 创建页面

参数必填说明
space_id目标知识空间 ID
parent_node_token父节点 token,不填则创建在空间根目录
title页面标题
content页面内容(Markdown,内部转为 docx block)

写入前确认: Tool 返回预览(标题 + 目标位置),AI 展示给用户确认后执行。

返回内容: Wiki 页面链接 + node_token

底层 API:

方法路径权限 Scope
POST/wiki/v2/spaces/:space_id/nodeswiki:node:create / wiki:wiki

obj_type 支持:docxsheetmindnotebitableslides(不支持 file);node_typeorigin(原始)/ shortcut(快捷方式)。


4. get_wiki_node_info — 获取节点详情

参数必填说明
token节点 token 或飞书文档链接
obj_type文档类型(doc/docx/sheet/mindnote/bitable/file/slides/wiki)

返回内容: 节点所属空间、父节点、标题、文档类型、创建/编辑时间

底层 API:

方法路径权限 Scope
GET/wiki/v2/spaces/get_nodewiki:node:read / wiki:wiki:readonly

响应字段:space_idnode_tokenobj_tokenobj_typeparent_node_tokennode_type(origin/shortcut)、has_childtitle、时间戳。


C 层 — 系统能力

能力说明状态
权限过滤角色 × 知识空间可见范围,按 scope 裁剪结果🔲 待开发
向量索引维护知识库内容定期同步到 Qdrant(复用 Embedder)🔲 待开发
写入确认创建页面操作二次确认,防止误写🔲 待开发
Token 自动刷新复用飞书 HTTP 客户端,自动续期✅ 复用现有

复用的现有能力

能力本场景用途来源模块状态
Qdrant 向量库知识库语义检索scripts/memory/searcher.py✅ 已实现
Embedder知识库内容向量化scripts/memory/embedder.py✅ 已实现
飞书 HTTP 客户端API 鉴权 + Token 刷新scripts/feishu_bot.py✅ 已实现
PersonIndexopen_id → 中文姓名映射scripts/memory/entity_manager.py✅ 已实现

飞书 API 权限速查

按 Scope 分类

Scope说明涉及 API
wiki:wiki知识库全能权限(读写)创建空间、创建/移动/复制节点、成员管理
wiki:wiki:readonly知识库只读空间列表/信息、子节点列表、搜索、任务结果
wiki:space:retrieve获取空间列表GET /wiki/v2/spaces
wiki:space:read获取空间信息GET /wiki/v2/spaces/:space_id、获取任务结果
wiki:space:write_only创建空间POST /wiki/v2/spaces
wiki:node:read获取节点信息GET /wiki/v2/spaces/get_node
wiki:node:retrieve获取子节点列表GET /wiki/v2/spaces/:space_id/nodes
wiki:node:create创建节点POST /wiki/v2/spaces/:space_id/nodes
wiki:node:move移动节点POST .../nodes/:node_token/move
wiki:node:copy复制节点POST .../nodes/:node_token/copy
wiki:member:create添加成员POST .../members
wiki:member:update删除成员DELETE .../members/:member_id

按 Token 类型

APItenant_access_tokenuser_access_token
获取空间列表/信息
创建空间
成员管理
节点 CRUD
搜索节点
异步任务

关键限制

速率限制

API 类别限制
大多数读/写 API100 次/分钟
创建空间10 次/分钟
搜索节点未公开(建议保守调用)

功能限制

限制项详情
分页大小所有列表接口 page_size 最大 50
搜索 query 长度最多 50 字符
搜索 Token 类型user_access_token,不支持 tenant_access_token
创建空间 Token 类型user_access_token
创建节点 obj_type支持 docx/sheet/mindnote/bitable/slides,不支持 file
移动节点支持跨空间移动(需指定 target_space_id
异步任务移动云文档到 Wiki 为异步,需轮询 task_id 获取结果
成员角色admin(管理员)/ member(成员)
成员类型openchat / userid / email / opendepartmentid / openid / unionid

飞书 Wiki-v2 API 全量索引

方法路径说明限流
GET/wiki/v2/spaces获取空间列表100/min
GET/wiki/v2/spaces/:space_id获取空间信息100/min
POST/wiki/v2/spaces创建空间10/min
POST/wiki/v2/spaces/:space_id/members添加成员100/min
DELETE/wiki/v2/spaces/:space_id/members/:member_id删除成员100/min
GET/wiki/v2/spaces/get_node获取节点信息100/min
GET/wiki/v2/spaces/:space_id/nodes获取子节点列表100/min
POST/wiki/v2/spaces/:space_id/nodes创建节点100/min
POST.../nodes/:node_token/move移动节点100/min
POST.../nodes/:node_token/copy复制节点100/min
POST/wiki/v2/nodes/search搜索节点
POST.../nodes/move_docs_to_wiki移动云文档到 Wiki(异步)
GET/wiki/v2/tasks/:task_id获取异步任务结果100/min

Boss-AGI · 超级 AI 企业助理