@amaster.ai/pi-lark 0.1.2-beta.52 → 0.1.2-beta.53

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.
Files changed (39) hide show
  1. package/package.json +2 -2
  2. package/skills/lark-apps/SKILL.md +10 -4
  3. package/skills/lark-apps/references/lark-apps-cloud-dev.md +5 -4
  4. package/skills/lark-apps/references/lark-apps-create.md +6 -3
  5. package/skills/lark-apps/references/lark-apps-get.md +1 -1
  6. package/skills/lark-apps/references/lark-apps-list.md +1 -1
  7. package/skills/lark-apps/references/lark-apps-local-dev.md +27 -1
  8. package/skills/lark-apps/references/lark-apps-release-create.md +1 -1
  9. package/skills/lark-drive/SKILL.md +7 -5
  10. package/skills/lark-drive/references/lark-drive-copy.md +87 -0
  11. package/skills/lark-drive/references/lark-drive-update-title.md +78 -0
  12. package/skills/lark-im/references/lark-im-message-enrichment.md +1 -1
  13. package/skills/lark-im/references/lark-im-messages-search.md +1 -3
  14. package/skills/lark-sheets/SKILL.md +83 -82
  15. package/skills/lark-sheets/references/lark-sheets-batch-update.md +13 -58
  16. package/skills/lark-sheets/references/lark-sheets-chart.md +2 -1
  17. package/skills/lark-sheets/references/lark-sheets-conditional-format.md +1 -1
  18. package/skills/lark-sheets/references/lark-sheets-range-operations.md +5 -5
  19. package/skills/lark-sheets/references/lark-sheets-read-data.md +80 -6
  20. package/skills/lark-sheets/references/lark-sheets-sheet-structure.md +21 -10
  21. package/skills/lark-sheets/references/lark-sheets-styles-put.md +93 -0
  22. package/skills/lark-sheets/references/lark-sheets-visual-standards.md +2 -2
  23. package/skills/lark-sheets/references/lark-sheets-workbook.md +4 -3
  24. package/skills/lark-sheets/references/lark-sheets-write-cells.md +40 -12
  25. package/skills/lark-sheets/scripts/lark_detect_subtables.py +593 -0
  26. package/skills/lark-sheets/scripts/lark_inspect_workbook.py +188 -0
  27. package/skills/lark-sheets/scripts/lark_profile_table.py +614 -0
  28. package/skills/lark-sheets/scripts/lark_sheet_range.py +176 -0
  29. package/skills/lark-sheets/scripts/lark_sheet_read_cli.py +184 -0
  30. package/skills/lark-sheets/scripts/sheets_df.py +21 -3
  31. package/skills/lark-whiteboard/SKILL.md +15 -8
  32. package/skills/lark-whiteboard/references/lark-whiteboard-export.md +4 -3
  33. package/skills/lark-whiteboard/references/lark-whiteboard-update.md +4 -4
  34. package/skills/lark-whiteboard/references/lark-whiteboard-workflow.md +19 -17
  35. package/skills/lark-whiteboard/routes/dsl.md +8 -2
  36. package/skills/lark-whiteboard/routes/mermaid.md +1 -1
  37. package/skills/lark-whiteboard/routes/svg-edit.md +5 -2
  38. package/skills/lark-whiteboard/routes/svg.md +3 -1
  39. package/skills/lark-whiteboard/scenes/mention.md +71 -0
@@ -0,0 +1,71 @@
1
+ # 提及用户 (@用户 / mentionUser)
2
+
3
+ 适用于:文本节点内需要 @ 某个飞书用户(如"负责人:@张三"、"@李四 请跟进")。mention 不是独立节点,而是文本节点富文本中的一段 run,可与普通文字混排。
4
+
5
+ > 当用户要插入 @用户提及时阅读本页。
6
+
7
+ ## 取值来源(强约束)
8
+
9
+ - 本页只讲 @用户(mentionUser)。@文档(mentionDoc)暂不支持。
10
+ - `mentionUserId` 必须是**真实的飞书用户 open_id**(形如 `ou_xxxxxxxx`)。
11
+ - 用户只给出**姓名**时,先用 `lark-contact` skill 把姓名解析成 open_id,再填入 `mentionUserId`。
12
+ - **无法解析出真实 open_id 时,停下向用户确认,禁止臆造 id**。假 id 会写入失败或 @ 到错误的人。
13
+
14
+ ## Content 约束(关键)
15
+
16
+ - 带 `mentionUserId` 的 run,其 `content` **必须非空**,约定填 `"*"`(单字符占位)。
17
+ - 原因:转换按字符占位来引用样式,`content` 为空串时该 mention 不会产出任何元素(静默丢失)。
18
+ - `content` 的字面内容**不会显示**:画板上显示的是按 open_id 反查到的用户名,不是 `content` 的文字。因此不要把用户名写进 `content`,填单个 `"*"` 即可。
19
+ - 一个 run 只能是一种类型:`mentionUserId` 与 `hyperlink` **互斥**,不能同时出现在同一个 run(校验会报错)。需要"链接 + @用户"时拆成两个 run。
20
+
21
+ ## 骨架示例
22
+
23
+ `text` 用 `WBTextRun[]`,把 @用户 拆成独立 run(`content: "*"` + `mentionUserId`),前后再接普通文字 run:
24
+
25
+ ```json
26
+ {
27
+ "type": "text",
28
+ "width": "fit-content",
29
+ "height": "fit-content",
30
+ "text": [
31
+ { "content": "负责人:", "fontSize": 14 },
32
+ { "content": "*", "mentionUserId": "ou_xxxxxxxxxxxxxxxx", "fontSize": 14 },
33
+ { "content": " 请本周内跟进", "fontSize": 14 }
34
+ ]
35
+ }
36
+ ```
37
+
38
+ 写入画板走标准 DSL 路径(`npx -y @larksuite/whiteboard-cli@^0.2.13 -i diagram.json --to openapi --format json | lark-cli whiteboard +update ... --input_format raw`),无需手写 raw JSON。
39
+
40
+ ## 正反例
41
+
42
+ 正确:
43
+
44
+ ```json
45
+ { "content": "*", "mentionUserId": "ou_abc123" }
46
+ ```
47
+
48
+ 错误(content 空串 → 不产出 @用户):
49
+
50
+ ```json
51
+ { "content": "", "mentionUserId": "ou_abc123" }
52
+ ```
53
+
54
+ 错误(把用户名写进 content → 多余占位,显示仍由 uid 决定):
55
+
56
+ ```json
57
+ { "content": "@张三", "mentionUserId": "ou_abc123" }
58
+ ```
59
+
60
+ 错误(与 hyperlink 同 run → 校验报错,须拆两个 run):
61
+
62
+ ```json
63
+ { "content": "*", "mentionUserId": "ou_abc123", "hyperlink": "https://xxx.com" }
64
+ ```
65
+
66
+ ## 陷阱
67
+
68
+ - **content 为空**:mention 静默丢失,画板上看不到 @用户。必须填 `"*"`。
69
+ - **把用户名写进 content**:无意义,显示名由 open_id 反查决定;且多字符会占用多个字符位。
70
+ - **mentionUserId + hyperlink 同 run**:一个 run 只能是一种元素类型,会被校验拦截,须拆成两个 run。
71
+ - **用假 id 或用户中文名当 id**:`mentionUserId` 只接受真实 open_id,先经 `lark-contact` 解析。