feat: 飞书知识库读写工具:增删查改节点、写入页面、创建早报、记录踩坑,基于 tenant_access_token。

This commit is contained in:
NightStar
2026-07-30 15:41:42 +08:00
commit a2ce0f9b75
13 changed files with 875 additions and 0 deletions
+110
View File
@@ -0,0 +1,110 @@
---
name: "feishu-wiki-tools"
description: "读写飞书知识库:增删查改节点、写入页面、创建早报、记录踩坑,基于 tenant_access_token。"
metadata:
author: xf
version: "1.0.0"
---
# Feishu Wiki Tools
飞书知识库读写操作。所有脚本使用 `tenant_access_token`,从 `~/.openclaw/openclaw.json` 读取凭证。
## 前置条件
- 飞书应用已开通 `wiki:wiki docx:document` 权限
- 机器人已加入目标知识库并获 `full_access`(参考 `references/auth.md`)
- 服务器可访问飞书 API
## 环境变量
| 变量 | 默认值 | 说明 |
|------|--------|------|
| `FEISHU_SPACE_ID` | `7664817589230570761` | 知识库 Space ID |
| `FEISHU_ROOT_NODE` | `LY5wwNWpniOoFwkHHG4cmDvGnSh` | 首页 node token |
| `FEISHU_DIGEST_PARENT` | `BH8AwLgJhipBcUkehCAcyKvDngE` | 早报父节点 |
| `FEISHU_SUMMARY_PARENT` | `XunCwlk7JiSTuAkvoKlcq54pnPb` | 每日总结父节点 |
## 通用脚本(CRUD)
### 初始化 Token
```bash
source scripts/init_token.sh
```
设置 `BEARER_TOKEN` 环境变量。其他脚本会自动调用。
### 列节点
```bash
python3 scripts/wiki_list.py [parent_node_token]
```
不传 parent 则列根目录。
### 创建节点
```bash
python3 scripts/wiki_create.py --title "标题" --parent "PARENT_TOKEN" [--obj-type docx]
```
### 读取页面
```bash
python3 scripts/wiki_read.py --node "NODE_TOKEN"
```
输出纯文本内容到 stdout。
### 写入页面
```bash
python3 scripts/wiki_write.py --node "NODE_TOKEN" --file content.md
```
支持 Markdown 转换。
> ⚠️ **已知限制**:`md_to_blocks.py` 不支持 Markdown 表格语法(`| ... |`),会被转为纯文本而非飞书原生表格 block。如需表格,改用列表 + 加粗键名的格式,例如:
> ```markdown
> - **项目**:说明
> - **模型**:DeepSeek V4 Pro
> ```
### 删除页面
```bash
python3 scripts/wiki_delete.py --node "NODE_TOKEN"
```
移到回收站(需 `space:document:delete` 权限)。
## 特化脚本
### 创建早报
```bash
python3 scripts/create_digest.py --title "07.21 周二 早报" --content content.md
```
自动挂到 `FEISHU_DIGEST_PARENT` 按周分组下。
### 记录踩坑
```bash
python3 scripts/create_pitfall.py --title "标题" --file content.md
```
自动挂到 `踩坑记录合集` 节点下。
### 创建每日总结
```bash
python3 scripts/create_summary.py --title "07.21 周二 总结" --content summary.md
```
自动挂到 `FEISHU_SUMMARY_PARENT`(🌙 每日总结)下。内容精简,仅含当日「晚星今日动态」。
## Block 类型速查
- 3=heading1, 4=heading2, 5=heading3
- 2=text, 12=bullet, 22=divider, 14=code
- 写入时支持 Markdown → Block 转换(`scripts/md_to_blocks.py`)
## 参考
- `references/auth.md` — 鉴权配置完整流程
- `references/block_types.md` — Docx Block API 参考
- `references/api_endpoints.md` — Feishu API 端点速查