@amaster.ai/pi-lark 0.1.9 → 0.1.11
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 +1 -3
- package/package.json +2 -2
- package/skills/lark-approval/SKILL.md +2 -2
- package/skills/lark-approval/references/lark-approval-instances-initiated.md +5 -0
- package/skills/lark-approval/references/lark-approval-tasks-add-sign.md +68 -20
- package/skills/lark-approval/references/lark-approval-tasks-query.md +5 -0
- package/skills/lark-apps/SKILL.md +1 -1
- package/skills/lark-apps/references/lark-apps-cache.md +38 -5
- package/skills/lark-base/SKILL.md +131 -11
- package/skills/lark-base/references/lark-base-app.md +18 -0
- package/skills/lark-base/references/lark-base-dashboard-block-config.md +28 -1
- package/skills/lark-base/references/lark-base-dashboard.md +29 -11
- package/skills/lark-base/references/lark-base-data-query.md +2 -6
- package/skills/lark-base/references/lark-base-field-extension.md +170 -0
- package/skills/lark-base/references/lark-base-field-lookup.md +1 -1
- package/skills/lark-base/references/lark-base-field-schema.md +10 -1
- package/skills/lark-base/references/lark-base-filter-condition.md +32 -5
- package/skills/lark-base/references/lark-base-form-detail.md +1 -1
- package/skills/lark-base/references/lark-base-form-questions-create.md +36 -5
- package/skills/lark-base/references/lark-base-form-submit.md +2 -2
- package/skills/lark-base/references/lark-base-record-history-list.md +19 -2
- package/skills/lark-base/references/lark-base-record-query-and-analysis-sop.md +95 -205
- package/skills/lark-base/references/lark-base-template-center.md +199 -0
- package/skills/lark-calendar/SKILL.md +14 -5
- package/skills/lark-calendar/references/lark-calendar-join-event.md +43 -0
- package/skills/lark-calendar/references/lark-calendar-transfer.md +89 -0
- package/skills/lark-doc/references/lark-doc-fetch.md +1 -1
- package/skills/lark-drive/references/lark-drive-add-comment.md +2 -2
- package/skills/lark-drive/references/lark-drive-member-remove.md +2 -1
- package/skills/lark-im/SKILL.md +23 -3
- package/skills/lark-im/references/lark-im-message-read-status.md +96 -0
- package/skills/lark-im/references/lark-im-messages-edit.md +89 -0
- package/skills/lark-im/references/lark-im-messages-mget.md +8 -0
- package/skills/lark-im/references/lark-im-messages-reply.md +2 -0
- package/skills/lark-im/references/lark-im-messages-send.md +6 -2
- package/skills/lark-mail/references/lark-mail-draft-create.md +12 -12
- package/skills/lark-mail/references/lark-mail-forward.md +17 -17
- package/skills/lark-mail/references/lark-mail-reply-all.md +8 -8
- package/skills/lark-mail/references/lark-mail-reply.md +6 -6
- package/skills/lark-mail/references/lark-mail-send.md +20 -20
- package/skills/lark-mail/references/lark-mail-template-create.md +7 -6
- package/skills/lark-mail/references/lark-mail-template-update.md +7 -6
- package/skills/lark-markdown/SKILL.md +1 -1
- package/skills/lark-meeting/SKILL.md +150 -0
- package/skills/{lark-minutes → lark-meeting}/references/lark-minutes-apply-permission.md +2 -5
- package/skills/lark-meeting/references/lark-minutes-detail.md +52 -0
- package/skills/{lark-minutes → lark-meeting}/references/lark-minutes-download.md +4 -6
- package/skills/{lark-minutes → lark-meeting}/references/lark-minutes-search.md +4 -34
- package/skills/{lark-minutes → lark-meeting}/references/lark-minutes-speaker-replace.md +3 -4
- package/skills/{lark-minutes → lark-meeting}/references/lark-minutes-summary.md +3 -5
- package/skills/{lark-minutes → lark-meeting}/references/lark-minutes-todo.md +44 -16
- package/skills/{lark-minutes → lark-meeting}/references/lark-minutes-update.md +2 -3
- package/skills/lark-meeting/references/lark-minutes-upload.md +71 -0
- package/skills/lark-meeting/references/lark-note-detail.md +15 -0
- package/skills/lark-meeting/references/lark-note-transcript.md +19 -0
- package/skills/lark-meeting/references/lark-vc-agent-meeting-end.md +26 -0
- package/skills/lark-meeting/references/lark-vc-agent-meeting-invite.md +32 -0
- package/skills/{lark-vc-agent → lark-meeting}/references/lark-vc-agent-meeting-join.md +11 -56
- package/skills/{lark-vc-agent → lark-meeting}/references/lark-vc-agent-meeting-leave.md +2 -41
- package/skills/lark-meeting/references/lark-vc-detail.md +31 -0
- package/skills/lark-meeting/references/lark-vc-meeting-countdown.md +103 -0
- package/skills/{lark-vc → lark-meeting}/references/lark-vc-meeting-events.md +9 -98
- package/skills/{lark-vc → lark-meeting}/references/lark-vc-meeting-list-active.md +4 -29
- package/skills/{lark-vc → lark-meeting}/references/lark-vc-meeting-message-send.md +3 -5
- package/skills/lark-meeting/references/lark-vc-meeting-screenshot.md +34 -0
- package/skills/{lark-vc → lark-meeting}/references/lark-vc-recording.md +4 -65
- package/skills/{lark-vc → lark-meeting}/references/lark-vc-search.md +9 -28
- package/skills/lark-meeting/scenes/create-and-edit-minutes.md +147 -0
- package/skills/lark-meeting/scenes/live-meeting-attend.md +164 -0
- package/skills/lark-meeting/scenes/live-meeting-interact.md +101 -0
- package/skills/lark-meeting/scenes/query-meeting-and-artifacts.md +90 -0
- package/skills/lark-meeting/scenes/query-minutes-and-artifacts.md +70 -0
- package/skills/lark-meeting/scenes/query-note-and-artifacts.md +127 -0
- package/skills/lark-minutes/SKILL.md +5 -203
- package/skills/lark-note/SKILL.md +5 -88
- package/skills/lark-shared/SKILL.md +25 -224
- package/skills/lark-shared/references/lark-shared-config-init.md +12 -0
- package/skills/lark-shared/references/lark-shared-high-risk-approval.md +38 -0
- package/skills/lark-shared/references/lark-shared-identity-and-permissions.md +105 -0
- package/skills/lark-shared/references/lark-shared-output-contract.md +17 -0
- package/skills/lark-shared/references/lark-shared-update-notice.md +23 -0
- package/skills/lark-sheets/SKILL.md +76 -60
- package/skills/lark-sheets/references/lark-sheets-batch-update.md +83 -14
- package/skills/lark-sheets/references/lark-sheets-chart.md +296 -159
- package/skills/lark-sheets/references/lark-sheets-conditional-format.md +46 -9
- package/skills/lark-sheets/references/lark-sheets-filter.md +1 -1
- package/skills/lark-sheets/references/lark-sheets-formula-translation.md +78 -65
- package/skills/lark-sheets/references/lark-sheets-formula-verify.md +21 -17
- package/skills/lark-sheets/references/lark-sheets-pivot-table.md +2 -1
- package/skills/lark-sheets/references/lark-sheets-range-operations.md +1 -1
- package/skills/lark-sheets/references/lark-sheets-read-data.md +8 -5
- package/skills/lark-sheets/references/lark-sheets-search-replace.md +4 -4
- package/skills/lark-sheets/references/lark-sheets-sheet-structure.md +2 -2
- package/skills/lark-sheets/references/lark-sheets-sparkline.md +1 -0
- package/skills/lark-sheets/references/lark-sheets-styles-put.md +3 -3
- package/skills/lark-sheets/references/lark-sheets-visual-standards.md +6 -4
- package/skills/lark-sheets/references/lark-sheets-workbook.md +3 -1
- package/skills/lark-sheets/references/lark-sheets-write-cells.md +50 -48
- package/skills/lark-sheets/scripts/lark_chart_layout_check.py +472 -0
- package/skills/lark-slides/SKILL.md +2 -0
- package/skills/lark-slides/references/cli/lark-slides-add-slide.md +6 -6
- package/skills/lark-slides/references/cli/lark-slides-delete-slide.md +3 -3
- package/skills/lark-slides/references/cli/lark-slides-replace-slide.md +11 -11
- package/skills/lark-slides/references/cli/lark-slides-xml-presentation-slide-get.md +1 -1
- package/skills/lark-slides/references/cli/lark-slides-xml-presentation-slide-replace.md +2 -2
- package/skills/lark-slides/references/workflow/slides-editing.md +11 -11
- package/skills/lark-slides/references/xml/slides_xml_schema_definition.xml +103 -14
- package/skills/lark-task/SKILL.md +1 -1
- package/skills/lark-vc/SKILL.md +5 -205
- package/skills/lark-vc-agent/SKILL.md +5 -206
- package/skills/lark-workflow-meeting-summary/SKILL.md +20 -13
- package/skills/lark-base/references/lark-base-cell-value.md +0 -165
- package/skills/lark-base/references/lark-base-data-analysis-pandas.md +0 -93
- package/skills/lark-base/references/lark-base-data-analysis-python-stdlib.md +0 -120
- package/skills/lark-base/references/lark-base-record-batch-create.md +0 -63
- package/skills/lark-base/references/lark-base-record-batch-update.md +0 -57
- package/skills/lark-base/references/lark-base-record-query-and-analysis-cloud-sop.md +0 -145
- package/skills/lark-minutes/references/lark-minutes-detail.md +0 -63
- package/skills/lark-minutes/references/lark-minutes-upload.md +0 -104
- package/skills/lark-note/references/lark-note-detail.md +0 -29
- package/skills/lark-note/references/lark-note-transcript.md +0 -25
- package/skills/lark-vc/references/lark-vc-detail.md +0 -49
- package/skills/lark-vc/references/vc-domain-boundaries.md +0 -203
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
# minutes +detail
|
|
3
|
-
|
|
4
|
-
通过 `minute_token` 查询妙记详情,按需获取 AI 产物(总结/待办/章节/逐字稿/关键词)。只读,支持 `--as user` / `--as bot`。
|
|
5
|
-
|
|
6
|
-
> `--summary` / `--todo` / `--chapter` / `--keyword` / `--transcript` 至少一个;不传任何产物 flag 时只返回基础信息(如 `title`),AI 产物字段都不会出现。一次性获取所有产物:`--summary --todo --chapter --keyword --transcript`。
|
|
7
|
-
|
|
8
|
-
## 命令
|
|
9
|
-
|
|
10
|
-
```bash
|
|
11
|
-
# 仅基础信息
|
|
12
|
-
lark-cli minutes +detail --minute-tokens obcxxxxxxxxxx
|
|
13
|
-
|
|
14
|
-
# 批量(逗号分隔,最多 50 个)
|
|
15
|
-
lark-cli minutes +detail --minute-tokens obcxxx,obcyyy --summary --todo
|
|
16
|
-
|
|
17
|
-
# 全产物
|
|
18
|
-
lark-cli minutes +detail --minute-tokens obcxxx --summary --todo --chapter --keyword --transcript
|
|
19
|
-
|
|
20
|
-
# 仅逐字稿,覆盖已有文件,指定输出目录
|
|
21
|
-
lark-cli minutes +detail --minute-tokens obcxxx --transcript --overwrite --output-dir ./out
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## 输出
|
|
25
|
-
|
|
26
|
-
`minutes` 数组每条含 `minute_token`、`title`、`note_id`、`artifacts`。`note_id` 仅在该妙记关联了会议纪要时返回,可直接传给 [`note +detail`](../../lark-note/references/lark-note-detail.md) 拿纪要文档 token,无需再绕回 `vc +detail`。`artifacts` 中**只包含本次请求的产物**:
|
|
27
|
-
|
|
28
|
-
| 字段 | 类型 | 说明 |
|
|
29
|
-
|------|------|------|
|
|
30
|
-
| `artifacts.summary` | string | AI 总结。 |
|
|
31
|
-
| `artifacts.todos` | array | 待办事项列表。 |
|
|
32
|
-
| `artifacts.chapters` | array | 章节列表。 |
|
|
33
|
-
| `artifacts.keywords` | array | 关键词列表。 |
|
|
34
|
-
| `artifacts.transcript_file` | string | 逐字稿本地文件路径。 |
|
|
35
|
-
|
|
36
|
-
逐字稿默认落地 `./minutes/{minute_token}/transcript.txt`,与 `minutes +download` 同目录便于聚合。指定 `--output-dir <dir>` 时改写到 `<dir>/artifact-{title}-{minute_token}/transcript.txt`。
|
|
37
|
-
|
|
38
|
-
## minute_token 来源
|
|
39
|
-
|
|
40
|
-
| 来源 | 取值字段 |
|
|
41
|
-
|------|---------|
|
|
42
|
-
| 妙记 URL `https://*.feishu.cn/minutes/obcxxx` | 截路径最后一段 `obcxxx` |
|
|
43
|
-
| `vc +detail --meeting-ids` | `minute_token` |
|
|
44
|
-
| `vc +recording --meeting-ids` | `minute_token` |
|
|
45
|
-
| `minutes +search` | `minute_token` |
|
|
46
|
-
|
|
47
|
-
## 典型链路:从 minute_token 拿纪要文档 token
|
|
48
|
-
|
|
49
|
-
只持有 `minute_token`(如妙记 URL 入口),又想拿 AI 智能纪要 / 逐字稿文档时;每一步都要沿用同一个 `--as`(完整规则见 [lark-shared](../../lark-shared/SKILL.md) 的「身份延续」):
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
# 1. 取妙记关联的 note_id,没有关联会议纪要则为空
|
|
53
|
-
lark-cli minutes +detail --minute-tokens obcnxxxxxxxxxxxxxxxxxxxx --as bot
|
|
54
|
-
|
|
55
|
-
# 2. 用 note_id 拿 note_doc_token / verbatim_doc_token / shared_doc_tokens
|
|
56
|
-
# 沿用第 1 步的身份,不要省略 --as
|
|
57
|
-
lark-cli note +detail --note-id <note_id> --as bot
|
|
58
|
-
|
|
59
|
-
# 3. 读纪要 / 逐字稿正文(同样沿用第 1 步的身份)
|
|
60
|
-
lark-cli docs +fetch --api-version v2 --doc <note_doc_token> --doc-format markdown --as bot
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
> `minute_token` 不要直接传给 `note +detail`:必须先用本命令拿到 `note_id` 再调用 `note +detail`。
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
# minutes +upload
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
上传音视频文件到飞书妙记并生成妙记(Minute)。
|
|
5
|
-
|
|
6
|
-
本 skill 对应 shortcut:`lark-cli minutes +upload`。
|
|
7
|
-
|
|
8
|
-
## 典型触发表达
|
|
9
|
-
|
|
10
|
-
- "把这个音视频文件转成妙记"
|
|
11
|
-
- "把这个音视频文件转成纪要"
|
|
12
|
-
- "把这个音视频文件转成逐字稿、文字稿或撰写文字"
|
|
13
|
-
- "把这个音视频文件转成总结、待办或章节"
|
|
14
|
-
|
|
15
|
-
## 完整工作流
|
|
16
|
-
|
|
17
|
-
当用户要求将音视频文件转换为妙记,或进一步要纪要/逐字稿/文字稿/撰写文字时,必须按照以下步骤执行:
|
|
18
|
-
|
|
19
|
-
1. **上传文件至云空间(云盘/云存储)获取 file_token**
|
|
20
|
-
- 使用 `lark-cli drive +upload` 命令上传本地文件到云空间/云盘/云存储(Drive):
|
|
21
|
-
```bash
|
|
22
|
-
lark-cli drive +upload --file <path/to/media/file>
|
|
23
|
-
```
|
|
24
|
-
- 从命令的返回结果中提取生成的 `file_token`。
|
|
25
|
-
|
|
26
|
-
2. **将 file_token 转换为妙记链接(minute_url)**
|
|
27
|
-
- 调用本 shortcut,将获取到的 `file_token` 转换为妙记:
|
|
28
|
-
```bash
|
|
29
|
-
lark-cli minutes +upload --file-token <file_token>
|
|
30
|
-
```
|
|
31
|
-
- 命令执行成功后,将返回生成的妙记链接 `minute_url`。
|
|
32
|
-
|
|
33
|
-
3. **如需纪要 / 逐字稿 / 文字稿 / 撰写文字,使用返回的 `minute_token` 调用 `minutes +detail`**
|
|
34
|
-
- 如果用户要的是纪要、逐字稿、文字稿、撰写文字、总结、待办或章节,使用上一步返回的 `minute_token` 继续调用:
|
|
35
|
-
```bash
|
|
36
|
-
lark-cli minutes +detail --minute-tokens <minute_token> --wait-ready --summary --todo --chapter --keyword --transcript
|
|
37
|
-
```
|
|
38
|
-
- `--wait-ready` 参数表示等待妙记生成完毕后再获取产物,上传后立即读取详情时必须加上此参数。
|
|
39
|
-
- `minutes +detail --minute-tokens` 会返回妙记产物(总结、待办、章节、关键词、逐字稿);必要时还会把逐字稿落地到本地文件。
|
|
40
|
-
|
|
41
|
-
> **异步生成提示**:API 会立即返回 `minute_url`,但妙记可能仍在异步生成中,您可以直接通过该妙记链接查看当前的处理状态和转写结果。
|
|
42
|
-
|
|
43
|
-
## 命令示例
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
# 通过已上传到云空间(云盘/云存储)的 file_token 生成妙记
|
|
47
|
-
lark-cli minutes +upload --file-token boxcnxxxxxxxxxxxxxxxx
|
|
48
|
-
|
|
49
|
-
# 上传后立即获取妙记产物,需加 --wait-ready 等待生成完毕(--summary --todo --chapter --keyword --transcript 按需传入)
|
|
50
|
-
lark-cli minutes +detail --minute-tokens obcnxxxxxxxxxxxxxxxx --wait-ready --summary
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## 参数
|
|
54
|
-
|
|
55
|
-
| 参数 | 必填 | 说明 |
|
|
56
|
-
|------|------|------|
|
|
57
|
-
| `--file-token <token>` | 是 | 已经上传到飞书云空间(云盘/云存储)的音视频文件的 file_token |
|
|
58
|
-
|
|
59
|
-
## 支持的格式与限制
|
|
60
|
-
|
|
61
|
-
待上传到妙记的原始音视频文件必须满足以下要求:
|
|
62
|
-
|
|
63
|
-
- 支持音频格式:`wav`、`mp3`、`m4a`、`aac`、`ogg`、`wma`、`amr`
|
|
64
|
-
- 支持视频格式:`avi`、`wmv`、`mov`、`mp4`、`m4v`、`mpeg`、`ogg`、`flv`
|
|
65
|
-
- 音视频时长不能超过 `6` 小时
|
|
66
|
-
- 文件大小不能超过 `6 GB`
|
|
67
|
-
|
|
68
|
-
> 说明:本 shortcut 只接收 `file_token`,不会直接读取本地文件内容,因此这些格式、时长和大小限制对应的是**原始上传文件**本身。若妙记生成失败,请先回查源文件是否满足上述要求。
|
|
69
|
-
|
|
70
|
-
## 核心约束
|
|
71
|
-
|
|
72
|
-
### 1. 必须提供 file_token
|
|
73
|
-
|
|
74
|
-
本接口不直接处理本地文件的上传,必须先使用 `drive +upload` 将文件上传到云空间(云盘/云存储)获取 `file_token`,然后再调用本接口。
|
|
75
|
-
|
|
76
|
-
### 2. 先上传,再生成妙记
|
|
77
|
-
|
|
78
|
-
推荐流程如下:
|
|
79
|
-
|
|
80
|
-
1. 使用 `lark-cli drive +upload --file <path>` 上传本地音视频文件到云空间(云盘/云存储)
|
|
81
|
-
2. 从返回结果中取出 `file_token`
|
|
82
|
-
3. 调用 `lark-cli minutes +upload --file-token <file_token>` 生成妙记
|
|
83
|
-
4. 如果目标是纪要、逐字稿、文字稿、撰写文字、总结、待办或章节,使用返回的 `minute_token`,继续调用 `lark-cli minutes +detail --minute-tokens <minute_token> --wait-ready`
|
|
84
|
-
|
|
85
|
-
> **边界说明**:`minutes +upload` 本身只负责把文件转成妙记并返回 `minute_url`。纪要内容、逐字稿、文字稿、撰写文字、总结、待办、章节属于后续产物获取,应由 [minutes +detail](lark-minutes-detail.md) 承接。
|
|
86
|
-
|
|
87
|
-
## 输出结果示例
|
|
88
|
-
|
|
89
|
-
```json
|
|
90
|
-
{
|
|
91
|
-
"minute_url": "http(s)://<host>/minutes/<minute-token>",
|
|
92
|
-
"minute_token": "<minute-token>"
|
|
93
|
-
}
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
| 字段 | 说明 |
|
|
97
|
-
|------|------|
|
|
98
|
-
| `minute_url` | 生成的妙记访问链接 |
|
|
99
|
-
| `minute_token` | 从 `minute_url` 提取出的妙记 Token,可直接传给 `minutes +detail --minute-tokens` |
|
|
100
|
-
|
|
101
|
-
## 参考
|
|
102
|
-
|
|
103
|
-
- [lark-minutes](../SKILL.md) -- 妙记相关功能说明
|
|
104
|
-
- [drive +upload](../../lark-drive/references/lark-drive-upload.md) -- 上传文件到云空间(云盘/云存储)
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
# note +detail
|
|
2
|
-
|
|
3
|
-
通过 `note_id` 查询会议纪要详情,获取下挂文档 Token(AI 智能纪要、逐字稿、会中共享文档)。只读,支持 `--as user` / `--as bot`。bot 身份下能否读到数据取决于应用对纪要主文档是否有 view 权限。
|
|
4
|
-
|
|
5
|
-
## 命令
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
lark-cli note +detail --note-id <note_id>
|
|
9
|
-
lark-cli note +detail --note-id <note_id> --as bot
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
## `note_id` 来源
|
|
13
|
-
|
|
14
|
-
- 可以来自用户直接给出的 `note_id`。
|
|
15
|
-
- 如果入口是文档,先由 [lark-doc](../../lark-doc/SKILL.md) 读取 Docx;只有 `<vc-transcribe-tab vc-node-id="...">` 的 `vc-node-id` 可以作为 `note_id`。
|
|
16
|
-
- 没有 `vc-node-id` 时,不要从 `doc_token`、标题、正文或 backlink 反推 `note_id`。
|
|
17
|
-
|
|
18
|
-
## 输出后的路由
|
|
19
|
-
|
|
20
|
-
| detail 字段 | 后续动作 |
|
|
21
|
-
|---------|---------|
|
|
22
|
-
| `note_doc_token` | 读纪要正文 / 总结 / 待办 / 章节:`docs +fetch --doc <note_doc_token>` |
|
|
23
|
-
| `note_display_type=normal` + `verbatim_doc_token` | 读逐字稿:`docs +fetch --doc <verbatim_doc_token>` |
|
|
24
|
-
| `note_display_type=unknown` + `verbatim_doc_token` | 先按普通独立逐字稿文档读取;不要猜成 unified |
|
|
25
|
-
| `note_display_type=unified` | 读逐字稿 / 原始记录:转 [`note +transcript`](lark-note-transcript.md)(仅支持 `--as user`) |
|
|
26
|
-
|
|
27
|
-
判别键是 `note_display_type`。即使 unified 纪要返回了非空 `verbatim_doc_token`,逐字稿仍按 unified 路由。
|
|
28
|
-
|
|
29
|
-
> **bot + unified 的边界**:如果本命令用 `--as bot` 拿到 `note_display_type=unified`,`note +transcript` 只支持 `--as user`,不能直接沿用 bot 身份。停下来向用户说明这个边界,只有用户明确同意才切到 `--as user` 继续,不要静默切换身份。
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
# note +transcript
|
|
2
|
-
|
|
3
|
-
只在 `note +detail` 已确认 `note_display_type=unified` 时使用。普通纪要逐字稿是独立 Docx 文档,应回到 [lark-doc](../../lark-doc/SKILL.md) 读取 `verbatim_doc_token`。
|
|
4
|
-
|
|
5
|
-
只支持 `--as user`,不支持 `--as bot`。如果 `note +detail --as bot` 返回 `unified`,不要在这里静默省略 `--as` 或改用 user 身份继续——先停下来向用户说明"该纪要逐字稿只能以 user 身份读取",只有用户明确同意才切换身份重试。
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
lark-cli note +transcript --note-id NOTE_ID
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## 行为契约
|
|
12
|
-
|
|
13
|
-
- CLI 会先校验该 Note 是否为 `unified`;不是 unified 时不拉取 transcript。
|
|
14
|
-
- CLI 内部自动翻页并拼接完整内容;任一页失败时整体报错,不保存半截 transcript。
|
|
15
|
-
- 默认保存到 `./notes/{note_id}/unified_transcript.md`;`--transcript-format plain_text` 时保存为 `.txt`。
|
|
16
|
-
- 目标文件已存在时会失败;用户明确要覆盖时才加 `--overwrite`。
|
|
17
|
-
|
|
18
|
-
## 何时不要用
|
|
19
|
-
|
|
20
|
-
| 场景 | 正确路由 |
|
|
21
|
-
|------|---------|
|
|
22
|
-
| 只有纪要文档标题 | 先文档搜索,再 `docs +fetch`;有 `vc-node-id` 才回 Note 域 |
|
|
23
|
-
| 只有 Docx URL / `doc_token` | 先 `docs +fetch`;不要从 `doc_token` 反推 `note_id` |
|
|
24
|
-
| `note_display_type=normal` | `docs +fetch --doc <verbatim_doc_token>` |
|
|
25
|
-
| `note_display_type=unknown` 且 `verbatim_doc_token` 非空 | 先按独立逐字稿文档读取 |
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
# vc +detail
|
|
3
|
-
|
|
4
|
-
通过会议 ID 获取会议详情,包括基本信息、关联的纪要 ID(`note_id`)和妙记 Token(`minute_token`)。只读,支持 `--as user` / `--as bot`。
|
|
5
|
-
|
|
6
|
-
## 命令
|
|
7
|
-
|
|
8
|
-
```bash
|
|
9
|
-
# 单个 / 批量(逗号分隔,最多 50 个)
|
|
10
|
-
lark-cli vc +detail --meeting-ids <meeting_id1>,<meeting_id2>
|
|
11
|
-
|
|
12
|
-
# bot 身份(只能查 bot 有权限的会议)
|
|
13
|
-
lark-cli vc +detail --meeting-ids <meeting_id1>,<meeting_id2> --as bot
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## 输出字段
|
|
17
|
-
|
|
18
|
-
| 字段 | 说明 |
|
|
19
|
-
|------|------|
|
|
20
|
-
| `meeting_id` | 会议 ID |
|
|
21
|
-
| `meeting_no` | 会议 9 位号码 |
|
|
22
|
-
| `topic` | 会议主题 |
|
|
23
|
-
| `start_time` | 开始时间 |
|
|
24
|
-
| `end_time` | 结束时间 |
|
|
25
|
-
| `note_id` | 关联的纪要 ID。 |
|
|
26
|
-
| `minute_token` | 关联的妙记 Token。 |
|
|
27
|
-
|
|
28
|
-
## 典型场景
|
|
29
|
-
|
|
30
|
-
### 场景 1:获取会议的纪要和妙记关联
|
|
31
|
-
|
|
32
|
-
`vc +detail` 只能拿到 `note_id` 和 `minute_token`,不直接返回纪要文档 token 与妙记产物内容。要获取实际产物,需根据用户诉求继续调用 `note +detail` 或 `minutes +detail`,**并沿用第 1 步同一个 `--as`**(完整规则见 [lark-shared](../../lark-shared/SKILL.md) 的「身份延续」):
|
|
33
|
-
|
|
34
|
-
```bash
|
|
35
|
-
# 1. 获取会议详情,拿到 note_id 和 minute_token
|
|
36
|
-
lark-cli vc +detail --meeting-ids <meeting_id> --as bot
|
|
37
|
-
|
|
38
|
-
# 2. 用 note_id 获取纪要文档 Token(note_doc_token / verbatim_doc_token / shared_doc_tokens)
|
|
39
|
-
# 显式沿用第 1 步的身份,不要省略 --as
|
|
40
|
-
lark-cli note +detail --note-id <note_id> --as bot
|
|
41
|
-
|
|
42
|
-
# 3. 用 minute_token 获取妙记产物(同样沿用第 1 步的身份)
|
|
43
|
-
# ⚠️ 必须显式指定 --summary / --todo / --chapter / --keyword / --transcript 中至少一个 flag,
|
|
44
|
-
# 不传任何 flag 则不会返回任何产物内容。
|
|
45
|
-
lark-cli minutes +detail --minute-tokens obcnxxxxxxxxxxxxxxxxxxxx --todo --transcript --as bot
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
> **路由建议**:当用户未明确指定使用妙记时,**优先**走 `note +detail` 链路(纪要文档信息更完整、含逐字稿原文),仅在 `note_id` 为空或用户要求妙记产物时才走 `minutes +detail`。
|
|
49
|
-
> **身份边界**:`note +transcript` 目前仅支持 `--as user`。若上面第 2 步用 `--as bot` 拿到 `note_display_type=unified`,停下来向用户说明该纪要逐字稿只能以 user 身份读取,只有用户明确同意才切换身份重试。
|
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
# Calendar/VC/Doc 跨领域关联关系、领域知识和职责边界说明
|
|
2
|
-
|
|
3
|
-
本文档说明飞书日历(Calendar)、视频会议(VC)、云文档(Doc)三个域之间的关联关系,帮助理解跨域数据流转和产物依赖。
|
|
4
|
-
|
|
5
|
-
## Calendar 域
|
|
6
|
-
|
|
7
|
-
- **lark-calendar skill** 负责日历与日程管理,包括创建、查询、修改、删除日程等操作。
|
|
8
|
-
- **日程与会议的关系**:日程可以用于提前预约会议,确定会议时间、参与人、会议室、会议主题等信息。日程上可以关联飞书/Lark 视频会议。
|
|
9
|
-
- **并非所有会议都通过日程发起**:即时会议不经过日程预约,直接创建。因此,仅查询日程数据无法覆盖所有会议,搜索历史会议应优先使用 `vc +search`。
|
|
10
|
-
- **日程上的用户会议纪要**:用户可以在日程上绑定自己的会议纪要文档(MeetingNotes),用于手动记录会议相关信息。该文档与 AI 生成的智能纪要(`note_doc_token`)是不同的文档,相互独立。
|
|
11
|
-
|
|
12
|
-
> **路由规则**:查询过去已结束的会议 → `lark-vc`;查询未来日程/待开的会 → `lark-calendar`;查询"今天有哪些会议" → 两者结合(`vc +search` 查已结束 + `calendar` 查未开始)。
|
|
13
|
-
|
|
14
|
-
## VC 域
|
|
15
|
-
|
|
16
|
-
- **lark-vc skill** 负责视频会议管理,包括搜索历史会议、查询会议产物(智能纪要、逐字稿、妙记等)、查询参会人快照等操作。
|
|
17
|
-
- **会议类型**:会议可以是日程会议(由日程发起,有对应的 `calendar_event_id`),也可以是即时会议等其他类型。
|
|
18
|
-
|
|
19
|
-
### 会议产物
|
|
20
|
-
|
|
21
|
-
会议产物取决于会中开启的功能,分为两条独立链路:
|
|
22
|
-
|
|
23
|
-
#### 链路一:开启「AI 总结」
|
|
24
|
-
|
|
25
|
-
会中开启「AI 总结」功能后,产生以下产物:
|
|
26
|
-
|
|
27
|
-
| 产物 | Token 字段 | 本质 | 说明 |
|
|
28
|
-
|------|-----------|------|------|
|
|
29
|
-
| 智能纪要 | `note_doc_token` | 飞书文档 | AI 生成的会议总结与待办 |
|
|
30
|
-
| 逐字稿 | `verbatim_doc_token` | 飞书文档 | 完整的逐句发言记录(含说话人、时间戳)— **仅 `note_display_type=normal` 时是可读的独立文档**;`unified` 纪要的逐字稿用 `note +transcript --note-id <note_id>` 拉取(见下方 [Note 域](#note-域)) |
|
|
31
|
-
| 共享文档 | `shared_doc_token` | 飞书文档 | 会中投屏共享的文档信息 |
|
|
32
|
-
|
|
33
|
-
> **授权特性**:智能纪要总结文档及其逐字稿文档(总结文档尾部会挂逐字稿链接与会中投屏共享文档链接)在会后**自动授权给参会人**,参会人通常可直接读取,无需额外申请。
|
|
34
|
-
|
|
35
|
-
此外,还存在**用户会议纪要(MeetingNotes)**,对应 `meeting_note` 字段。这是用户主动绑定到日程的纪要文档,通常用于会前记录会议相关内容,与智能纪要文档相互独立。仅通过 [`calendar +meeting --event-ids`](../../lark-calendar/references/lark-calendar-meeting.md) 路径返回。
|
|
36
|
-
|
|
37
|
-
#### 链路二:开启「录制」
|
|
38
|
-
|
|
39
|
-
会中开启「录制」功能后,产生**妙记产物**(`minute_token`)。注意:妙记不一定是会中产生的,用户上传音视频文件或录音也会产生妙记。妙记本身包含以下子产物:
|
|
40
|
-
|
|
41
|
-
| 子产物 | 说明 |
|
|
42
|
-
|--------|------|
|
|
43
|
-
| Summary(总结) | 对整场会议的智能总结 |
|
|
44
|
-
| Todo(待办) | 会议中识别出的待处理任务列表 |
|
|
45
|
-
| Chapter(章节) | 按讨论话题划分的核心内容摘要 |
|
|
46
|
-
| Transcript(文字记录) | 整场会议最原始的逐人发言记录 |
|
|
47
|
-
|
|
48
|
-
> **授权特性**:妙记带有**原始会议录制视频**,会后**不会自动授权给参会人**,需管理员主动授权或参会人主动申请后才能读取(含其 Summary/Todo/Chapter/Transcript 等产物)。因此当同一场会议既有智能纪要又有妙记时,参会人访问**智能纪要及其逐字稿**的门槛通常低于妙记。
|
|
49
|
-
|
|
50
|
-
#### 两条链路的独立性
|
|
51
|
-
|
|
52
|
-
- 智能纪要(AI 总结链路)和妙记(录制链路)**相互独立、互不影响**。
|
|
53
|
-
- 一场会议可能同时拥有两类产物,也可能只有其中一类,也可能都没有。
|
|
54
|
-
- 当两者都存在时,Summary/Todo 内容可能重叠,应根据用户意图选择优先读取哪个。
|
|
55
|
-
|
|
56
|
-
> **产物选择决策**:
|
|
57
|
-
> - **AI 产物 vs 原始记录**:智能总结、待办、章节都属于 AI 分析产物,可能只包含最终结论和关键信息。
|
|
58
|
-
> - **用户要求"提炼/总结/重新总结/整理/回顾"会议内容时** → **内容总结必须从逐字稿/文字记录出发,基于原始对话独立分析**。禁止直接搬运 AI 纪要的总结作为最终输出——那只是对 AI 产物的重新排版,不是独立提炼。
|
|
59
|
-
> - **用户要求查看待办或章节时** → **应参考 AI 产物的待办和章节**,因为 AI 产物的待办更友好(包含提出人和负责人),章节按话题划分更结构化。
|
|
60
|
-
> - **用户只想直接看 AI 总结结果** → 使用 AI 产物的总结。
|
|
61
|
-
> - **智能纪要 vs 妙记的选择规则**(适用于总结、待办、逐字稿等重复产物,含逐字稿/原始记录):
|
|
62
|
-
> - **只存在一类产物** → 用存在的那一类。
|
|
63
|
-
> - **两类都存在、用户明确指定了其中一类**(如"看妙记的逐字稿""用妙记总结")→ **语义指向哪个就走哪个链路,不要自作主张改道**。
|
|
64
|
-
> - **两类都存在、用户未指定** → **默认用智能纪要及其逐字稿**(智能纪要及逐字稿会后自动授权给参会人,访问门槛更低;妙记含原始录制视频、不自动授权,需申请)。
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
#### 逐字稿与文字记录的格式
|
|
68
|
-
|
|
69
|
-
智能纪要的逐字稿(`normal` 纪要的 `verbatim_doc_token` 文档、`unified` 纪要的 `note +transcript` 输出)和妙记的文字记录(Transcript)都记录了用户原始对话内容,格式一致:
|
|
70
|
-
|
|
71
|
-
```
|
|
72
|
-
发言人名称 相对时间戳
|
|
73
|
-
<发言内容>
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
示例:
|
|
77
|
-
|
|
78
|
-
```
|
|
79
|
-
张三 00:00:00.195
|
|
80
|
-
我们接下来讨论一下项目进度。
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
- 第一行为发言人信息,包含用户名称和发言的相对时间(从会议开始计算的偏移量)。
|
|
84
|
-
- 后续行为该发言人的发言内容,直到下一个发言人标记出现。
|
|
85
|
-
|
|
86
|
-
### 会议总结和分析流程
|
|
87
|
-
|
|
88
|
-
#### Step 1: 定位会议
|
|
89
|
-
|
|
90
|
-
根据关键字、组织者、参与人、会议室等条件搜索会议,获取会议列表。
|
|
91
|
-
|
|
92
|
-
> **不要把纪要标题当会议线索:** 如果用户说“查询 xx 纪要的逐字稿 / 原始记录 / 谁说了什么”,且没有 `meeting_id`、`calendar_event_id`、会议号、参会人或时间范围,先用 `drive +search --query <标题>` 搜索纪要文档,拿到 Docx URL/token 后再 `docs +fetch`。若返回 `<vc-transcribe-tab vc-node-id="...">`,提取 `note_id` 后进入 Note 域判断 `normal` / `unified`;若没有该 block,但有“文字记录/逐字稿” Docx 链接,直接用 `docs +fetch` 读取该链接。
|
|
93
|
-
|
|
94
|
-
```bash
|
|
95
|
-
lark-cli vc +search --start "<YYYY-MM-DD>" --end "<YYYY-MM-DD>" --format json
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
详细用法请阅读 [`lark-vc-search.md`](lark-vc-search.md)。
|
|
99
|
-
|
|
100
|
-
#### Step 2: 根据 meeting_id 查询产物
|
|
101
|
-
|
|
102
|
-
> **身份延续**:`vc +detail` 支持 `--as user` / `--as bot`。用哪个身份取到 `note_id` / `minute_token`,Step 2、Step 3 后续每一条命令(`note +detail`、`minutes +detail`、`docs +fetch`)都要显式带上**同一个** `--as`;不要省略让身份被 profile 默认值悄悄换掉。完整规则见 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md) 的「身份延续」。
|
|
103
|
-
|
|
104
|
-
##### 获取会议产物
|
|
105
|
-
|
|
106
|
-
当用户提供 `meeting_id` 并需要会议产物时,先用 `vc +detail` 拿到 `note_id` 和 `minute_token`:
|
|
107
|
-
|
|
108
|
-
```bash
|
|
109
|
-
lark-cli vc +detail --meeting-ids '<meeting_id1>,<meeting_id2>'
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
详细用法请阅读 [`lark-vc-detail.md`](lark-vc-detail.md)。
|
|
113
|
-
|
|
114
|
-
**优先路径:通过 `note_id` 获取纪要产物**
|
|
115
|
-
|
|
116
|
-
如果用户未明确要求使用妙记,且返回了 `note_id`,**优先**使用 `note +detail` 获取纪要文档的 token 信息(沿用上一步的 `--as`):
|
|
117
|
-
|
|
118
|
-
```bash
|
|
119
|
-
lark-cli note +detail --note-id <note_id>
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
可获取会议的所有产物信息,包括:
|
|
123
|
-
- 纪要标识(`note_id`)与展示类型(`note_display_type`:`unknown` / `normal` / `unified`)— 决定逐字稿走哪条路由
|
|
124
|
-
- 智能纪要(`note_doc_token`)— AI 生成的总结和待办信息
|
|
125
|
-
- 逐字稿(`verbatim_doc_token`)— 完整的会中发言记录(仅 `normal` 纪要可直接读取该文档)
|
|
126
|
-
- 共享文档(`shared_doc_token`)— 会中投屏共享的文档
|
|
127
|
-
|
|
128
|
-
拿到文档 token 后,再通过 Doc 域 `docs +fetch` 拉取文档正文内容(见 Step 3)。详细用法请阅读 [`lark-note-detail.md`](../../lark-note/references/lark-note-detail.md)。
|
|
129
|
-
|
|
130
|
-
**备选路径:通过 `minute_token` 获取妙记产物**
|
|
131
|
-
|
|
132
|
-
如果 `note_id` 为空,或用户明确要求使用妙记产物,则使用 `minutes +detail` 获取妙记的具体产物:
|
|
133
|
-
|
|
134
|
-
```bash
|
|
135
|
-
# 必须显式指定要获取的产物 flag,至少传一个;不传则不会返回任何产物内容
|
|
136
|
-
lark-cli minutes +detail --minute-tokens '<minute_token1>,<minute_token2>' \
|
|
137
|
-
--summary --todo --chapter --keyword --transcript
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
> **注意**:`minutes +detail` 需要**手动指定**要获取的产物 flag,可选 `--summary`(总结)、`--todo`(待办)、`--chapter`(章节)、`--keyword`(关键词)、`--transcript`(文字记录)。**未传任何产物 flag 时不会返回产物内容**,请按用户诉求按需指定。详细用法请阅读 [`lark-minutes-detail.md`](../../lark-minutes/references/lark-minutes-detail.md)。
|
|
141
|
-
|
|
142
|
-
#### Step 3: 按 `note_display_type` 拉取正文 / 逐字稿
|
|
143
|
-
|
|
144
|
-
智能纪要(`note_doc_token`)是飞书文档,使用 `docs +fetch` 读取正文内容;**逐字稿的读取方式由 `note_display_type` 决定**:
|
|
145
|
-
|
|
146
|
-
读正文是本链路的最后一跳,身份仍由本链路决定:`--as <user|bot>` 一律填 Step 2 取得 token 时用的那个身份。[lark-doc](../../lark-doc/SKILL.md) 对普通文档推荐 `--as user`,那是用户自有文档的默认建议,**不适用于这里的纪要文档 token**,不要因此切回 user。
|
|
147
|
-
|
|
148
|
-
```bash
|
|
149
|
-
# 纪要正文(两种展示类型都适用)
|
|
150
|
-
lark-cli docs +fetch --doc <note_doc_token> --doc-format markdown
|
|
151
|
-
|
|
152
|
-
# note_display_type=normal:逐字稿是独立文档
|
|
153
|
-
lark-cli docs +fetch --doc <verbatim_doc_token> --doc-format markdown
|
|
154
|
-
|
|
155
|
-
# note_display_type=unified:逐字稿不是独立文档,按 note_id 拉取
|
|
156
|
-
# ⚠️ note +transcript 目前仅支持 --as user;如果上面的 note_id 是通过 --as bot
|
|
157
|
-
# 拿到的,在这一步停下来向用户说明"该纪要逐字稿只能以 user 身份读取",
|
|
158
|
-
# 只有用户明确同意才切到 --as user,不要静默切换身份重试
|
|
159
|
-
lark-cli note +transcript --note-id <note_id>
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
详细用法请参考 [lark-doc](../../lark-doc/SKILL.md) 与 [lark-note](../../lark-note/SKILL.md) skill。
|
|
163
|
-
|
|
164
|
-
#### Step 4: 判断用户需要的产物内容
|
|
165
|
-
|
|
166
|
-
- 根据用户诉求(总结/待办/章节/完整发言记录等),选择合适的产物进行分析和信息提取
|
|
167
|
-
- 如果两种产物都不存在或没有权限,需如实告知用户
|
|
168
|
-
|
|
169
|
-
## Note 域
|
|
170
|
-
|
|
171
|
-
- VC 只负责从 `meeting_id` 定位会议产物和 `note_id` / `minute_token`([`vc +detail`](lark-vc-detail.md))。
|
|
172
|
-
- 已知 `note_id` 后切到 [lark-note](../../lark-note/SKILL.md);逐字稿路由以 `lark-note` 的 `note_display_type` 规则为准。
|
|
173
|
-
- 已知 `minute_token` 时,[`minutes +detail`](../../lark-minutes/references/lark-minutes-detail.md) 顶层会一并返回该妙记关联的 `note_id`(如有);可直接传给 `note +detail` 取纪要文档 token,无需绕回 VC。
|
|
174
|
-
- 仅有日程 `event_id` 时,先走 [`calendar +meeting`](../../lark-calendar/references/lark-calendar-meeting.md) 拿到 `meeting_id` 或用户绑定的 `meeting_note`,再按上述路径继续。
|
|
175
|
-
- 只有自然语言纪要标题时,先走文档搜索与 `docs +fetch`;只有 `<vc-transcribe-tab vc-node-id="...">` 的 `vc-node-id` 可以进入 Note 域。
|
|
176
|
-
- `doc_token` / Docx URL 不是 `note_id`。没有 `vc-node-id` 时不要反推 Note,继续按 Doc 域读取正文或正文中明确给出的逐字稿文档。
|
|
177
|
-
|
|
178
|
-
## Doc 域
|
|
179
|
-
|
|
180
|
-
- **lark-doc skill** 负责飞书云文档管理,包括获取文档元信息、读取文档内容、创建和编辑文档等操作。
|
|
181
|
-
- **会议产物的文档本质**:智能纪要(`note_doc_token`)和 `normal` 纪要的逐字稿(`verbatim_doc_token`)都是飞书文档,需要通过 `lark-doc` 的 API(如 `docs +fetch`)查询其内容和元信息;`unified` 纪要的逐字稿不是独立文档,用 `note +transcript` 拉取([lark-note](../../lark-note/SKILL.md))。
|
|
182
|
-
- **文档元信息查询**:获取文档名称、URL 等基本信息时,使用 `drive metas batch_query`;获取文档正文内容时,使用 `docs +fetch`。
|
|
183
|
-
|
|
184
|
-
## 三域关联总览
|
|
185
|
-
|
|
186
|
-
```
|
|
187
|
-
Calendar (日程) ──── 发起预约 ────► VC (会议)
|
|
188
|
-
│
|
|
189
|
-
┌──────────────────┤
|
|
190
|
-
│ │
|
|
191
|
-
AI 总结链路 录制链路
|
|
192
|
-
│ │
|
|
193
|
-
▼ ▼
|
|
194
|
-
智能纪要 (Doc) 妙记 (Minutes)
|
|
195
|
-
逐字稿 (Doc) ├── Summary
|
|
196
|
-
共享文档 (Doc) ├── Todo
|
|
197
|
-
用户纪要 (Doc) ├── Chapter
|
|
198
|
-
└── Transcript
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
- Calendar 提供会议预约入口,但并非所有会议都来自日程。
|
|
202
|
-
- VC 是会议数据的中心,管理会议记录和产物关联。
|
|
203
|
-
- Doc 是会议产物的载体,智能纪要和逐字稿都以飞书文档形式沉淀,需通过 Doc 域 API 读取。
|