feishu-docs-cli 0.1.0-beta.8 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +70 -13
- package/README.zh.md +53 -13
- package/dist/auth.js +31 -17
- package/dist/auth.js.map +1 -1
- package/dist/cli.js +16 -4
- package/dist/cli.js.map +1 -1
- package/dist/client.d.ts +4 -2
- package/dist/client.js +177 -61
- package/dist/client.js.map +1 -1
- package/dist/commands/authorize.d.ts +3 -0
- package/dist/commands/authorize.js +16 -34
- package/dist/commands/authorize.js.map +1 -1
- package/dist/commands/cp.d.ts +9 -0
- package/dist/commands/cp.js +70 -0
- package/dist/commands/cp.js.map +1 -0
- package/dist/commands/create.js +21 -7
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/delete.js +53 -54
- package/dist/commands/delete.js.map +1 -1
- package/dist/commands/login.js +6 -2
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/ls.js +38 -38
- package/dist/commands/ls.js.map +1 -1
- package/dist/commands/mkdir.d.ts +6 -0
- package/dist/commands/mkdir.js +49 -0
- package/dist/commands/mkdir.js.map +1 -0
- package/dist/commands/mv.d.ts +9 -0
- package/dist/commands/mv.js +72 -0
- package/dist/commands/mv.js.map +1 -0
- package/dist/commands/read.d.ts +1 -1
- package/dist/commands/read.js +17 -354
- package/dist/commands/read.js.map +1 -1
- package/dist/commands/search.js +57 -55
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/share.d.ts +1 -1
- package/dist/commands/share.js +164 -91
- package/dist/commands/share.js.map +1 -1
- package/dist/commands/update.js +43 -60
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/wiki.js +8 -20
- package/dist/commands/wiki.js.map +1 -1
- package/dist/parser/block-types.d.ts +0 -1
- package/dist/parser/block-types.js +0 -22
- package/dist/parser/block-types.js.map +1 -1
- package/dist/parser/blocks-to-md.d.ts +10 -18
- package/dist/parser/blocks-to-md.js +341 -450
- package/dist/parser/blocks-to-md.js.map +1 -1
- package/dist/scopes.d.ts +5 -47
- package/dist/scopes.js +9 -54
- package/dist/scopes.js.map +1 -1
- package/dist/services/block-writer.d.ts +3 -2
- package/dist/services/block-writer.js +29 -13
- package/dist/services/block-writer.js.map +1 -1
- package/dist/services/doc-blocks.d.ts +1 -1
- package/dist/services/doc-blocks.js +1 -1
- package/dist/services/doc-blocks.js.map +1 -1
- package/dist/services/doc-enrichment.d.ts +64 -0
- package/dist/services/doc-enrichment.js +397 -0
- package/dist/services/doc-enrichment.js.map +1 -0
- package/dist/services/image-download.d.ts +31 -0
- package/dist/services/image-download.js +127 -0
- package/dist/services/image-download.js.map +1 -0
- package/dist/services/markdown-convert.d.ts +20 -0
- package/dist/services/markdown-convert.js +55 -1
- package/dist/services/markdown-convert.js.map +1 -1
- package/dist/services/wiki-nodes.d.ts +1 -1
- package/dist/services/wiki-nodes.js +2 -3
- package/dist/services/wiki-nodes.js.map +1 -1
- package/dist/types/api-responses.d.ts +34 -0
- package/dist/types/api-responses.js +8 -0
- package/dist/types/api-responses.js.map +1 -0
- package/dist/types/index.d.ts +9 -17
- package/dist/utils/concurrency.d.ts +12 -0
- package/dist/utils/concurrency.js +37 -0
- package/dist/utils/concurrency.js.map +1 -0
- package/dist/utils/errors.d.ts +3 -1
- package/dist/utils/errors.js +11 -7
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/retry.d.ts +49 -0
- package/dist/utils/retry.js +70 -0
- package/dist/utils/retry.js.map +1 -0
- package/dist/utils/scope-prompt.d.ts +23 -18
- package/dist/utils/scope-prompt.js +62 -51
- package/dist/utils/scope-prompt.js.map +1 -1
- package/package.json +3 -1
- package/skills/feishu-docs/SKILL.md +37 -2
package/README.md
CHANGED
|
@@ -4,11 +4,30 @@
|
|
|
4
4
|
|
|
5
5
|
CLI tool for AI Agents to read/write Feishu (Lark) docs via shell commands.
|
|
6
6
|
|
|
7
|
+
## Why feishu-docs-cli?
|
|
8
|
+
|
|
9
|
+
Feishu/Lark already offers the official [lark-mcp](https://github.com/larksuite/lark-openapi-mcp) MCP server. Here's what this project does differently:
|
|
10
|
+
|
|
11
|
+
| Capability | feishu-docs-cli | lark-mcp |
|
|
12
|
+
|------------|:-:|:-:|
|
|
13
|
+
| Read docs as Markdown | **Yes** — 30+ block types rendered | No — returns raw Block JSON |
|
|
14
|
+
| Write docs from Markdown | **Yes** — auto-convert, auto-batch (>1000 blocks) | No |
|
|
15
|
+
| Knowledge base tree browsing | **Yes** — `spaces` → `tree` → `cat` workflow | Search/get single node only |
|
|
16
|
+
| Batch read entire wiki subtree | **Yes** — `cat` recursively exports Markdown | No |
|
|
17
|
+
| Write safety (backup/restore) | **Yes** — auto-backup before overwrite, auto-recover on failure | No |
|
|
18
|
+
| OAuth user login | **Yes** — full OAuth v2 with auto-refresh, tiered scope management, interactive recovery | Yes — basic OAuth login |
|
|
19
|
+
| Works with any AI agent | **Yes** — standard CLI, pipes, scripts | MCP protocol only |
|
|
20
|
+
| IM / messaging | No | Yes |
|
|
21
|
+
| Bitable CRUD | Read-only (rendered as table) | Yes |
|
|
22
|
+
| Contact lookup | Via `share add` only | Yes |
|
|
23
|
+
|
|
24
|
+
**In short**: lark-mcp is a thin wrapper over Feishu APIs with broad coverage. feishu-docs-cli is purpose-built for **document workflows** — it lets AI agents truly read, understand, and write Feishu documents as Markdown, with safety guardrails that the raw API doesn't provide.
|
|
25
|
+
|
|
7
26
|
## Features
|
|
8
27
|
|
|
9
28
|
- **Read** documents as Markdown, raw text, or original Block JSON
|
|
10
29
|
- **Create** documents in knowledge bases or cloud folders
|
|
11
|
-
- **Update** documents with overwrite or append mode
|
|
30
|
+
- **Update** documents with overwrite or append mode (auto-batch for large content)
|
|
12
31
|
- **Delete** documents (move to recycle bin)
|
|
13
32
|
- **Info** — view document metadata (title, type, URL, revision)
|
|
14
33
|
- **Browse** knowledge base structure (spaces, tree, cat)
|
|
@@ -52,26 +71,25 @@ Requires Node.js >= 18.3.
|
|
|
52
71
|
|
|
53
72
|
| Scope | Description |
|
|
54
73
|
|-------|-------------|
|
|
74
|
+
| `offline_access` | Token auto-refresh (enables refresh_token for 7-day validity) |
|
|
55
75
|
| `wiki:wiki` | Knowledge base read/write |
|
|
56
76
|
| `docx:document` | Document read/write |
|
|
57
77
|
| `docx:document.block:convert` | Markdown to block conversion (create/update) |
|
|
58
78
|
| `sheets:spreadsheet:readonly` | Embedded spreadsheet read (read command) |
|
|
59
79
|
| `board:whiteboard:node:read` | Whiteboard export as image (read command) |
|
|
60
80
|
| `bitable:app:readonly` | Embedded bitable/table read (read command) |
|
|
81
|
+
| `docs:document.media:download` | Download images and attachments from documents |
|
|
61
82
|
|
|
62
|
-
**
|
|
83
|
+
**Additional scopes** are requested reactively — when an API call needs a scope you haven't authorized, the CLI detects this from the API error response and prompts you. Common ones:
|
|
63
84
|
|
|
64
|
-
| Scope | Description |
|
|
65
|
-
|
|
66
|
-
| `drive:drive` | Cloud file management
|
|
67
|
-
| `contact:contact.base:readonly` | User lookup by email/phone |
|
|
68
|
-
| `drive:drive.search:readonly` | Document search |
|
|
69
|
-
| `wiki:wiki.space:create` | Create knowledge bases | wiki create-space |
|
|
70
|
-
| `wiki:wiki.space.node` | Edit knowledge base nodes | wiki rename, move, copy |
|
|
71
|
-
| `wiki:wiki.space.member` | Manage knowledge base members | wiki add-member, remove-member |
|
|
85
|
+
| Scope | Description |
|
|
86
|
+
|-------|-------------|
|
|
87
|
+
| `drive:drive` | Cloud file management (ls, delete, share, mv, cp, mkdir) |
|
|
88
|
+
| `contact:contact.base:readonly` | User lookup by email/phone |
|
|
89
|
+
| `drive:drive.search:readonly` | Document search |
|
|
72
90
|
|
|
73
91
|
5. Go to **Security Settings**, add the OAuth callback URL to the **Redirect URLs** allowlist:
|
|
74
|
-
- Default: `http://
|
|
92
|
+
- Default: `http://127.0.0.1:3456/callback`
|
|
75
93
|
- This must match exactly what you use during `feishu-docs login`
|
|
76
94
|
|
|
77
95
|
6. **Publish the app version**: Go to **App Release** → **Create Version** → Submit for review → Approve (self-built apps in your org are usually auto-approved)
|
|
@@ -95,7 +113,7 @@ feishu-docs login
|
|
|
95
113
|
|
|
96
114
|
This opens a browser for OAuth authorization and saves the encrypted token to `~/.feishu-docs/auth.json`.
|
|
97
115
|
|
|
98
|
-
If your app's registered redirect URL differs from the default (`http://
|
|
116
|
+
If your app's registered redirect URL differs from the default (`http://127.0.0.1:3456/callback`), pass the exact same value:
|
|
99
117
|
|
|
100
118
|
```bash
|
|
101
119
|
# Match the exact redirect URI registered in Feishu Open Platform
|
|
@@ -105,6 +123,23 @@ feishu-docs login --redirect-uri http://127.0.0.1:3456/callback
|
|
|
105
123
|
feishu-docs login --port 4567
|
|
106
124
|
```
|
|
107
125
|
|
|
126
|
+
### CI / Container Environments
|
|
127
|
+
|
|
128
|
+
In CI pipelines, Docker containers, or headless servers where interactive OAuth login is not possible, use the `FEISHU_USER_TOKEN` environment variable instead of `feishu-docs login`:
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
export FEISHU_APP_ID="cli_xxx"
|
|
132
|
+
export FEISHU_APP_SECRET="xxx"
|
|
133
|
+
export FEISHU_USER_TOKEN="u-xxx" # User access token from Feishu API
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
With these three variables set, all commands work without `feishu-docs login`. The token is used directly without local encryption or storage.
|
|
137
|
+
|
|
138
|
+
**Important:**
|
|
139
|
+
- `FEISHU_USER_TOKEN` has no auto-refresh -- you are responsible for rotating it before expiry
|
|
140
|
+
- Do NOT use `feishu-docs login` in containers -- it spawns a local HTTP server and attempts to open a browser
|
|
141
|
+
- For tenant-only access (no user context), `FEISHU_APP_ID` and `FEISHU_APP_SECRET` are sufficient
|
|
142
|
+
|
|
108
143
|
## Usage
|
|
109
144
|
|
|
110
145
|
### Read
|
|
@@ -209,6 +244,22 @@ feishu-docs ls <folder_token>
|
|
|
209
244
|
feishu-docs ls --type docx --limit 20
|
|
210
245
|
```
|
|
211
246
|
|
|
247
|
+
### File Operations
|
|
248
|
+
|
|
249
|
+
```bash
|
|
250
|
+
# Move file to a folder
|
|
251
|
+
feishu-docs mv <url|token> <target_folder_token>
|
|
252
|
+
|
|
253
|
+
# Copy file (auto-names as "Title - 副本")
|
|
254
|
+
feishu-docs cp <url|token> <target_folder_token>
|
|
255
|
+
|
|
256
|
+
# Copy with custom name
|
|
257
|
+
feishu-docs cp <url|token> <target_folder_token> --name "My Copy"
|
|
258
|
+
|
|
259
|
+
# Create a folder
|
|
260
|
+
feishu-docs mkdir "New Folder" --parent <parent_folder_token>
|
|
261
|
+
```
|
|
262
|
+
|
|
212
263
|
### Share
|
|
213
264
|
|
|
214
265
|
```bash
|
|
@@ -219,6 +270,12 @@ feishu-docs share list <url>
|
|
|
219
270
|
feishu-docs share add <url> user@example.com --role view
|
|
220
271
|
feishu-docs share add <url> ou_xxx --role edit
|
|
221
272
|
|
|
273
|
+
# Remove collaborator
|
|
274
|
+
feishu-docs share remove <url> user@example.com
|
|
275
|
+
|
|
276
|
+
# Update collaborator role
|
|
277
|
+
feishu-docs share update <url> ou_xxx --role manage
|
|
278
|
+
|
|
222
279
|
# Set public sharing mode
|
|
223
280
|
feishu-docs share set <url> --public tenant # org-wide readable
|
|
224
281
|
feishu-docs share set <url> --public tenant:edit # org-wide editable
|
|
@@ -231,7 +288,7 @@ Roles: `view`, `edit`, `manage`. Member types are auto-detected (email, openid,
|
|
|
231
288
|
### Auth
|
|
232
289
|
|
|
233
290
|
```bash
|
|
234
|
-
feishu-docs login # OAuth login (default callback: http://
|
|
291
|
+
feishu-docs login # OAuth login (default callback: http://127.0.0.1:3456/callback)
|
|
235
292
|
feishu-docs logout # Clear saved credentials
|
|
236
293
|
feishu-docs whoami # Show current auth status
|
|
237
294
|
```
|
package/README.zh.md
CHANGED
|
@@ -4,11 +4,30 @@
|
|
|
4
4
|
|
|
5
5
|
让 AI Agent(Claude Code、Codex、Trae 等)通过 shell 命令读写飞书云文档和知识库。
|
|
6
6
|
|
|
7
|
+
## 为什么选 feishu-docs-cli?
|
|
8
|
+
|
|
9
|
+
飞书官方已有 [lark-mcp](https://github.com/larksuite/lark-openapi-mcp) MCP 服务。以下是本项目的差异化能力:
|
|
10
|
+
|
|
11
|
+
| 能力 | feishu-docs-cli | lark-mcp |
|
|
12
|
+
|------|:-:|:-:|
|
|
13
|
+
| 读取文档输出 Markdown | **支持** — 30+ 种 block 类型渲染 | 不支持 — 返回原始 Block JSON |
|
|
14
|
+
| 从 Markdown 写入文档 | **支持** — 自动转换、大文档自动分批(>1000 blocks) | 不支持 |
|
|
15
|
+
| 知识库目录树浏览 | **支持** — `spaces` → `tree` → `cat` 完整工作流 | 仅搜索/获取单个节点 |
|
|
16
|
+
| 批量读取知识库子树 | **支持** — `cat` 递归导出为 Markdown | 不支持 |
|
|
17
|
+
| 写入安全(备份/恢复) | **支持** — 覆盖前自动备份,失败自动恢复 | 不支持 |
|
|
18
|
+
| OAuth 用户登录 | **支持** — 完整 OAuth v2 + token 自动刷新 + 分级权限管理 + 交互式权限恢复 | 支持 — 基础 OAuth 登录 |
|
|
19
|
+
| 兼容任意 AI Agent | **支持** — 标准 CLI,支持管道和脚本 | 仅 MCP 协议 |
|
|
20
|
+
| 即时消息 | 不支持 | 支持 |
|
|
21
|
+
| 多维表格 CRUD | 只读(渲染为表格) | 支持 |
|
|
22
|
+
| 通讯录查询 | 仅 `share add` 时使用 | 支持 |
|
|
23
|
+
|
|
24
|
+
**一句话总结**:lark-mcp 是飞书 API 的薄封装,覆盖面广但每个功能都是原始 API 级别。feishu-docs-cli 专注于**文档工作流**,让 AI Agent 能以 Markdown 为媒介真正读懂和编写飞书文档,并提供原始 API 没有的安全保障。
|
|
25
|
+
|
|
7
26
|
## 功能
|
|
8
27
|
|
|
9
28
|
- **读取** 文档,输出 Markdown、纯文本或原始 Block JSON
|
|
10
29
|
- **创建** 文档到知识库或云空间文件夹
|
|
11
|
-
- **更新**
|
|
30
|
+
- **更新** 文档,支持覆盖写入或追加模式(大文档自动分批)
|
|
12
31
|
- **删除** 文档(移至回收站)
|
|
13
32
|
- **详情** — 查看文档元信息(标题、类型、URL、版本号)
|
|
14
33
|
- **浏览** 知识库结构(空间列表、目录树、批量读取)
|
|
@@ -51,26 +70,25 @@ npm install -g github:cliff-byte/feishu-docs-cli
|
|
|
51
70
|
|
|
52
71
|
| 权限 | 说明 |
|
|
53
72
|
|------|------|
|
|
73
|
+
| `offline_access` | Token 自动刷新(获取 refresh_token,7 天有效期) |
|
|
54
74
|
| `wiki:wiki` | 知识库读写 |
|
|
55
75
|
| `docx:document` | 文档读写 |
|
|
56
76
|
| `docx:document.block:convert` | Markdown 转 Block(创建/更新需要) |
|
|
57
77
|
| `sheets:spreadsheet:readonly` | 嵌入式电子表格只读(read 命令) |
|
|
58
78
|
| `board:whiteboard:node:read` | 画板导出为图片(read 命令) |
|
|
59
79
|
| `bitable:app:readonly` | 嵌入式多维表格只读(read 命令) |
|
|
80
|
+
| `docs:document.media:download` | 下载云文档中的图片和附件 |
|
|
60
81
|
|
|
61
|
-
|
|
82
|
+
**额外权限**会按需自动提示 — 当 API 调用需要你未授权的权限时,CLI 会从 API 错误响应中检测并提示你授权。常见权限:
|
|
62
83
|
|
|
63
|
-
| 权限 | 说明 |
|
|
64
|
-
|
|
65
|
-
| `drive:drive` |
|
|
66
|
-
| `contact:contact.base:readonly` | 通过邮件/手机号查找用户 |
|
|
67
|
-
| `drive:drive.search:readonly` | 搜索云文档 |
|
|
68
|
-
| `wiki:wiki.space:create` | 创建知识库 | wiki create-space |
|
|
69
|
-
| `wiki:wiki.space.node` | 编辑知识库节点 | wiki rename、move、copy |
|
|
70
|
-
| `wiki:wiki.space.member` | 管理知识库成员 | wiki add-member、remove-member |
|
|
84
|
+
| 权限 | 说明 |
|
|
85
|
+
|------|------|
|
|
86
|
+
| `drive:drive` | 云空间文件管理(ls、delete、share、mv、cp、mkdir) |
|
|
87
|
+
| `contact:contact.base:readonly` | 通过邮件/手机号查找用户 |
|
|
88
|
+
| `drive:drive.search:readonly` | 搜索云文档 |
|
|
71
89
|
|
|
72
90
|
4. 进入 **安全设置**,在 **重定向 URL** 白名单中添加 OAuth 回调地址:
|
|
73
|
-
- 默认值:`http://
|
|
91
|
+
- 默认值:`http://127.0.0.1:3456/callback`
|
|
74
92
|
- 该地址必须与 `feishu-docs login` 使用的值完全一致
|
|
75
93
|
|
|
76
94
|
5. **发布应用版本**:进入 **应用发布** → **创建版本** → 提交审核 → 审核通过(企业自建应用通常自动通过)
|
|
@@ -94,7 +112,7 @@ feishu-docs login
|
|
|
94
112
|
|
|
95
113
|
执行后会打开浏览器进行 OAuth 授权,token 加密保存到 `~/.feishu-docs/auth.json`。
|
|
96
114
|
|
|
97
|
-
如果应用注册的重定向 URL 与默认值(`http://
|
|
115
|
+
如果应用注册的重定向 URL 与默认值(`http://127.0.0.1:3456/callback`)不同,需要传入完全一致的值:
|
|
98
116
|
|
|
99
117
|
```bash
|
|
100
118
|
# 使用与飞书开放平台注册的完全一致的重定向 URI
|
|
@@ -208,6 +226,22 @@ feishu-docs ls <folder_token>
|
|
|
208
226
|
feishu-docs ls --type docx --limit 20
|
|
209
227
|
```
|
|
210
228
|
|
|
229
|
+
### 文件操作
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
# 移动文件到指定文件夹
|
|
233
|
+
feishu-docs mv <url|token> <target_folder_token>
|
|
234
|
+
|
|
235
|
+
# 复制文件(自动命名为"标题 - 副本")
|
|
236
|
+
feishu-docs cp <url|token> <target_folder_token>
|
|
237
|
+
|
|
238
|
+
# 指定副本名称
|
|
239
|
+
feishu-docs cp <url|token> <target_folder_token> --name "我的副本"
|
|
240
|
+
|
|
241
|
+
# 创建文件夹
|
|
242
|
+
feishu-docs mkdir "新文件夹" --parent <parent_folder_token>
|
|
243
|
+
```
|
|
244
|
+
|
|
211
245
|
### 分享
|
|
212
246
|
|
|
213
247
|
```bash
|
|
@@ -218,6 +252,12 @@ feishu-docs share list <url>
|
|
|
218
252
|
feishu-docs share add <url> user@example.com --role view
|
|
219
253
|
feishu-docs share add <url> ou_xxx --role edit
|
|
220
254
|
|
|
255
|
+
# 移除协作者
|
|
256
|
+
feishu-docs share remove <url> user@example.com
|
|
257
|
+
|
|
258
|
+
# 修改协作者权限
|
|
259
|
+
feishu-docs share update <url> ou_xxx --role manage
|
|
260
|
+
|
|
221
261
|
# 设置公开分享模式
|
|
222
262
|
feishu-docs share set <url> --public tenant # 组织内可读
|
|
223
263
|
feishu-docs share set <url> --public tenant:edit # 组织内可编辑
|
|
@@ -230,7 +270,7 @@ feishu-docs share set <url> --public closed # 关闭链接分享
|
|
|
230
270
|
### 认证
|
|
231
271
|
|
|
232
272
|
```bash
|
|
233
|
-
feishu-docs login # OAuth 登录(默认回调:http://
|
|
273
|
+
feishu-docs login # OAuth 登录(默认回调:http://127.0.0.1:3456/callback)
|
|
234
274
|
feishu-docs logout # 清除保存的凭证
|
|
235
275
|
feishu-docs whoami # 查看当前认证状态
|
|
236
276
|
```
|
package/dist/auth.js
CHANGED
|
@@ -10,9 +10,15 @@ import { existsSync } from "node:fs";
|
|
|
10
10
|
import { execFile } from "node:child_process";
|
|
11
11
|
import { CliError } from "./utils/errors.js";
|
|
12
12
|
import { BASE_SCOPES } from "./scopes.js";
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
function getConfigDir() {
|
|
14
|
+
return join(homedir(), ".feishu-docs");
|
|
15
|
+
}
|
|
16
|
+
function getAuthFile() {
|
|
17
|
+
return join(getConfigDir(), "auth.json");
|
|
18
|
+
}
|
|
19
|
+
function getLockFile() {
|
|
20
|
+
return join(getConfigDir(), ".refresh.lock");
|
|
21
|
+
}
|
|
16
22
|
const ALGORITHM = "aes-256-gcm";
|
|
17
23
|
const KEY_LENGTH = 32;
|
|
18
24
|
const IV_LENGTH = 16;
|
|
@@ -21,6 +27,7 @@ const DEFAULT_OAUTH_HOST = "127.0.0.1";
|
|
|
21
27
|
const DEFAULT_OAUTH_PORT = 3456;
|
|
22
28
|
const DEFAULT_OAUTH_PATH = "/callback";
|
|
23
29
|
const LOCAL_CALLBACK_HOSTS = new Set(["localhost", "127.0.0.1", "::1"]);
|
|
30
|
+
const CSP_HEADER = "default-src 'none'; style-src 'unsafe-inline'; script-src 'none'";
|
|
24
31
|
/**
|
|
25
32
|
* Derive encryption key from machine identity + random salt.
|
|
26
33
|
*/
|
|
@@ -69,13 +76,13 @@ function decrypt(encryptedData) {
|
|
|
69
76
|
* Save auth tokens to encrypted config file.
|
|
70
77
|
*/
|
|
71
78
|
export async function saveTokens(appId, tokenData) {
|
|
72
|
-
await mkdir(
|
|
79
|
+
await mkdir(getConfigDir(), { recursive: true, mode: 0o700 });
|
|
73
80
|
const payload = {
|
|
74
81
|
version: 2,
|
|
75
82
|
app_id: appId,
|
|
76
83
|
encrypted_data: encrypt(tokenData),
|
|
77
84
|
};
|
|
78
|
-
await writeFile(
|
|
85
|
+
await writeFile(getAuthFile(), JSON.stringify(payload, null, 2), {
|
|
79
86
|
encoding: "utf8",
|
|
80
87
|
mode: 0o600,
|
|
81
88
|
});
|
|
@@ -85,10 +92,10 @@ export async function saveTokens(appId, tokenData) {
|
|
|
85
92
|
* Returns null if not found.
|
|
86
93
|
*/
|
|
87
94
|
export async function loadTokens() {
|
|
88
|
-
if (!existsSync(
|
|
95
|
+
if (!existsSync(getAuthFile()))
|
|
89
96
|
return null;
|
|
90
97
|
try {
|
|
91
|
-
const raw = await readFile(
|
|
98
|
+
const raw = await readFile(getAuthFile(), "utf8");
|
|
92
99
|
if (!raw.trim())
|
|
93
100
|
return null;
|
|
94
101
|
const payload = JSON.parse(raw);
|
|
@@ -107,8 +114,8 @@ export async function loadTokens() {
|
|
|
107
114
|
* Clear saved auth tokens.
|
|
108
115
|
*/
|
|
109
116
|
export async function clearTokens() {
|
|
110
|
-
if (existsSync(
|
|
111
|
-
await unlink(
|
|
117
|
+
if (existsSync(getAuthFile())) {
|
|
118
|
+
await unlink(getAuthFile());
|
|
112
119
|
}
|
|
113
120
|
}
|
|
114
121
|
/**
|
|
@@ -173,8 +180,11 @@ export async function resolveAuth(authMode = "auto") {
|
|
|
173
180
|
const isExpired = saved.tokens.expires_at && Date.now() >= saved.tokens.expires_at;
|
|
174
181
|
const canRefresh = !!saved.tokens.refresh_token;
|
|
175
182
|
const hasTenantCreds = envAppId && envAppSecret;
|
|
176
|
-
//
|
|
177
|
-
//
|
|
183
|
+
// Only skip stale user token when it's expired, has no refresh_token,
|
|
184
|
+
// AND tenant credentials are available. In this case, fall through to
|
|
185
|
+
// tenant mode (createClient will warn the user).
|
|
186
|
+
// When refresh_token exists, always return user auth — createClient
|
|
187
|
+
// will attempt refresh and throw explicit errors on failure.
|
|
178
188
|
if (isExpired && !canRefresh && hasTenantCreds) {
|
|
179
189
|
// Fall through to tenant mode
|
|
180
190
|
}
|
|
@@ -377,6 +387,7 @@ export async function oauthLogin(appId, options = {}) {
|
|
|
377
387
|
await saveTokens(appId, { ...tokenData, scope: tokenRes.scope });
|
|
378
388
|
res.writeHead(200, {
|
|
379
389
|
"Content-Type": "text/html; charset=utf-8",
|
|
390
|
+
"Content-Security-Policy": CSP_HEADER,
|
|
380
391
|
Connection: "close",
|
|
381
392
|
});
|
|
382
393
|
res.end("<h1>登录成功!</h1><p>你可以关闭此页面。</p>");
|
|
@@ -388,7 +399,10 @@ export async function oauthLogin(appId, options = {}) {
|
|
|
388
399
|
}
|
|
389
400
|
catch (err) {
|
|
390
401
|
const error = err;
|
|
391
|
-
res.writeHead(500, {
|
|
402
|
+
res.writeHead(500, {
|
|
403
|
+
"Content-Type": "text/html; charset=utf-8",
|
|
404
|
+
"Content-Security-Policy": CSP_HEADER,
|
|
405
|
+
});
|
|
392
406
|
const safeMsg = (error.message || "").replace(/[&<>"']/g, (c) => ({
|
|
393
407
|
"&": "&",
|
|
394
408
|
"<": "<",
|
|
@@ -437,14 +451,14 @@ export async function oauthLogin(appId, options = {}) {
|
|
|
437
451
|
* Returns a release function, or null if lock is held by another process.
|
|
438
452
|
*/
|
|
439
453
|
export async function acquireRefreshLock() {
|
|
440
|
-
await mkdir(
|
|
454
|
+
await mkdir(getConfigDir(), { recursive: true, mode: 0o700 });
|
|
441
455
|
try {
|
|
442
|
-
const fh = await open(
|
|
456
|
+
const fh = await open(getLockFile(), "wx");
|
|
443
457
|
await fh.write(String(process.pid));
|
|
444
458
|
return async () => {
|
|
445
459
|
await fh.close();
|
|
446
460
|
try {
|
|
447
|
-
await unlink(
|
|
461
|
+
await unlink(getLockFile());
|
|
448
462
|
}
|
|
449
463
|
catch {
|
|
450
464
|
// ignore cleanup errors
|
|
@@ -456,7 +470,7 @@ export async function acquireRefreshLock() {
|
|
|
456
470
|
if (error.code === "EEXIST") {
|
|
457
471
|
// Check for stale lock (process no longer alive)
|
|
458
472
|
try {
|
|
459
|
-
const pidStr = await readFile(
|
|
473
|
+
const pidStr = await readFile(getLockFile(), "utf8");
|
|
460
474
|
const pid = Number(pidStr.trim());
|
|
461
475
|
if (pid && pid !== process.pid) {
|
|
462
476
|
try {
|
|
@@ -464,7 +478,7 @@ export async function acquireRefreshLock() {
|
|
|
464
478
|
}
|
|
465
479
|
catch {
|
|
466
480
|
// Process is dead — stale lock, remove and retry
|
|
467
|
-
await unlink(
|
|
481
|
+
await unlink(getLockFile());
|
|
468
482
|
return acquireRefreshLock();
|
|
469
483
|
}
|
|
470
484
|
}
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -16,6 +16,9 @@ import { meta as deleteMeta } from "./commands/delete.js";
|
|
|
16
16
|
import { meta as shareMeta } from "./commands/share.js";
|
|
17
17
|
import { meta as infoMeta } from "./commands/info.js";
|
|
18
18
|
import { meta as lsMeta } from "./commands/ls.js";
|
|
19
|
+
import { meta as mvMeta } from "./commands/mv.js";
|
|
20
|
+
import { meta as cpMeta } from "./commands/cp.js";
|
|
21
|
+
import { meta as mkdirMeta } from "./commands/mkdir.js";
|
|
19
22
|
import { meta as wikiMeta } from "./commands/wiki.js";
|
|
20
23
|
import { meta as installSkillMeta } from "./commands/install-skill.js";
|
|
21
24
|
import { handleError, CliError } from "./utils/errors.js";
|
|
@@ -27,8 +30,7 @@ const HELP_TEXT = `feishu-docs - AI Agent 飞书云文档 CLI 工具
|
|
|
27
30
|
认证:
|
|
28
31
|
login [--scope "..."] [--redirect-uri <url>] [--port <port>]
|
|
29
32
|
OAuth 登录(申请基础免审权限)
|
|
30
|
-
authorize [--
|
|
31
|
-
申请额外功能权限(可能需管理员审核)
|
|
33
|
+
authorize [--scope "..."] 申请额外权限(可能需管理员审核)
|
|
32
34
|
logout 清除已保存的凭证
|
|
33
35
|
whoami 查看当前认证身份和模式
|
|
34
36
|
|
|
@@ -55,10 +57,15 @@ const HELP_TEXT = `feishu-docs - AI Agent 飞书云文档 CLI 工具
|
|
|
55
57
|
|
|
56
58
|
云空间:
|
|
57
59
|
ls [folder_token] 列出文件夹内容
|
|
60
|
+
mv <url|token> <target_folder> 移动文件
|
|
61
|
+
cp <url|token> <target_folder> 复制文件
|
|
62
|
+
mkdir <name> [--parent <folder_token>] 创建文件夹
|
|
58
63
|
|
|
59
64
|
权限:
|
|
60
65
|
share list <url> 查看协作者
|
|
61
66
|
share add <url> <member> --role <role> 添加协作者
|
|
67
|
+
share remove <url> <member> 移除协作者
|
|
68
|
+
share update <url> <member> --role <role> 修改协作者权限
|
|
62
69
|
share set <url> --public <mode> 修改分享设置
|
|
63
70
|
|
|
64
71
|
Agent:
|
|
@@ -97,6 +104,9 @@ const COMMANDS = {
|
|
|
97
104
|
share: shareMeta,
|
|
98
105
|
info: infoMeta,
|
|
99
106
|
ls: lsMeta,
|
|
107
|
+
mv: mvMeta,
|
|
108
|
+
cp: cpMeta,
|
|
109
|
+
mkdir: mkdirMeta,
|
|
100
110
|
wiki: wikiMeta,
|
|
101
111
|
"install-skill": installSkillMeta,
|
|
102
112
|
};
|
|
@@ -139,16 +149,18 @@ function parseAndRun(def, argv) {
|
|
|
139
149
|
return { handler: def.handler, args, globalOpts };
|
|
140
150
|
}
|
|
141
151
|
export async function run(argv) {
|
|
152
|
+
// Non-blocking update check (runs in background, never throws)
|
|
153
|
+
const updateCheck = checkForUpdates();
|
|
142
154
|
if (argv.includes("--version") || argv.includes("-v")) {
|
|
143
155
|
process.stdout.write(`feishu-docs ${getLocalVersion()}\n`);
|
|
156
|
+
await updateCheck;
|
|
144
157
|
return;
|
|
145
158
|
}
|
|
146
159
|
if (argv.length === 0 || argv.includes("--help") || argv.includes("-h")) {
|
|
147
160
|
process.stdout.write(HELP_TEXT);
|
|
161
|
+
await updateCheck;
|
|
148
162
|
return;
|
|
149
163
|
}
|
|
150
|
-
// Non-blocking update check (runs in background, never throws)
|
|
151
|
-
const updateCheck = checkForUpdates();
|
|
152
164
|
const command = argv[0];
|
|
153
165
|
const restArgs = argv.slice(1);
|
|
154
166
|
const def = COMMANDS[command];
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,IAAI,IAAI,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAQtE,MAAM,SAAS,GAAG
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
CHANGED
|
@@ -21,8 +21,10 @@ export declare function getTenantToken(authInfo: AuthInfo): Promise<string>;
|
|
|
21
21
|
/**
|
|
22
22
|
* Direct fetch wrapper that correctly passes user/tenant token.
|
|
23
23
|
*/
|
|
24
|
-
export declare function fetchWithAuth(authInfo: AuthInfo, path: string, options?: FetchOptions): Promise<ApiResponse
|
|
24
|
+
export declare function fetchWithAuth<T = unknown>(authInfo: AuthInfo, path: string, options?: FetchOptions): Promise<ApiResponse<T>>;
|
|
25
25
|
/**
|
|
26
26
|
* Fetch binary data with auth (for APIs that return file streams).
|
|
27
27
|
*/
|
|
28
|
-
export declare function fetchBinaryWithAuth(authInfo: AuthInfo, path: string
|
|
28
|
+
export declare function fetchBinaryWithAuth(authInfo: AuthInfo, path: string, options?: {
|
|
29
|
+
retry?: FetchOptions["retry"];
|
|
30
|
+
}): Promise<ArrayBuffer>;
|