#428 by GitHub stars
Pinvou/pinvou-agent
Open-source desktop AI agent for tools, files, knowledge, workflows, and real deliverables.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
pinvou3-app/src-tauri/resources/common/bundle/builtin-skills/visual-design/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-doc/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-shared/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-task/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-wiki/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/tmeet-skills/tmeet-skill/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-calendar/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-contact/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-disk/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-doc/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-doc-manage/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-email/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-media/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-meeting/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-message/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-pptx/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-shared/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-sheet/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartpage/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartsheet/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-todo/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/government-writing/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/ima-skills/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/ima-skills/knowledge-base/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/ima-skills/notes/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/package-author/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/pptx/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/skill-author/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ab6ac99e6790
No earlier version was observed for comparison.
pinvou3-app/src-tauri/resources/common/skill-marketplace/visualizer/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
ab6ac99e6790 → 3cec34e2b6b7
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ab6ac99e6790
No earlier version was observed for comparison.
Verified commit 3cec34e2b6b7da8fbb85b70050dae83ff8b4ee10
git clone --filter=blob:none --no-checkout https://github.com/Pinvou/pinvou-agent.git .hotskills/pinvou-pinvou-agent && git -C .hotskills/pinvou-pinvou-agent checkout --detach 3cec34e2b6b7da8fbb85b70050dae83ff8b4ee10
# Copy each selected skill directory from .hotskills/pinvou-pinvou-agent into .agents/skills/<skill-name>/Heat
8.1- Star growth, last 7 daysAhead of 96% of tracked repositories
- Star growth, last 24 hoursAhead of 97% of tracked repositories
- Rank movement, last 7 daysAhead of 80% of tracked repositories
- Commits, last 30 daysAhead of 96% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
- visual-design
pinvou3-app/src-tauri/resources/common/bundle/builtin-skills/visual-design - dws
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws - lark-base
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base - lark-calendar
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar - lark-doc
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-doc - lark-drive
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive - lark-im
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im - lark-shared
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-shared - lark-sheets
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets - lark-task
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-task - lark-wiki
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-wiki - tmeet-skill
pinvou3-app/src-tauri/resources/common/bundle/tmeet-skills/tmeet-skill - wecomcli-calendar
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-calendar - wecomcli-contact
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-contact - wecomcli-disk
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-disk - wecomcli-doc
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-doc - wecomcli-doc-manage
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-doc-manage - wecomcli-email
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-email - wecomcli-media
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-media - wecomcli-meeting
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-meeting - wecomcli-message
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-message - wecomcli-pptx
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-pptx - wecomcli-shared
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-shared - wecomcli-sheet
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-sheet - wecomcli-smartpage
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartpage - wecomcli-smartsheet
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartsheet - wecomcli-todo
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-todo - government-writing
pinvou3-app/src-tauri/resources/common/skill-marketplace/government-writing - ima-skills
pinvou3-app/src-tauri/resources/common/skill-marketplace/ima-skills - knowledge-base
pinvou3-app/src-tauri/resources/common/skill-marketplace/ima-skills/knowledge-base - notes
pinvou3-app/src-tauri/resources/common/skill-marketplace/ima-skills/notes - package-author
pinvou3-app/src-tauri/resources/common/skill-marketplace/package-author - pptx
pinvou3-app/src-tauri/resources/common/skill-marketplace/pptx - skill-author
pinvou3-app/src-tauri/resources/common/skill-marketplace/skill-author - tencent-docs
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill - visualizer
pinvou3-app/src-tauri/resources/common/skill-marketplace/visualizer
How it works
visual-design
When your agent uses it
直出好看的网页/落地页/banner/海报/产品介绍页/无数据图表的静态报告页/简历/作品集等视觉物料——套一套设计系统,模型自由写自包含 HTML,颜值由规则锁死、不靠模板。用户说"做个网页/页面/落地页/banner/海报/报告页/作品集/简历"或"把这份内容做成网页版"时使用。含数据图表的可视化报告/仪表盘交由 visualizer。⚠<U+FE0F> 不含信息检索:查天气/查行情/查股价/查数据请走对应连接器,不是本技能。
What it loads into context
Frontmatter
173 tokensAlways available to the agent
SKILL.md
1,834 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 何时用 / 何时不用
- 设计系统(必守)
- 按物料类型/尺寸产出
- 流程
- 用户传图(可选)
Files
SKILL.mdcore6,090 bytes
Read SKILL.md
# 视觉设计(设计系统直出 HTML)
把用户要的视觉物料,**套下面这套设计系统、自己写一份完整自包含的 HTML**,写到会话产物目录;写完**调 `mcp_pinvou3_present_artifact` 上卡**(延迟加载与 `mcp_boot` 重试规则见「流程」第 5 步)。颜值来自设计系统约束,不是套固定模板。
## 何时用 / 何时不用
- ✅ 用:网页、落地页、产品介绍页、banner、海报、活动图、数据报告页、简历、作品集、可嵌入的 UI 卡片/组件。
- ❌ 不用:查天气、查股价、查行情、查企业、读文档、发消息等**信息检索/操作类** → 走对应连接器或工具;**含数据图表的可视化报告/仪表盘** → 交由 `visualizer` 技能。
## 设计系统(必守)
- **扁平现代、克制高级**;禁止廉价渐变堆叠、噪点、俗气投影、霓虹、花哨动效。
- 字体 `'PingFang SC', system-ui, sans-serif`;层级清晰(大标题粗、正文 14–16px 偏灰)、**留白充足**。
- 配色:每个作品选**一套主色 + 1 辅色 + 中性灰**,与品牌/主题相符,**别花**。
- **构图饱满、别空心**:banner 不要把文字挤最左、装饰挤最右、**中间留一大片空白**。要么内容**一整块**自然铺开(左对齐或居中、留白均匀),要么左文右图时**两边分量均衡、右侧视觉块要够大填住空间**。**能一行放下的标题/文案别硬拆成两行**(容器给够宽、用合适字号、必要时 `white-space:nowrap`)。
- **品牌事实别瞎编**:某品牌的**主色 / logo / slogan 拿不准时,先问用户或用中性配色**,别凭记忆假设(小模型易记错——例:爱奇艺主色是**绿色 `#00BE06`**,不是粉色)。View the complete source on GitHubdws
When your agent uses it
【何时用:仅当用户明确指向钉钉/DingTalk(钉钉文档、钉钉日程等)时使用;泛指做文档/表格/待办/审批默认走本地工具,不要误用钉钉】用 dws CLI 管理钉钉:AI表格/AI搜问(找人首选)/目标管理(Agoal)/组织大脑/日历/通讯录/群聊与机器人消息/待办/审批/智能合同/考勤/日志(日报周报)/DING消息/钉钉文档/云盘/Markdown文件/HTML文件/AI听记/邮箱/在线电子表格(axls)/知识库/白板/开放平台文档/个人IM与OA事件订阅。用户要求操作上述钉钉产品时使用。
What it loads into context
Frontmatter
235 tokensAlways available to the agent
SKILL.md
10,749 tokensWhen the skill is activated
Reference documents
640,787 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 严格禁止 (NEVER DO)
- 严格要求 (MUST DO)
- Shortcut 与原子命令的使用原则
- Shortcut 总览
- 多组织 / 多账号
- 产品总览
- 意图判断决策树
- 危险操作确认
- 核心流程
- 命令发现(Schema 渐进查询 + --help 互为补充)
- 错误处理
- 详细参考 (按需读取)
Scripts executed separately
scripts/aitable_export_via_task.pyscripts/aitable_import_via_task.pyscripts/attendance_my_record.pyscripts/attendance_report_checkin.pyscripts/attendance_report_common.pyscripts/attendance_report_daily.pyscripts/attendance_report_detail.pyscripts/attendance_report_monthly.pyscripts/attendance_report_record.pyscripts/attendance_schedule_export.pyscripts/attendance_schedule_import.pyscripts/attendance_team_shift.pyscripts/attendance_vacation_balance.pyscripts/bulk_add_fields.pyscripts/calendar_free_slot_finder.pyscripts/calendar_schedule_meeting.pyscripts/calendar_today_agenda.pyscripts/contact_dept_members.pyscripts/drive_tree_list.pyscripts/generate_form_component_id.pyscripts/generate_node_id.pyscripts/import_records.pyscripts/mail_send_with_cc.pyscripts/mail_unread_summary.pyscripts/minutes_recent_summary.pyscripts/oa_batch_approve.pyscripts/oa_pending_review.pyscripts/report_inbox_today.pyscripts/report_received_today.pyscripts/todo_batch_create.pyscripts/todo_daily_summary.pyscripts/todo_overdue_check.pyscripts/upload_attachment.py
Files
LICENSEasset10,098 bytesNOTICEasset666 bytesSKILL.mdcore39,318 bytesSKILL.mdcore39,318 bytesSKILL.mdcore39,318 bytesreferences/best_practices/01-messaging.mddoc3,266 bytesreferences/best_practices/02-task.mddoc2,817 bytesreferences/best_practices/03-meeting.mddoc11,841 bytesreferences/best_practices/04-document.mddoc11,213 bytesreferences/best_practices/05-reporting.mddoc6,346 bytesreferences/best_practices/06-data-analytics.mddoc5,511 bytesreferences/best_practices/07-minutes.mddoc8,549 bytesreferences/best_practices/08-directory.mddoc8,164 bytesreferences/best_practices/09-mail.mddoc5,323 bytesreferences/best_practices/10-minutes-speaker-match.mddoc9,189 bytesreferences/best_practices/11-minutes-speaker-correct.mddoc4,463 bytesreferences/best_practices/_common/conventions.mddoc3,445 bytesreferences/best_practices/_common/recipe-conventions.mddoc1,856 bytesreferences/best_practices/lite-recipes.mddoc16,059 bytesreferences/capability-limits.mddoc3,017 bytesreferences/error-codes.mddoc4,106 bytesreferences/field-rules.mddoc5,536 bytesreferences/global-reference.mddoc5,273 bytesreferences/intent-guide.mddoc48,920 bytesreferences/products/agoal.mddoc12,378 bytesreferences/products/aisearch.mddoc14,449 bytesreferences/products/aitable-record-ops.mddoc4,965 bytesreferences/products/aitable.mddoc30,839 bytesreferences/products/aitable/aitable-advperm.mddoc10,431 bytesreferences/products/aitable/aitable-api-key.mddoc1,746 bytesreferences/products/aitable/aitable-attachment.mddoc3,616 bytesreferences/products/aitable/aitable-best-practices.mddoc3,612 bytesreferences/products/aitable/aitable-cell-value.mddoc9,321 bytesreferences/products/aitable/aitable-comment.mddoc2,891 bytesreferences/products/aitable/aitable-dashboard-chart.mddoc4,595 bytesreferences/products/aitable/aitable-data-analysis-sop.mddoc5,766 bytesreferences/products/aitable/aitable-error-recovery.mddoc7,100 bytesreferences/products/aitable/aitable-export-import.mddoc10,081 bytesreferences/products/aitable/aitable-field-properties.mddoc8,718 bytesreferences/products/aitable/aitable-field.mddoc6,752 bytesreferences/products/aitable/aitable-filter-sort.mddoc12,700 bytesreferences/products/aitable/aitable-form.mddoc15,441 bytesreferences/products/aitable/aitable-formula-guide.mddoc8,346 bytesreferences/products/aitable/aitable-primary-doc.mddoc2,362 bytesreferences/products/aitable/aitable-psql.mddoc15,021 bytesreferences/products/aitable/aitable-record-create.mddoc2,239 bytesreferences/products/aitable/aitable-record-delete.mddoc582 bytesreferences/products/aitable/aitable-record-history.mddoc4,111 bytesreferences/products/aitable/aitable-record-name-key.mddoc2,457 bytesreferences/products/aitable/aitable-record-query.mddoc15,325 bytesreferences/products/aitable/aitable-record-share.mddoc1,689 bytesreferences/products/aitable/aitable-record-stats.mddoc3,913 bytesreferences/products/aitable/aitable-record-update.mddoc3,281 bytesreferences/products/aitable/aitable-record-upsert.mddoc3,423 bytesreferences/products/aitable/aitable-view-config.mddoc12,113 bytesreferences/products/aitable/aitable-view-extras.mddoc8,234 bytesreferences/products/aitable/aitable-workflow.mddoc14,793 bytesreferences/products/attendance-report.mddoc30,583 bytesreferences/products/attendance-schedule.mddoc28,158 bytesreferences/products/attendance-vacation.mddoc9,609 bytesreferences/products/attendance.mddoc104,447 bytesreferences/products/calendar.mddoc51,528 bytesreferences/products/chat-emoji-list.mddoc8,624 bytesreferences/products/chat.mddoc162,100 bytesreferences/products/chat/a2ui.mddoc4,266 bytesreferences/products/contact.mddoc31,239 bytesreferences/products/contract.mddoc15,521 bytesreferences/products/dev.mddoc15,021 bytesreferences/products/devdoc.mddoc1,886 bytesreferences/products/ding.mddoc10,122 bytesreferences/products/dingtalk-tag/capability.mddoc5,812 bytesreferences/products/dingtalk-tag/dingtalk-tag-index.mddoc3,979 bytesreferences/products/dingtalk-tag/manage-and-connect.mddoc8,421 bytesreferences/products/dingtalk-tag/manage.mddoc9,962 bytesreferences/products/dingtalk-tag/run.mddoc5,551 bytesreferences/products/doc.mddoc66,717 bytesreferences/products/doc/doc-block.mddoc14,994 bytesreferences/products/doc/doc-comment.mddoc10,158 bytesreferences/products/doc/doc-create.mddoc6,721 bytesreferences/products/doc/doc-export.mddoc3,573 bytesreferences/products/doc/doc-file-ops.mddoc9,576 bytesreferences/products/doc/doc-import.mddoc2,852 bytesreferences/products/doc/doc-info.mddoc10,135 bytesreferences/products/doc/doc-list.mddoc1,364 bytesreferences/products/doc/doc-media.mddoc4,851 bytesreferences/products/doc/doc-permission.mddoc4,991 bytesreferences/products/doc/doc-read.mddoc8,690 bytesreferences/products/doc/doc-search.mddoc1,417 bytesreferences/products/doc/doc-update.mddoc15,845 bytesreferences/products/doc/doc-whiteboard.mddoc3,983 bytesreferences/products/doc/format/doc-jsonml-cookbook.mddoc25,594 bytesreferences/products/doc/format/doc-jsonml-schema.jsonasset16,937 bytesreferences/products/doc/format/doc-jsonml-schema.mddoc29,781 bytesreferences/products/doc/style/doc-create-workflow.mddoc23,612 bytesreferences/products/doc/style/doc-style-guideline.mddoc21,623 bytesreferences/products/doc/style/doc-update-workflow.mddoc16,826 bytesreferences/products/drive.mddoc67,005 bytesreferences/products/drive/drive-export.mddoc2,638 bytesreferences/products/drive/drive-storage.mddoc2,198 bytesreferences/products/drive/drive-task.mddoc2,494 bytesreferences/products/event.mddoc30,387 bytesreferences/products/hrbrain.mddoc7,702 bytesreferences/products/html.mddoc6,545 bytesreferences/products/mail.mddoc90,219 bytesreferences/products/markdown.mddoc11,708 bytesreferences/products/minutes.mddoc177,970 bytesreferences/products/oa-template-write.mddoc8,314 bytesreferences/products/oa.mddoc63,213 bytesreferences/products/oa/oa-form-components.mddoc34,553 bytesreferences/products/oa/oa-goout.mddoc7,710 bytesreferences/products/oa/oa-leave.mddoc7,378 bytesreferences/products/oa/oa-overtime.mddoc10,329 bytesreferences/products/oa/oa-process-nodes.mddoc10,810 bytesreferences/products/oa/oa-supply.mddoc6,302 bytesreferences/products/oa/template/components/AddressField.mddoc718 bytesreferences/products/oa/template/components/CalculateField.mddoc2,026 bytesreferences/products/oa/template/components/CascadeField.mddoc1,134 bytesreferences/products/oa/template/components/ColumnLayout.mddoc746 bytesreferences/products/oa/template/components/DDAttachment.mddoc586 bytesreferences/products/oa/template/components/DDDateField.mddoc857 bytesreferences/products/oa/template/components/DDDateRangeField.mddoc1,598 bytesreferences/products/oa/template/components/DDMultiSelectField.mddoc1,292 bytesreferences/products/oa/template/components/DDPhotoField.mddoc699 bytesreferences/products/oa/template/components/DDSelectField.mddoc1,267 bytesreferences/products/oa/template/components/DepartmentField.mddoc789 bytesreferences/products/oa/template/components/ExternalContactField.mddoc751 bytesreferences/products/oa/template/components/FormRelateField.mddoc2,198 bytesreferences/products/oa/template/components/IdCardField.mddoc709 bytesreferences/products/oa/template/components/InnerContactField.mddoc819 bytesreferences/products/oa/template/components/InvoiceField.mddoc1,140 bytesreferences/products/oa/template/components/MoneyField.mddoc811 bytesreferences/products/oa/template/components/NumberField.mddoc807 bytesreferences/products/oa/template/components/OcrIdCardField.mddoc1,738 bytesreferences/products/oa/template/components/OcrTextField.mddoc900 bytesreferences/products/oa/template/components/PhoneField.mddoc760 bytesreferences/products/oa/template/components/RecipientAccountField.mddoc746 bytesreferences/products/oa/template/components/RelateField.mddoc804 bytesreferences/products/oa/template/components/SeqNumberField.mddoc1,155 bytesreferences/products/oa/template/components/SignatureField.mddoc722 bytesreferences/products/oa/template/components/StarRatingField.mddoc774 bytesreferences/products/oa/template/components/TableField.mddoc1,193 bytesreferences/products/oa/template/components/TextField.mddoc775 bytesreferences/products/oa/template/components/TextNote.mddoc675 bytesreferences/products/oa/template/components/TextareaField.mddoc754 bytesreferences/products/oa/template/components/TimeAndLocationField.mddoc719 bytesreferences/products/oa/template/example/form_components.jsonasset7,473 bytesreferences/products/oa/template/example/process_config.jsonasset23,242 bytesreferences/products/oa/template/form-components.mddoc11,740 bytesreferences/products/oa/template/nodes/approver.mddoc3,587 bytesreferences/products/oa/template/nodes/cc.mddoc2,656 bytesreferences/products/oa/template/nodes/condition.mddoc11,069 bytesreferences/products/oa/template/nodes/handler.mddoc2,365 bytesreferences/products/oa/template/nodes/originator.mddoc941 bytesreferences/products/oa/template/nodes/parallel.mddoc2,749 bytesreferences/products/oa/template/nodes/payer.mddoc1,675 bytesreferences/products/oa/template/process-nodes.mddoc9,042 bytesreferences/products/oa/template/rules/target_approval.mddoc3,342 bytesreferences/products/oa/template/rules/target_connect_approval.mddoc3,275 bytesreferences/products/oa/template/rules/target_formcomponent_approval.mddoc1,233 bytesreferences/products/oa/template/rules/target_formula_managerOfDept.mddoc1,493 bytesreferences/products/oa/template/rules/target_formula_reportLineManager.mddoc1,523 bytesreferences/products/oa/template/rules/target_label.mddoc3,987 bytesreferences/products/oa/template/rules/target_management.mddoc1,313 bytesreferences/products/oa/template/rules/target_managers_labels.mddoc1,317 bytesreferences/products/oa/template/rules/target_matrix_approval.mddoc2,408 bytesreferences/products/oa/template/rules/target_originator.mddoc698 bytesreferences/products/oa/template/rules/target_select.mddoc1,645 bytesreferences/products/openapi-explorer.mddoc3,946 bytesreferences/products/pat.mddoc1,884 bytesreferences/products/report.mddoc30,623 bytesreferences/products/sheet.mddoc16,586 bytesreferences/products/sheet/sheet-batch-operations.mddoc7,875 bytesreferences/products/sheet/sheet-chart.mddoc4,027 bytesreferences/products/sheet/sheet-comment.mddoc8,086 bytesreferences/products/sheet/sheet-conditional-format.mddoc4,625 bytesreferences/products/sheet/sheet-dimension-operations.mddoc3,766 bytesreferences/products/sheet/sheet-dropdown.mddoc6,875 bytesreferences/products/sheet/sheet-export.mddoc8,798 bytesreferences/products/sheet/sheet-filter-view.mddoc3,813 bytesreferences/products/sheet/sheet-filter.mddoc10,262 bytesreferences/products/sheet/sheet-formula.mddoc10,260 bytesreferences/products/sheet/sheet-import.mddoc2,620 bytesreferences/products/sheet/sheet-media-image.mddoc14,250 bytesreferences/products/sheet/sheet-pivot-table.mddoc12,933 bytesreferences/products/sheet/sheet-range-operations.mddoc8,877 bytesreferences/products/sheet/sheet-read-data.mddoc4,050 bytesreferences/products/sheet/sheet-revision-changeset.mddoc3,247 bytesreferences/products/sheet/sheet-search-replace.mddoc6,422 bytesreferences/products/sheet/sheet-style-format.mddoc4,559 bytesreferences/products/sheet/sheet-version.mddoc5,117 bytesreferences/products/sheet/sheet-workbook.mddoc4,429 bytesreferences/products/sheet/sheet-write-data.mddoc7,955 bytesreferences/products/simple.mddoc2,712 bytesreferences/products/todo.mddoc21,480 bytesreferences/products/whiteboard.mddoc20,175 bytesreferences/products/whiteboard/compose.mddoc5,787 bytesreferences/products/whiteboard/diff.mddoc3,838 bytesreferences/products/whiteboard/open-nodes-v1.mddoc4,087 bytesreferences/products/whiteboard/open-nodes-v1/01-overview.mddoc3,369 bytesreferences/products/whiteboard/open-nodes-v1/02-query.mddoc7,512 bytesreferences/products/whiteboard/open-nodes-v1/03-update.mddoc8,774 bytesreferences/products/whiteboard/open-nodes-v1/04-text-style.mddoc12,096 bytesreferences/products/whiteboard/open-nodes-v1/05-shape-frame-group-connector.mddoc5,024 bytesreferences/products/whiteboard/open-nodes-v1/06-vector-icon-path.mddoc9,692 bytesreferences/products/whiteboard/open-nodes-v1/07-examples-errors-write-support.mddoc9,049 bytesreferences/products/whiteboard/open-nodes-v1/08-catalogs.mddoc3,850 bytesreferences/products/whiteboard/render.mddoc3,381 bytesreferences/products/whiteboard/replace.mddoc3,352 bytesreferences/products/whiteboard/vector.mddoc1,517 bytesreferences/products/wiki.mddoc32,367 bytesreferences/url-patterns.mddoc12,702 bytesscripts/aitable_export_via_task.pyruns10,145 bytesscripts/aitable_import_via_task.pyruns3,247 bytesscripts/attendance_my_record.pyruns3,183 bytesscripts/attendance_report_checkin.pyruns17,822 bytesscripts/attendance_report_common.pyruns69,762 bytesscripts/attendance_report_daily.pyruns22,424 bytesscripts/attendance_report_detail.pyruns33,877 bytesscripts/attendance_report_monthly.pyruns31,923 bytesscripts/attendance_report_record.pyruns38,019 bytesscripts/attendance_schedule_export.pyruns13,239 bytesscripts/attendance_schedule_import.pyruns20,532 bytesscripts/attendance_team_shift.pyruns2,552 bytesscripts/attendance_vacation_balance.pyruns22,746 bytesscripts/bulk_add_fields.pyruns9,564 bytesscripts/calendar_free_slot_finder.pyruns7,205 bytesscripts/calendar_schedule_meeting.pyruns5,465 bytesscripts/calendar_today_agenda.pyruns4,232 bytesscripts/contact_dept_members.pyruns4,536 bytesscripts/drive_tree_list.pyruns4,324 bytesscripts/generate_form_component_id.pyruns3,315 bytesscripts/generate_node_id.pyruns980 bytesscripts/import_records.pyruns9,702 bytesscripts/mail_send_with_cc.pyruns4,335 bytesscripts/mail_unread_summary.pyruns4,090 bytesscripts/minutes_recent_summary.pyruns6,215 bytesscripts/oa_batch_approve.pyruns5,219 bytesscripts/oa_pending_review.pyruns3,964 bytesscripts/report_inbox_today.pyruns5,208 bytesscripts/report_received_today.pyruns11,319 bytesscripts/todo_batch_create.pyruns13,474 bytesscripts/todo_daily_summary.pyruns5,301 bytesscripts/todo_overdue_check.pyruns3,719 bytesscripts/upload_attachment.pyruns6,456 bytes
Read SKILL.md
# 钉钉全产品 Skill
通过 `dws` 命令管理钉钉产品能力。
> ⚠<U+FE0F> 命令与 flag 以当前 dws 二进制为准:`dws <cmd> --help` 是 Cobra flags 事实源,Agent 选命令/参数约束/安全确认以 leaf Schema(`--compact`)为准,与本文档冲突时以二者为准。
> 🔑 首次使用先认证:命令报 `AUTH_TOKEN_EXPIRED` / 未登录时,不要在会话内直接跑 `dws auth login`——它是阻塞式扫码设备流,会一直等待授权直至超时,用户看不到扫码链接。把命令交给用户在其终端自行执行(流程见 [global-reference.md](./references/global-reference.md) 认证章节),完成后再继续;不要因未登录直接断定技能不可用。
## 严格禁止 (NEVER DO)
- 不要使用 dws 命令以外的方式操作钉钉业务数据(禁止 curl、HTTP API、浏览器)。**例外**:① aitable 导入/导出/附件上传链路返回的预签名 `uploadUrl`/`downloadUrl`(`import upload` 申请的上传凭证、`export data` 返回的下载地址、`attachment upload` 返回的上传地址)允许用 curl 直传/直下(见 [aitable-export-import.md](./references/products/aitable/aitable-export-import.md) 与 [aitable-attachment.md](./references/products/aitable/aitable-attachment.md));② 按 [openapi-explorer.md](./references/products/openapi-explorer.md) 读取官方 `open.dingtalk.com/llms.txt` 文档并生成受限的 `dws api` 调用。除此之外禁止
- 不要编造 UUID、ID 等标识符,必须从命令返回中提取
- 不要猜测字段名/参数值,操作前必须先查询确认
View the complete source on GitHublark-base
When your agent uses it
【何时用:仅当用户明确指向飞书/Lark(发到飞书、飞书文档等)时使用;泛指做个文档或PPT或表格或方案默认走本地工具,不要误用飞书】飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、BaseApp 应用模式(页面与组件)、Workspace 目录、workflow、角色权限、模板中心(模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;导入转 lark-drive,认证转 lark-shared。
What it loads into context
Frontmatter
214 tokensAlways available to the agent
SKILL.md
6,681 tokensWhen the skill is activated
Reference documents
107,157 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 身份选择(优先)
- 进入前必做:解析目标实体
- Base 模板中心
- Base Block 资源模型
- Table Block(The Core)
- Dashboard Block
- 应用模式与 Workspace 心智模型
- Workflow Block
- Advanced Permission(AdvPerm)
- Docx Block
- Folder Block
- 通用执行契约
- 不在本 Skill 范围
Files
SKILL.mdcore24,585 bytesSKILL.mdcore24,585 bytesSKILL.mdcore24,585 bytesSKILL.mdcore24,585 bytesreferences/lark-base-advanced-permission-and-role.mddoc3,908 bytesreferences/lark-base-app-block-data-config.mddoc7,936 bytesreferences/lark-base-app.mddoc15,724 bytesreferences/lark-base-cell-value.mddoc6,596 bytesreferences/lark-base-dashboard-block-config.mddoc20,976 bytesreferences/lark-base-dashboard-block-get-data.mddoc24,997 bytesreferences/lark-base-dashboard.mddoc16,731 bytesreferences/lark-base-data-query.mddoc19,642 bytesreferences/lark-base-field-create.mddoc3,358 bytesreferences/lark-base-field-extension.mddoc6,960 bytesreferences/lark-base-field-formula.mddoc55,697 bytesreferences/lark-base-field-lookup.mddoc18,985 bytesreferences/lark-base-field-schema.mddoc14,838 bytesreferences/lark-base-field-update.mddoc6,886 bytesreferences/lark-base-filter-condition.mddoc7,474 bytesreferences/lark-base-form-detail.mddoc3,089 bytesreferences/lark-base-form-questions-create.mddoc9,932 bytesreferences/lark-base-form-questions-update.mddoc7,335 bytesreferences/lark-base-form-submit.mddoc7,182 bytesreferences/lark-base-record-batch-create.mddoc2,125 bytesreferences/lark-base-record-history-list.mddoc2,747 bytesreferences/lark-base-record-query-and-analysis-sop.mddoc11,735 bytesreferences/lark-base-record-upsert.mddoc2,327 bytesreferences/lark-base-role-config.mddoc21,836 bytesreferences/lark-base-template-center.mddoc10,288 bytesreferences/lark-base-view-set-filter.mddoc2,699 bytesreferences/lark-base-view.mddoc9,434 bytesreferences/lark-base-workflow-schema.mddoc43,811 bytesreferences/lark-base-workflow.mddoc31,210 bytes
Read SKILL.md
# Base
普通 Base 是数据容器,由一棵 Base Block 资源树和 Base 级配置组成。`folder`、`table`、`docx`、`dashboard`、`workflow` 都是 Block 类型;Advanced Permission / Role 是 Base 级配置,不属于 Block。Table 是其中承载业务数据的核心 Block。Workspace 是组织 Base 与 BaseApp 的外层容器;BaseApp(AppMode)通过 Page 和组件组织 Base 数据,不是 Base 的别名。
## 身份选择(优先)
操作 Base 优先使用 `--as user`;用户明确要求应用身份时使用 `--as bot`。权限失败按 `lark-shared` 以原身份修复 scope 或资源 ACL;只有用户明确同意更换操作者时才切换身份。
## 进入前必做:解析目标实体
开始操作前先确定 `base_token` 和目标实体类型;上下文已提供 `<bitable>` / `<base_refer>` 标签及资源 ID 时直接使用。其余情况按意图选择入口:
1. **URL 或分享链接:** `lark-cli base +url-resolve --url '<url>' --as user`。Base URL 根据返回的 `resource_type` / `block_type` 及 `table_id`、`view_id`、`record_id`、`dashboard_id`、`workflow_id`、`docx_token`、`share_token` 等坐标进入对应模块;BaseApp `/app/` URL 返回 `app_token`,并在链接携带时返回 `workspace_token` 和 `page_id`。**Wiki URL(`.../wiki/<token>`)也可直接传给 `+url-resolve`**(命令会先解析 Wiki 节点再返回底层 Base 的 `base_token`),无需先在 lark-wiki 侧手工解析 `obj_token`;从 `wiki +node-get` 拿到 `obj_type=bitable` 的 `obj_token` 时,该 `obj_token` 即 `base_token`,同样不要把 wiki `node_token` 当 `--base-token`。实体类型以解析结果为准。
2. **Base 标题或关键词:** `lark-cli base +title-resolve --title '<keyword>' --as user`。单一结果直接取得 `base_token`;多个候选结合标题、所有者和更新时间消歧,仍无法唯一确定时请用户选择。随后按下方 Base Block 资源模型定位目标实体。View the complete source on GitHublark-calendar
When your agent uses it
【何时用:仅当用户明确指向飞书/Lark(发到飞书、飞书文档等)时使用;泛指做个文档或PPT或表格或方案默认走本地工具,不要误用飞书】飞书日历:管理日程和会议室。查看/搜索日程、创建/更新日程、管理参会人、查询忙闲和推荐时段、预定会议室。不负责:查询视频会议记录(本 skill 只覆盖日程;lark-vc 技能未随包收录,可 CLI 直连,见意图路由)、待办任务(走 lark-task)。
What it loads into context
Frontmatter
189 tokensAlways available to the agent
SKILL.md
5,381 tokensWhen the skill is activated
Reference documents
31,111 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 身份
- Shortcuts
- 前置条件路由
- 写操作反馈
- 核心概念
- 术语映射
- 意图路由
- 任务类型分流
- 时间推断规范
- 会议室规则
- API Resources
- 常用其他域命令
- 不在本 skill 范围
Files
SKILL.mdcore19,144 bytesSKILL.mdcore19,144 bytesSKILL.mdcore19,144 bytesSKILL.mdcore19,144 bytesSKILL.mdcore19,144 bytesSKILL.mdcore19,144 bytesSKILL.mdcore19,144 bytesSKILL.mdcore19,144 bytesSKILL.mdcore19,144 bytesreferences/lark-calendar-create.mddoc6,275 bytesreferences/lark-calendar-join-event.mddoc1,998 bytesreferences/lark-calendar-list-attendees.mddoc1,379 bytesreferences/lark-calendar-meeting-relation.mddoc5,545 bytesreferences/lark-calendar-meeting.mddoc1,787 bytesreferences/lark-calendar-recurring.mddoc6,995 bytesreferences/lark-calendar-room-find.mddoc8,396 bytesreferences/lark-calendar-rsvp.mddoc1,106 bytesreferences/lark-calendar-schedule-clear-time.mddoc2,827 bytesreferences/lark-calendar-schedule-fuzzy-time.mddoc3,398 bytesreferences/lark-calendar-schedule-meeting.mddoc6,290 bytesreferences/lark-calendar-suggestion.mddoc7,113 bytesreferences/lark-calendar-transfer.mddoc4,552 bytesreferences/lark-calendar-update.mddoc8,029 bytes../lark-im/SKILL.mddoc25,208 bytes../lark-shared/SKILL.mddoc5,051 bytes../lark-task/SKILL.mddoc14,784 bytes
Read SKILL.md
# calendar (v4)
开始前先读 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md)(认证、权限处理)。
**CRITICAL — 凡涉及预约日程/会议室、调整时间或查询/搜索会议室,第一步 MUST 读 [`references/lark-calendar-schedule-meeting.md`](references/lark-calendar-schedule-meeting.md)。仅编辑字段(改标题/描述)或增删参会人(不涉及时间和会议室)时可跳过,直接读 [`references/lark-calendar-update.md`](references/lark-calendar-update.md)。**
## 身份
按**日程归属**选身份:
- 查看/管理登录用户本人的日程 → `--as user`(默认,绝大多数场景)。
- 查看/管理 bot 自己创建/拥有的日程 → `--as bot`;`--as bot` 查用户日程会拿到空结果,bot 只能访问自己的(空)日历(原理见 lark-shared)。
**对话人称映射**:「我」= 登录用户,「你」= 应用(bot);作为字段取值的人称(参会人、会议 owner 等)不参与身份判定,如「你创建日程,邀请我、会议 owner 为我」→ `--as bot` 创建,登录用户仅作参会人与会议 owner。View the complete source on GitHublark-doc
When your agent uses it
【何时用:仅当用户明确指向飞书/Lark(发到飞书、飞书文档等)时使用;泛指做个文档或PPT或表格或方案默认走本地工具,不要误用飞书】飞书云文档(Docx/Wiki)与思维笔记内容操作:读取、创建、编辑,插入/下载图片附件,查询/回滚历史版本。用户给出文档URL/token(doubao.com /docx/、/wiki/)按路径/token 路由;`/page/<token>` 是妙搭应用非云文档;内嵌表格/多维表格提取 token 切对应 skill;画板无技能,CLI 直连。评论走 lark-drive;表格/Base 内部操作不在本 skill。
What it loads into context
Frontmatter
242 tokensAlways available to the agent
SKILL.md
1,374 tokensWhen the skill is activated
Reference documents
60,386 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 场景与 Shortcut 路由
- 不在本 Skill 范围
Files
SKILL.mdcore4,954 bytesreferences/genres/business-analysis.mddoc3,128 bytesreferences/genres/data-report.mddoc2,943 bytesreferences/genres/email.mddoc4,286 bytesreferences/genres/execution-plan.mddoc2,986 bytesreferences/genres/formal-doc.mddoc4,477 bytesreferences/genres/meeting-minutes.mddoc2,325 bytesreferences/genres/memo-brief.mddoc2,063 bytesreferences/genres/official-redhead.mddoc6,249 bytesreferences/genres/prd.mddoc2,531 bytesreferences/genres/proposal.mddoc2,183 bytesreferences/genres/research-report.mddoc3,324 bytesreferences/genres/retrospective.mddoc2,410 bytesreferences/genres/route-consumer.mddoc3,910 bytesreferences/genres/route-creative.mddoc3,663 bytesreferences/genres/route-knowledge.mddoc4,791 bytesreferences/genres/route-marketing.mddoc4,347 bytesreferences/genres/route-media.mddoc3,771 bytesreferences/genres/route-opinion.mddoc3,683 bytesreferences/genres/route-personal-brand.mddoc3,437 bytesreferences/genres/route-platform.mddoc639 bytesreferences/genres/route-report.mddoc1,272 bytesreferences/genres/route-workplace.mddoc2,899 bytesreferences/genres/sop-tutorial.mddoc4,064 bytesreferences/genres/technical-doc.mddoc3,603 bytesreferences/genres/wechat.mddoc3,982 bytesreferences/genres/weekly-report.mddoc2,051 bytesreferences/genres/white-paper.mddoc3,209 bytesreferences/genres/xiaohongshu.mddoc3,303 bytesreferences/lark-doc-create-workflow.mddoc9,564 bytesreferences/lark-doc-create.mddoc3,397 bytesreferences/lark-doc-fetch.mddoc8,004 bytesreferences/lark-doc-history.mddoc5,497 bytesreferences/lark-doc-md.mddoc5,934 bytesreferences/lark-doc-media-download.mddoc2,351 bytesreferences/lark-doc-media-insert.mddoc7,050 bytesreferences/lark-doc-media-preview.mddoc1,766 bytesreferences/lark-doc-mindnote.mddoc6,086 bytesreferences/lark-doc-resource-cover.mddoc4,304 bytesreferences/lark-doc-script.mddoc5,225 bytesreferences/lark-doc-update.mddoc7,580 bytesreferences/lark-doc-whiteboard.mddoc9,267 bytesreferences/lark-doc-xml-extended-blocks.mddoc4,494 bytesreferences/lark-doc-xml.mddoc5,534 bytes../lark-drive/SKILL.mddoc24,848 bytes../lark-shared/SKILL.mddoc5,051 bytes../lark-wiki/references/lark-wiki-node-create.mddoc8,281 bytes
Read SKILL.md
# docs
## 场景与 Shortcut 路由
**CRITICAL:先判断场景,再读取该场景的参考文件;不要在任务开始时一次性读取全部参考文件。每个文件只在首次进入对应阶段时读取一次。**
**身份:文档操作推荐显式指定 `--as user`。**
**本地文件引用统一遵循文件访问权限:CWD 内优先使用 `@./相对路径`,其他目录使用 `@绝对路径`。XML 内的相对资源路径先查 CWD;仅文件不存在时再查源 XML 文件所在目录,同名文件以 CWD 为准。内联内容、stdin、在线文档没有源文件目录,不执行回退。**
### 文档内容
- **读取 / 摘要 — [`+fetch`](references/lark-doc-fetch.md)**:先读参考再获取文档。
- **从零创作 — [`创建工作流`](references/lark-doc-create-workflow.md)**:先完整执行创建工作流,**简单任务不是跳过的理由**;View the complete source on GitHublark-drive
When your agent uses it
【何时用:仅当用户明确指向飞书/Lark(发到飞书、飞书文档等)时使用;泛指做个文档或PPT或表格或方案默认走本地工具,不要误用飞书】飞书云空间:管理 Drive 文件/文件夹,上传下载、复制移动删除、评论、权限、密级标签、版本、改标题,导入 Word/Markdown/Excel/CSV/PPTX/.base 为在线文档;doubao.com 云空间 URL 同走本 skill,不回退 WebFetch。不负责:文档内容编辑(lark-doc)、表格/Base 表内数据(lark-sheets/lark-base)、知识库节点(lark-wiki)。
What it loads into context
Frontmatter
200 tokensAlways available to the agent
SKILL.md
6,626 tokensWhen the skill is activated
Reference documents
147,958 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 快速决策
- 修改标题
- 核心概念
- 不在本 skill 范围
- Shortcuts(推荐优先使用)
- API Resources
Files
../lark-base/SKILL.mddoc24,585 bytes../lark-doc/SKILL.mddoc4,954 bytesSKILL.mdcore24,848 bytesSKILL.mdcore24,848 bytesSKILL.mdcore24,848 bytesreferences/lark-drive-add-comment.mddoc12,190 bytesreferences/lark-drive-add-reply.mddoc2,554 bytesreferences/lark-drive-apply-permission.mddoc3,706 bytesreferences/lark-drive-batch-query-comments.mddoc2,503 bytesreferences/lark-drive-comment-content.mddoc2,654 bytesreferences/lark-drive-comment-location.mddoc11,051 bytesreferences/lark-drive-copy.mddoc4,035 bytesreferences/lark-drive-cover.mddoc2,444 bytesreferences/lark-drive-create-folder.mddoc3,829 bytesreferences/lark-drive-create-shortcut.mddoc4,379 bytesreferences/lark-drive-delete-reply.mddoc2,464 bytesreferences/lark-drive-delete.mddoc4,655 bytesreferences/lark-drive-download.mddoc2,873 bytesreferences/lark-drive-export-download.mddoc1,540 bytesreferences/lark-drive-export.mddoc8,403 bytesreferences/lark-drive-files-list.mddoc10,469 bytesreferences/lark-drive-import.mddoc11,229 bytesreferences/lark-drive-inspect.mddoc2,136 bytesreferences/lark-drive-list-comments.mddoc6,056 bytesreferences/lark-drive-list-replies.mddoc2,644 bytesreferences/lark-drive-member-add.mddoc5,260 bytesreferences/lark-drive-member-list.mddoc3,122 bytesreferences/lark-drive-member-remove.mddoc2,996 bytesreferences/lark-drive-move.mddoc5,088 bytesreferences/lark-drive-permission-get-setting.mddoc1,881 bytesreferences/lark-drive-permission-guide.mddoc3,829 bytesreferences/lark-drive-preview.mddoc4,668 bytesreferences/lark-drive-pull.mddoc10,012 bytesreferences/lark-drive-push.mddoc18,452 bytesreferences/lark-drive-react-reply.mddoc2,970 bytesreferences/lark-drive-reactions.mddoc7,290 bytesreferences/lark-drive-resolve-comment.mddoc1,776 bytesreferences/lark-drive-restore-comment.mddoc2,122 bytesreferences/lark-drive-search.mddoc23,080 bytesreferences/lark-drive-secure-label.mddoc2,002 bytesreferences/lark-drive-status.mddoc7,510 bytesreferences/lark-drive-task-result.mddoc13,757 bytesreferences/lark-drive-update-reply.mddoc2,444 bytesreferences/lark-drive-update-title.mddoc3,471 bytesreferences/lark-drive-upload.mddoc5,530 bytesreferences/lark-drive-version-delete.mddoc1,047 bytesreferences/lark-drive-version-get.mddoc2,067 bytesreferences/lark-drive-version-history.mddoc1,915 bytesreferences/lark-drive-version-revert.mddoc1,370 bytesreferences/lark-drive-workflow-knowledge-organize-analysis.mddoc12,951 bytesreferences/lark-drive-workflow-knowledge-organize-discovery.mddoc19,364 bytesreferences/lark-drive-workflow-knowledge-organize-execution.mddoc9,576 bytesreferences/lark-drive-workflow-knowledge-organize-planning.mddoc14,529 bytesreferences/lark-drive-workflow-knowledge-organize-rollback.mddoc11,075 bytesreferences/lark-drive-workflow-knowledge-organize.mddoc20,230 bytesreferences/lark-drive-workflow-permission-governance-commands.mddoc6,512 bytesreferences/lark-drive-workflow-permission-governance-outputs.mddoc28,399 bytesreferences/lark-drive-workflow-permission-governance.mddoc26,329 bytesreferences/lark-drive-workflow-topic-move-collector-execute.mddoc13,818 bytesreferences/lark-drive-workflow-topic-move-collector-recall.mddoc9,519 bytesreferences/lark-drive-workflow-topic-move-collector-resolve-verify.mddoc13,920 bytesreferences/lark-drive-workflow-topic-move-collector-review-plan.mddoc12,808 bytesreferences/lark-drive-workflow-topic-move-collector-setup.mddoc8,471 bytesreferences/lark-drive-workflow-topic-move-collector.mddoc16,146 bytesreferences/lark-drive-workflow.mddoc8,540 bytes../lark-shared/SKILL.mddoc5,051 bytes../lark-shared/references/lark-wiki-token-routing.mddoc2,488 bytes../lark-sheets/SKILL.mddoc27,752 bytes../lark-wiki/SKILL.mddoc13,163 bytes../lark-wiki/references/lark-wiki-node-copy.mddoc2,359 bytes
Read SKILL.md
# drive (v1)
**CRITICAL — 开始前 MUST 先用 `read` 读取 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md),其中包含认证、权限处理**
> **术语说明:** 飞书云空间也常被称为"云盘"、"云存储"、"网盘"或"我的空间",这些说法通常指的是同一个产品,是飞书官方的云端文件存储与管理中心。
> **导入分流规则:** 如果用户要把本地 Excel / CSV / `.base` 快照导入成 Base / 多维表格 / bitable,必须优先使用 `lark-cli drive +import --type bitable`。不要先切到 `lark-base`;`lark-base` 只负责导入完成后的表内操作。
> **副本分流规则:** 如果用户要复制在线文档、创建文档副本、把文档复制到另一个文件夹,必须使用 `lark-cli drive +copy`。不要用 `drive +export` 下载后再 `drive +import` 上传,也不要用 `docs +fetch` + `docs +create` 重建正文;导出/导入只用于本地文件转换或离线产物。
## 快速决策
- 用户要把**已有 Wiki 节点移出知识库,放到 Drive 文件夹或“我的空间”根目录**:切到 `lark-wiki`,使用 `lark-cli wiki +move-to-drive`;不要把 Wiki token 直接交给 `drive +move`。这是会改变文档归属和权限继承的写操作,执行前确认源节点与目标位置。
- 用户要**复制文档 / 创建副本 到云盘或者文件夹**时:已提供可直接使用的 URL 或 token,按 [`references/lark-drive-copy.md`](references/lark-drive-copy.md) 使用 `lark-cli drive +copy`;仅提供标题时,先按 [`references/lark-drive-search.md`](references/lark-drive-search.md) 使用 `drive +search` 唯一定位源资源,再按 copy reference 复制。如果是要复制文档 / 创建副本到知识库,使用 `wiki +node-copy`(见 [`lark-wiki-node-copy.md`](../lark-wiki/references/lark-wiki-node-copy.md))。View the complete source on GitHublark-im
When your agent uses it
【何时用:仅当用户明确指向飞书/Lark(发到飞书、飞书文档等)时使用;泛指做个文档或PPT或表格或方案默认走本地工具,不要误用飞书】飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)与卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索或创建群聊/话题群、管理标记数据、Feed 置顶与标签数据、处理卡片回调时使用。
What it loads into context
Frontmatter
222 tokensAlways available to the agent
SKILL.md
6,462 tokensWhen the skill is activated
Reference documents
82,825 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core Concepts
- Resource Relationships
- Important Notes
- Shortcuts(推荐优先使用)
- API Resources
- 权限表
Files
SKILL.mdcore25,208 bytesSKILL.mdcore25,208 bytesreferences/card/card-2.0-schema.mddoc6,154 bytesreferences/card/components/button.mddoc2,827 bytesreferences/card/components/chart.mddoc2,264 bytesreferences/card/components/checker.mddoc1,900 bytesreferences/card/components/collapsible_panel.mddoc1,797 bytesreferences/card/components/column_set.mddoc2,595 bytesreferences/card/components/date_picker.mddoc1,636 bytesreferences/card/components/div.mddoc1,757 bytesreferences/card/components/form.mddoc2,269 bytesreferences/card/components/header.mddoc1,644 bytesreferences/card/components/hr.mddoc425 bytesreferences/card/components/img.mddoc1,384 bytesreferences/card/components/img_combination.mddoc1,046 bytesreferences/card/components/input.mddoc2,063 bytesreferences/card/components/interactive_container.mddoc2,257 bytesreferences/card/components/markdown.mddoc3,283 bytesreferences/card/components/multi_select_person.mddoc1,595 bytesreferences/card/components/multi_select_static.mddoc1,681 bytesreferences/card/components/overflow.mddoc1,530 bytesreferences/card/components/person.mddoc907 bytesreferences/card/components/person_list.mddoc1,179 bytesreferences/card/components/picker_datetime.mddoc1,583 bytesreferences/card/components/picker_time.mddoc1,527 bytesreferences/card/components/recycling_container.mddoc1,570 bytesreferences/card/components/select_img.mddoc1,973 bytesreferences/card/components/select_person.mddoc1,518 bytesreferences/card/components/select_static.mddoc1,890 bytesreferences/card/components/table.mddoc2,138 bytesreferences/card/lark-im-card-create.mddoc11,047 bytesreferences/card/lark-im-card-style.mddoc18,707 bytesreferences/card/resource/colors.mddoc1,452 bytesreferences/card/resource/icons.mddoc2,327 bytesreferences/lark-im-card-action-reply.mddoc9,777 bytesreferences/lark-im-chat-create.mddoc8,062 bytesreferences/lark-im-chat-identity.mddoc3,405 bytesreferences/lark-im-chat-list.mddoc9,573 bytesreferences/lark-im-chat-members-list.mddoc5,350 bytesreferences/lark-im-chat-messages-list.mddoc11,378 bytesreferences/lark-im-chat-search.mddoc8,585 bytesreferences/lark-im-chat-update.mddoc3,535 bytesreferences/lark-im-feed-group-list-item.mddoc3,214 bytesreferences/lark-im-feed-group-list.mddoc2,772 bytesreferences/lark-im-feed-group-query-item.mddoc2,391 bytesreferences/lark-im-feed-groups.mddoc18,722 bytesreferences/lark-im-feed-shortcut-create.mddoc4,272 bytesreferences/lark-im-feed-shortcut-list.mddoc5,106 bytesreferences/lark-im-feed-shortcut-remove.mddoc2,103 bytesreferences/lark-im-flag-cancel.mddoc2,964 bytesreferences/lark-im-flag-create.mddoc2,795 bytesreferences/lark-im-flag-list.mddoc4,753 bytesreferences/lark-im-message-enrichment.mddoc7,159 bytesreferences/lark-im-message-read-status.mddoc4,379 bytesreferences/lark-im-messages-edit.mddoc6,561 bytesreferences/lark-im-messages-mget.mddoc6,929 bytesreferences/lark-im-messages-reply.mddoc17,470 bytesreferences/lark-im-messages-resources-download.mddoc4,291 bytesreferences/lark-im-messages-search.mddoc13,894 bytesreferences/lark-im-messages-send.mddoc19,799 bytesreferences/lark-im-reactions.mddoc10,559 bytesreferences/lark-im-scopes.mddoc2,243 bytesreferences/lark-im-threads-messages-list.mddoc6,576 bytes../lark-shared/SKILL.mddoc5,051 bytes
Read SKILL.md
# im (v1)
**CRITICAL — 开始前 MUST 先用 `read` 读取 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md),其中包含认证、权限处理**
## Core Concepts
- **Message**: A single message in a chat, identified by `message_id` (om_xxx). Supports types: text, post, image, file, audio, video, sticker, interactive (card), share_chat, share_user, merge_forward, etc.
- **Chat**: A group chat or P2P conversation, identified by `chat_id` (oc_xxx).
- **Thread**: A reply thread under a message, identified by `thread_id` (om_xxx or omt_xxx).
- **Reaction**: An emoji reaction on a message.
- **Flag**: A bookmark on a message or thread.
- **Feed Shortcut**: A chat pinned to the current user's feed sidebar, identified by `feed_card_id` (an `oc_xxx` open_chat_id for CHAT type).
- **Feed Group**: A tag that groups feed cards in the feed list, identified by `feed_group_id` (ofg_xxx). Members are feed cards, each identified by `feed_id` + `feed_type`. Two types: `normal` (members managed explicitly) and `rule` (members auto-derived from rules).
View the complete source on GitHublark-shared
When your agent uses it
【何时用:在其他 lark-* 技能遇到认证/授权/身份/配置问题、被要求前置读取,或首次使用 lark-cli 时;泛指需求默认走本地工具】lark-cli 共享规则:首次配置(config init)、认证登录(auth login --domain/--scope,split-flow)、登录态查询与撤销(auth status/logout/whoami)、--as user/bot 身份切换、权限不足与 missing_scope 处理、JSON 输出契约与 _notice、update 更新、高风险操作审批(exit 10)。
What it loads into context
Frontmatter
171 tokensAlways available to the agent
SKILL.md
1,398 tokensWhen the skill is activated
Reference documents
3,754 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 通用准则
- 安全规则
- Reference 强触发索引
Files
SKILL.mdcore5,051 bytesreferences/lark-shared-config-init.mddoc980 bytesreferences/lark-shared-high-risk-approval.mddoc2,070 bytesreferences/lark-shared-identity-and-permissions.mddoc5,805 bytesreferences/lark-shared-output-contract.mddoc933 bytesreferences/lark-shared-update-notice.mddoc1,201 bytesreferences/lark-wiki-token-routing.mddoc2,488 bytes
Read SKILL.md
# lark-cli 共享规则
所有 `lark-*` skill 共享的底座:身份、认证、输出契约与高风险操作。
## 通用准则
1. **调用前先确认用法**:执行前读对应 reference 或跑 `--help`,别猜 flag 盲调。
2. **身份决定你代表谁操作**:`--as user` 代表用户本人(能看到、也能操作其日历、云空间/云盘/云存储等个人资源),`--as bot` 代表应用自己,应用级操作,只能访问bot自己的资源,bot 查用户资源会返回空成功而非报错。动手前先搞清楚身份`identity`。身份模型和权限管理 → [`lark-shared-identity-and-permissions.md`](references/lark-shared-identity-and-permissions.md)。
3. **授权 / 配置类 URL 必须配二维码**:当命令输出 `verification_url`、`verification_uri_complete`、`console_url` 等 URL 字段时,必须用 `lark-cli auth qrcode` 生成并在回复中展示,URL 在前二维码在后;优先生成 PNG(`--output`),仅当用户明确要求时才使用 ASCII(`--ascii`)。URL 原样转发——不编解码、不加标点、不重拼 query,二维码和链接请一起展示给用户。
4. **`--format json`(默认)下,判断成功用 `ok == true`(或进程退出码 0),不要用 `code == 0`**:成功信封没有顶层 `code` / `msg` 字段,`code` 只出现在错误信封的 `error` 内。按 OpenAPI 老格式 `{"code": 0, "msg": "ok"}`判断会把所有成功调用误判为失败——封装写入类命令时尤其危险。JSON 输出契约 → [`lark-shared-output-contract.md`](references/lark-shared-output-contract.md)。
View the complete source on GitHublark-sheets
When your agent uses it
【何时用:仅当用户明确指向飞书/Lark 电子表格;泛指做表格默认走本地工具】创建/操作飞书电子表格:工作表与行列结构、读写单元格(值/公式/样式/批注/图片)、查找替换、批量更新、区域复制/排序/填充、图表/透视表/条件格式/筛选/筛选视图/下拉列表/迷你图/浮动图片、公式校验与历史回滚、本地 Excel/CSV 导入导出。按名称搜索云空间表格文件改用 lark-drive 的 drive +search。doubao.com 的 /sheets/ URL 也走本 skill。多维表格改用 lark-base。不适用本地 Excel。
What it loads into context
Frontmatter
232 tokensAlways available to the agent
SKILL.md
8,187 tokensWhen the skill is activated
Reference documents
118,287 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 场景 → 命令速查
- 飞书表格编辑准则
- References
- 公共 flag 速查
Scripts executed separately
scripts/lark_chart_quality_check.pyscripts/lark_chart_size_advisor.pyscripts/lark_chart_size_rules.pyscripts/lark_detect_subtables.pyscripts/lark_inspect_workbook.pyscripts/lark_profile_table.pyscripts/lark_sheet_range.pyscripts/lark_sheet_read_cli.pyscripts/lark_sheets_df.py
Files
../lark-shared/SKILL.mddoc5,051 bytesSKILL.mdcore27,752 bytesSKILL.mdcore27,752 bytesSKILL.mdcore27,752 bytesSKILL.mdcore27,752 bytesSKILL.mdcore27,752 bytesreferences/lark-sheets-batch-update.mddoc19,797 bytesreferences/lark-sheets-changeset.mddoc5,205 bytesreferences/lark-sheets-chart.mddoc52,571 bytesreferences/lark-sheets-conditional-format.mddoc14,811 bytesreferences/lark-sheets-filter-view.mddoc8,064 bytesreferences/lark-sheets-filter.mddoc7,691 bytesreferences/lark-sheets-float-image.mddoc11,482 bytesreferences/lark-sheets-formula-translation.mddoc28,649 bytesreferences/lark-sheets-formula-verify.mddoc12,520 bytesreferences/lark-sheets-history.mddoc5,512 bytesreferences/lark-sheets-pivot-table.mddoc14,990 bytesreferences/lark-sheets-range-operations.mddoc21,589 bytesreferences/lark-sheets-read-data.mddoc37,536 bytesreferences/lark-sheets-search-replace.mddoc6,226 bytesreferences/lark-sheets-sheet-structure.mddoc14,474 bytesreferences/lark-sheets-sparkline.mddoc7,657 bytesreferences/lark-sheets-styles-put.mddoc8,020 bytesreferences/lark-sheets-visual-standards.mddoc19,597 bytesreferences/lark-sheets-workbook.mddoc29,537 bytesreferences/lark-sheets-write-cells.mddoc63,521 bytesscripts/lark_chart_quality_check.pyruns58,598 bytesscripts/lark_chart_size_advisor.pyruns14,284 bytesscripts/lark_chart_size_rules.pyruns10,473 bytesscripts/lark_detect_subtables.pyruns22,988 bytesscripts/lark_inspect_workbook.pyruns9,158 bytesscripts/lark_profile_table.pyruns22,678 bytesscripts/lark_sheet_range.pyruns5,444 bytesscripts/lark_sheet_read_cli.pyruns8,833 bytesscripts/lark_sheets_df.pyruns2,090 bytes
Read SKILL.md
# sheets
**CRITICAL — 开始前 MUST 先用 `read` 读取 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md),其中包含认证、权限处理。**
## 场景 → 命令速查
> 按当前动作选行;下一步必须 Read 该行 reference,读取完成前不得执行命令。只读命中的文档;含公式 / 样式等横切动作时再读对应规范,禁止用目录枚举代替 Read。
| 你要做的事 | ✅ 正确写法 | 动手前读(先 Read 再动手) |
| --- | --- | --- |
| 读数据 | `+csv-get`(纯值/CSV)、`+cells-get`(公式/样式/批注) | 读 `references/lark-sheets-read-data.md` |
| 写入数据 | `+csv-put`(无类型歧义纯文本)、`+table-put`(typed;量值/真日期;标签/编号/前导零/文本数字用 object,禁裸 csv-put)、`+cells-set`(公式/富写入)、`+cells-set-style`(样式)、`+cells-set-image`(单元格图片) | 读 `references/lark-sheets-write-cells.md` |
| 格式继承(新列/新行) | 物理插行 / 插列用 `+dim-insert --inherit-style before\|after`;往已有空白区域扩写用 `+range-copy --paste-type formats` 先铺样式再写值 | 读 `references/lark-sheets-range-operations.md`;插行插列再读 `references/lark-sheets-sheet-structure.md` |
| 工作簿操作 | `+workbook-create`、`+workbook-info`、`+workbook-import`、`+sheet-copy`、`+revision-get`、`+workbook-export` | 读 `references/lark-sheets-workbook.md` |View the complete source on GitHublark-task
When your agent uses it
【何时用:仅当用户明确指向飞书/Lark(发到飞书、飞书文档等)时使用;泛指做个文档或PPT或表格或方案默认走本地工具,不要误用飞书】飞书任务:管理任务、清单和任务智能体。创建待办任务、查看和更新任务状态、拆分子任务、组织任务清单、分配协作成员、上传任务附件、注册任务智能体、更新任务智能体的主页数据、写入智能体任务记录。当用户需要创建待办事项、查看任务列表、跟踪任务进度、管理项目清单或给他人分配任务、为任务上传附件文件、注册任务智能体、更新任务智能体主页数据、写入任务记录时使用。
What it loads into context
Frontmatter
219 tokensAlways available to the agent
SKILL.md
4,012 tokensWhen the skill is activated
Reference documents
10,491 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 命令选择与渐进式发现(必读)
- API Resources
- 权限表
Files
../lark-shared/SKILL.mddoc5,051 bytesSKILL.mdcore14,784 bytesSKILL.mdcore14,784 bytesreferences/lark-task-assign.mddoc1,432 bytesreferences/lark-task-comment.mddoc935 bytesreferences/lark-task-complete.mddoc1,342 bytesreferences/lark-task-create.mddoc4,238 bytesreferences/lark-task-followers.mddoc1,300 bytesreferences/lark-task-get-my-tasks.mddoc3,698 bytesreferences/lark-task-get-related-tasks.mddoc2,986 bytesreferences/lark-task-reminder.mddoc1,534 bytesreferences/lark-task-reopen.mddoc773 bytesreferences/lark-task-search.mddoc1,604 bytesreferences/lark-task-sections.mddoc4,378 bytesreferences/lark-task-set-ancestor.mddoc999 bytesreferences/lark-task-tasklist-create.mddoc1,367 bytesreferences/lark-task-tasklist-members.mddoc1,235 bytesreferences/lark-task-tasklist-search.mddoc1,452 bytesreferences/lark-task-tasklist-task-add.mddoc1,547 bytesreferences/lark-task-update.mddoc1,924 bytesreferences/lark-task-upload-attachment.mddoc3,221 bytes
Read SKILL.md
# task (v2)
**CRITICAL — 开始前 MUST 先用 `read` 读取 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md),其中包含认证、权限处理**
## 命令选择与渐进式发现(必读)
执行任何 Task 命令前,必须先确认能力真实存在,禁止根据用户意图自行拼接或猜测 `+<verb>`:
1. 先将用户意图与下方 Shortcut 表精确匹配。只有表中明确列出的 shortcut 才可直接选择;参数不确定时读取对应 reference 或运行该 shortcut 的 `--help`。
2. 没有精确匹配、或无法确认当前版本是否支持时,先运行 `lark-cli task --help`,以当前 CLI 输出的命令列表为准。
3. help 中存在匹配 shortcut 时,使用 help 列出的完整 shortcut token(例如 `+create`)运行 `lark-cli task <shortcut> --help`,再按真实 flag 执行。
4. help 中没有匹配 shortcut 时,不得尝试相似的 `+<verb>`;从 help 中选择原生 resource,运行 `lark-cli task <resource> --help` 确认 method,再运行 `lark-cli schema task.<resource>.<method>` 获取参数结构,最后调用 `lark-cli task <resource> <method> ...`。
5. 遇到 `unknown_subcommand` 时必须停止猜测或尝试变体,回到第 2 步重新发现能力。
View the complete source on GitHublark-wiki
When your agent uses it
【何时用:仅当用户明确指向飞书/Lark 知识库;泛指做文档默认走本地工具】飞书知识库:创建/查询知识空间、管理空间成员、管理节点层级(移动/复制/删除)、组织文档与快捷方式。doubao.com 的 /wiki/ URL 也走本 skill。不负责:上传文件(走 lark-drive)、编辑文档/表格/Base 内容(走 lark-doc/lark-sheets/lark-base)。
What it loads into context
Frontmatter
154 tokensAlways available to the agent
SKILL.md
3,697 tokensWhen the skill is activated
Reference documents
52,988 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 身份选择:优先使用 user 身份
- 快速决策
- Shortcuts(推荐优先使用)
- 成员添加流程
- 目标语义约束
- API Resources
- 不在本 skill 范围
Files
../lark-base/SKILL.mddoc24,585 bytes../lark-doc/SKILL.mddoc4,954 bytes../lark-drive/SKILL.mddoc24,848 bytes../lark-drive/references/lark-drive-workflow-knowledge-organize.mddoc20,230 bytes../lark-drive/references/lark-drive-workflow-topic-move-collector.mddoc16,146 bytes../lark-drive/references/lark-drive-workflow.mddoc8,540 bytes../lark-shared/SKILL.mddoc5,051 bytes../lark-shared/references/lark-wiki-token-routing.mddoc2,488 bytes../lark-sheets/SKILL.mddoc27,752 bytesSKILL.mdcore13,163 bytesSKILL.mdcore13,163 bytesSKILL.mdcore13,163 bytesSKILL.mdcore13,163 bytesSKILL.mdcore13,163 bytesSKILL.mdcore13,163 bytesSKILL.mdcore13,163 bytesreferences/lark-wiki-delete-space.mddoc8,790 bytesreferences/lark-wiki-member-add.mddoc3,536 bytesreferences/lark-wiki-member-list.mddoc2,876 bytesreferences/lark-wiki-member-remove.mddoc2,899 bytesreferences/lark-wiki-move-to-drive.mddoc4,573 bytesreferences/lark-wiki-move.mddoc10,379 bytesreferences/lark-wiki-node-copy.mddoc2,359 bytesreferences/lark-wiki-node-create.mddoc8,281 bytesreferences/lark-wiki-node-delete.mddoc3,408 bytesreferences/lark-wiki-node-get.mddoc4,133 bytesreferences/lark-wiki-node-list.mddoc4,395 bytesreferences/lark-wiki-space-create.mddoc1,573 bytesreferences/lark-wiki-space-list.mddoc2,236 bytes
Read SKILL.md
# wiki (v2)
**CRITICAL — 开始前 MUST 先用 `read` 读取 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md),其中包含认证、权限处理**
> **成员管理硬限制:**
> - 如果目标是“部门”,先判断身份,再决定是否继续。
> - `--as bot` 对应 `tenant_access_token`。官方限制:这种身份下不能使用部门 ID (`opendepartmentid`) 添加知识空间成员。
> - 遇到“部门 + --as bot”时,禁止先调用 `lark-cli wiki +member-add` 试错;直接说明该路径不可行。
> - 如果用户明确要求“以 bot 身份运行”,且目标是部门,必须停下说明 bot 路径无法完成,不要静默切到 `--as user`。
## 身份选择:优先使用 user 身份
知识空间和节点都是用户的个人资源,**策略上应优先显式使用 `--as user`**(CLI 的 `--as` 默认值为 `auto`,不带 `--as` 时常被解析成 `bot`,列出的是应用所属空间而非用户的)。仅当用户明确要求“应用 / bot 视角”时才用 `--as bot`(仍受上面的成员管理硬限制约束)。
View the complete source on GitHubtmeet-skill
When your agent uses it
何时用:用户明确要通过命令行操作腾讯会议(tmeet),或 Agent 遇到工具缺失/调用失败/能力不足想反馈平台时。OAuth 登录/登出/状态、会议管理(创建/更新/取消/查询/搜索/受邀者)、录制管理(列表/播放地址/智能纪要/转写/权限申请)、元宝纪要(按关键词/时间搜索、稳态/瞬态详情)、会议报告(参会人/等候室/导出明细/异步任务)、通讯录(仅限会议邀请/呼叫入会前置解析,严禁单独查人)、会中控制(呼叫/踢出/等候室)、CLI 应用配置、实时事件订阅、问题排查。泛指需求默认走本地工具。
What it loads into context
Frontmatter
222 tokensAlways available to the agent
SKILL.md
9,707 tokensWhen the skill is activated
Reference documents
43,031 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 安装与初始化
- 认证
- 命令总览与详情索引
- 查询命令选择准则
- 安全规则
- 参数规范
- 响应处理规则
- 自动反馈规则
- 常见错误
Scripts executed separately
scripts/agent_init.py
Files
SKILL.mdcore35,654 bytesSKILL.mdcore35,654 bytesSKILL.mdcore35,654 bytesSKILL.mdcore35,654 bytesSKILL.mdcore35,654 bytesreferences/tmeet-app.mddoc10,968 bytesreferences/tmeet-auth.mddoc4,105 bytesreferences/tmeet-contact.mddoc11,168 bytesreferences/tmeet-control.mddoc9,499 bytesreferences/tmeet-event.mddoc27,832 bytesreferences/tmeet-meeting.mddoc29,519 bytesreferences/tmeet-minutes.mddoc15,836 bytesreferences/tmeet-record.mddoc24,864 bytesreferences/tmeet-report.mddoc8,844 bytesreferences/tmeet-tshoot.mddoc5,390 bytesscripts/agent_init.pyruns3,300 bytes
Read SKILL.md
# tmeet
腾讯会议命令行工具,支持 OAuth 授权、会议全生命周期管理、录制与转写、会议报告查询。
## 安装与初始化
在品悟中,`tmeet` CLI 由应用代为安装与管理(首次使用时自动执行 npm 安装并校验版本),模型**不需要也不要自行执行安装命令**。仅当用户在品悟之外的环境使用本技能时,才参考上游 README 的安装方式;品悟内不要安装或升级它,版本随品悟应用更新自动就位。
## 认证
使用前必须先完成登录授权:
```bash
# 登录View the complete source on GitHubwecomcli-calendar
When your agent uses it
何时用:仅当用户明确指向企业微信日程/会议室预订/忙闲时使用;泛指记事、提醒、本地日程默认走本地工具,在线会议走 wecomcli-meeting。企微日程:预约/预订会议室/查看/更新/取消/查忙闲;仅说'开会/约个会'未明确日程还是在线会议时,先按本技能消歧流程追问,不可臆断直接创建。
What it loads into context
Frontmatter
131 tokensAlways available to the agent
SKILL.md
8,308 tokensWhen the skill is activated
Reference documents
30,789 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 路由规则
- 技能边界:日程 vs 会议 [CRITICAL]
- 改约 / 重建日程前必须先识别会议关联 [CRITICAL]
- 核心场景
- 核心概念
- 核心规则
- 操作参考
- 上下文传递表
- 错误处理
- 输出质量标准
- 输出格式规范
- 已知限制
- 安全提示(最高优先级)
Files
SKILL.mdcore29,991 bytesreferences/calendar-agenda.mddoc15,230 bytesreferences/calendar-cancel.mddoc7,241 bytesreferences/calendar-create.mddoc26,205 bytesreferences/calendar-freebusy.mddoc13,218 bytesreferences/calendar-meeting-room.mddoc11,415 bytesreferences/calendar-search.mddoc11,680 bytesreferences/calendar-update.mddoc21,177 bytes
Read SKILL.md
# 企业微信日程技能
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
## 适用范围
### 适用
- 预约 / 创建日程(含纯线下面对面碰头,即不带在线会议链接的安排)
- 查看 / 浏览日程(今天有什么安排、查本周日程)
- 搜索日程(按关键词、按组织人、按参与人找某个日程)
- 更新 / 修改日程(改时间、改地点、加减人、换会议室;周期日程为产品暂未开放的能力,见「已知限制」)
- 取消日程(周期日程为产品暂未开放的能力,见「已知限制」)
- 查忙闲 / 约多人共同空闲时段View the complete source on GitHubwecomcli-contact
When your agent uses it
何时用:仅当用户明确指向企业微信(查企微通讯录、给企微同事发消息前找人)时使用;泛指找人默认走本地联系人,不要误用。按姓名、拼音、英文名或别名搜索企微通讯录人员,返回 userid、部门和职务;适用于区分同名人员、获取指定人员的 userid。
What it loads into context
Frontmatter
110 tokensAlways available to the agent
SKILL.md
1,004 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 接口
- 缺少参数
Files
SKILL.mdcore3,685 bytesSKILL.mdcore3,685 bytes
Read SKILL.md
# 企业微信联系人搜索
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
使用 `wecom-cli` 按关键词搜索企业微信通讯录中的人员。
## 接口
按关键词批量模糊搜索人员,一次最多 10 个关键词,返回命中 `users` 数组(姓名 / 英文名 / 职务 / 部门)。关键词可匹配的字段包括:姓名(用户名)、姓名拼音、英文名、别名,而不仅限于中文名和别名。
### 命令
```bash
wecom-cli contact users search --json '<JSON 参数>'View the complete source on GitHubwecomcli-disk
When your agent uses it
何时用:仅当用户明确指向企业微信微盘/网盘/共享空间或给出 drive.weixin.qq.com 链接时使用;泛指文件管理默认走本地文件工具。微盘文件级操作:列出、搜索、读取元信息、上传、下载、重命名、新建文件夹;在线文档内容读写走 doc/sheet/smartsheet/smartpage 对应技能,不由本技能接管。
What it loads into context
Frontmatter
144 tokensAlways available to the agent
SKILL.md
8,069 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 接口详述
- 关键约束
- 结果展示规范
- 跨技能依赖
- 安全提示(最高优先级)
Files
SKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytesSKILL.mdcore27,295 bytes
Read SKILL.md
# 企业微信微盘
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
资源型 skill,负责微盘文件的列出、搜索、读取信息、上传、下载、重命名与新建文件夹。
## 适用范围
### 适用
- 列出微盘最近查看的文件
- 按关键词/类型/创建者/共享空间搜索微盘文件或文件夹
- 读取微盘文件基础信息
- 上传本地文件到微盘指定文件夹View the complete source on GitHubwecomcli-doc
When your agent uses it
何时用:仅当用户明确指定 doc/docx/word/在线文档/office文档或提供 doc.weixin.qq.com/doc/ 链接时使用;泛指「做个文档/写文档/整理成文档」默认走 wecomcli-smartpage 或本地工具,本技能不得抢占。doc 内容操作:新建、导入(.doc/.docx/.txt)、读取、追加、覆盖写入;结构化数据需求改用智能文档/智能表格;公共管理走 wecomcli-doc-manage。
What it loads into context
Frontmatter
143 tokensAlways available to the agent
SKILL.md
1,990 tokensWhen the skill is activated
Reference documents
2,914 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 接口路由表
- 接口详述
- 跨技能依赖
- `docid` 使用规则
- 安全提示(最高优先级)
- 安装依赖
Scripts executed separately
scripts/build_docx.py
Files
SKILL.mdcore7,316 bytesSKILL.mdcore7,316 bytesSKILL.mdcore7,316 bytesreferences/doc-contents-append.mddoc561 bytesreferences/doc-contents-overwrite.mddoc1,020 bytesreferences/doc-create.mddoc8,113 bytesscripts/build_docx.pyruns46,943 bytes
Read SKILL.md
# 企业微信doc文档管理
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
资源型 skill,负责doc文档(`doc`)的新建、导入与内容读写。
## 适用范围
### 适用
- 新建 / 导入企微 doc 文档
- 读取 doc 文档内容
- 向 doc 文档追加一行 / 覆盖写入doc 文档
View the complete source on GitHubwecomcli-doc-manage
When your agent uses it
何时用:仅当用户明确指向企业微信文档的公共管理(搜索/改名/成员权限/加入规则)时使用;本地文件管理默认走本地工具。搜索支持各类企微文档;改名/成员权限/加入规则仅支持 doc/sheet/smartsheet/smartpage;新建 doc 走 wecomcli-doc、新建在线表格走 wecomcli-sheet、智能表格 CRUD 走 wecomcli-smartsheet、生成智能文档走 wecomcli-smartpage;「看过哪些文档/浏览历史」走本技能。
What it loads into context
Frontmatter
155 tokensAlways available to the agent
SKILL.md
3,045 tokensWhen the skill is activated
Reference documents
631 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 核心概念
- 适用范围
- 接口路由表
- 接口详述
- 跨技能依赖
- 安全提示(最高优先级)
Files
SKILL.mdcore11,384 bytesSKILL.mdcore11,384 bytesSKILL.mdcore11,384 bytesreferences/doc-members-update.mddoc849 bytesreferences/doc-names-update.mddoc428 bytesreferences/doc-rules-update.mddoc938 bytes
Read SKILL.md
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
## 核心概念
- **四种文档类型**:在线文档 `doc`、在线表格 `sheet`、智能表格 `smartsheet`、智能文档 `smartpage`。`doc_type` 枚举在多接口中复用。
- **搜索接口额外支持的类型**:收集表 `collect`、PPT `ppt`、脑图 `mind`、流程图 `flow`、汇报 `journal`、PDF `pdf`。这些类型仅在「搜索文档」接口的 `doc_types` 过滤中可用,其他接口(改名、权限、加入规则等)不适用。
## 适用范围
**适用**:
- 仅支持搜索 doc文档 / 在线表格 / 智能表格 / 智能文档 / PPT / 收集表 / 脑图 / 流程图 / 汇报 / PDF 文档类型
- 仅支持修改 doc文档 / 在线表格 / 智能表格 / 智能文档 的名称
- 仅支持添加 doc文档 / 在线表格 / 智能表格 / 智能文档 的成员权限
- 仅支持设置 doc文档 / 在线表格 / 智能表格 / 智能文档 的加入规则View the complete source on GitHubwecomcli-email
When your agent uses it
何时用:仅当用户明确提到企业微信「邮箱/邮件」时使用;泛指发消息默认走本地或消息技能,纯日程/会议走 calendar/meeting 技能。企微邮件:发送/回复/转发、搜索列表、获取详情(正文/附件/内嵌图片),支持经邮件发送日程邀约和会议预定。
What it loads into context
Frontmatter
128 tokensAlways available to the agent
SKILL.md
3,737 tokensWhen the skill is activated
Reference documents
18,519 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 技能依赖
- 安全防护规则(最高优先级)
- 操作路由
- 输出格式
- 接口失败处理
- 参数补全策略
- 跨接口产品决策
- 平台限制
Files
SKILL.mdcore13,106 bytesreferences/forward-mail.mddoc7,067 bytesreferences/get-mail.mddoc12,009 bytesreferences/reply-mail.mddoc10,667 bytesreferences/search-mail.mddoc14,448 bytesreferences/security.mddoc2,690 bytesreferences/send-mail.mddoc13,212 bytesreferences/send-schedule.mddoc5,787 bytes
Read SKILL.md
# 企业微信邮件管理技能
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
## 适用范围
### 适用
- 发送新邮件:向指定收件人/抄送/密送发送邮件,支持本地附件和内嵌图片
- 日程邀约 / 会议邮件:通过邮件发送日程邀约和会议预定(仅当用户明确提到"邮箱"或"邮件"时)
- 回复邮件:对已有邮件进行回复 / 全部回复
- 转发邮件:将已有邮件转发给其他收件人
- 浏览 / 搜索邮件:按关键词 / 发件人 / 时间 / 已读未读 / 文件夹 / 标签 / 附件 / 星标 / 重要等条件查询邮件列表
- 获取邮件详情:读取邮件正文、附件、内嵌图片等完整内容View the complete source on GitHubwecomcli-media
When your agent uses it
何时用:仅当用户明确指向企业微信 media_id 与本地文件互转时使用;泛指本地文件操作默认走本地工具。基于 media_id 下载媒体文件到本地,或上传本地文件换取 media_id 供其他企微技能使用;本技能不解析/识别文件内容,仅负责文件搬运。
What it loads into context
Frontmatter
123 tokensAlways available to the agent
SKILL.md
1,567 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 接口详述
- 关键约束
- 跨技能依赖
- 安全提示(最高优先级)
Files
SKILL.mdcore5,615 bytesSKILL.mdcore5,615 bytesSKILL.mdcore5,615 bytesSKILL.mdcore5,615 bytes
Read SKILL.md
# 企业微信媒体文件
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
资源型 skill,负责基于 `media_id` 下载媒体文件到本地,以及把本地文件上传为 `media_id`。是其他技能(微盘、邮件等)处理 `media_id` 相关操作的基础依赖:`upload` 会产出新的 `media_id`,但本 skill 不负责搜索/发现其他业务场景中已存在的 `media_id`(如邮件附件、微盘文件的 `media_id` 由对应业务技能产出),也不解析文件内容。
## 适用范围
### 适用
- 根据其他技能或用户提供的 `media_id` 下载媒体文件到本地
- 上传本地文件(本地路径已知)获取 `media_id`,供其他技能后续使用(如微盘上传素材)
### 不适用View the complete source on GitHubwecomcli-meeting
When your agent uses it
何时用:仅当用户明确指向企业微信『在线会议』(含会议号/入会链接、可远程参会)时使用;泛指约会默认先按消歧流程确认,纯日程走 wecomcli-calendar。企微会议全生命周期:创建、查询、搜索、详情(含纪要/待办)、转写原文逐字记录、更新、取消;仅说'开会/约个会'未明确类型时先追问确认,不可臆断直接创建。
What it loads into context
Frontmatter
139 tokensAlways available to the agent
SKILL.md
10,525 tokensWhen the skill is activated
Reference documents
29,216 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 路由规则
- 前置条件
- 核心场景
- 核心概念
- 核心规则
- CLI 调用格式
- 操作参考
- 上下文传递表
- 错误处理
- 输出质量标准
- 输出格式规范
- 已知限制
- 快速参考
- 安全提示(最高优先级)
Files
../wecomcli-calendar/references/calendar-freebusy.mddoc13,218 bytes../wecomcli-calendar/references/calendar-meeting-room.mddoc11,415 bytesSKILL.mdcore37,979 bytesSKILL.mdcore37,979 bytesreferences/meeting-cancel.mddoc7,077 bytesreferences/meeting-create.mddoc21,187 bytesreferences/meeting-list.mddoc21,513 bytesreferences/meeting-original-get.mddoc6,543 bytesreferences/meeting-search.mddoc10,846 bytesreferences/meeting-update.mddoc16,419 bytes
Read SKILL.md
# 企业微信会议技能
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
本 Skill 负责企业微信会议的全生命周期管理,包括创建、查询、搜索、取消会议,以及会议状态和参会人的管理。
**CRITICAL — 操作执行协议**(每次操作必须遵循):
1. 识别用户意图对应的操作类型(创建/查询/搜索/取消)
2. **用 `read` 读取该操作的参考文档**(见下方"操作参考"表)
3. 严格按照参考文档中的工作流和命令格式执行
4. 禁止跳过步骤 2 直接执行命令,即使你认为已经知道如何操作
— 原因:每个操作的参数格式、可选字段和边界行为都在参考文档中精确定义,凭记忆操作极易因参数错误导致调用失败
## 适用范围View the complete source on GitHubwecomcli-message
When your agent uses it
何时用:仅当用户明确指向企业微信(给企微同事/群发消息、查企微会话)时使用;泛指发消息默认走本地通讯工具,邮件走 wecomcli-email。查询可发消息的聊天会话范围,向单聊/群聊发送 Markdown(纯文本亦按 Markdown 发送)、图片、文件、语音、视频消息。
What it loads into context
Frontmatter
110 tokensAlways available to the agent
SKILL.md
2,291 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 技能依赖
- 获取能发送消息的会话列表
- 发送消息
- 关键约束
Files
SKILL.mdcore8,192 bytesSKILL.mdcore8,192 bytesSKILL.mdcore8,192 bytesSKILL.mdcore8,192 bytesSKILL.mdcore8,192 bytesSKILL.mdcore8,192 bytesSKILL.mdcore8,192 bytesSKILL.mdcore8,192 bytes
Read SKILL.md
# 企业微信发送消息
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
1. 可以向授权人发送消息。
2. 可以向授权人以外的、机器人最近有消息往来的聊天会话(单聊和群聊)发送消息。
## 适用范围
### 适用
- 适用于给授权人发消息,使用 `wecom-cli identity whoami` 获取授权人ID,可作为 `chat_id` 使用,无需调用 `sessions list`。
- 适用于查询当前有权限发送消息的聊天会话范围并给这些范围中的成员或群聊发送 Markdown 消息、图片、文件、AMR 语音或视频
View the complete source on GitHubwecomcli-pptx
When your agent uses it
何时用:仅当用户明确指向企业微信 PPT/演示文稿(生成在线 PPT、编辑在线 PPT、导入本地 .ppt/.pptx)时使用;泛指做文档/表格默认走本地工具。「做个PPT」「写份汇报PPT」「把文档转成PPT」「改第3页标题」或需要能讲的分页材料(周会/汇报/路演/课件)时触发;一律作用于企微在线 slide 文档,交付在线链接;不支持编辑本地文件、无导出能力;仅读取本地 PPT 改用 wecomcli-media。
What it loads into context
Frontmatter
171 tokensAlways available to the agent
SKILL.md
3,636 tokensWhen the skill is activated
Reference documents
47,958 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 安全规则
- 命令拼接安全规范
- 核心概念
- 交付形态
- 接口路由表
- 编辑工作流
- 导入 PPT 文件
- 特有规则
- 跨技能依赖
- 安全提示(最高优先级)
Scripts executed separately
scripts/doc_image_extractor.pyscripts/pptx2image.py
Files
SKILL.mdcore12,493 bytesSKILL.mdcore12,493 bytesreferences/component-animation.mddoc3,288 bytesreferences/component-box.mddoc3,759 bytesreferences/component-chart.mddoc10,722 bytesreferences/component-codeblock.mddoc1,615 bytesreferences/component-diagram.mddoc2,810 bytesreferences/component-faicon.mddoc2,950 bytesreferences/component-hyperlink.mddoc2,447 bytesreferences/component-image.mddoc6,823 bytesreferences/component-math.mddoc2,146 bytesreferences/component-qrcode.mddoc1,153 bytesreferences/component-slide.mddoc3,954 bytesreferences/component-svg.mddoc1,287 bytesreferences/component-table.mddoc3,288 bytesreferences/component-text.mddoc3,078 bytesreferences/create-from-material.mddoc5,442 bytesreferences/create-from-scratch.mddoc13,632 bytesreferences/design-principle.mddoc15,975 bytesreferences/designs/design-principle.academic.mddoc9,062 bytesreferences/designs/design-principle.consulting.mddoc16,005 bytesreferences/designs/design-principle.redgold.mddoc10,058 bytesreferences/human-alignment.mddoc9,647 bytesreferences/pptx-api.mddoc12,614 bytesreferences/pptx-edit.mddoc2,028 bytesreferences/story-principle.mddoc13,133 bytesscripts/doc_image_extractor.pyruns16,669 bytesscripts/pptx2image.pyruns10,048 bytes
Read SKILL.md
# 企业微信 PPT
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
承载 PPT 的**生成、编辑、导入**能力。生成与编辑一律作用于**企微在线 slide 文档**;交付形态为**在线文档链接**。
- **不支持**编辑本地 `.ppt` / `.pptx` 文件——相关诉求直接告知暂不支持,不要下载文件后尝试改写。
- **没有导出能力**——任何把在线 PPT 导出 / 下载为本地文件的诉求,直接告知没有导出能力(见「禁止导出」)。
## 适用范围
### 适用
- **生成**:按主题 / 大纲 / 参考材料创建在线演示文稿,含叙事结构、视觉设计、逐页制作、配图View the complete source on GitHubwecomcli-shared
When your agent uses it
何时用:任何 wecomcli-* 技能准备执行 wecom-cli 命令前必须同时读取本技能(公共前置检查),本技能不处理具体业务请求。检查 CLI 已安装且版本 ≥1.3.4、企微凭证已授权(缺失时按品悟代管口径引导,勿自行 npm 安装);获取机器人/授权真人身份(identity whoami);定义通用的 ID 类字段禁止外露输出约束。
What it loads into context
Frontmatter
126 tokensAlways available to the agent
SKILL.md
1,275 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Step 1:检查 CLI 安装与版本
- Step 2:检查授权状态
- Step 3:初始化凭证(仅未授权时)
- 通用输出约束:ID 类字段禁止外露
- 执行规则
- 获取个人身份
Files
SKILL.mdcore4,868 bytesSKILL.mdcore4,868 bytesSKILL.mdcore4,868 bytesSKILL.mdcore4,868 bytes
Read SKILL.md
# wecom-cli 公共前置检查
本技能提供所有 `wecomcli-*` 业务技能共用的 CLI 安装、版本与授权检查,以及通用输出约束。**首次准备执行任意 `wecom-cli` 命令前,先完成本技能;检查通过后,再回到对应业务技能执行。**
> 本技能不能代替具体业务技能。处理联系人、文档、表格、日程、会议、待办、邮件、微盘、消息或媒体请求时,必须同时读取对应业务技能。
## Step 1:检查 CLI 安装与版本
```bash
wecom-cli --version
```
- 命令成功,且输出中的版本号不低于 `1.3.4` → 继续 Step 2。
- 命令不存在、执行报错或版本号低于 `1.3.4` → **不要自行安装或升级**:`wecom-cli` 由品悟应用代为安装与管理,随应用更新自动就位。此时提示用户在品悟「插件中心 → 企业微信」卡片重新点「连接」,由品悟触发安装/升级;完成后重新执行 `wecom-cli --version` 复查。View the complete source on GitHubwecomcli-sheet
When your agent uses it
何时用:仅当用户明确指向企业微信『在线表格』或提供 doc.weixin.qq.com/sheet/ 链接时使用;泛指做表格默认先按消歧确认,智能表格内容操作走 wecomcli-smartsheet,本地表格默认走本地工具。在线表格:新建、导入 CSV/Excel、读取信息与数据、修改内容、追加行、子表管理;文档公共操作走 wecomcli-doc-manage。
What it loads into context
Frontmatter
131 tokensAlways available to the agent
SKILL.md
2,005 tokensWhen the skill is activated
Reference documents
2,297 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 接口路由表
- 写操作确认
- 接口详述
- 跨技能依赖
- `docid` 使用规则
- 安全提示(最高优先级)
- 安装依赖
Files
SKILL.mdcore7,081 bytesSKILL.mdcore7,081 bytesSKILL.mdcore7,081 bytesreferences/sheet-contents-update.mddoc2,008 bytesreferences/sheet-ranges-get.mddoc2,390 bytesreferences/sheet-rows-append.mddoc1,996 bytesreferences/sheet-subsheets-add.mddoc868 bytesreferences/sheet-subsheets-delete.mddoc487 bytes
Read SKILL.md
# 企业微信在线表格管理
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
资源型 skill,负责在线表格(`sheet`)的新建、导入与内容读写及子表管理。
## 适用范围
### 适用
- 新建 / 导入企微在线表格
- 读取 / 修改 / 追加在线表格内容
- 添加 / 删除在线表格子表
View the complete source on GitHubwecomcli-smartpage
When your agent uses it
何时用:企业微信智能文档/智能主页/smartpage 相关诉求(含 doc.weixin.qq.com/smartpage/ 或 page.weixin.qq.com/smartpage/ 链接),或泛指「创建/写/整理文档」的企微诉求时使用;纯本地文档默认走本地工具。能力:新建/导入(.md)、读取、修改内容(整页重写/局部编辑/增删子页面)、上传附件、搭建带看板/图表的数据系统页面与信息收集表单、获取内置智能表格。
What it loads into context
Frontmatter
154 tokensAlways available to the agent
SKILL.md
3,967 tokensWhen the skill is activated
Reference documents
40,297 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 安全规则
- 命令拼接安全规范
- 接口路由表
- 从零创建智能文档并编辑内容
- 链接格式
- 参数补全策略
- 委托关系
- 通用回答和接口约束
- `docid` 使用规则
- 安全提示(最高优先级)
Files
SKILL.mdcore13,818 bytesSKILL.mdcore13,818 bytesSKILL.mdcore13,818 bytesreferences/data-driven-pages.mddoc4,234 bytesreferences/formula-reference.mddoc7,045 bytesreferences/formula/arraylist.mddoc11,006 bytesreferences/formula/datetime.mddoc7,681 bytesreferences/formula/logic.mddoc7,461 bytesreferences/formula/math.mddoc8,708 bytesreferences/formula/operators.mddoc4,931 bytesreferences/formula/pageblock.mddoc3,484 bytesreferences/formula/templates.mddoc12,175 bytesreferences/formula/text.mddoc9,557 bytesreferences/formula/user.mddoc607 bytesreferences/mdx-syntax.mddoc28,096 bytesreferences/smartpage-edit.mddoc29,510 bytes
Read SKILL.md
# 企业微信智能文档
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
使用 `wecom-cli` 创建、读取和修改智能文档(`smartpage`),并管理子工作表。
## 适用范围
### 适用:
- 新建 / 导入企业微信智能文档
- 读取智能文档内容(页面树 / 正文 / block)
- 调整智能文档页面树(新建 / 删除 / 重命名 / 移动 / 改布局)
- 向智能文档页面追加 / 全量覆盖内容
- 修改 / 替换 / 删除 / 插入页面里某个组件View the complete source on GitHubwecomcli-smartsheet
When your agent uses it
何时用:仅当用户明确指向企业微信『智能表格』(内容/结构/样式操作)或提供 doc.weixin.qq.com/smartsheet/ 链接时使用;泛指做表格默认先按消歧确认,在线表格走 wecomcli-sheet。智能表格数据、结构与样式管理:读取表结构与记录,管理子表/字段/记录/视图/图表,修改行列样式;851003 时 Webhook 兜底写入。
What it loads into context
Frontmatter
138 tokensAlways available to the agent
SKILL.md
4,136 tokensWhen the skill is activated
Reference documents
116,521 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 适用范围
- 安全约束
- 核心概念
- 接口路由表
- 跨技能依赖
- 如何获取文档 ID(docid)
- 常用 ID 获取方式
- 执行前置协议(强制)
- Agent 行为约束(通读一次,全文适用)
- 安全提示(最高优先级)
Files
SKILL.mdcore15,211 bytesassets/templates/README.mddoc4,751 bytesassets/templates/ai_efficiency.mddoc24,277 bytesassets/templates/connect_to_app.mddoc15,041 bytesassets/templates/financial_accounting.mddoc12,451 bytesassets/templates/hr_and_administration.mddoc18,742 bytesassets/templates/ledger_records.mddoc5,347 bytesassets/templates/manufacturing.mddoc14,226 bytesassets/templates/marketing.mddoc6,757 bytesassets/templates/office_essentials.mddoc10,103 bytesassets/templates/personal_efficiency.mddoc2,462 bytesassets/templates/procurement_logistics.mddoc11,323 bytesassets/templates/project_management.mddoc18,903 bytesassets/templates/rd_process_customer.mddoc8,909 bytesassets/templates/rd_process_ops.mddoc4,026 bytesassets/templates/rd_process_project.mddoc3,867 bytesassets/templates/rd_process_research.mddoc3,173 bytesassets/templates/sales_and_operations.mddoc15,666 bytesassets/templates/store_management.mddoc15,105 bytesassets/templates/team_tasks.mddoc9,658 bytesassets/templates/wechat_customer.mddoc12,878 bytesassets/templates/work_report.mddoc3,233 bytesreferences/common.mddoc8,807 bytesreferences/smart-sheet-chart-types.mddoc5,547 bytesreferences/smart-sheet-edit.mddoc31,059 bytesreferences/smart-sheet-field-types.mddoc14,989 bytesreferences/smart-sheet-formula.mddoc36,082 bytesreferences/smart-sheet-read.mddoc27,283 bytesreferences/smart-sheet-record-values.mddoc8,986 bytesreferences/smart-sheet-view-types.mddoc14,160 bytesreferences/smart-sheet-webhook-examples.mddoc4,425 bytesreferences/smart-sheet-webhook.mddoc8,299 bytes
Read SKILL.md
# 企业微信智能表格管理
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
专注于智能表格(smartsheet)的数据、结构与样式管理,涵盖子表/字段/记录/视图/图表的读写操作及行列样式修改。
## 适用范围
### 适用
- 读取智能表格信息与数据(全量/筛选)
- 修改表结构(子表/字段)
- 记录类型定义及操作
- 给单元格/行/列填色、着色、染色、标红、标黄、标绿、高亮、加底色、做条件格式View the complete source on GitHubwecomcli-todo
When your agent uses it
何时用:仅当用户明确指向企业微信待办(建/查/改企微待办)时使用;泛指记个待办/提醒默认走本地工具,不要误用。企微待办:创建、删除或退出、完成、查询和筛选,以及修改标题、描述、参与人名单和截止时间。
What it loads into context
Frontmatter
101 tokensAlways available to the agent
SKILL.md
1,514 tokensWhen the skill is activated
Reference documents
9,824 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 查询与定位
- 接口路由表
- `deadline` 对象规范
- 安全提示(最高优先级)
Files
SKILL.mdcore5,541 bytesreferences/todo-create.mddoc8,813 bytesreferences/todo-delete.mddoc2,823 bytesreferences/todo-finish.mddoc3,974 bytesreferences/todo-get.mddoc2,706 bytesreferences/todo-list.mddoc9,010 bytesreferences/todo-update.mddoc6,979 bytes
Read SKILL.md
# 企业微信待办管理
> 执行任何 `wecom-cli` 命令前,必须先读取并完成 `wecomcli-shared` 技能的公共前置检查。
使用 `wecom-cli` 管理企业微信待办。
## 查询与定位
- 查询范围仅限企业微信待办系统中已经存在的记录。
- 可按创建时间、截止时间、完成状态和标题/描述关键词查询;关键词是字面匹配,不是语义搜索。
- 用户问"我有哪些待办""未完成待办有哪些"或"接下来有哪些待办"时,使用 `todo list` 查询待办系统中的记录。
- 删除、完成或更新时,若上下文没有 `todo_id`,先用 `todo list` 定位;已有 `todo_id` 且需要确认最新详情或状态时,使用 `todo get`。
## 接口路由表View the complete source on GitHubgovernment-writing
When your agent uses it
撰写规范的党政机关公文。当用户要"写/起草/拟一份 通知 / 意见 / 公文"时使用。当前内置文种:通知、意见,印发型主件支持办法/规定(法规体例;请示/报告/函可扩展,在 templates/ 增模板)。按《党政机关公文格式》GB/T 9704-2012 套发文字号、主送机关、层级序号、落款与固定话术,结构化内容经 gongwen MCP 渲染为合规 .docx。
What it loads into context
Frontmatter
212 tokensAlways available to the agent
SKILL.md
3,734 tokensWhen the skill is activated
Reference documents
2,635 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 总流程
- 文种分派
- 起草纪律(不臆造真实信息)
- 公文七要素骨架(所有文种通用)
- 层级序号体系(强制,不跳级/不混用)
- 固定话术库(取自真实公文,括号内为命中频次)
- 公文字段契约(直接传给 `mcp_gongwen_make_gongwen`)
- 自检清单(出件前逐项核对,缺一不可)
- 常见错误(反例对照,⛔→✅)
Files
SKILL.mdcore12,139 bytestemplates/办法.mddoc3,700 bytestemplates/意见.mddoc2,451 bytestemplates/通知.mddoc2,680 bytes
Read SKILL.md
# 党政机关公文写作
撰写规范的党政机关公文。当前内置文种:**通知、意见**;印发型通知的主件若是**办法/规定**(法规体例),另读 `templates/办法.md`。
## 总流程
1. **判文种** —— 据用户意图定文种(见分派表),读对应 `templates/<文种>.md`。
2. **采要素** —— 补齐七要素槽位,缺什么一次性问全(别挤牙膏)。
3. **填正文** —— 按模板骨架 + 层级序号体系撰写。
4. **套话术** —— 主送/承启/结尾/落款/公开方式用固定话术库。
5. **自检** —— 过"立账核账"清单逐项打勾。
6. **出件** —— 按**公文字段契约**(见下方)调 `mcp_gongwen_make_gongwen` 渲染合规 .docx → 拿到 path **必须再 `mcp_pinvou3_present_artifact(path, title)`** 上产物卡(内置 MCP 工具默认延迟加载:工具列表里没有它时先 `tool_search` 激活;`tool_search` 返回 `mcp_boot` connecting(MCP 服务仍在启动)就等待数秒重试,connecting 消失后仍搜不到,才算产物卡后端本轮不可用——直接交付并在回复里说明产物卡不可用)。
- **依赖检查**:本技能靠『公文写作』MCP 出件。`mcp_gongwen_make_gongwen` 默认延迟加载——工具列表里没有它时先 `tool_search` 激活;`tool_search` 返回 `mcp_boot` connecting(MCP 服务仍在启动)就等待数秒重试,connecting 消失后仍搜不到才算不存在/不可用,**别硬拼纯文本冒充成品**——提示用户去插件中心·连接器页安装『公文写作』引擎,装好再出件。
- `make_gongwen` 出件前自带立账核账:若返回 `ok:false` 且 `blocked_by_validate`,说明有 error 级硬伤(正文为空 / 缺主送 / 缺成文日期等),**按 `issues` 补全字段后重调**,绝不跳过、绝不拿空壳去 present。
- .docx 是**二进制成品**:要改内容就改字段重调 `make_gongwen`,**绝不用 `read`/`edit` 去读写 .docx**(读不出文本是正常的)。View the complete source on GitHubima-skills
When your agent uses it
Tencent IMA OpenAPI skill for notes and knowledge-base operations. Use after the user connects IMA in Pinvou Plugin Center.
What it loads into context
Frontmatter
54 tokensAlways available to the agent
SKILL.md
663 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Credential Rules
- Module Routing
- Native Tool
- Safety
Files
SKILL.mdcore2,884 bytesmeta.jsonasset70 bytes
Read SKILL.md
# 腾讯 ima OpenAPI
Use this skill when the user asks to search, read, create, append, import (web page import), or organize content in Tencent IMA notes or IMA knowledge bases.
## Credential Rules
Pinvou stores IMA credentials in the local system credential store. The native `ima_openapi` tool reads them only when it sends a request to the fixed official endpoint.
Do not ask the user to paste credentials into the chat. Do not write credentials to `~/.config/ima`, repository files, logs, notes, or artifacts.
Do not probe credentials with shell commands, environment inspection, local files, or ad-hoc network requests. Never pass a host, URL, Client ID, API Key, or HTTP header as tool input.
To verify access or perform any IMA operation, call `ima_openapi`. The tool is deferred by default: if `ima_openapi` is not in your tool list, activate it with `tool_search` first; if `tool_search` cannot surface it, the ima backend is unavailable this round — say so instead of improvising. If the call reports missing credentials, tell the user to connect "腾讯 ima" from the Pinvou Plugin Center.
View the complete source on GitHubWhen your agent uses it
What it loads into context
Frontmatter
0 tokensAlways available to the agent
SKILL.md
543 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Operations
- Routing Rules
- Examples
- File Upload Guard
- User-Facing Output
Files
SKILL.mdcore2,290 bytesSKILL.mdcore2,290 bytesSKILL.mdcore2,290 bytes
Read SKILL.md
# IMA Knowledge Base
API base path: `openapi/wiki/v1`.
Use knowledge-base APIs when the user's target is a knowledge-base entry, folder, file, imported URL, or source media.
Do not use shell commands or environment inspection for credentials. Call the native `ima_openapi` tool (deferred by default: if it is not in your tool list, activate it with `tool_search` first); credentials are never tool arguments.
## Operations
- Search knowledge bases: `search_knowledge_base`
- Get knowledge-base details: `get_knowledge_base`
- Browse knowledge-base contents: `get_knowledge_list`
- Search within a knowledge base: `search_knowledge`
- List addable knowledge bases: `get_addable_knowledge_base_list`View the complete source on GitHubWhen your agent uses it
What it loads into context
Frontmatter
0 tokensAlways available to the agent
SKILL.md
531 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Operations
- Write Rules
- Examples
- Response Handling
Files
SKILL.mdcore2,103 bytes
Read SKILL.md
# IMA Notes
API base path: `openapi/note/v1`.
Use notes APIs when the user's real target is a note: search notes, list notebooks, list notes, read note content, create a new note, or append to an existing note.
Do not use shell commands or environment inspection for credentials. Call the native `ima_openapi` tool (deferred by default: if it is not in your tool list, activate it with `tool_search` first); credentials are never tool arguments.
## Operations
- Search notes by title: `search_note`
- Search notes by content: `search_note` with `search_type: 1`
- List notebooks: `list_notebook`
- List notes: `list_note`
- Read note content: `get_doc_content`View the complete source on GitHubpackage-author
When your agent uses it
当用户要把手头的工具打包/标准化成 pinvou 插件包时使用——包括纯技能(SKILL.md)、纯 MCP 服务或它们的组合包。用户说"打包/做成插件包/标准化这个工具/给我一个能上传的标准包/写 plugin.json/加个图标"等,或给了散乱脚本/目录要整理成可上传 zip 时,用本技能把内容规范成 plugin-protocol 标准包(补 plugin.json、补 mcp/manifest.json、补 SKILL.md、补图标、校验命名)。
What it loads into context
Frontmatter
137 tokensAlways available to the agent
SKILL.md
1,945 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 何时用 / 何时不用
- 先弄清三件事(问清再动手,别猜)
- 类型判定(决定布局)
- 标准包结构(必须落成这样)
- plugin.json(schema v1)
- MCP 组件:mcp/manifest.json
- 技能组件:SKILL.md
- 图标
- 校验清单(交活前逐条过)
- 产出
Files
SKILL.mdcore6,657 bytesSKILL.mdcore6,657 bytesSKILL.mdcore6,657 bytes
Read SKILL.md
# 插件包标准化(package-author)
把用户给的工具/技能/脚本,整理成 pinvou 应用商店可导入的**标准插件包**。规范以
`docs/plugin-package-spec.md` 为准,本文件内置完整规则,可直接照做、不依赖文档可达。
## 何时用 / 何时不用
- ✅ 用:用户要打包/标准化一个工具,给了文件/目录/脚本/SKILL.md/manifest.json/zip,或口头描述要一个插件包。
- ❌ 不用:用户只是"写个脚本"/"写个技能内容"而没说要打包;或是在装/卸载/开关某个已存在的工具。
## 先弄清三件事(问清再动手,别猜)
1. **输入在哪**:用户给的是目录路径、粘贴的代码、还是 zip?文件类型是什么?
2. **包类型**:纯技能?纯 MCP?还是 MCP+技能组合?(见 §类型判定)
3. **输出形态**:要一个**目录**(可直接 zip),还是直接产出 **zip**?
View the complete source on GitHubpptx
When your agent uses it
本地直出可编辑 PowerPoint(.pptx):用户要做 PPT / 幻灯片 / 演示文稿 / 汇报 / 方案时使用。先列大纲确认,再产结构化 deck 并按内容自动选主题,调 mcp_pptx_make_pptx 生成,产物必须上产物卡。
What it loads into context
Frontmatter
83 tokensAlways available to the agent
SKILL.md
572 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 流程(严格按序)
- 严格禁止
- 环境说明
Files
SKILL.mdcore1,979 bytes
Read SKILL.md
# PPT 生成
本地生成可编辑 .pptx:模型产结构化大纲,渲染器套主题模板生成,真·可编辑图表,自带封面缩略图,数据不出机。
## 流程(严格按序)
1. **先列一版大纲**(章节 + 每页要点)给用户确认/修改
2. 确认后产结构化 deck:封面 / 目录 / 章节 / 要点 / 双栏 / KPI / 图表 / 表格 / 配图 / 结尾
3. **按 PPT 内容自动选一套主题**(business-blue / tech-dark / gov-red / creative-purple / fresh-green / warm-orange / navy-gold / minimal-mono / midnight),并一句话说明理由,用户可改
4. 调 `mcp_pptx_make_pptx` 生成 .pptx(连接器工具默认延迟加载:工具列表里没有它时先 `tool_search` 激活;`tool_search` 返回 `mcp_boot` connecting(MCP 服务仍在启动)就等待数秒重试,connecting 消失后仍搜不到,才说明『PPT 生成』连接器未安装——按下方「严格禁止」处理,不要硬拼成品)
5. 拿到 path 后**必须再调 `mcp_pinvou3_present_artifact(path, title)`** 上产物卡(内置 MCP 工具默认延迟加载:工具列表里没有它时先 `tool_search` 激活;`tool_search` 返回 `mcp_boot` connecting(MCP 服务仍在启动)就等待数秒重试,connecting 消失后仍搜不到,才算产物卡后端本轮不可用——直接交付并在回复里说明产物卡不可用)
## 严格禁止
View the complete source on GitHubskill-author
When your agent uses it
当用户想创建一个新技能时使用——用户描述想要的能力(说"帮我写个技能/创建一个 skill/生成 SKILL.md/做个 XX 技能"),本技能引导生成规范的 SKILL.md(name、description、正文指令)。若要交付成可上传插件包,可继续按「插件包标准化」规则补 plugin.json/图标、导出标准包,最后询问用户是否安装。
What it loads into context
Frontmatter
105 tokensAlways available to the agent
SKILL.md
1,199 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 何时用 / 何时不用
- 先问清(问清再动手,别猜)
- 生成 SKILL.md
- 可选:导出标准包(结合「插件包标准化」)
- 收尾:询问是否安装
- 校验清单(交活前逐条过)
Files
SKILL.mdcore4,098 bytes
Read SKILL.md
# 技能创建(skill-author)
把用户的一句描述,变成一个可用的**技能**(`SKILL.md` 目录)。规范与「插件包标准化」
(package-author)同源;本技能只管「从描述到 SKILL.md」,打包交给 package-author 的规则。
## 何时用 / 何时不用
- ✅ 用:用户说"写个技能 / 创建 skill / 生成 SKILL.md / 做个 XX 技能",或描述了一个
想要的能力但还没有技能文件。
- ❌ 不用:用户已有技能文件、只是要打包/标准化 → 走「插件包标准化」;或只是写普通
脚本/网页(非技能);或要装/卸/开关某个已存在的工具。
## 先问清(问清再动手,别猜)
1. **技能做什么**:一句话说清能力边界(不要贪多,一个技能干一件事)。
2. **何时触发**:用户在什么场景/说什么话时该用这个技能?View the complete source on GitHubtencent-docs
When your agent uses it
腾讯文档(docs.qq.com)-在线云文档平台,是创建、编辑、管理**在线**文档的首选 skill。仅当用户明确指向腾讯文档/在线文档/docs.qq.com,或任务需要在线协作文档时使用;泛指"做个文档/保存成文件/PPT"且未点名在线平台时,默认走本地工具(本地 pptx 技能等),不要误用本 skill。支持能力:(1) 创建各类在线文档(文档/Word/Excel/幻灯片/思维导图/流程图/智能表格/收集表)(2) 管理知识库空间(创建空间、查询空间列表)(3) 管理空间节点、文件夹结构 (4) 读取/搜索文档内容 (5) 编辑操作智能表 (6) 编辑操作在线文档 (7) 文件管理(重命名、移动、删除、复制、导入导出)(8) 网页剪藏、本地文件/html/文档上云。
What it loads into context
Frontmatter
498 tokensAlways available to the agent
SKILL.md
5,472 tokensWhen the skill is activated
Reference documents
137,940 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 支持的文档类型
- ⚙<U+FE0F> 快速配置
- 🎯 场景路由表
- 📁 文件目录结构
- 🔧 调用方式
- 常见工作流
- 核心规则
- 问题定位指南
- SKILL 更新
Scripts executed separately
aipage_pack.jssidebar-pptx-generator/scripts/doc_image_extractor.pysidebar-pptx-generator/scripts/get_slide_info.sh
Files
SKILL.mdcore22,634 bytesSKILL.mdcore22,634 bytesaipage_pack.jsruns19,461 bytesdoc/doc_format/README.mddoc2,936 bytesdoc/doc_format/prompt/pure_text_system_prompt.txtdoc2,374 bytesdoc/doc_format/prompt/scenario_recognition_prompt.txtdoc1,705 bytesdoc/doc_format/prompt/style_customization_prompt.txtdoc2,577 bytesdoc/doc_format/templates/contract.jsonasset1,054 bytesdoc/doc_format/templates/essay.jsonasset489 bytesdoc/doc_format/templates/general.jsonasset2,719 bytesdoc/doc_format/templates/government.jsonasset1,019 bytesdoc/doc_format/templates/paper.jsonasset4,707 bytesdoc/entry.mddoc800 bytesreferences/aipage_references.mddoc5,129 bytesreferences/auth.mddoc1,246 bytesreferences/diagram_references.mddoc2,279 bytesreferences/docengine_references.mddoc89,284 bytesreferences/manage_references.mddoc32,645 bytesreferences/ocr_references.mddoc3,376 bytesreferences/slideengine_references.mddoc77,979 bytesreferences/smartsheet_references.mddoc32,263 bytesreferences/space_references.mddoc7,214 bytesreferences/unsupported_feature_reporting.mddoc1,171 bytesreferences/workflows.mddoc8,139 bytessheet/api/mcp-api.mddoc56,528 bytessheet/entry.mddoc15,916 bytessidebar-pptx-generator/references/component-box.mddoc4,102 bytessidebar-pptx-generator/references/component-chart.mddoc10,722 bytessidebar-pptx-generator/references/component-codeblock.mddoc1,615 bytessidebar-pptx-generator/references/component-diagram.mddoc2,810 bytessidebar-pptx-generator/references/component-faicon.mddoc2,950 bytessidebar-pptx-generator/references/component-image.mddoc5,610 bytessidebar-pptx-generator/references/component-math.mddoc2,146 bytessidebar-pptx-generator/references/component-qrcode.mddoc1,153 bytessidebar-pptx-generator/references/component-slide.mddoc3,954 bytessidebar-pptx-generator/references/component-svg.mddoc1,287 bytessidebar-pptx-generator/references/component-table.mddoc3,288 bytessidebar-pptx-generator/references/component-text.mddoc3,069 bytessidebar-pptx-generator/references/design-principle.mddoc4,575 bytessidebar-pptx-generator/scripts/doc_image_extractor.pyruns12,657 bytessidebar-pptx-generator/scripts/get_slide_info.shruns4,365 bytesslide/entry.mddoc21,112 bytessmartcanvas/entry.mddoc46,626 bytessmartcanvas/mdx_references.mddoc23,266 bytessmartcanvas/template/12_week_muscle_building_workout_plan.mdxasset17,172 bytessmartcanvas/template/2025_ai_industry_trend_analysis_report.mdxasset16,504 bytessmartcanvas/template/2026_family_annual_budget_plan.mdxasset12,471 bytessmartcanvas/template/2026_personal_annual_goal_plan.mdxasset14,576 bytessmartcanvas/template/annual_holiday_greeting_messages.mdxasset16,842 bytessmartcanvas/template/app_2_project_retrospective.mdxasset6,325 bytessmartcanvas/template/british_shorthair_cat_care_guide.mdxasset17,445 bytessmartcanvas/template/career_growth_books_and_movies_recommendations.mdxasset17,365 bytessmartcanvas/template/chinese_modern_wedding_planning_guide.mdxasset12,862 bytessmartcanvas/template/coffee_shop_location_analysis_report.mdxasset22,078 bytessmartcanvas/template/community_fresh_delivery_feasibility_report.mdxasset21,576 bytessmartcanvas/template/community_group_buying_annual_operation_plan.mdxasset10,584 bytessmartcanvas/template/company_5th_anniversary_event_plan.mdxasset9,054 bytessmartcanvas/template/ecommerce_membership_points_prd.mdxasset12,533 bytessmartcanvas/template/english_self_introduction_for_interview.mdxasset7,213 bytessmartcanvas/template/family_weekly_healthy_meal_plan.mdxasset11,166 bytessmartcanvas/template/finance_graduate_career_plan.mdxasset13,038 bytessmartcanvas/template/food_review_self_media_operation_plan.mdxasset11,174 bytessmartcanvas/template/graduate_admission_recommendation_letter.mdxasset3,890 bytessmartcanvas/template/internet_product_manager_cover_letter.mdxasset4,083 bytessmartcanvas/template/internet_product_manager_interview_checklist.mdxasset7,406 bytessmartcanvas/template/maternity_ecommerce_user_persona_report.mdxasset21,326 bytessmartcanvas/template/new_tea_brand_annual_promotion_plan.mdxasset21,406 bytessmartcanvas/template/office_worker_knowledge_side_business_plan.mdxasset16,402 bytessmartcanvas/template/online_education_summer_marketing_plan.mdxasset16,574 bytessmartcanvas/template/online_office_tool_user_research_report.mdxasset16,818 bytessmartcanvas/template/p6_to_p7_promotion_report.mdxasset9,175 bytessmartcanvas/template/principles_ray_dalio_book_notes.mdxasset16,274 bytessmartcanvas/template/q1_quarterly_marketing_operations_summary.mdxasset6,914 bytessmartcanvas/template/quanzhou_3_day_travel_guide.mdxasset8,061 bytessmartcanvas/template/shared_apartment_moving_checklist.mdxasset7,233 bytessmartcanvas/template/shared_powerbank_business_model_report.mdxasset17,177 bytessmartcanvas/template/short_video_platform_competitive_analysis_2026.mdxasset31,910 bytessmartcanvas/template/smart_home_iot_business_plan.mdxasset20,750 bytessmartcanvas/template/smartwatch_comparison_apple_watch_vs_huawei_gt.mdxasset13,030 bytessmartcanvas/template/space_theme_6th_birthday_party_plan.mdxasset9,416 bytessmartcanvas/template/summer_internship_report_data_analyst.mdxasset6,808 bytessmartcanvas/template/ui_designer_probation_summary.mdxasset5,257 bytes
Read SKILL.md
# 腾讯文档 MCP 使用指南
腾讯文档 MCP 提供了一套完整的在线文档操作工具,支持创建、查询、编辑多种类型的在线文档。
## 支持的文档类型
| 类型 | doc_type | 推荐度 | 说明 |
|-------| -------------------- | ------------ | ------------------------------------------------------ |
| 智能文档 | smartcanvas | ⭐⭐⭐ | 排版美观,支持丰富组件;MDX 格式兼容全部 Markdown 语法 |
| Excel | sheet / tencentsheet | ⭐⭐⭐ | 数据表格专用 |
| PPT | slide / tencentslide | ⭐⭐⭐ | 幻灯片,演示文稿专用 |
| 思维导图 | mind | ⭐⭐⭐ | 知识图谱专用 |
| 流程图 | flowchart | ⭐⭐⭐ | 流程展示专用 |
| Word | doc / tencentdoc | ⭐⭐ | 传统格式,排版一般 |View the complete source on GitHubvisualizer
When your agent uses it
当用户要求数据可视化、做图表、生成看板、数据仪表盘、可视化报告、Excel/CSV 转图表、预算/销售/运营等指标分析页面、Chart.js 可视化时使用。只处理数据可视化任务;纯网页、banner、海报、简历等非数据图表设计任务应交给 visual-design。数据报告页以图表为主体归本技能;以文案排版为主体的静态报告页归 visual-design。
What it loads into context
Frontmatter
117 tokensAlways available to the agent
SKILL.md
1,947 tokensWhen the skill is activated
Reference documents
3,120 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 成功判定
- 失败判定
- 必须先读
- 交付方式
- 触发边界
- 数据纪律
- HTML 产物硬规则
- 交付前机器校验
Scripts executed separately
scripts/validate_visualizer_html.py
Files
SKILL.mdcore7,186 bytesreferences/visualizer-design-system.mddoc11,749 bytesscripts/validate_visualizer_html.pyruns6,092 bytes
Read SKILL.md
# 数据分析可视化
把结构化数据、表格汇总、业务指标或用户描述的数据口径转成可交付的 HTML 数据可视化仪表盘。
## 成功判定
一次合格交付必须同时满足:
- 已读取 `references/visualizer-design-system.md`。
- 已用 `write` 写出 `.html` 文件。
- 已用本技能目录下的 `scripts/validate_visualizer_html.py` 校验最终 `.html`,且结果为通过。
- 已调用 `mcp_pinvou3_present_artifact(path, title)` 展示产物卡(内置 MCP 工具默认延迟加载:工具列表里没有它时先 `tool_search` 激活;`tool_search` 返回 `mcp_boot` connecting(MCP 服务仍在启动)就等待数秒重试,connecting 消失后仍搜不到,才算产物卡后端本轮不可用——在回复里说明即可)。
- HTML 使用 Chart.js UMD:`https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js`。
- 每个 `<canvas>` 都有 `role="img"`、描述性 `aria-label` 和 fallback text。
- Chart.js 默认 legend 关闭,并使用自定义 HTML legend。
- 数据先聚合再入图,展示数字经过合理四舍五入。View the complete source on GitHubSkills included
- visual-design
- dws
- lark-base
- lark-calendar
- lark-doc
- lark-drive
- lark-im
- lark-shared
- lark-sheets
- lark-task
- lark-wiki
- tmeet-skill
- wecomcli-calendar
- wecomcli-contact
- wecomcli-disk
- wecomcli-doc
- wecomcli-doc-manage
- wecomcli-email
- wecomcli-media
- wecomcli-meeting
- wecomcli-message
- wecomcli-pptx
- wecomcli-shared
- wecomcli-sheet
- wecomcli-smartpage
- wecomcli-smartsheet
- wecomcli-todo
- government-writing
- ima-skills
- package-author
- pptx
- skill-author
- tencent-docs
- visualizer
Repository facts
- License
- MIT
- Created
- Jul 24, 2026
- Last pushed
- Nov 5, 2026
- Forks
- 417
- Open issues
- 29
- Project activity
- Active
Rank over the last 12 weeks
Now #428 · best #405 · down 10 in 30 days
- #429 from Oct 30 to Oct 31
- #427 on Nov 1
- #429 from Nov 2 to Nov 3
- #428 on Nov 4
- #429 on Nov 5
- #428 since Nov 6
82 earlier periods
- #860 on Aug 2
- #818 on Aug 7
- #815 on Aug 8
- #798 on Aug 9
- #811 on Aug 10
- #767 on Aug 11
- #733 on Aug 12
- #697 on Aug 13
- #674 on Aug 14
- #637 on Aug 15
- #629 on Aug 16
- #628 on Aug 17
- #619 on Aug 18
- #576 on Aug 19
- #562 on Aug 20
- #547 on Aug 21
- #520 on Aug 22
- #533 on Aug 23
- #523 on Aug 24
- #519 on Aug 25
- #501 on Aug 26
- #506 on Aug 27
- #490 on Aug 28
- #472 on Aug 29
- #457 on Aug 30
- #472 on Aug 31
- #475 on Sep 1
- #471 on Sep 2
- #476 on Sep 3
- #459 on Sep 4
- #458 on Sep 5
- #462 from Sep 6 to Sep 7
- #469 on Sep 8
- #453 on Sep 9
- #446 on Sep 10
- #441 on Sep 11
- #437 on Sep 12
- #432 on Sep 13
- #446 on Sep 14
- #439 on Sep 15
- #441 on Sep 16
- #433 on Sep 17
- #439 on Sep 18
- #427 on Sep 19
- #431 on Sep 20
- #430 on Sep 21
- #435 on Sep 22
- #426 on Sep 23
- #418 on Sep 24
- #416 on Sep 25
- #412 on Sep 26
- #423 on Sep 27
- #425 on Sep 28
- #433 on Sep 29
- #425 on Sep 30
- #424 on Oct 1
- #422 on Oct 2
- #408 on Oct 3
- #405 on Oct 4
- #412 on Oct 5
- #415 on Oct 6
- #418 on Oct 7
- #426 on Oct 8
- #431 on Oct 9
- #415 on Oct 10
- #416 on Oct 11
- #424 on Oct 12
- #418 on Oct 13
- #416 on Oct 14
- #418 on Oct 15
- #420 on Oct 16
- #411 on Oct 17
- #413 on Oct 18
- #417 on Oct 19
- #419 on Oct 20
- #421 on Oct 21
- #417 on Oct 22
- #415 on Oct 23
- #406 on Oct 24
- #426 on Oct 25
- #429 on Oct 28
- #428 on Oct 29
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 2, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 69 notes
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-calendar/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- 2 dangerous shell commandsin 2 files: lark-sheets/references/lark-sheets-range-operations.md:223 tencent-docs-skill/sidebar-pptx-generator/references/component-image.md:79
- 1,027 network referencesin 172 files: lark-drive/references/lark-drive-add-comment.md:11 dws/references/products/doc.md:49 dws/references/products/minutes.md:87 and 169 more
- No hidden or obfuscated text
- No instruction overrides
- 50 executable scriptsin 50 files: dws/scripts/aitable_export_via_task.py:1 dws/scripts/aitable_import_via_task.py:1 dws/scripts/attendance_my_record.py:1 and 47 more
- 85 references to secretsin 17 files: pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/SKILL.md:105 lark-base/references/lark-base-view.md:32 dws/references/global-reference.md:16 and 14 more
- No requests to vote in Hot
Show all 1,164 signals by file
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/LICENSE
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/NOTICE
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/SKILL.md
- Network accessline 21
## 严格禁止 (NEVER DO) - 不要使用 dws 命令以外的方式操作钉钉业务数据(禁止 curl、HTTP API、浏览器)。**例外**:① aitable 导入/导出/附件上传链路返回的预签名 `uploadUrl`/`downloadUrl`(`import upload` 申请的上传凭证、`export data` 返回的下载地址、`attachment upload` 返回的上传地址)允许用 curl 直传/直下(见 [aitable-export-imp - Network accessline 22
- 不要使用 dws 命令以外的方式操作钉钉业务数据(禁止 curl、HTTP API、浏览器)。**例外**:① aitable 导入/导出/附件上传链路返回的预签名 `uploadUrl`/`downloadUrl`(`import upload` 申请的上传凭证、`export data` 返回的下载地址、`attachment upload` 返回的上传地址)允许用 curl 直传/直下(见 [aitable-export-import.md](./reference
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/best_practices/06-data-analytics.md
- Network accessline 10
| update-aitable-record | 1. `aitable base search --query "<表格名>"` → 取 `baseId`/`tableId`<br>2. **取目标 record**:<br> • 已知少量 recordId → `aitable record query --record-ids <ID1,ID2>`<br> • 按条件批量改 → `aitable record query --base-id <baseId> -- - Network accessline 11
| search-aitable-template | 1. `aitable template search --query "<关键词>"` → 取 `templateId`<br>2. 用户选定<br>3. `aitable base create --name "<表格名>" --template-id <templateId>` → 取 `baseId` | | export-aitable-to-xlsx | 1. `aitable base search --q - Network accessline 12
| export-aitable-to-xlsx | 1. `aitable base search --query "<表格名>"` → 取 `baseId`<br>2. **主路径**:`python3 scripts/aitable_export_via_task.py <baseId> --scope all\|table\|view`(脚本内置轮询 + 自动下载;多 base 批量 / 按视图组合等复杂场景同样走它)<br>3. **手动路径**(单次导出):`ai
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/capability-limits.md
- Network accessline 23
|------------|------| | 创建公式/查找引用等高级字段类型 | 部分高级字段类型暂不支持 API 创建 | | 自己 PUT 文件到 OSS 时 Content-Type 处理 | OSS 签名对 PUT 请求的 `Content-Type` 头有严格要求,处理不当会 `SignatureDoesNotMatch` / HTTP 403。这**不是 dws 限制**,是阿里云 OSS 行为。解决:用 `dws aitable +import-file - - Network accessline 25
| 自己 PUT 文件到 OSS 时 Content-Type 处理 | OSS 签名对 PUT 请求的 `Content-Type` 头有严格要求,处理不当会 `SignatureDoesNotMatch` / HTTP 403。这**不是 dws 限制**,是阿里云 OSS 行为。解决:用 `dws aitable +import-file --base-id <baseId> --file <file>`,DWS 会完成 prepare→PUT→import data
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/global-reference.md
- Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 17
[Credential-related source omitted] - Access to secretsline 18
[Credential-related source omitted] - Access to secretsline 54
[Credential-related source omitted] - Access to secretsline 61
[Credential-related source omitted] - Access to secretsline 114
[Credential-related source omitted] - Access to secretsline 116
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/intent-guide.md
- Network accessline 163
alidocs 链接表面长得一样(`https://alidocs.dingtalk.com/i/nodes/{id}`),但节点类型完全不同。sheet 产品线只服务 axls(在线电子表格),xlsx / xls / xlsm / csv 等本地表格文件必须走 `dws drive download`,严禁错路由。
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/aitable.md
- Network accessline 7
| 资源 | URI 格式 | |------|----------| | Base 文档 | `https://alidocs.dingtalk.com/i/nodes/{baseId}` | - Network accessline 8
|------|----------| | Base 文档 | `https://alidocs.dingtalk.com/i/nodes/{baseId}` | | 模板预览 | `https://docs.dingtalk.com/table/template/{templateId}` | - Network accessline 9
| Base 文档 | `https://alidocs.dingtalk.com/i/nodes/{baseId}` | - Network accessline 10
| 模板预览 | `https://docs.dingtalk.com/table/template/{templateId}` | - Network accessline 12
> **操作后请返回文档 URI**:每次执行 base list/search/create/get 操作后,从返回数据中提取 `baseId`,拼接为 `https://alidocs.dingtalk.com/i/nodes/{baseId}` 返回给用户。 - Network accessline 454
用户提供 `https://alidocs.dingtalk.com/i/nodes/{id}` 或来源未验证的 nodeId 时:
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/aitable/aitable-attachment.md
- Network accessline 5
> 本地文件用 `+attachment-put`(上传并写入已有记录)或以下上传流程;已有可直接下载的在线 URL,可在原子 `record create/update` 的附件字段直接传 `[{"url":"https://..."}]`。URL 转存为 best-effort 异步操作,成功回执只表示已受理,需独立回读并确认附件可用。 - Network accessline 43
# 2. PUT 上传(Content-Type 必须与文件类型一致,不能留空) # 留空或用 curl 默认的 application/x-www-form-urlencoded 都会被 OSS 拒为 403 - Network accessline 44
# 留空或用 curl 默认的 application/x-www-form-urlencoded 都会被 OSS 拒为 403 - Network accessline 45
curl -X PUT "<uploadUrl>" -H "Content-Type: application/pdf" --data-binary @report.pdf - Network accessline 56
dws aitable record update --base-id <BASE_ID> --table-id <TABLE_ID> \ --records '[{"recordId":"<RECORD_ID>","cells":{"<FIELD_ID>":[{"url":"https://example.com/report.pdf"}]}}]' --format json - Network accessline 57
--records '[{"recordId":"<RECORD_ID>","cells":{"<FIELD_ID>":[{"url":"https://example.com/report.pdf"}]}}]' --format json
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/aitable/aitable-cell-value.md
- Network accessline 216
{"fldUrlId": {"text": "钉钉官网", "link": "https://dingtalk.com"}} - Network accessline 217
{"fldUrlId": "https://dingtalk.com"} - Network accessline 224
{"fldUrlId": {"text": "钉钉官网", "link": "https://dingtalk.com"}} - Network accessline 251
> 本地文件先通过 [attachment upload 流程](./aitable-attachment.md) 获取 `fileToken`;在线 URL 可直接写入 `[{"url":"https://..."}]`。URL 转存异步执行,写入成功仅表示已受理,应回读并确认附件可用。 - Network accessline 256
{"fldAttachId": [{"url": "https://...", "filename": "report.pdf", "size": 204800}]} - Network accessline 342
| cells key 用字段名称 `"课程名称"` | 用 fieldId `"fldXXX"` | | progress 写入 `75` | 写入 `0.75`(范围 0~1) | | attachment 直接传本地文件路径 | 本地文件先上传获得 fileToken;在线 URL 使用 `[{"url":"https://..."}]`,写后验证异步转存结果 | - Network accessline 343
| progress 写入 `75` | 写入 `0.75`(范围 0~1) | | attachment 直接传本地文件路径 | 本地文件先上传获得 fileToken;在线 URL 使用 `[{"url":"https://..."}]`,写后验证异步转存结果 | | user 字段传用户名字符串 | 传对象数组 `[{"userId":"...", "corpId":"..."}]` | - Network accessline 344
| attachment 直接传本地文件路径 | 本地文件先上传获得 fileToken;在线 URL 使用 `[{"url":"https://..."}]`,写后验证异步转存结果 |
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/aitable/aitable-export-import.md
- Network accessline 53
# 第 2 步:上传文件到 OSS(注意:Content-Type 必须设为空) curl -X PUT "<uploadUrl>" -H "Content-Type:" --data-binary @data.xlsx - Network accessline 54
curl -X PUT "<uploadUrl>" -H "Content-Type:" --data-binary @data.xlsx - Network accessline 68
|------|------|------| | 申请上传凭证 | `import upload --base-id <ID> --file-name <名称> --file-size <字节>` | `--file-size` 必须与实际文件大小一致 | | 上传文件 | HTTP PUT(curl 等) | **必须** 带 `-H "Content-Type:"` 将 Content-Type 设为空,否则 OSS 返回 403 | - Network accessline 69
| 申请上传凭证 | `import upload --base-id <ID> --file-name <名称> --file-size <字节>` | `--file-size` 必须与实际文件大小一致 | | 上传文件 | HTTP PUT(curl 等) | **必须** 带 `-H "Content-Type:"` 将 Content-Type 设为空,否则 OSS 返回 403 | | 触发导入 | `import data --import-id <ID> [- - Network accessline 70
| 上传文件 | HTTP PUT(curl 等) | **必须** 带 `-H "Content-Type:"` 将 Content-Type 设为空,否则 OSS 返回 403 | - Network accessline 137
> ⚠<U+FE0F> **`import upload` 没有 `--file` flag**(传了会报 unknown flag)。它只申请上传凭证,必填 `--file-name` + `--file-size`,拿到 `uploadUrl` 后要**自己 curl PUT 上传文件**(Content-Type 留空,见上文三步流程),再 `import data`。推荐使用 `dws aitable +import-file --base-id <baseId> --file < - Network accessline 151
# 续等导出:拿到 downloadUrl 后再 curl 下载(见下方警告) - Network accessline 158
> ⚠<U+FE0F> **`--output` 不会保存导出的 xlsx**:`--output` 是隐藏的全局 flag,作用是把命令的 **JSON 输出**写到文件,实测只生成一个 0 字节文件,不会下载导出内容。正确做法是从 `export data` 返回里取 `downloadUrl`,再 `curl -L "<downloadUrl>" -o out.xlsx` 下载。想省事直接用 `aitable_export_via_task.py` 脚本(它负责轮询 + 下载)。
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/aitable/aitable-record-create.md
- Network accessline 28
| 不先获取 fieldId | ❌ 必须先 `field get` 获取 fieldId,再写入记录 | | 单次超 100 条 | ❌ 单次最多 100 条,超过需分批 | | 附件/图片字段直传 URL | ❌ 严禁 `{"url":"https://..."}` — 会触发 TIMEOUT_ERROR。必须先 `attachment upload` 获取 `fileToken`,再用 `{"fileToken":"ft_xxx"}` 写入。详见 [aitable-at - Network accessline 30
| 附件/图片字段直传 URL | ❌ 严禁 `{"url":"https://..."}` — 会触发 TIMEOUT_ERROR。必须先 `attachment upload` 获取 `fileToken`,再用 `{"fileToken":"ft_xxx"}` 写入。详见 [aitable-attachment.md](./aitable-attachment.md) |
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/aitable/aitable-record-share.md
- Network accessline 25
"data": { "items": [ { "recordId": "rec1", "shareUrl": "https://..." }, - Network accessline 26
"items": [ { "recordId": "rec1", "shareUrl": "https://..." }, { "recordId": "rec2", "shareUrl": "https://..." } - Network accessline 27
{ "recordId": "rec1", "shareUrl": "https://..." }, - Network accessline 28
{ "recordId": "rec2", "shareUrl": "https://..." }
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/attendance.md
- Network accessline 152
- 请假模板定位说明:进入 oa 域请假工作流时选定模板即可,无需向用户展示 submitUrl 链接列表(仅不支持 CLI 发起的请假模板才需要链接引导);补卡同理(进入 oa 域补卡工作流时选定模板,仅含图片证据等不支持场景才需要链接引导)。 - 补卡/加班场景:可将名称与“补卡”或“加班”最直接匹配的模板放在前面展示。 - 回复用户时不要直接裸露任何 `submitUrl`,所有返回的表单模板都必须使用 Markdown 可点击链接格式展示:`[formName](su - Network accessline 154
- 回复用户时不要直接裸露任何 `submitUrl`,所有返回的表单模板都必须使用 Markdown 可点击链接格式展示:`[formName](submitUrl)`,例如 `[员工请假](https://...)`。如存在更匹配的模板,可以放在列表前面,但不要只返回推荐模板,必须同时返回其它可用模板供用户选择,且每个模板都应是用户可直接点击的 Markdown 链接。
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/chat.md
- Network accessline 577
--group 指定群聊 openConversationId 发群消息;--user 指定用户 userId 发单聊;--open-dingtalk-id 指定用户 openDingTalkId 发单聊。三者只能选其一,不能同时指定。纯文本/Markdown 单聊传 --user 时直接走 userId 发送能力,不需要先手动查询 openDingTalkId。推荐使用 --content flag 传递消息内容(也支持位置参数)。可选 --title 作为消息标题。 图文 - Network accessline 578
图文混排 Markdown 中,公网图片 URL 需要写成 `` 才会以内联图片展示;省略开头的 `!` 时会按链接/URL 展示,不会渲染为图片。 - Network accessline 598
dws chat message send --conversation-id <openconversation_id> --title "周报提醒" --content "请大家本周五前提交周报" # 图文混排 Markdown:公网图片 URL 需要写成  才会以内联图片展示 dws chat message send --conversation-id <openconversation_id> --content $'这是图文说明\n - Network accessline 599
# 图文混排 Markdown:公网图片 URL 需要写成  才会以内联图片展示 dws chat message send --conversation-id <openconversation_id> --content $'这是图文说明\n\n' # - Network accessline 600
dws chat message send --conversation-id <openconversation_id> --content $'这是图文说明\n\n' - Network accessline 639
1. 必须使用**真实换行符**(Unicode `U+000A`),而非字面量字符串 `\n`(反斜杠 + 字母 n)。程序或大模型构造参数时,须确保已正确反转义;否则全部内容会渲染在同一行 2. Markdown 规范下**单个换行不产生换行效果**。需要换行时请使用:段落分隔(连续两个真实换行符 `\n\n`)、行尾两个空格 + 真实换行符(硬换行 `<br>`),或直接写 HTML 的 `<br>` 标签 - **图文混排**:公网图片 URL 需要写成 - Network accessline 640
2. Markdown 规范下**单个换行不产生换行效果**。需要换行时请使用:段落分隔(连续两个真实换行符 `\n\n`)、行尾两个空格 + 真实换行符(硬换行 `<br>`),或直接写 HTML 的 `<br>` 标签 - **图文混排**:公网图片 URL 需要写成 `` 才会以内联图片展示;如果省略开头的 `!`,例如 `[图片标题](https://example.com/image.p - Network accessline 641
- **图文混排**:公网图片 URL 需要写成 `` 才会以内联图片展示;如果省略开头的 `!`,例如 `[图片标题](https://example.com/image.png)`,将按链接/URL 展示,不会渲染为图片 - Network accessline 761
dws chat message send-by-bot --robot-code <robot-code> --conversation-id <openconversation_id> --title "日报" --text "## 今日完成..." dws chat message send-by-bot --robot-code <robot-code> --conversation-id <openconversation_id> --reply <openMe - Network accessline 762
dws chat message send-by-bot --robot-code <robot-code> --conversation-id <openconversation_id> --reply <openMessageId> --ref-sender <senderOpenDingTalkId> --text "收到" dws chat message send-by-bot --robot-code <robot-code> --group <opencon - Network accessline 763
dws chat message send-by-bot --robot-code <robot-code> --group <openconversation_id> --msg-type image --image-url "https://example.com/image.png" - Network accessline 2074
dws chat toolbar create-custom [flags] Example: dws chat toolbar create-custom --conversation-id <cid> --title "周报" --url "https://example.com" --icon-url "https://example.com/icon.png" --pc-url "https://example.com" - Network accessline 2075
Example: dws chat toolbar create-custom --conversation-id <cid> --title "周报" --url "https://example.com" --icon-url "https://example.com/icon.png" --pc-url "https://example.com" Flags: - Network accessline 2076
dws chat toolbar create-custom --conversation-id <cid> --title "周报" --url "https://example.com" --icon-url "https://example.com/icon.png" --pc-url "https://example.com" - Network accessline 2105
dws chat toolbar update-custom [flags] Example: dws chat toolbar update-custom --conversation-id <cid> --shortcut-id 123 --title "周报" --url "https://example.com" --icon-url "https://example.com/icon.png" --pc-url "https://example.com" - Network accessline 2106
Example: dws chat toolbar update-custom --conversation-id <cid> --shortcut-id 123 --title "周报" --url "https://example.com" --icon-url "https://example.com/icon.png" --pc-url "https://example.com" Flags: - Network accessline 2107
dws chat toolbar update-custom --conversation-id <cid> --shortcut-id 123 --title "周报" --url "https://example.com" --icon-url "https://example.com/icon.png" --pc-url "https://example.com" - Network accessline 2446
# 机器人发送图片 dws chat message send-by-bot --robot-code <robot-code> --group <openConversationId> --msg-type image --image-url "https://example.com/image.png" --format json - Network accessline 2447
dws chat message send-by-bot --robot-code <robot-code> --group <openConversationId> --msg-type image --image-url "https://example.com/image.png" --format json
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/chat/a2ui.md
- Network accessline 5
下面以任务进度卡片为例。布局、组件 ID、数据路径和文案可按需求调整,保持引用一致;组件属性可按需查阅[钉钉公开 Catalog](https://dingtalk.com/card/a2ui/catalogs/public/catalog.json)。 - Network accessline 12
dws chat message send-a2ui-card \ --open-dingtalk-id '<接收人openDingTalkId>' \ --content '["{\"version\":\"v1.0\",\"createSurface\":{\"surfaceId\":\"example-card\",\"catalogId\":\"https://dingtalk.com/card/a2ui/catalogs/public/catalog.jso - Network accessline 13
--open-dingtalk-id '<接收人openDingTalkId>' \ --content '["{\"version\":\"v1.0\",\"createSurface\":{\"surfaceId\":\"example-card\",\"catalogId\":\"https://dingtalk.com/card/a2ui/catalogs/public/catalog.json\",\"dataModel\":{\"answer\":{\"dis - Network accessline 14
--content '["{\"version\":\"v1.0\",\"createSurface\":{\"surfaceId\":\"example-card\",\"catalogId\":\"https://dingtalk.com/card/a2ui/catalogs/public/catalog.json\",\"dataModel\":{\"answer\":{\"displayText\":\"任务已开始。\"},\"status\":\"doing\"}}
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/dev.md
- Network accessline 20
用户提供 OpenAPI/Swagger、Postman、curl 或接口文档并要求“做成 MCP / 给 Agent 用”时,也路由到本节。先完成接口拆分、三段式字段树、映射和鉴权设计,再执行 dry-run。当前不会创建动态命令缓存,也不得持久化 endpoint、工具名与含 `?key=` 的 URL。
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/dingtalk-tag/capability.md
- Network accessline 37
例如,下面的文件使用 [DeepWiki 官方公开 MCP](https://docs.devin.ai/work-with-devin/deepwiki-mcp): - Network accessline 41
"name": "DeepWiki", "configType": "JSON", "configString": "{\"mcpServers\":{\"deepwiki\":{\"type\":\"streamable-http\",\"url\":\"https://mcp.deepwiki.com/mcp\"}}}" - Network accessline 42
"configType": "JSON", "configString": "{\"mcpServers\":{\"deepwiki\":{\"type\":\"streamable-http\",\"url\":\"https://mcp.deepwiki.com/mcp\"}}}" } - Network accessline 43
"configString": "{\"mcpServers\":{\"deepwiki\":{\"type\":\"streamable-http\",\"url\":\"https://mcp.deepwiki.com/mcp\"}}}"
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc.md
- Network accessline 49
Example: dws doc info --node <DOC_ID> dws doc info --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 50
dws doc info --node <DOC_ID> dws doc info --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" dws doc info --node "https://alidocs.dingtalk.com/document/edit?dentryKey=<DENTRY_KEY>" - Network accessline 51
dws doc info --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 52
dws doc info --node "https://alidocs.dingtalk.com/document/edit?dentryKey=<DENTRY_KEY>" - Network accessline 53
dws doc info --node "https://alidocs.dingtalk.com/document/preview?dentryKey=<DENTRY_KEY>" - Network accessline 62
Example: dws doc read --node <DOC_ID> dws doc read --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 63
dws doc read --node <DOC_ID> dws doc read --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" dws doc read --node "https://alidocs.dingtalk.com/document/edit?dentryKey=<DENTRY_KEY>" - Network accessline 64
dws doc read --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 65
dws doc read --node "https://alidocs.dingtalk.com/document/edit?dentryKey=<DENTRY_KEY>" - Network accessline 66
dws doc read --node "https://alidocs.dingtalk.com/document/preview?dentryKey=<DENTRY_KEY>" - Network accessline 197
dws doc copy --node <DOC_ID> --folder <TARGET_FOLDER_ID> dws doc copy --node <DOC_ID> --workspace <TARGET_WS_ID> dws doc copy --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <FOLDER_ID> - Network accessline 198
dws doc copy --node <DOC_ID> --workspace <TARGET_WS_ID> dws doc copy --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <FOLDER_ID> Flags: - Network accessline 199
dws doc copy --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <FOLDER_ID> - Network accessline 223
Example: dws doc rename --node <DOC_ID> --name "新名称" dws doc rename --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --name "项目周报 v2" - Network accessline 224
dws doc rename --node <DOC_ID> --name "新名称" dws doc rename --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --name "项目周报 v2" Flags: - Network accessline 225
dws doc rename --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --name "项目周报 v2" - Network accessline 510
Example: dws doc media download --node <DOC_ID> --resource-id <RESOURCE_ID> dws doc media download --node "https://alidocs.dingtalk.com/i/nodes/xxx" --resource-id <RESOURCE_ID> - Network accessline 511
dws doc media download --node <DOC_ID> --resource-id <RESOURCE_ID> dws doc media download --node "https://alidocs.dingtalk.com/i/nodes/xxx" --resource-id <RESOURCE_ID> Flags: - Network accessline 512
dws doc media download --node "https://alidocs.dingtalk.com/i/nodes/xxx" --resource-id <RESOURCE_ID> - Network accessline 543
dws doc permission add --node <DOC_ID> --users uid1 --role READER dws doc permission add --node <DOC_ID> --users uid1,uid2 --role EDITOR dws doc permission add --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --users uid1 --role - Network accessline 544
dws doc permission add --node <DOC_ID> --users uid1,uid2 --role EDITOR dws doc permission add --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --users uid1 --role MANAGER dws doc permission add --node <DOC_ID> --members '[{"type - Network accessline 545
dws doc permission add --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --users uid1 --role MANAGER - Network accessline 633
dws doc export [flags] Example: dws doc export --node "https://alidocs.dingtalk.com/i/nodes/xxx" --output ./exported.docx - Network accessline 634
Example: dws doc export --node "https://alidocs.dingtalk.com/i/nodes/xxx" --output ./exported.docx dws doc export --node <DOC_ID> --output ~/downloads/ - Network accessline 635
dws doc export --node "https://alidocs.dingtalk.com/i/nodes/xxx" --output ./exported.docx - Network accessline 667
| 格式 | 示例 | DOC_ID 提取方式 | |------|------|----------------| | `alidocs.dingtalk.com/i/nodes/{id}` | `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | 取 URL 路径最后一段:`9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | - Network accessline 668
|------|------|----------------| | `alidocs.dingtalk.com/i/nodes/{id}` | `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | 取 URL 路径最后一段:`9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | | `alidocs.dingtalk.com/i/nodes/{id}?queryP - Network accessline 669
| `alidocs.dingtalk.com/i/nodes/{id}` | `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | 取 URL 路径最后一段:`9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | - Network accessline 670
| `alidocs.dingtalk.com/i/nodes/{id}?queryParams` | `https://alidocs.dingtalk.com/i/nodes/abc123?doc_type=wiki_doc` | 忽略 query 参数,取路径最后一段:`abc123` | - Network accessline 671
| `alidocs.dingtalk.com/document/{edit\|preview}?...&dentryKey={key}` | `https://alidocs.dingtalk.com/document/edit?dentryKey=wo1g3x54FzVEJ5yE` | **不要提取 `dentryKey` 单独使用**,必须将完整 URL 原样传给 `--node` | - Network accessline 1027
所有 `--node` 参数同时支持以下格式,系统自动识别: - **文档 ID**: 字母数字字符串,如 `9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` - **文档 URL**: `https://alidocs.dingtalk.com/i/nodes/{dentryUuid}`,如 `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` - Network accessline 1028
- **文档 ID**: 字母数字字符串,如 `9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` - **文档 URL**: `https://alidocs.dingtalk.com/i/nodes/{dentryUuid}`,如 `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` - **文档链接(edit/preview)**: `https://alidocs - Network accessline 1029
- **文档 URL**: `https://alidocs.dingtalk.com/i/nodes/{dentryUuid}`,如 `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` - Network accessline 1030
- **文档链接(edit/preview)**: `https://alidocs.dingtalk.com/document/{edit|preview}?...&dentryKey={key}`(必须传入完整 URL,不要提取其中的 query 参数单独使用) - Network accessline 1034
dws doc read --node 9E05BDRVQePjzLkZt2p2vE7kV63zgkYA dws doc read --node "https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA" - Network accessline 1035
dws doc read --node "https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA" - Network accessline 1036
dws doc read --node "https://alidocs.dingtalk.com/document/edit?dentryKey=wo1g3x54FzVEJ5yE" - Network accessline 1037
dws doc read --node "https://alidocs.dingtalk.com/document/preview?cid=74993670680&type=d&docKey=Pd6l2Z7V8ZWydl7M&dentryKey=rBGBr2r1HmwanAGW" - Network accessline 1058
- `update --mode overwrite` 会**清空原内容后重写**,⚠<U+FE0F> 谨慎使用;必须先 `--dry-run` 预览并在用户确认后加 `--yes`;默认 `--mode append`(追加)更安全 - `read` 返回 Markdown 格式的文档内容,仅限有"下载"权限的文档 - `read` 返回的内容中,文档里的附件会以 OSS 临时下载链接形式给出(如 `https://alidocs2.oss-cn-zhangjiakou.aliyuncs - Network accessline 1059
- `read` 返回 Markdown 格式的文档内容,仅限有"下载"权限的文档 - `read` 返回的内容中,文档里的附件会以 OSS 临时下载链接形式给出(如 `https://alidocs2.oss-cn-zhangjiakou.aliyuncs.com/res/.../att/<resourceId>.ext?Expires=...`),该链接会过期。链接过期后,可从 URL 路径中提取 `<resourceId>`(即 `/att/` 后、扩展名前的 UUID - Network accessline 1060
- `read` 返回的内容中,文档里的附件会以 OSS 临时下载链接形式给出(如 `https://alidocs2.oss-cn-zhangjiakou.aliyuncs.com/res/.../att/<resourceId>.ext?Expires=...`),该链接会过期。链接过期后,可从 URL 路径中提取 `<resourceId>`(即 `/att/` 后、扩展名前的 UUID 部分),然后使用 `media download --node <DOC_ID>
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/doc-block.md
- Network accessline 76
# 插入行内图片(inline image):构造一个空 paragraph,在 children 中用 image elementType 指定图片 src dws doc block insert --node <DOC_ID> --element '{"blockType":"paragraph","paragraph":{},"children":[{"elementType":"image","properties":{"src":"https://exampl - Network accessline 77
dws doc block insert --node <DOC_ID> --element '{"blockType":"paragraph","paragraph":{},"children":[{"elementType":"image","properties":{"src":"https://example.com/photo.png"}}]}'
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/doc-export.md
- Network accessline 18
dws doc export [flags] Example: dws doc export --node "https://alidocs.dingtalk.com/i/nodes/xxx" --output ./exported.docx - Network accessline 19
Example: dws doc export --node "https://alidocs.dingtalk.com/i/nodes/xxx" --output ./exported.docx dws doc export --node <DOC_ID> --output ~/downloads/ - Network accessline 20
dws doc export --node "https://alidocs.dingtalk.com/i/nodes/xxx" --output ./exported.docx - Network accessline 70
# alidocs URL 直传 dws doc export --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --output ./exported.docx - Network accessline 71
dws doc export --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --output ./exported.docx
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/doc-file-ops.md
- Network accessline 51
dws doc download --node <NODE_ID> dws doc download --node <NODE_ID> --output ./report.pdf dws doc download --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --output ~/downloads/ - Network accessline 52
dws doc download --node <NODE_ID> --output ./report.pdf dws doc download --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --output ~/downloads/ Flags: - Network accessline 53
dws doc download --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --output ~/downloads/ - Network accessline 72
dws doc copy --node <DOC_ID> --folder <TARGET_DOC_FOLDER_NODE_ID> dws doc copy --node <DOC_ID> --workspace <TARGET_WS_ID> dws doc copy --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <DOC_FOLDER_NODE_ID> - Network accessline 73
dws doc copy --node <DOC_ID> --workspace <TARGET_WS_ID> dws doc copy --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <DOC_FOLDER_NODE_ID> Flags: - Network accessline 74
dws doc copy --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <DOC_FOLDER_NODE_ID> - Network accessline 94
dws doc move --node <DOC_ID> --folder <TARGET_DOC_FOLDER_NODE_ID> dws doc move --node <DOC_ID> --workspace <TARGET_WS_ID> dws doc move --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <DOC_FOLDER_NODE_ID> - Network accessline 95
dws doc move --node <DOC_ID> --workspace <TARGET_WS_ID> dws doc move --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <DOC_FOLDER_NODE_ID> Flags: - Network accessline 96
dws doc move --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --folder <DOC_FOLDER_NODE_ID> - Network accessline 114
Example: dws doc rename --node <DOC_ID> --name "新名称" dws doc rename --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --name "项目周报 v2" - Network accessline 115
dws doc rename --node <DOC_ID> --name "新名称" dws doc rename --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --name "项目周报 v2" Flags: - Network accessline 116
dws doc rename --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --name "项目周报 v2"
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/doc-info.md
- Network accessline 14
Example: dws doc info --node <DOC_ID> dws doc info --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 15
dws doc info --node <DOC_ID> dws doc info --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" dws doc info --node "https://alidocs.dingtalk.com/document/edit?dentryKey=<DENTRY_KEY>" - Network accessline 16
dws doc info --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 17
dws doc info --node "https://alidocs.dingtalk.com/document/edit?dentryKey=<DENTRY_KEY>" - Network accessline 18
dws doc info --node "https://alidocs.dingtalk.com/document/preview?dentryKey=<DENTRY_KEY>" - Network accessline 51
| 格式 | 示例 | DOC_ID 提取方式 | |------|------|----------------| | `alidocs.dingtalk.com/i/nodes/{id}` | `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | 取 URL 路径最后一段:`9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | - Network accessline 52
|------|------|----------------| | `alidocs.dingtalk.com/i/nodes/{id}` | `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | 取 URL 路径最后一段:`9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | | `alidocs.dingtalk.com/i/nodes/{id}?queryP - Network accessline 53
| `alidocs.dingtalk.com/i/nodes/{id}` | `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | 取 URL 路径最后一段:`9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` | - Network accessline 54
| `alidocs.dingtalk.com/i/nodes/{id}?queryParams` | `https://alidocs.dingtalk.com/i/nodes/abc123?doc_type=wiki_doc` | 忽略 query 参数,取路径最后一段:`abc123` | - Network accessline 97
- **文档 ID**: 字母数字字符串,如 `9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` - **文档 URL**: `https://alidocs.dingtalk.com/i/nodes/{dentryUuid}`,如 `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` - Network accessline 98
- **文档 URL**: `https://alidocs.dingtalk.com/i/nodes/{dentryUuid}`,如 `https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA` - Network accessline 99
- **文档链接(edit/preview)**: `https://alidocs.dingtalk.com/document/{edit|preview}?...&dentryKey={key}`(必须传入完整 URL,不要提取其中的 query 参数单独使用) - Network accessline 104
dws doc read --node 9E05BDRVQePjzLkZt2p2vE7kV63zgkYA dws doc read --node "https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA" - Network accessline 105
dws doc read --node "https://alidocs.dingtalk.com/i/nodes/9E05BDRVQePjzLkZt2p2vE7kV63zgkYA" - Network accessline 106
dws doc read --node "https://alidocs.dingtalk.com/document/edit?dentryKey=wo1g3x54FzVEJ5yE" - Network accessline 107
dws doc read --node "https://alidocs.dingtalk.com/document/preview?cid=74993670680&type=d&docKey=Pd6l2Z7V8ZWydl7M&dentryKey=rBGBr2r1HmwanAGW" - Network accessline 130
# alidocs URL 直传(CLI 自动解析) dws doc info --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --format json - Network accessline 131
dws doc info --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --format json - Network accessline 133
# document/edit URL 直传(必须完整 URL,禁止单独提取 dentryKey) dws doc info --node "https://alidocs.dingtalk.com/document/edit?dentryKey=<DENTRY_KEY>" --format json - Network accessline 134
dws doc info --node "https://alidocs.dingtalk.com/document/edit?dentryKey=<DENTRY_KEY>" --format json - Network accessline 136
# document/preview URL 直传 dws doc info --node "https://alidocs.dingtalk.com/document/preview?dentryKey=<DENTRY_KEY>" --format json - Network accessline 137
dws doc info --node "https://alidocs.dingtalk.com/document/preview?dentryKey=<DENTRY_KEY>" --format json
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/doc-media.md
- Network accessline 48
Example: dws doc media download --node <DOC_ID> --resource-id <RESOURCE_ID> dws doc media download --node "https://alidocs.dingtalk.com/i/nodes/xxx" --resource-id <RESOURCE_ID> - Network accessline 49
dws doc media download --node <DOC_ID> --resource-id <RESOURCE_ID> dws doc media download --node "https://alidocs.dingtalk.com/i/nodes/xxx" --resource-id <RESOURCE_ID> Flags: - Network accessline 50
dws doc media download --node "https://alidocs.dingtalk.com/i/nodes/xxx" --resource-id <RESOURCE_ID>
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/doc-permission.md
- Network accessline 18
dws doc permission add --node <DOC_ID> --users uid1 --role READER dws doc permission add --node <DOC_ID> --users uid1,uid2 --role EDITOR dws doc permission add --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --users uid1 --role - Network accessline 19
dws doc permission add --node <DOC_ID> --users uid1,uid2 --role EDITOR dws doc permission add --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --users uid1 --role MANAGER Flags: - Network accessline 20
dws doc permission add --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --users uid1 --role MANAGER - Network accessline 109
# 通过 alidocs URL 直接授权 dws doc permission add --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --users <uid1> --role READER --format json - Network accessline 110
dws doc permission add --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --users <uid1> --role READER --format json
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/doc-read.md
- Network accessline 16
Example: dws doc read --node <DOC_ID> dws doc read --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 17
dws doc read --node <DOC_ID> dws doc read --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" dws doc read --node <DOC_ID> --content-format jsonml --output ./doc.json - Network accessline 18
dws doc read --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 36
- 默认返回 **Markdown** 格式的文档内容,仅限有"下载"权限的文档。 - 返回的 Markdown 中,附件以 OSS 临时下载链接形式给出(如 `https://alidocs2.oss-cn-zhangjiakou.aliyuncs.com/res/.../att/<resourceId>.ext?Expires=...`),**链接会过期**。链接过期后从 URL 路径中提取 `<resourceId>`(即 `/att/` 后、扩展名前的 UUID 部分 - Network accessline 37
- 返回的 Markdown 中,附件以 OSS 临时下载链接形式给出(如 `https://alidocs2.oss-cn-zhangjiakou.aliyuncs.com/res/.../att/<resourceId>.ext?Expires=...`),**链接会过期**。链接过期后从 URL 路径中提取 `<resourceId>`(即 `/att/` 后、扩展名前的 UUID 部分),用 `media download --node <DOC_ID> --reso - Network accessline 103
# alidocs URL 直传 dws doc read --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --format json - Network accessline 104
dws doc read --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --format json
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/format/doc-jsonml-cookbook.md
- Network accessline 126
# 带链接(link 是与 text 并列的子节点) dws doc block insert --node <DOC_ID> --content-format jsonml \ --element '["p", {"uuid": "new3"}, ["span", {"data-type": "text"}, ["span", {"data-type": "leaf"}, "请访问"]], ["a", {"href": "https://example.com"}, " - Network accessline 127
dws doc block insert --node <DOC_ID> --content-format jsonml --element '["p", {"uuid": "new3"}, ["span", {"data-type": "text"}, ["span", {"data-type": "leaf"}, "请访问"]], ["a", {"href": "https://example.com"}, "链接文字"]]' - Network accessline 128
--element '["p", {"uuid": "new3"}, ["span", {"data-type": "text"}, ["span", {"data-type": "leaf"}, "请访问"]], ["a", {"href": "https://example.com"}, "链接文字"]]' - Network accessline 307
dws doc block insert --node <DOC_ID> --content-format jsonml \ --element '["p", {"uuid": "p-img1"}, ["img", {"uuid": "img1", "src": "https://example.com/photo.png", "width": 400, "height": 300}], ["span", {"data-type": "text"}, ["span", { - Network accessline 308
--element '["p", {"uuid": "p-img1"}, ["img", {"uuid": "img1", "src": "https://example.com/photo.png", "width": 400, "height": 300}], ["span", {"data-type": "text"}, ["span", {"data-type": "leaf"}, ""]]]' - Network accessline 331
# 嵌入文件预览 dws doc block insert --node <DOC_ID> --content-format jsonml \ --element '["embed", {"uuid": "em1", "name": "design.pdf", "type": "pdf", "src": "https://example.com/design.pdf", "size": 524288, "viewType": "preview", "previewSize - Network accessline 332
dws doc block insert --node <DOC_ID> --content-format jsonml --element '["embed", {"uuid": "em1", "name": "design.pdf", "type": "pdf", "src": "https://example.com/design.pdf", "size": 524288, "viewType": "preview", "previewSize": {"heigh - Network accessline 333
--element '["embed", {"uuid": "em1", "name": "design.pdf", "type": "pdf", "src": "https://example.com/design.pdf", "size": 524288, "viewType": "preview", "previewSize": {"height": 600}}]' - Network accessline 347
dws doc block insert --node <DOC_ID> --content-format jsonml \ --element '["onlineVideo", {"uuid": "ov1", "src": "https://player.bilibili.com/player.html?aid=12345", "type": "bilibili", "poster": "https://example.com/poster.jpg"}]' - Network accessline 348
--element '["onlineVideo", {"uuid": "ov1", "src": "https://player.bilibili.com/player.html?aid=12345", "type": "bilibili", "poster": "https://example.com/poster.jpg"}]' - Network accessline 361
# 群名片 dws doc block insert --node <DOC_ID> --content-format jsonml \ --element '["card", {"uuid": "cd1", "cardType": "groupChatCard", "metadata": {"id": "63953109506", "name": "测试组", "inviteUrl": "https://qr.dingtalk.com/...", "expires": - Network accessline 362
dws doc block insert --node <DOC_ID> --content-format jsonml --element '["card", {"uuid": "cd1", "cardType": "groupChatCard", "metadata": {"id": "63953109506", "name": "测试组", "inviteUrl": "https://qr.dingtalk.com/...", "expires": 1810865 - Network accessline 363
--element '["card", {"uuid": "cd1", "cardType": "groupChatCard", "metadata": {"id": "63953109506", "name": "测试组", "inviteUrl": "https://qr.dingtalk.com/...", "expires": 1810865989}}, ["span", {"data-type": "text"}, ["span", {"data-type": "l
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/format/doc-jsonml-schema.json
- Network accessline 1
{ "_note": "legacy 结构示例,仅供 shape 参考;校验规范以 doc-jsonml-schema.md 为准", "$schema": "http://json-schema.org/draft-07/schema#", - Network accessline 2
"_note": "legacy 结构示例,仅供 shape 参考;校验规范以 doc-jsonml-schema.md 为准", "$schema": "http://json-schema.org/draft-07/schema#", "title": "DingTalk Document JSONML Body Schema", - Network accessline 3
"$schema": "http://json-schema.org/draft-07/schema#",
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/format/doc-jsonml-schema.md
- Network accessline 338
["embed", {"uuid": "em1", "name": "report.pdf", "type": "pdf", "src": "https://example.com/report.pdf", "size": 2048, "viewType": "preview", "previewSize": {"height": 600}}] - Network accessline 352
["onlineVideo", {"uuid": "ov1", "src": "https://example.com/video.mp4"}] - Network accessline 353
["onlineVideo", {"uuid": "ov2", "src": "https://player.bilibili.com/player.html?aid=1", "type": "bilibili", "poster": "https://example.com/poster.jpg"}] - Network accessline 438
["p", {"uuid": "p1"}, ["span", {"data-type": "text"}, ["span", {"data-type": "leaf"}, "请访问"]], ["a", {"href": "https://example.com"}, "链接文字"] - Network accessline 439
["span", {"data-type": "text"}, ["span", {"data-type": "leaf"}, "请访问"]], ["a", {"href": "https://example.com"}, "链接文字"] ] - Network accessline 440
["a", {"href": "https://example.com"}, "链接文字"] - Network accessline 460
["img", {"uuid": "img1", "src": "https://example.com/photo.png", "width": 400, "height": 300}] - Network accessline 575
["cangjie-voidblock", {"subType": "attachment", "data": {"viewType": "abstractCard", "fileData": {"name": "report.pdf", "src": "https://...", "size": 2048, "category": "file"}}}] - Network accessline 605
["cangjie-voidinline", {"subType": "calendar", "data": {"viewType": "inlineCalendar", "calendarId": "cal-001", "subject": "周会", "detailUrl": "https://..."}}] - Network accessline 666
["span", {"data-type": "leaf", "bold": true}, "加粗"], ["span", {"data-type": "leaf"}, "和"]], ["a", {"href": "https://example.com"}, "链接"], - Network accessline 667
["span", {"data-type": "leaf"}, "和"]], ["a", {"href": "https://example.com"}, "链接"], ["span", {"data-type": "text"}, ["span", {"data-type": "leaf"}, "。"]]], - Network accessline 668
["a", {"href": "https://example.com"}, "链接"],
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/doc/style/doc-style-guideline.md
- Network accessline 182
| 同一语义两种视觉表达 | 风险既用 ⚠<U+FE0F> 又用红色文字也加 callout | §5 收敛到一组(emoji + 颜色 + 元素都按表对齐)| | 装饰性 emoji 满天飞 | 段落、列表项、普通段每行都带 emoji | §5 规则:emoji 只在 callout / 状态标记 / `H2/H3` 标题前 | | 编造 URL / 文档 ID / 图片地址 | 出现 `https://example.com/...`、`docs.dingtalk.com/xxx` - Network accessline 184
| 编造 URL / 文档 ID / 图片地址 | 出现 `https://example.com/...`、`docs.dingtalk.com/xxx` 占位形 | §4.5 / §6 留 TODO 占位,向用户求证 | - Network accessline 360
1. 关键流程/架构/趋势能图示就图示,不用纯文本承载 2. **禁止**在 Markdown 里编造图片 URL(如 ``) - Network accessline 361
2. **禁止**在 Markdown 里编造图片 URL(如 ``)
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/minutes.md
- Network accessline 87
| `dws minutes upload create -f json '{"fileName":...}'` | `-f json` / `--format json` 是**输出格式**控制,不是输入参数 | `dws minutes upload create --file-name "xxx.mp3" --file-size 61565431 --format json` | | `dws minutes get transcription --id <uuid> - Network accessline 88
| `dws minutes get transcription --id <uuid> \| head -c 2000` | Windows 沙箱无 `head` 命令,**严禁使用 shell 管道截断** | `dws minutes get transcription --id <uuid> --format json`(由 AI 在内存中截断处理) | | `dws minutes get summary --id "https://shanji.dingtalk. - Network accessline 89
| `dws minutes get summary --id "https://shanji.dingtalk.com/app/transcribes/xxx"` | `--id` 只接受 taskUuid(hex 字符串),**不接受完整 URL**。AI 必须自动提取,不要让用户手动抠 | AI 自动从 URL 提取 taskUuid,再 `dws minutes get summary --id <taskUuid>`(详见「URL → taskUuid 自动提取规则 - Network accessline 90
| `dws minutes get transcription --id "https://shanji.dingtalk.com/meeting/minutes?taskUuid=xxx"` | 同上,`--id` 不接受 URL,且这是 `?taskUuid=` 格式的 URL | AI 自动提取 `taskUuid=` 后的值,再 `dws minutes get transcription --id <taskUuid> --format json` | - Network accessline 192
> | URL 格式 | taskUuid 提取方式 | 示例 | > |---------|-----------------|------| > | `https://shanji.dingtalk.com/app/transcribes/<taskUuid>` | 取 `/transcribes/` 后面的**整段路径** | `.../transcribes/7632756964323839...5f32` → `7632756964323839...5f32` | - Network accessline 193
> |---------|-----------------|------| > | `https://shanji.dingtalk.com/app/transcribes/<taskUuid>` | 取 `/transcribes/` 后面的**整段路径** | `.../transcribes/7632756964323839...5f32` → `7632756964323839...5f32` | > | `https://shanji.dingtalk.com/m - Network accessline 194
> | `https://shanji.dingtalk.com/app/transcribes/<taskUuid>` | 取 `/transcribes/` 后面的**整段路径** | `.../transcribes/7632756964323839...5f32` → `7632756964323839...5f32` | - Network accessline 195
> | `https://shanji.dingtalk.com/meeting/minutes?taskUuid=<taskUuid>` | 取 `taskUuid=` 后面的 query parameter 值 | `...?taskUuid=7632756964323839...5f32` → `7632756964323839...5f32` | - Network accessline 196
> | `https://shanji.dingtalk.com/app/transcribes/<taskUuid>?xxx=yyy` | 取 `/transcribes/` 和 `?` 之间的部分(忽略 query string) | `.../transcribes/763275...5f32?from=share` → `763275...5f32` | - Network accessline 215
> **典型错误链路(0514 P0 bug 复现):** > ``` > 用户: "帮我看看这个听记 https://shanji.dingtalk.com/app/transcribes/7632756964323839..." - Network accessline 216
> ``` > 用户: "帮我看看这个听记 https://shanji.dingtalk.com/app/transcribes/7632756964323839..." > - Network accessline 217
> 用户: "帮我看看这个听记 https://shanji.dingtalk.com/app/transcribes/7632756964323839..." - Network accessline 218
> > [错误 1] dws minutes get summary --id "https://shanji.dingtalk.com/app/transcribes/763..." → 报错 invalid id > [错误 2] "请你把 URL 中的 taskUuid 提取出来给我" → 不应该让用户手动做 - Network accessline 219
> [错误 1] dws minutes get summary --id "https://shanji.dingtalk.com/app/transcribes/763..." → 报错 invalid id - Network accessline 1557
**URL 直达场景:** 当用户输入形如 `https://shanji.dingtalk.com/app/transcribes/{taskUuid}` 的链接 + "创建思维导图/生成脑图"等诉求时: - Network accessline 1558
当用户输入形如 `https://shanji.dingtalk.com/app/transcribes/{taskUuid}` 的链接 + "创建思维导图/生成脑图"等诉求时: - Network accessline 1702
### URL 识别 - **格式**: `https://shanji.dingtalk.com/app/transcribes/{taskUuid}` - Network accessline 1703
- **格式**: `https://shanji.dingtalk.com/app/transcribes/{taskUuid}` - Network accessline 1704
- **示例**: `https://shanji.dingtalk.com/app/transcribes/76327569643231383535353939365f3436383537393431335f32` - Network accessline 1705
用户传入听记 URL(如 `https://shanji.dingtalk.com/app/transcribes/xxx`),从 URL 提取 taskUuid,再执行对应的 get/update 操作 - Network accessline 1773
dws minutes upload create --file-name "meeting.mp4" --file-size 102400 --format json # 12b. 用 HTTP PUT 上传文件到预签名 URL(不带 HEADER) curl -X PUT "<presignedUrl>" -T "/path/to/meeting.mp4" - Network accessline 1774
# 12b. 用 HTTP PUT 上传文件到预签名 URL(不带 HEADER) curl -X PUT "<presignedUrl>" -T "/path/to/meeting.mp4" # 12c. 通知服务端上传完成,创建听记 - Network accessline 1775
curl -X PUT "<presignedUrl>" -T "/path/to/meeting.mp4" - Network accessline 1945
- `record start` 对应 MCP 工具 `execute_listening_note_command` 的 `cmd=create`,通常会返回可继续控制录音的 `taskUuid/uuid` - `record pause` / `record resume` / `record stop` 对应 `cmd=pause/resume/end`,需要传入 `--id`(映射 MCP 入参 `uuid`) - 如果用户传入听记 URL(格式: `https:// - Network accessline 1946
- `record pause` / `record resume` / `record stop` 对应 `cmd=pause/resume/end`,需要传入 `--id`(映射 MCP 入参 `uuid`) - 如果用户传入听记 URL(格式: `https://shanji.dingtalk.com/app/transcribes/<taskUuid>`),直接从路径末段提取 taskUuid 作为 `--id` 参数,无需再调用 list 查询 - `list mi - Network accessline 1947
- 如果用户传入听记 URL(格式: `https://shanji.dingtalk.com/app/transcribes/<taskUuid>`),直接从路径末段提取 taskUuid 作为 `--id` 参数,无需再调用 list 查询 - Network accessline 2031
https://shanji.dingtalk.com/app/transcribes/76327569643236343831373737345f3634383131373937375f39 - Network accessline 2037
2. 判定"思维导图不是 dws 直接支持的功能",路由到 app-development-skill / ai-app 3. 用 `@antv/g6`(或 `markmap` / `jsmind` / `mermaid`)构建 HTML 思维导图网页 4. 部署后向用户返回类似 `https://xxx.ai-app.pub` 的"在线预览链接" - Network accessline 2038
3. 用 `@antv/g6`(或 `markmap` / `jsmind` / `mermaid`)构建 HTML 思维导图网页 4. 部署后向用户返回类似 `https://xxx.ai-app.pub` 的"在线预览链接" 5. 输出"思维导图已生成!"附带网页特性介绍、配色方案等 - Network accessline 2039
4. 部署后向用户返回类似 `https://xxx.ai-app.pub` 的"在线预览链接" - Network accessline 2154
帮我看看这个听记里张三说了什么 https://shanji.dingtalk.com/app/transcribes/76327569643231383535353939365f3436383537393431335f32 - Network accessline 2155
https://shanji.dingtalk.com/app/transcribes/76327569643231383535353939365f3436383537393431335f32 - Network accessline 2196
https://shanji.dingtalk.com/app/transcribes/<taskUuid> 分析下木兰讲了什么 - Network accessline 2301
https://shanji.dingtalk.com/app/transcribes/<taskUuid> 分析下木兰讲了什么 - Network accessline 2412
| case_id | 用户原始 query | |---------|----------------| | `dws_minutes_hotquery_0045` | `https://shanji.dingtalk.com/meeting/minutes?taskUuid=sample004` | - Network accessline 2413
|---------|----------------| | `dws_minutes_hotquery_0045` | `https://shanji.dingtalk.com/meeting/minutes?taskUuid=sample004` | | `dws_minutes_hotquery_0046` | `https://alidocs.dingtalk.com/i/nodes/sampleDocNode01` 帮我读取这个文档内容 | - Network accessline 2414
| `dws_minutes_hotquery_0045` | `https://shanji.dingtalk.com/meeting/minutes?taskUuid=sample004` | - Network accessline 2415
| `dws_minutes_hotquery_0046` | `https://alidocs.dingtalk.com/i/nodes/sampleDocNode01` 帮我读取这个文档内容 | - Network accessline 2416
| `dws_minutes_hotquery_0047` | 这个听记链接你能打开看内容吗 `https://shanji.dingtalk.com/meeting/minutes?taskUuid=sample006` | - Network accessline 2506
总结里面 57:52 开始到 01:05:44 的内容给我,形成关键的三件事及拆解 https://shanji.dingtalk.com/app/transcribes/<taskUuid> (一篇时长 1 小时+ 的会议听记) - Network accessline 2507
https://shanji.dingtalk.com/app/transcribes/<taskUuid> (一篇时长 1 小时+ 的会议听记)
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/oa.md
- Network accessline 343
当模板不支持 CLI 发起(含不支持必填控件、请假套件特例哺乳假/需上传证明材料、补卡模板含需上传证据的图片控件等)时,引导用户点击 `dws attendance +get-approve-template` 返回的 `submitUrl` 提交。链接展示规范:使用 Markdown 可点击链接格式 `[formName](submitUrl)`(如 `[员工请假](https://...)`);如存在更匹配的模板可放在列表前面,但不要只返回推荐模板,必须同时返回其它可用模 - Network accessline 455
| 部门控件 | `DepartmentField` | 部门 ID | `"12345"` | 多部门传 JSON 数组;multiple=true 时支持多选 | | 省市区控件 | `AddressField` | JSON 数组字符串 | `'["浙江省","杭州市","西湖区"]'` | 三级联动;needDetail=true 时末尾加详细地址 | | 图片控件 | `DDP - Network accessline 456
| 省市区控件 | `AddressField` | JSON 数组字符串 | `'["浙江省","杭州市","西湖区"]'` | 三级联动;needDetail=true 时末尾加详细地址 | | 图片控件 | `DDPhotoField` | URL 数组转义字符串 | `"[\"http://example.com/img1.jpg\"]"` | 支持 URL 直接提交;**不支持本地文件上传** | | 附件控件 | ` - Network accessline 457
| 图片控件 | `DDPhotoField` | URL 数组转义字符串 | `"[\"http://example.com/img1.jpg\"]"` | 支持 URL 直接提交;**不支持本地文件上传** |
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/oa/oa-form-components.md
- Network accessline 231
| `componentName` | `DDPhotoField` | | value 格式 | URL 数组转义字符串,即使只有一个 URL 也需数组形式 | | 示例 | `"[\"http://example.com/img1.jpg\",\"http://example.com/img2.jpg\"]"` | - Network accessline 232
| value 格式 | URL 数组转义字符串,即使只有一个 URL 也需数组形式 | | 示例 | `"[\"http://example.com/img1.jpg\",\"http://example.com/img2.jpg\"]"` | | 约束 | 支持 URL 直接提交;**不支持本地文件上传**(CLI 未封装钉盘上传流程); | - Network accessline 233
| 示例 | `"[\"http://example.com/img1.jpg\",\"http://example.com/img2.jpg\"]"` | - Network accessline 237
{ "name": "图片", "value": "[\"http://example.com/photo.jpg\"]" } - Network accessline 321
格式依据:[钉钉官方创建审批实例文档](https://open.dingtalk.com/document/orgapp/create-an-approval-instance.md)中的“表格(明细)控件”。
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/openapi-explorer.md
- Network accessline 7
1. **先找现有 DWS 能力**:按产品参考、leaf `--help`、Shortcut 和精确 leaf Schema 检查现有命令。已有产品命令能完成时不得退化到 Raw API;`api` 本身继续排除在 Agent Schema 外。 2. **读取官方 Agent 索引**:只读取 [`https://open.dingtalk.com/llms.txt`](https://open.dingtalk.com/llms.txt),再沿其中的产品线 `llms- - Network accessline 8
2. **读取官方 Agent 索引**:只读取 [`https://open.dingtalk.com/llms.txt`](https://open.dingtalk.com/llms.txt),再沿其中的产品线 `llms-*.txt` 进入具体 API `.md`。不要使用搜索引擎摘要、第三方博客或缓存副本拼装请求。 - Network accessline 10
4. **提取完整契约**:必须获得 HTTP method、完整 URL、应用类型、Token 类型、权限点、query/body/multipart 参数、分页字段、限制和风险。缺一项就停止,不得猜 path、字段名或枚举值。 5. **资格门禁**:仅允许“企业内部应用 + App Token + 服务端 OpenAPI”。User Token、个人授权、JSAPI、事件订阅、回调、Webhook 和客户端协议只解释,不生成或执行 Raw 调用。 6. **先 dry- - Network accessline 11
5. **资格门禁**:仅允许“企业内部应用 + App Token + 服务端 OpenAPI”。User Token、个人授权、JSAPI、事件订阅、回调、Webhook 和客户端协议只解释,不生成或执行 Raw 调用。 6. **先 dry-run**:只生成当前稳定格式的 `dws api ... --dry-run`。新 OpenAPI 使用 `api.dingtalk.com`;旧 OAPI 必须保留完整 `https://oapi.dingtalk.com/.. - Network accessline 12
6. **先 dry-run**:只生成当前稳定格式的 `dws api ... --dry-run`。新 OpenAPI 使用 `api.dingtalk.com`;旧 OAPI 必须保留完整 `https://oapi.dingtalk.com/...` 或显式 `--base-url https://oapi.dingtalk.com`。 - Access to secretsline 29
[Credential-related source omitted] - Network accessline 35
dws api POST https://oapi.dingtalk.com/topapi/v2/department/listsubid \ - Network accessline 39
dws api POST https://oapi.dingtalk.com/media/upload \
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/sheet/sheet-export.md
- Network accessline 26
# 仅导出,返回 downloadUrl(链接有时效性,请尽快下载) dws sheet export --node <NODE_ID> dws sheet export --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 28
dws sheet export --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" - Network accessline 103
dws sheet export --node <NODE_ID> --format json # 传入 URL 也可: # dws sheet export --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --format json - Network accessline 105
# dws sheet export --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --format json
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/sheet/sheet-filter.md
- Network accessline 23
Example: dws sheet filter get --node <NODE_ID> --sheet-id <SHEET_ID> dws sheet filter get --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --sheet-id "Sheet1" - Network accessline 24
dws sheet filter get --node <NODE_ID> --sheet-id <SHEET_ID> dws sheet filter get --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --sheet-id "Sheet1" Flags: - Network accessline 25
dws sheet filter get --node "https://alidocs.dingtalk.com/i/nodes/<DOC_UUID>" --sheet-id "Sheet1"
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/sheet/sheet-write-data.md
- Network accessline 24
dws sheet range update --node <NODE_ID> --sheet-id <SHEET_ID> --range "A1:B2" --values '[[{"type":"text","text":"名称"},{"type":"text","text":"链接"}],[{"type":"text","text":"项目"},{"type":"text","text":"详情","hyperlink":{"type":"path","link":"ht
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/whiteboard/open-nodes-v1/04-text-style.md
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/whiteboard/open-nodes-v1/06-vector-icon-path.md
- Network accessline 74
"kind": "managed", "resourceId": "0c1c94e1-f9af-4228-b32f-42bbd1555253", "url": "https://resources.example.com/assets/opaque-path?resourceId=0c1c94e1-f9af-4228-b32f-42bbd1555253" - Network accessline 75
"resourceId": "0c1c94e1-f9af-4228-b32f-42bbd1555253", "url": "https://resources.example.com/assets/opaque-path?resourceId=0c1c94e1-f9af-4228-b32f-42bbd1555253" } - Network accessline 76
"url": "https://resources.example.com/assets/opaque-path?resourceId=0c1c94e1-f9af-4228-b32f-42bbd1555253"
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/products/wiki.md
- Network accessline 48
Example: dws wiki space delete --workspace <workspaceId> dws wiki space delete --workspace "https://alidocs.dingtalk.com/i/spaces/xxx/overview" - Network accessline 49
dws wiki space delete --workspace <workspaceId> dws wiki space delete --workspace "https://alidocs.dingtalk.com/i/spaces/xxx/overview" Flags: - Network accessline 50
dws wiki space delete --workspace "https://alidocs.dingtalk.com/i/spaces/xxx/overview" - Network accessline 65
Example: dws wiki space get --workspace <workspaceId> --format json dws wiki space get --workspace "https://alidocs.dingtalk.com/i/spaces/xxx/overview" --format json - Network accessline 66
dws wiki space get --workspace <workspaceId> --format json dws wiki space get --workspace "https://alidocs.dingtalk.com/i/spaces/xxx/overview" --format json Flags: - Network accessline 67
dws wiki space get --workspace "https://alidocs.dingtalk.com/i/spaces/xxx/overview" --format json - Network accessline 72
支持传入知识库 ID 或知识库 URL,系统自动识别。 知识库 URL 格式:`https://alidocs.dingtalk.com/i/spaces/{workspaceId}/overview` - Network accessline 73
知识库 URL 格式:`https://alidocs.dingtalk.com/i/spaces/{workspaceId}/overview` - Network accessline 120
dws wiki member add --workspace <WS_ID> --users uid1 --role READER dws wiki member add --workspace <WS_ID> --users uid1,uid2 --role EDITOR dws wiki member add --workspace "https://alidocs.dingtalk.com/i/spaces/<WS_ID>/overview" --users - Network accessline 121
dws wiki member add --workspace <WS_ID> --users uid1,uid2 --role EDITOR dws wiki member add --workspace "https://alidocs.dingtalk.com/i/spaces/<WS_ID>/overview" --users uid1 --role MANAGER dws wiki member add --workspace <WS_ID> --membe - Network accessline 122
dws wiki member add --workspace "https://alidocs.dingtalk.com/i/spaces/<WS_ID>/overview" --users uid1 --role MANAGER
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/references/url-patterns.md
- Network accessline 19
| 产品 | 用途 | URL 格式 | ID 来源 | |------|------|----------|---------| | `aitable` | AI表格 Base 链接 | `https://alidocs.dingtalk.com/i/nodes/{baseId}` | `base list/search/create/get` 返回的 `baseId` | - Network accessline 20
|------|------|----------|---------| | `aitable` | AI表格 Base 链接 | `https://alidocs.dingtalk.com/i/nodes/{baseId}` | `base list/search/create/get` 返回的 `baseId` | | `aitable` | AI表格模板预览 | `https://docs.dingtalk.com/table/template/{templateId} - Network accessline 21
| `aitable` | AI表格 Base 链接 | `https://alidocs.dingtalk.com/i/nodes/{baseId}` | `base list/search/create/get` 返回的 `baseId` | - Network accessline 22
| `aitable` | AI表格模板预览 | `https://docs.dingtalk.com/table/template/{templateId}` | `template search` 返回的 `templateId` | - Network accessline 23
| `doc` | 文档链接 | `https://alidocs.dingtalk.com/i/nodes/{dentryUuid}` | `doc` 命令返回的 `dentryUuid` | - Network accessline 24
| `sheet` | 电子表格链接 | `https://alidocs.dingtalk.com/i/nodes/{dentryUuid}` | `sheet create` 返回的 `dentryUuid` | - Network accessline 25
| `sheet` | 电子表格直链 | `https://alidocs.dingtalk.com/spreadsheetv2/{key}/...?dentryKey={key}&type=s` | 用户提供的完整 URL,直接传给 `--node` | - Network accessline 26
| `doc` | 文档链接(edit/preview) | `https://alidocs.dingtalk.com/document/{edit\|preview}?...&dentryKey={key}` | 用户提供的完整 URL,直接传给 `--node` | - Network accessline 27
| `minutes` | 听记链接 | `https://shanji.dingtalk.com/app/transcribes/{taskUuid}` | `list mine/shared` 返回的 `taskUuid` | - Network accessline 37
URL 路径中包含 `/i/p/` 即为分享短链(无论后面是否还有子路径),例如: - `https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2` - Network accessline 38
- `https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2` - Network accessline 39
- `https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2/docs/AY39rGpMPmeVNpXZevZm8OZkXKnaoNQ7` - Network accessline 40
- `https://alidocs.dingtalk.com/i/p/AbCdEfGh1234` - Network accessline 41
- `https://alidocs.dingtalk.com/i/p/AbCdEfGh1234/sheets/XYZ789` - Network accessline 53
# 需要读取文档内容时(无论 /i/p/ 后面有没有子路径, # 都用宿主提供的网页读取能力读取以下链接) https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2 - Network accessline 54
# 都用宿主提供的网页读取能力读取以下链接) https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2 https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2/docs/AY39rGpMPmeVNpXZevZm8OZkXKnaoNQ7 - Network accessline 55
https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2 - Network accessline 56
https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2/docs/AY39rGpMPmeVNpXZevZm8OZkXKnaoNQ7 - Network accessline 58
# 禁止(以下全部会失败,dws 无法解析任何含 /i/p/ 的 URL) dws doc info --node "https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2" --format json - Network accessline 59
dws doc info --node "https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2" --format json - Network accessline 60
dws doc read --node "https://alidocs.dingtalk.com/i/p/Y7kmbokZp3pgGLq2/docs/AY39rGpMPmeVNpXZevZm8OZkXKnaoNQ7" --format json - Network accessline 114
# 用户传入: https://alidocs.dingtalk.com/i/nodes/abc123 - Network accessline 115
dws doc info --node "https://alidocs.dingtalk.com/i/nodes/abc123" --format json - Network accessline 117
# 返回 contentType=ALIDOC, extension=axls → 在线电子表格,路由到 sheet dws sheet list --node "https://alidocs.dingtalk.com/i/nodes/abc123" --format json - Network accessline 118
dws sheet list --node "https://alidocs.dingtalk.com/i/nodes/abc123" --format json - Network accessline 120
# 返回 extension=dlink → 内容操作改用 linkSourceInfo.nodeId;若目标仍是 dlink 则继续 doc info dws doc info --node "https://alidocs.dingtalk.com/i/nodes/shortcut123" --format json - Network accessline 121
dws doc info --node "https://alidocs.dingtalk.com/i/nodes/shortcut123" --format json - Network accessline 123
# 返回 contentType≠ALIDOC, extension=xlsx/xls/csv → 本地表格文件,必须下载处理(禁止走 sheet) dws drive download --node "https://alidocs.dingtalk.com/i/nodes/xlsx456" - Network accessline 124
dws drive download --node "https://alidocs.dingtalk.com/i/nodes/xlsx456" - Network accessline 126
# 返回 contentType≠ALIDOC, nodeType=file → 普通文件,下载 dws drive download --node "https://alidocs.dingtalk.com/i/nodes/def456" - Network accessline 127
dws drive download --node "https://alidocs.dingtalk.com/i/nodes/def456" - Network accessline 129
# 返回 nodeType=folder → 文件夹,列出子节点 dws drive list --folder "https://alidocs.dingtalk.com/i/nodes/ghi789" --format json - Network accessline 130
dws drive list --folder "https://alidocs.dingtalk.com/i/nodes/ghi789" --format json
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/aitable_export_via_task.py
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/aitable_import_via_task.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_my_record.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_report_checkin.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_report_common.py
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_report_daily.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_report_detail.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_report_monthly.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_report_record.py
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_schedule_export.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_schedule_import.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_team_shift.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/attendance_vacation_balance.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/bulk_add_fields.py
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/calendar_free_slot_finder.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/calendar_schedule_meeting.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/calendar_today_agenda.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/contact_dept_members.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/drive_tree_list.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/generate_form_component_id.py
- Executable scriptline 1
Executable file
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/generate_node_id.py
- Executable scriptline 1
Executable file
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/import_records.py
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/mail_send_with_cc.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/mail_unread_summary.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/minutes_recent_summary.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/oa_batch_approve.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/oa_pending_review.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/report_inbox_today.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/report_received_today.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/todo_batch_create.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/todo_daily_summary.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/todo_overdue_check.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/scripts/upload_attachment.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/SKILL.md
- Network accessline 156
"标题": "Created from shortcut", // text: string "待确认": "请 <at user_id=ou_123/> 确认", // text(plain): 人员提及;实际 open_id 用 `lark-cli contact +search-user` 查询(lark-contact 未随包收录);不发送通知 "官网": "[官网](https://example.com)", // text(url): 裸 URL 或 M - Network accessline 156
"标题": "Created from shortcut", // text: string "待确认": "请 <at user_id=ou_123/> 确认", // text(plain): 人员提及;实际 open_id 用 `lark-cli contact +search-user` 查询(lark-contact 未随包收录);不发送通知 "官网": "[官网](https://example.com)", // text(url): 裸 URL 或 M - Network accessline 156
"标题": "Created from shortcut", // text: string "待确认": "请 <at user_id=ou_123/> 确认", // text(plain): 人员提及;实际 open_id 用 `lark-cli contact +search-user` 查询(lark-contact 未随包收录);不发送通知 "官网": "[官网](https://example.com)", // text(url): 裸 URL 或 M - Network accessline 157
"待确认": "请 <at user_id=ou_123/> 确认", // text(plain): 人员提及;实际 open_id 用 `lark-cli contact +search-user` 查询(lark-contact 未随包收录);不发送通知 "官网": "[官网](https://example.com)", // text(url): 裸 URL 或 Markdown link "联系电话": "13800000000", // text(pho - Network accessline 157
"待确认": "请 <at user_id=ou_123/> 确认", // text(plain): 人员提及;实际 open_id 用 `lark-cli contact +search-user` 查询(lark-contact 未随包收录);不发送通知 "官网": "[官网](https://example.com)", // text(url): 裸 URL 或 Markdown link "联系电话": "13800000000", // text(pho - Network accessline 157
"待确认": "请 <at user_id=ou_123/> 确认", // text(plain): 人员提及;实际 open_id 用 `lark-cli contact +search-user` 查询(lark-contact 未随包收录);不发送通知 "官网": "[官网](https://example.com)", // text(url): 裸 URL 或 Markdown link "联系电话": "13800000000", // text(pho - Network accessline 158
"官网": "[官网](https://example.com)", // text(url): 裸 URL 或 Markdown link - Network accessline 158
"官网": "[官网](https://example.com)", // text(url): 裸 URL 或 Markdown link - Network accessline 158
"官网": "[官网](https://example.com)", // text(url): 裸 URL 或 Markdown link
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-cell-value.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-data-query.md
- Network accessline 83
https://example.feishu.cn/base/<base_token>?table=<block_id>
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-field-create.md
- Network accessline 48
- 数组按顺序创建字段,遇到首个失败即停止且不自动回滚;部分失败时保留 `items` 中的 `created` 项,按 `hint` 修正后只提交 `failed` 和 `not_attempted` 项,并保持依赖顺序。 - 每个字段对象最少包含:`name`、`type`。 - 所有字段类型都支持可选 `description`;支持纯文本,也支持 Markdown 链接,如 `协作约定可参考[团队字段约定](https://example.com/field-spec - Network accessline 49
- 每个字段对象最少包含:`name`、`type`。 - 所有字段类型都支持可选 `description`;支持纯文本,也支持 Markdown 链接,如 `协作约定可参考[团队字段约定](https://example.com/field-spec)`。 - 需要字段默认值时传 `default_value`,直接使用字段对应 CellValue;`datetime` / `user` 的动态填充用 `$slot`。完整规则见 [Field Schema](lark-b - Network accessline 50
- 所有字段类型都支持可选 `description`;支持纯文本,也支持 Markdown 链接,如 `协作约定可参考[团队字段约定](https://example.com/field-spec)`。
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-field-schema.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-form-questions-create.md
- Network accessline 45
lark-cli base +form-questions-create --base-token <base_token> --table-id <table_id> --form-id <form_id> --questions '[{"type":"text","title":"反馈建议","description":"更多详情请查看[帮助文档](https://example.com/help)"}]' - Network accessline 47
--table-id <table_id> \ --form-id <form_id> \ --questions '[{"type":"text","title":"反馈建议","description":"更多详情请查看[帮助文档](https://example.com/help)"}]' - Network accessline 49
--questions '[{"type":"text","title":"反馈建议","description":"更多详情请查看[帮助文档](https://example.com/help)"}]' - Network accessline 91
| `title` | **是** | 问题标题(字段名) | | `type` | **是** | 题目类型:`text`、`number`、`select`、`datetime`、`user`、`attachment`、`location` | | `description` | 否 | 问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`) | - Network accessline 92
| `type` | **是** | 题目类型:`text`、`number`、`select`、`datetime`、`user`、`attachment`、`location` | | `description` | 否 | 问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`) | | `required` | 否 | 是否必填(true/false) - Network accessline 93
| `description` | 否 | 问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`) | - Network accessline 108
| `field_id` | **是** | 已有字段的 ID 或字段名;推荐字段 ID,避免同名字段歧义。引用长度 1~100,较长字段名请改用字段 ID | | `title` | 否 | 题目标题;省略时使用字段名 | | `description` | 否 | 问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`) | - Network accessline 109
| `title` | 否 | 题目标题;省略时使用字段名 | | `description` | 否 | 问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`) | | `required` | 否 | 是否必填(true/false),默认 false | - Network accessline 110
| `description` | 否 | 问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`) |
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-form-questions-update.md
- Network accessline 40
lark-cli base +form-questions-update --base-token <base_token> --table-id <table_id> --form-id <form_id> --questions '[{"id":"q_001","title":"反馈建议","description":"更多说明请参考[帮助文档](https://example.com/help)","required":false,"visibl - Network accessline 42
--table-id <table_id> \ --form-id <form_id> \ --questions '[{"id":"q_001","title":"反馈建议","description":"更多说明请参考[帮助文档](https://example.com/help)","required":false,"visible_rule":null}]' - Network accessline 44
--questions '[{"id":"q_001","title":"反馈建议","description":"更多说明请参考[帮助文档](https://example.com/help)","required":false,"visible_rule":null}]' - Network accessline 79
| `id` | **是** | 问题 ID(field_id),不可修改 | | `title` | 否 | 目标问题标题;省略会回落为字段名,传空字符串会写入空标题(若服务端允许) | | `description` | 否 | 目标问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`);省略或传空字符串都会清空描述 | - Network accessline 80
| `title` | 否 | 目标问题标题;省略会回落为字段名,传空字符串会写入空标题(若服务端允许) | | `description` | 否 | 目标问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`);省略或传空字符串都会清空描述 | | `required` | 否 | 目标是否必填;省略会回落为 `false` | - Network accessline 81
| `description` | 否 | 目标问题描述(纯文本或 Markdown 链接,如 `[文本](https://example.com)`);省略或传空字符串都会清空描述 |
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-form-submit.md
- Network accessline 93
"文本字段": "Hello World", "电话字段": "13800000000", "超链接字段": "https://example.com", - Network accessline 94
"电话字段": "13800000000", "超链接字段": "https://example.com", "数字字段": 12.5, - Network accessline 95
"超链接字段": "https://example.com", - Network accessline 136
https://www.example.com/share/base/form/shrbcvST8eZy0vk8zjVZ1CAXNye
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-template-center.md
- Network accessline 155
"developer": "Base Team", "introduction": "📊 品牌调研问卷 \n高效收集用户反馈,助力品牌优化决策 \n\n核心功能点 \n1 预设多维度调研问题模板 \n2 支持自定义问题类型与逻辑跳转 \n3 实时数据统计与可视化分析 \n\n适合场景 \n1 新品上市前市场需求调研 \n2 品牌形象与用户满意度评估 \n3 竞品对比与消费者偏好分析", "link": "https://exa - Network accessline 156
"introduction": "📊 品牌调研问卷 \n高效收集用户反馈,助力品牌优化决策 \n\n核心功能点 \n1 预设多维度调研问题模板 \n2 支持自定义问题类型与逻辑跳转 \n3 实时数据统计与可视化分析 \n\n适合场景 \n1 新品上市前市场需求调研 \n2 品牌形象与用户满意度评估 \n3 竞品对比与消费者偏好分析", "link": "https://example.com/base/<template_token>", - Network accessline 157
"link": "https://example.com/base/<template_token>",
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-view.md
- Access to secretsline 32
[Credential-related source omitted] - Access to secretsline 34
[Credential-related source omitted] - Access to secretsline 36
[Credential-related source omitted] - Access to secretsline 38
[Credential-related source omitted] - Access to secretsline 48
[Credential-related source omitted] - Access to secretsline 49
[Credential-related source omitted] - Access to secretsline 50
[Credential-related source omitted] - Access to secretsline 51
[Credential-related source omitted] - Access to secretsline 61
[Credential-related source omitted] - Access to secretsline 62
[Credential-related source omitted] - Access to secretsline 64
[Credential-related source omitted] - Access to secretsline 74
[Credential-related source omitted] - Access to secretsline 75
[Credential-related source omitted] - Access to secretsline 85
[Credential-related source omitted] - Access to secretsline 86
[Credential-related source omitted] - Access to secretsline 87
[Credential-related source omitted] - Access to secretsline 96
[Credential-related source omitted] - Access to secretsline 97
[Credential-related source omitted] - Access to secretsline 100
[Credential-related source omitted] - Access to secretsline 103
[Credential-related source omitted] - Access to secretsline 106
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-workflow-schema.md
- Network accessline 388
{ "method": "POST", "url": [{ "value_type": "text", "value": "https://api.example.com/webhook" }], - Network accessline 389
"method": "POST", "url": [{ "value_type": "text", "value": "https://api.example.com/webhook" }], "queries": [ - Network accessline 390
"url": [{ "value_type": "text", "value": "https://api.example.com/webhook" }], - Network accessline 448
], "btn_list": [ { "text": "查看详情", "btn_action": "openLink", "link": [{ "value_type": "text", "value": "https://example.com" }] } - Network accessline 449
"btn_list": [ { "text": "查看详情", "btn_action": "openLink", "link": [{ "value_type": "text", "value": "https://example.com" }] } ] - Network accessline 450
{ "text": "查看详情", "btn_action": "openLink", "link": [{ "value_type": "text", "value": "https://example.com" }] } - Network accessline 661
| `date` | string | 日期,可以是具体时间字符串,或者相对时间值 | `"2025/01/01"`、`"2025/01/01 11:00"`、`"now"`、`"now 11:00"`、`"today"`、`"today 11:00"`、`"yesterday"`、`"yesterday 11:00"`、`"lastWeek"`、`"currentMonth"`、`"lastMonth"`、`"theLastWeek"`、`"theNextWeek"`、`" - Network accessline 662
| `option` | `{ id, name }` | 选项 | `{ "id": "opt1", "name": "已完成" }` | | `link` | `{ text, link }` | 链接(含文字和 URL), 文字和 URL 的格式可以是 ValueInfo 中的 text/ref 类型 | `{ "text": [{ "value_type": "text", "value": "查看详情" }], "link": [{ "value_type": "t - Network accessline 663
| `link` | `{ text, link }` | 链接(含文字和 URL), 文字和 URL 的格式可以是 ValueInfo 中的 text/ref 类型 | `{ "text": [{ "value_type": "text", "value": "查看详情" }], "link": [{ "value_type": "text", "value": "https://example.com" }] }`、`{ "text": [{ "value_type":
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-base/references/lark-base-workflow.md
- Network accessline 657
"method": "POST", "url": [ { "value_type": "text", "value": "https://api.example-crm.com/v1/leads/sync" } - Network accessline 658
"url": [ { "value_type": "text", "value": "https://api.example-crm.com/v1/leads/sync" } ], - Network accessline 659
{ "value_type": "text", "value": "https://api.example-crm.com/v1/leads/sync" }
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-doc/references/lark-doc-create.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-doc/references/lark-doc-fetch.md
- Network accessline 1
# docs +fetch(读取飞书云文档)
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-doc/references/lark-doc-md.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-doc/references/lark-doc-media-insert.md
- Network accessline 51
lark-cli docs +update --doc "<doc_id>" --command block_insert_after \ --block-id "目标 block_id" \ --content '<img href="https://example.com/photo.png"/>' - Network accessline 53
--content '<img href="https://example.com/photo.png"/>' - Network accessline 58
# doc 支持直接传 docx URL(自动提取 document_id) lark-cli docs +media-insert --doc "https://xxx.feishu.cn/docx/doxcnXXX" --from-clipboard - Network accessline 59
lark-cli docs +media-insert --doc "https://xxx.feishu.cn/docx/doxcnXXX" --from-clipboard
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-doc/references/lark-doc-resource-cover.md
- Network accessline 26
# 使用 HTTPS URL 更新封面图。CLI 会先下载 URL 内容,再上传并写入 cover.token。 lark-cli docs +resource-update --doc doxcnXXX --type cover --url "https://example.com/cover.png" - Network accessline 27
lark-cli docs +resource-update --doc doxcnXXX --type cover --url "https://example.com/cover.png" - Network accessline 60
- 只允许 `https://`,拒绝 HTTP、空 host 和 URL userinfo。
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-doc/references/lark-doc-xml-extended-blocks.md
- Network accessline 5
## 拓展标签 - `<bookmark name="示例站点" href="https://example.com"></bookmark>` - Network accessline 6
- `<bookmark name="示例站点" href="https://example.com"></bookmark>` - Network accessline 7
- `<button action="OpenLink" src="https://example.com">操作按钮</button>`:`action` 可为 `OpenLink`、`DuplicatePage` 或 `FollowPage`;可选 `background-color`、`src`。 - Network accessline 62
<p>O 进展</p> <checkbox done="true">事项</checkbox> <ul><li>列表项内可包含 <a href="https://example.com">链接</a></li></ul> - Network accessline 63
<checkbox done="true">事项</checkbox> <ul><li>列表项内可包含 <a href="https://example.com">链接</a></li></ul> </okr-progress> - Network accessline 64
<ul><li>列表项内可包含 <a href="https://example.com">链接</a></li></ul>
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/SKILL.md
- Network accessline 61
| URL 格式 | 示例 | Token 类型 | 处理方式 | |----------|---------------------------------------------------------|-----------|----------| | `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxx - Network accessline 61
| URL 格式 | 示例 | Token 类型 | 处理方式 | |----------|---------------------------------------------------------|-----------|----------| | `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxx - Network accessline 61
| URL 格式 | 示例 | Token 类型 | 处理方式 | |----------|---------------------------------------------------------|-----------|----------| | `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxx - Network accessline 62
|----------|---------------------------------------------------------|-----------|----------| | `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | | `/doc/` | `https://ex - Network accessline 62
|----------|---------------------------------------------------------|-----------|----------| | `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | | `/doc/` | `https://ex - Network accessline 62
|----------|---------------------------------------------------------|-----------|----------| | `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | | `/doc/` | `https://ex - Network accessline 63
| `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 63
| `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 63
| `/docx/` | `https://example.larksuite.com/docx/doxcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 64
| `/doc/` | `https://example.larksuite.com/doc/doccnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 64
| `/doc/` | `https://example.larksuite.com/doc/doccnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 64
| `/doc/` | `https://example.larksuite.com/doc/doccnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 65
| `/wiki/` | `https://example.larksuite.com/wiki/wikcnxxxxxxxxx` | `wiki_token` | 不能直接当底层 `file_token`;优先用 `drive +inspect` 解包获取 `obj_token` | - Network accessline 65
| `/wiki/` | `https://example.larksuite.com/wiki/wikcnxxxxxxxxx` | `wiki_token` | 不能直接当底层 `file_token`;优先用 `drive +inspect` 解包获取 `obj_token` | - Network accessline 65
| `/wiki/` | `https://example.larksuite.com/wiki/wikcnxxxxxxxxx` | `wiki_token` | 不能直接当底层 `file_token`;优先用 `drive +inspect` 解包获取 `obj_token` | - Network accessline 66
| `/sheets/` | `https://example.larksuite.com/sheets/shtcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 66
| `/sheets/` | `https://example.larksuite.com/sheets/shtcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 66
| `/sheets/` | `https://example.larksuite.com/sheets/shtcnxxxxxxxxx` | `file_token` | URL 路径中的 token 直接作为 `file_token` 使用 | - Network accessline 67
| `/page/` | `https://example.feishu.cn/page/pagcnxxxxxxxx/` | apps token | URL 路径中的 token 直接使用,资源类型为 `apps` | - Network accessline 67
| `/page/` | `https://example.feishu.cn/page/pagcnxxxxxxxx/` | apps token | URL 路径中的 token 直接使用,资源类型为 `apps` | - Network accessline 67
| `/page/` | `https://example.feishu.cn/page/pagcnxxxxxxxx/` | apps token | URL 路径中的 token 直接使用,资源类型为 `apps` | - Network accessline 68
| `/drive/folder/` | `https://example.larksuite.com/drive/folder/fldcnxxxx` | `folder_token` | URL 路径中的 token 作为文件夹 token 使用 | - Network accessline 68
| `/drive/folder/` | `https://example.larksuite.com/drive/folder/fldcnxxxx` | `folder_token` | URL 路径中的 token 作为文件夹 token 使用 | - Network accessline 68
| `/drive/folder/` | `https://example.larksuite.com/drive/folder/fldcnxxxx` | `folder_token` | URL 路径中的 token 作为文件夹 token 使用 | - Network accessline 73
lark-cli drive +inspect --url 'https://xxx.feishu.cn/wiki/wikcnXXX' - Network accessline 73
lark-cli drive +inspect --url 'https://xxx.feishu.cn/wiki/wikcnXXX' - Network accessline 73
lark-cli drive +inspect --url 'https://xxx.feishu.cn/wiki/wikcnXXX'
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-add-comment.md
- Network accessline 11
# 默认:未指定位置时添加全文评论 lark-cli drive +add-comment \ --doc "https://example.larksuite.com/docx/<DOC_ID>" \ - Network accessline 12
lark-cli drive +add-comment --doc "https://example.larksuite.com/docx/<DOC_ID>" - Network accessline 13
--doc "https://example.larksuite.com/docx/<DOC_ID>" \ - Network accessline 16
# 也可以显式指定为全文评论;旧版 doc URL 仅支持全文评论 lark-cli drive +add-comment \ --doc "https://example.larksuite.com/doc/<DOC_ID>" \ - Network accessline 17
lark-cli drive +add-comment --doc "https://example.larksuite.com/doc/<DOC_ID>" - Network accessline 18
--doc "https://example.larksuite.com/doc/<DOC_ID>" \ - Network accessline 22
# wiki 链接也可以,shortcut 会先解析到真实 doc/docx token lark-cli drive +add-comment \ --doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" \ - Network accessline 23
lark-cli drive +add-comment --doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" - Network accessline 24
--doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" \ - Network accessline 28
# 注意:CLI 会先查询 drive metas,只有白名单扩展名才允许评论 lark-cli drive +add-comment \ --doc "https://example.larksuite.com/file/<FILE_TOKEN>" \ - Network accessline 29
lark-cli drive +add-comment --doc "https://example.larksuite.com/file/<FILE_TOKEN>" - Network accessline 30
--doc "https://example.larksuite.com/file/<FILE_TOKEN>" \ - Network accessline 38
# 给 docx 文档的指定 block 添加局部评论(block_id 可通过 docs +fetch --detail with-ids 获取) lark-cli drive +add-comment \ --doc "https://example.larksuite.com/docx/<DOC_ID>" \ - Network accessline 39
lark-cli drive +add-comment --doc "https://example.larksuite.com/docx/<DOC_ID>" - Network accessline 40
--doc "https://example.larksuite.com/docx/<DOC_ID>" \ - Network accessline 44
# wiki 链接也支持局部评论;解析结果可以是 docx/sheet/slides,block-id 格式按目标类型传 lark-cli drive +add-comment \ --doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" \ - Network accessline 45
lark-cli drive +add-comment --doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" - Network accessline 46
--doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" \ - Network accessline 50
# 组合文本、@用户、链接元素 lark-cli drive +add-comment \ --doc "https://example.larksuite.com/docx/<DOC_ID>" \ - Network accessline 51
lark-cli drive +add-comment --doc "https://example.larksuite.com/docx/<DOC_ID>" - Network accessline 52
--doc "https://example.larksuite.com/docx/<DOC_ID>" \ - Network accessline 54
--content '[{"type":"text","text":"请 "},{"type":"mention_user","text":"ou_xxx"},{"type":"text","text":" 处理,参考 "},{"type":"link","text":"https://example.com"}]' - Network accessline 56
# 给电子表格单元格添加评论(--block-id 格式为 <sheetId>!<cell>) lark-cli drive +add-comment \ --doc "https://example.larksuite.com/sheets/<SHEET_TOKEN>" \ - Network accessline 57
lark-cli drive +add-comment --doc "https://example.larksuite.com/sheets/<SHEET_TOKEN>" - Network accessline 58
--doc "https://example.larksuite.com/sheets/<SHEET_TOKEN>" \ - Network accessline 62
# wiki 链接指向的 sheet 也支持 lark-cli drive +add-comment \ --doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" \ - Network accessline 63
lark-cli drive +add-comment --doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" - Network accessline 64
--doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" \ - Network accessline 68
# 给幻灯片元素添加评论(--block-id 格式为 <slide-block-type>!<xml-id>) lark-cli drive +add-comment \ --doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" \ - Network accessline 69
lark-cli drive +add-comment --doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" - Network accessline 70
--doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" \ - Network accessline 75
# <slide id="pkk"> ... </slide> => --block-id slide!pkk lark-cli drive +add-comment \ --doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" \ - Network accessline 76
lark-cli drive +add-comment --doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" - Network accessline 77
--doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" \ - Network accessline 82
# <img id="bPk" ... /> => --block-id img!bPk lark-cli drive +add-comment \ --doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" \ - Network accessline 83
lark-cli drive +add-comment --doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" - Network accessline 84
--doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" \ - Network accessline 89
# <shape type="text" id="bPq"> ... </shape> => --block-id shape!bPq lark-cli drive +add-comment \ --doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" \ - Network accessline 90
lark-cli drive +add-comment --doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" - Network accessline 91
--doc "https://example.larksuite.com/slides/<PRESENTATION_ID>" \ - Network accessline 95
# wiki 链接指向的 slides 也支持 lark-cli drive +add-comment \ --doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" \ - Network accessline 96
lark-cli drive +add-comment --doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" - Network accessline 97
--doc "https://example.larksuite.com/wiki/<WIKI_TOKEN>" \ - Network accessline 118
lark-cli drive +add-comment --doc "<DOCX_TOKEN>" --type docx --block-id "<BLOCK_ID>" --content '[{"type":"text","text":"请 "},{"type":"mention_user","text":"ou_xxx"},{"type":"text","text":" 处理,参考 "},{"type":"link","text":"https://ex - Network accessline 119
--doc "<DOCX_TOKEN>" --type docx \ --block-id "<BLOCK_ID>" \ --content '[{"type":"text","text":"请 "},{"type":"mention_user","text":"ou_xxx"},{"type":"text","text":" 处理,参考 "},{"type":"link","text":"https://example.com"}]' - Network accessline 121
--content '[{"type":"text","text":"请 "},{"type":"mention_user","text":"ou_xxx"},{"type":"text","text":" 处理,参考 "},{"type":"link","text":"https://example.com"}]' - Network accessline 142
# 预览底层调用链 lark-cli drive +add-comment \ --doc "https://example.larksuite.com/docx/<DOC_ID>" \ - Network accessline 143
lark-cli drive +add-comment --doc "https://example.larksuite.com/docx/<DOC_ID>" - Network accessline 144
--doc "https://example.larksuite.com/docx/<DOC_ID>" \ - Network accessline 154
| `--doc` | 是 | 文档 URL / token、file / sheet / slides / base / bitable URL,或可解析到 `doc`/`docx`/`file`/`sheet`/`slides`/`base(bitable)` 的 wiki URL | | `--type` | 裸 token 时必填 | 文档类型:`doc`、`docx`、`file`、`sheet`、`slides`、`bitable`、`base`;评论 Base - Network accessline 155
| `--type` | 裸 token 时必填 | 文档类型:`doc`、`docx`、`file`、`sheet`、`slides`、`bitable`、`base`;评论 Base 文档推荐传 `bitable`,`base` 仅作为兼容别名兜底。URL 输入时自动识别,无需传 | | `--content` | 是 | `reply_elements` JSON 数组字符串。示例:`'[{"type":"text","text":"文本"},{"type":"ment - Network accessline 156
| `--content` | 是 | `reply_elements` JSON 数组字符串。示例:`'[{"type":"text","text":"文本"},{"type":"mention_user","text":"ou_xxx"},{"type":"link","text":"https://example.com"}]'` | | `--full-comment` | 否 | 显式指定创建全文评论;未传 `--block-id` 时也会默认走全文评论(仅适用于
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-add-reply.md
- Network accessline 10
# 推荐:完整 URL + 目标评论 ID + 回复内容 lark-cli drive +add-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-id '<id>' --content '[{"type":"text","text":"回复内容"}]' - Network accessline 11
lark-cli drive +add-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-id '<id>' --content '[{"type":"text","text":"回复内容"}]'
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-apply-permission.md
- Access to secretsline 15
[Credential-related source omitted] - Network accessline 21
# 通过 URL 申请(type 自动从 URL 推断) lark-cli drive +apply-permission \ --token "https://example.larksuite.com/docx/doxcnxxxxxxxxx" \ - Network accessline 22
lark-cli drive +apply-permission --token "https://example.larksuite.com/docx/doxcnxxxxxxxxx" - Network accessline 23
--token "https://example.larksuite.com/docx/doxcnxxxxxxxxx" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-batch-query-comments.md
- Network accessline 10
# 推荐:完整 URL + 评论 ID(逗号分隔或重复 --comment-ids,单次上限 100) lark-cli drive +batch-query-comments --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-ids '<id1>,<id2>' - Network accessline 11
lark-cli drive +batch-query-comments --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-ids '<id1>,<id2>'
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-comment-content.md
- Network accessline 28
{"type":"mention_user","mention_user":"ou_xxx"}, {"type":"text","text":" 看下 "}, {"type":"link","link":"https://your-tenant.feishu.cn/docx/<TOKEN>"} - Network accessline 29
{"type":"text","text":" 看下 "}, {"type":"link","link":"https://your-tenant.feishu.cn/docx/<TOKEN>"} ]' - Network accessline 30
{"type":"link","link":"https://your-tenant.feishu.cn/docx/<TOKEN>"}
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-copy.md
- Network accessline 11
# 源文档传 URL(自动识别类型和 token) lark-cli drive +copy --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --name '副本名称' --folder-token <TARGET_FOLDER_TOKEN> - Network accessline 12
lark-cli drive +copy --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --name '副本名称' --folder-token <TARGET_FOLDER_TOKEN> - Network accessline 14
# Wiki URL(自动解包底层资源后复制到 Drive) lark-cli drive +copy --url "https://example.larksuite.com/wiki/<WIKI_TOKEN>" --name '副本名称' --folder-token <TARGET_FOLDER_TOKEN> - Network accessline 15
lark-cli drive +copy --url "https://example.larksuite.com/wiki/<WIKI_TOKEN>" --name '副本名称' --folder-token <TARGET_FOLDER_TOKEN> - Network accessline 56
"file_type": "docx", "name": "副本名称", "url": "https://example.larksuite.com/docx/<new_file_token>", - Network accessline 57
[Credential-related source omitted] - Network accessline 58
"url": "https://example.larksuite.com/docx/<new_file_token>",
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-delete-reply.md
- Network accessline 10
# 先预览(--dry-run 不需要 --yes) lark-cli drive +delete-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-id '<id>' --reply-id '<id>' --dry-run - Network accessline 11
lark-cli drive +delete-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-id '<id>' --reply-id '<id>' --dry-run - Network accessline 13
# 确认后真实删除(把 --dry-run 换成 --yes) lark-cli drive +delete-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-id '<id>' --reply-id '<id>' --yes - Network accessline 14
lark-cli drive +delete-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-id '<id>' --reply-id '<id>' --yes
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-download.md
- Network accessline 17
# 直接传 URL,CLI 自动解析类型和 token lark-cli drive +download --url "https://example.feishu.cn/file/<FILE_TOKEN>" --output ./report.pdf - Network accessline 18
lark-cli drive +download --url "https://example.feishu.cn/file/<FILE_TOKEN>" --output ./report.pdf - Network accessline 20
# Wiki URL 也可直接传,CLI 会先解析到底层 obj_token/obj_type(obj_type 必须是 file) lark-cli drive +download --url "https://example.feishu.cn/wiki/<WIKI_NODE_TOKEN>" --output ./report.pdf - Network accessline 21
lark-cli drive +download --url "https://example.feishu.cn/wiki/<WIKI_NODE_TOKEN>" --output ./report.pdf - Network accessline 42
https://xxx.feishu.cn/drive/file/boxbc_xxx
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-export.md
- Network accessline 16
# 推荐:直接传 URL,CLI 自动解析类型和 token lark-cli drive +export \ --url "https://example.feishu.cn/docx/<DOCX_TOKEN>" \ - Network accessline 17
lark-cli drive +export --url "https://example.feishu.cn/docx/<DOCX_TOKEN>" - Network accessline 18
--url "https://example.feishu.cn/docx/<DOCX_TOKEN>" \ - Network accessline 21
# Wiki URL 也推荐直接传,CLI 会先解析到底层 obj_token/obj_type lark-cli drive +export \ --url "https://example.feishu.cn/wiki/<WIKI_NODE_TOKEN>" \ - Network accessline 22
lark-cli drive +export --url "https://example.feishu.cn/wiki/<WIKI_NODE_TOKEN>" - Network accessline 23
--url "https://example.feishu.cn/wiki/<WIKI_NODE_TOKEN>" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-inspect.md
- Network accessline 11
# 检视一个 docx URL lark-cli drive +inspect --url 'https://xxx.feishu.cn/docx/doxcnXXX' - Network accessline 12
lark-cli drive +inspect --url 'https://xxx.feishu.cn/docx/doxcnXXX' - Network accessline 14
# 检视一个 wiki URL(自动解包到底层文档) lark-cli drive +inspect --url 'https://xxx.feishu.cn/wiki/wikcnXXX' - Network accessline 15
lark-cli drive +inspect --url 'https://xxx.feishu.cn/wiki/wikcnXXX' - Network accessline 20
# 格式化输出 lark-cli drive +inspect --url 'https://xxx.feishu.cn/base/bascnXXX' --format pretty - Network accessline 21
lark-cli drive +inspect --url 'https://xxx.feishu.cn/base/bascnXXX' --format pretty
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-list-replies.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-member-list.md
- Network accessline 8
# URL 自动推断 type lark-cli drive +member-list \ --token 'https://example.feishu.cn/drive/folder/<folder_token>' \ - Network accessline 9
lark-cli drive +member-list --token 'https://example.feishu.cn/drive/folder/<folder_token>' - Network accessline 10
--token 'https://example.feishu.cn/drive/folder/<folder_token>' \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-permission-get-setting.md
- Network accessline 8
# 通过 URL 自动推断 type lark-cli drive +permission-get-setting \ --token 'https://example.feishu.cn/drive/folder/<folder_token>' \ - Network accessline 9
lark-cli drive +permission-get-setting --token 'https://example.feishu.cn/drive/folder/<folder_token>' - Network accessline 10
--token 'https://example.feishu.cn/drive/folder/<folder_token>' \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-preview.md
- Network accessline 23
# 推荐:直接传 URL,CLI 自动解析类型和 token lark-cli drive +preview \ --url "https://example.feishu.cn/file/<FILE_TOKEN>" \ - Network accessline 24
lark-cli drive +preview --url "https://example.feishu.cn/file/<FILE_TOKEN>" - Network accessline 25
--url "https://example.feishu.cn/file/<FILE_TOKEN>" \ - Network accessline 28
# Wiki URL 也可直接传,CLI 会先解析到底层 obj_token/obj_type(obj_type 必须是 file) lark-cli drive +preview \ --url "https://example.feishu.cn/wiki/<WIKI_NODE_TOKEN>" \ - Network accessline 29
lark-cli drive +preview --url "https://example.feishu.cn/wiki/<WIKI_NODE_TOKEN>" - Network accessline 30
--url "https://example.feishu.cn/wiki/<WIKI_NODE_TOKEN>" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-react-reply.md
- Network accessline 10
# 加 reaction lark-cli drive +react-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --reply-id '<id>' --emoji THUMBSUP --action add - Network accessline 11
lark-cli drive +react-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --reply-id '<id>' --emoji THUMBSUP --action add - Network accessline 13
# 删除自己加的 reaction:仍需传要删除的那个 --emoji lark-cli drive +react-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --reply-id '<id>' --emoji THUMBSUP --action delete - Network accessline 14
lark-cli drive +react-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --reply-id '<id>' --emoji THUMBSUP --action delete
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-resolve-comment.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-restore-comment.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-secure-label.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-task-result.md
- Network accessline 89
[Credential-related source omitted] - Network accessline 90
[Credential-related source omitted] - Network accessline 91
"url": "https://example.feishu.cn/sheets/<IMPORTED_DOC_TOKEN>", - Network accessline 216
[Credential-related source omitted] - Network accessline 217
"obj_type": "docx", "url": "https://example.feishu.cn/docx/doxcnXXX" } - Network accessline 218
"url": "https://example.feishu.cn/docx/doxcnXXX"
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-update-reply.md
- Network accessline 10
# 推荐:完整 URL + 评论 ID + 回复 ID + 新内容(整体替换,无局部编辑) lark-cli drive +update-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-id '<id>' --reply-id '<id>' --content '[{"type":"text","text":"新内容"}]' - Network accessline 11
lark-cli drive +update-reply --url "https://example.larksuite.com/docx/<DOCX_TOKEN>" --comment-id '<id>' --reply-id '<id>' --content '[{"type":"text","text":"新内容"}]'
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-update-title.md
- Network accessline 10
# 推荐:传 URL(自动识别类型和 token) lark-cli drive +update-title \ --url 'https://example.larksuite.com/docx/<DOCX_TOKEN>' \ - Network accessline 11
lark-cli drive +update-title --url 'https://example.larksuite.com/docx/<DOCX_TOKEN>' - Network accessline 12
--url 'https://example.larksuite.com/docx/<DOCX_TOKEN>' \ - Network accessline 21
# 知识库节点:传 /wiki/ URL 里的 node_token lark-cli drive +update-title \ --url 'https://example.larksuite.com/wiki/<NODE_TOKEN>' \ - Network accessline 22
lark-cli drive +update-title --url 'https://example.larksuite.com/wiki/<NODE_TOKEN>' - Network accessline 23
--url 'https://example.larksuite.com/wiki/<NODE_TOKEN>' \ - Network accessline 51
"type": "docx", "title": "<new_title>", "url": "https://example.feishu.cn/docx/<file_token>" - Network accessline 52
"title": "<new_title>", "url": "https://example.feishu.cn/docx/<file_token>" } - Network accessline 53
"url": "https://example.feishu.cn/docx/<file_token>"
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-drive/references/lark-drive-workflow-knowledge-organize-discovery.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/SKILL.md
- Access to secretsline 105
[Credential-related source omitted] - Access to secretsline 105
[Credential-related source omitted] - Access to secretsline 150
[Credential-related source omitted] - Access to secretsline 150
[Credential-related source omitted] - Access to secretsline 162
[Credential-related source omitted] - Access to secretsline 162
[Credential-related source omitted] - Access to secretsline 163
[Credential-related source omitted] - Access to secretsline 163
[Credential-related source omitted] - Access to secretsline 167
[Credential-related source omitted] - Access to secretsline 167
[Credential-related source omitted] - Access to secretsline 168
[Credential-related source omitted] - Access to secretsline 168
[Credential-related source omitted] - Access to secretsline 169
[Credential-related source omitted] - Access to secretsline 169
[Credential-related source omitted] - Access to secretsline 173
[Credential-related source omitted] - Access to secretsline 173
[Credential-related source omitted] - Access to secretsline 174
[Credential-related source omitted] - Access to secretsline 174
[Credential-related source omitted] - Access to secretsline 188
[Credential-related source omitted] - Access to secretsline 188
[Credential-related source omitted] - Access to secretsline 191
[Credential-related source omitted] - Access to secretsline 191
[Credential-related source omitted] - Access to secretsline 194
[Credential-related source omitted] - Access to secretsline 194
[Credential-related source omitted] - Access to secretsline 195
[Credential-related source omitted] - Access to secretsline 195
[Credential-related source omitted] - Access to secretsline 196
[Credential-related source omitted] - Access to secretsline 196
[Credential-related source omitted] - Access to secretsline 225
[Credential-related source omitted] - Access to secretsline 225
[Credential-related source omitted] - Access to secretsline 226
[Credential-related source omitted] - Access to secretsline 226
[Credential-related source omitted] - Access to secretsline 227
[Credential-related source omitted] - Access to secretsline 227
[Credential-related source omitted] - Access to secretsline 228
[Credential-related source omitted] - Access to secretsline 228
[Credential-related source omitted] - Access to secretsline 229
[Credential-related source omitted] - Access to secretsline 229
[Credential-related source omitted] - Access to secretsline 230
[Credential-related source omitted] - Access to secretsline 230
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/card/components/button.md
- Network accessline 46
{ "type": "callback", "value": { "key": "v" } } // 2. 跳转链接(可与 callback 同数组共存) { "type": "open_url", "default_url": "https://x", "pc_url": "", "ios_url": "", "android_url": "" } - Network accessline 48
{ "type": "open_url", "default_url": "https://x", "pc_url": "", "ios_url": "", "android_url": "" }
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/card/components/chart.md
- Network accessline 50
完整属性参考 [VChart 官方文档](https://www.visactor.io/vchart/option/barChart)。
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/card/components/markdown.md
- Network accessline 8
{ "tag": "markdown", "content": "**标题**\n正文,<font color='red'>红字</font>,[链接](https://x)" - Network accessline 9
"tag": "markdown", "content": "**标题**\n正文,<font color='red'>红字</font>,[链接](https://x)" } - Network accessline 10
"content": "**标题**\n正文,<font color='red'>红字</font>,[链接](https://x)" - Network accessline 30
| 粗 / 斜 / 删除线 | `**粗**`、`*斜*`、`~~删~~`(前后留空格更稳) | | 换行 | JSON 内 `\n`;或 `<br>` | | 文字链接 | `[文字](https://x)`(必须带 http/https) | - Network accessline 31
| 换行 | JSON 内 `\n`;或 `<br>` | | 文字链接 | `[文字](https://x)`(必须带 http/https) | | 带图标链接 | `<link icon='chat_outlined' …>文案</link>`(icon token 见 `../resource/icons.md`) | - Network accessline 32
| 文字链接 | `[文字](https://x)`(必须带 http/https) |
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/card/components/recycling_container.md
- Network accessline 7
1. 在[卡片搭建工具](https://open.feishu.cn/cardkit)中添加循环容器组件,绑定一个对象数组变量。
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/card/components/table.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/card/resource/icons.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/lark-im-chat-list.md
- Access to secretsline 95
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/lark-im-feed-groups.md
- Access to secretsline 43
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/lark-im-feed-shortcut-create.md
- Access to secretsline 40
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/lark-im-feed-shortcut-list.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/lark-im-feed-shortcut-remove.md
- Access to secretsline 35
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/lark-im-messages-reply.md
- Network accessline 50
1. Forces `msg_type=post` 2. Resolves remote Markdown images like `` - Network accessline 51
2. Resolves remote Markdown images like `` - Network accessline 73
- Already-uploaded `img_xxx` image keys are the most reliable Markdown image input. - Local paths (e.g. ``) are **not** supported directly in `--markdown` and will not be auto-uploaded. - Remote URLs (`https://...`) will be aut - Network accessline 75
- Remote URLs (`https://...`) will be auto-downloaded and uploaded at runtime; if the download or upload fails, the image is removed with a warning. - Network accessline 174
- Media flags accept an existing key (`img_xxx` / `file_xxx`), an `http://` or `https://` URL, or a local file path.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/lark-im-messages-send.md
- Network accessline 51
1. Forces `msg_type=post` 2. Resolves remote Markdown images like `` by downloading and uploading them first - Network accessline 52
2. Resolves remote Markdown images like `` by downloading and uploading them first - Network accessline 74
- Already-uploaded `img_xxx` image keys are the most reliable Markdown image input. - Local paths in Markdown image syntax like `` are **not** supported and will not be auto-uploaded. - Remote URLs (`https://...`) will be auto- - Network accessline 76
- Remote URLs (`https://...`) will be auto-downloaded and uploaded at runtime; if the download or upload fails, the image is removed with a warning. - Network accessline 178
- Media flags accept an existing key (`img_xxx` / `file_xxx`), an `http://` or `https://` URL, or a local file path.
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-im/references/lark-im-reactions.md
- Network accessline 264
- Source page: `https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message-reaction/emojis-introduce` - Network accessline 265
- Markdown source: `https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message-reaction/emojis-introduce.md` - Network accessline 297
- [lark-im](../SKILL.md) - all IM commands - [lark-shared](../../lark-shared/SKILL.md) - authentication and global parameters - Official emoji doc: `https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message-reaction/emoj - Network accessline 299
- Official emoji doc: `https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message-reaction/emojis-introduce`
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-shared/references/lark-wiki-token-routing.md
- Network accessline 13
lark-cli drive +inspect --url 'https://xxx.feishu.cn/wiki/<wiki_token>' - Network accessline 13
lark-cli drive +inspect --url 'https://xxx.feishu.cn/wiki/<wiki_token>' - Network accessline 13
lark-cli drive +inspect --url 'https://xxx.feishu.cn/wiki/<wiki_token>' - Network accessline 23
lark-cli wiki +node-get --node-token 'https://xxx.feishu.cn/wiki/<wiki_token>' --format json - Network accessline 23
lark-cli wiki +node-get --node-token 'https://xxx.feishu.cn/wiki/<wiki_token>' --format json - Network accessline 23
lark-cli wiki +node-get --node-token 'https://xxx.feishu.cn/wiki/<wiki_token>' --format json
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/SKILL.md
- Network accessline 108
# 统一调用范式:两组定位缺一不可(占位符别原样填;表名先 +workbook-info 查) lark-cli sheets +csv-get --url "https://.../sheets/shtXXX" --sheet-name "<真实表名>" --range "A1:F30" - Network accessline 108
# 统一调用范式:两组定位缺一不可(占位符别原样填;表名先 +workbook-info 查) lark-cli sheets +csv-get --url "https://.../sheets/shtXXX" --sheet-name "<真实表名>" --range "A1:F30" - Network accessline 108
# 统一调用范式:两组定位缺一不可(占位符别原样填;表名先 +workbook-info 查) lark-cli sheets +csv-get --url "https://.../sheets/shtXXX" --sheet-name "<真实表名>" --range "A1:F30" - Network accessline 109
lark-cli sheets +csv-get --url "https://.../sheets/shtXXX" --sheet-name "<真实表名>" --range "A1:F30" - Network accessline 109
lark-cli sheets +csv-get --url "https://.../sheets/shtXXX" --sheet-name "<真实表名>" --range "A1:F30" - Network accessline 109
lark-cli sheets +csv-get --url "https://.../sheets/shtXXX" --sheet-name "<真实表名>" --range "A1:F30"
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-batch-update.md
- Network accessline 166
lark-cli sheets +batch-update --url "https://example.feishu.cn/sheets/shtXXX" --yes \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-changeset.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-chart.md
- Network accessline 489
# dry-run 先看会删什么(sheet 定位必填) lark-cli sheets +chart-delete --url "https://example.feishu.cn/sheets/shtXXX" --sheet-id "$SID" \ - Network accessline 490
lark-cli sheets +chart-delete --url "https://example.feishu.cn/sheets/shtXXX" --sheet-id "$SID" \ - Network accessline 493
# 真正执行 lark-cli sheets +chart-delete --url "https://example.feishu.cn/sheets/shtXXX" --sheet-id "$SID" \ - Network accessline 494
lark-cli sheets +chart-delete --url "https://example.feishu.cn/sheets/shtXXX" --sheet-id "$SID" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-float-image.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-history.md
- Network accessline 71
# 列出某张电子表格的最新一页历史版本 lark-cli sheets +history-list --url "https://sample.feishu.cn/sheets/SHTxxxxxx" - Network accessline 72
lark-cli sheets +history-list --url "https://sample.feishu.cn/sheets/SHTxxxxxx" - Network accessline 77
# 翻到下一页:把上次响应里的 next_end_version 作为 --end-version 传入 lark-cli sheets +history-list --url "https://sample.feishu.cn/sheets/SHTxxxxxx" --end-version 12345 - Network accessline 78
lark-cli sheets +history-list --url "https://sample.feishu.cn/sheets/SHTxxxxxx" --end-version 12345 - Network accessline 84
# 回滚到指定历史版本(异步受理)。high-risk-write:先 --dry-run 预览并获用户同意,再带 --yes 执行(不带 --yes 以 exit 10 拒绝) lark-cli sheets +history-revert --url "https://sample.feishu.cn/sheets/SHTxxxxxx" --history-version-id "<id-from-history-list>" --yes - Network accessline 85
lark-cli sheets +history-revert --url "https://sample.feishu.cn/sheets/SHTxxxxxx" --history-version-id "<id-from-history-list>" --yes - Network accessline 91
# 查询某次回滚的当前状态(进行中 / 成功 / 失败) lark-cli sheets +history-revert-status --url "https://sample.feishu.cn/sheets/SHTxxxxxx" --transaction-id "<transaction-id-from-history-revert>" - Network accessline 92
lark-cli sheets +history-revert-status --url "https://sample.feishu.cn/sheets/SHTxxxxxx" --transaction-id "<transaction-id-from-history-revert>"
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-range-operations.md
- Dangerous shell operationline 223
> **删不掉嵌入对象**:`+cells-clear`(任何 `--scope`,含 `all`)只清单元格的值 / 格式,**删不掉**压在范围内的透视表 / 图表等嵌入对象——后端会报 `can not find embedded block`。删透视表用 `+pivot-delete`、删图表用 `+chart-delete`(先用 `+pivot-list` / `+chart-list` 拿对象 id)。
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-read-data.md
- Network accessline 217
# 简单读(sheet 定位必填:--sheet-name 或 --sheet-id 必给一个;range 的 Sheet1! 前缀不能替代它) lark-cli sheets +csv-get --url "https://example.feishu.cn/sheets/shtXXX" --sheet-name "Sheet1" --range "A1:F30" - Network accessline 218
lark-cli sheets +csv-get --url "https://example.feishu.cn/sheets/shtXXX" --sheet-name "Sheet1" --range "A1:F30" - Network accessline 244
# 读 A1:F10 的公式 + 样式(sheet 定位必填) lark-cli sheets +cells-get --url "https://example.feishu.cn/sheets/shtXXX" --sheet-name "Sheet1" \ - Network accessline 245
lark-cli sheets +cells-get --url "https://example.feishu.cn/sheets/shtXXX" --sheet-name "Sheet1" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-search-replace.md
- Network accessline 74
# 普通查找 lark-cli sheets +cells-search --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 75
lark-cli sheets +cells-search --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 94
# 先 dry-run 预览 lark-cli sheets +cells-replace --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 95
lark-cli sheets +cells-replace --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 98
# 确认后执行 lark-cli sheets +cells-replace --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 99
lark-cli sheets +cells-replace --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 102
# 正则捕获组:把 "2026-03" 重排成 "03/2026"($1/$2 引用 --find 的捕获组) lark-cli sheets +cells-replace --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 103
lark-cli sheets +cells-replace --url "https://example.feishu.cn/sheets/shtXXX" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-sheet-structure.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-styles-put.md
- Network accessline 63
lark-cli sheets +styles-put --url "https://example.feishu.cn/sheets/shtXXX" --styles - <<'JSON'
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-workbook.md
- Network accessline 360
# 1) 只创建并轮询导出任务,不下载(默认):返回 file_token / status 便于稍后续传 lark-cli sheets +workbook-export --url "https://example.feishu.cn/sheets/shtXXX" - Network accessline 361
lark-cli sheets +workbook-export --url "https://example.feishu.cn/sheets/shtXXX" - Network accessline 382
lark-cli sheets +sheet-create --url "https://example.feishu.cn/sheets/shtXXX" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/references/lark-sheets-write-cells.md
- Network accessline 185
- **超链接(带显示文本)**:`{"type":"link","text":"飞书","link":"https://www.feishu.cn"}`。纯 URL 不需要 `rich_text`,直接写普通字符串即可。 - Network accessline 247
lark-cli sheets +dropdown-set \ --url https://... --sheet-id <id> \ - Network accessline 248
--url https://... --sheet-id <id> \ - Network accessline 256
lark-cli sheets +dropdown-set \ --url https://... --sheet-id <id> \ - Network accessline 257
--url https://... --sheet-id <id> \ - Network accessline 266
lark-cli sheets +dropdown-set \ --url https://... --sheet-id <id> \ - Network accessline 267
--url https://... --sheet-id <id> \ - Network accessline 275
lark-cli sheets +dropdown-set \ --url https://... --sheet-id <id> \ - Network accessline 276
--url https://... --sheet-id <id> \ - Network accessline 469
# 纯值(数组形态);默认即覆盖非空 cell,无需显式传 --allow-overwrite lark-cli sheets +cells-set --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 470
lark-cli sheets +cells-set --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 514
# 内联 CSV lark-cli sheets +csv-put --url "https://example.feishu.cn/sheets/shtXXX" \ - Network accessline 515
lark-cli sheets +csv-put --url "https://example.feishu.cn/sheets/shtXXX" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_chart_quality_check.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_chart_size_advisor.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_chart_size_rules.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_detect_subtables.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_inspect_workbook.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_profile_table.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_sheet_range.py
- Executable scriptline 1
Executable file
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_sheet_read_cli.py
- Executable scriptline 1
Executable file
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-sheets/scripts/lark_sheets_df.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-task/SKILL.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-task/references/lark-task-complete.md
- Network accessline 13
# A task applink is accepted directly; the CLI extracts its guid query value lark-cli task +complete --task-id "https://applink.larksuite.com/client/todo/task?guid=<task_guid>" - Network accessline 14
lark-cli task +complete --task-id "https://applink.larksuite.com/client/todo/task?guid=<task_guid>"
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-task/references/lark-task-create.md
- Network accessline 11
lark-cli task +create --summary "Quarterly Sales Review" --description "Review the sales performance for the last quarter." --assignee "ou_xxx" --due "2026-03-25" --tasklist-id "https://applink.larkoffice.com/client/todo/task - Network accessline 14
--assignee "ou_xxx" \ --due "2026-03-25" \ --tasklist-id "https://applink.larkoffice.com/client/todo/task_list?guid=a4b00000-000-000-000-00000000036c" - Network accessline 16
--tasklist-id "https://applink.larkoffice.com/client/todo/task_list?guid=a4b00000-000-000-000-00000000036c" - Network accessline 68
"data": { "guid": "e297d3d0-4b60-4a5f-a4d4-xxxxxxxxxxxx", "url": "https://applink.larkoffice.com/client/todo/detail?guid=e297d3d0-4b60-4a5f-a4d4-xxxxxxxxxxxx" - Network accessline 69
"guid": "e297d3d0-4b60-4a5f-a4d4-xxxxxxxxxxxx", "url": "https://applink.larkoffice.com/client/todo/detail?guid=e297d3d0-4b60-4a5f-a4d4-xxxxxxxxxxxx" } - Network accessline 70
"url": "https://applink.larkoffice.com/client/todo/detail?guid=e297d3d0-4b60-4a5f-a4d4-xxxxxxxxxxxx"
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-task/references/lark-task-update.md
- Network accessline 16
# A task applink is accepted directly; the CLI extracts its guid query value lark-cli task +update --task-id "https://applink.larksuite.com/client/todo/task?guid=<task_guid>" --summary "New Summary" - Network accessline 17
lark-cli task +update --task-id "https://applink.larksuite.com/client/todo/task?guid=<task_guid>" --summary "New Summary"
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-task/references/lark-task-upload-attachment.md
- Network accessline 15
# Pass a Feishu task applink instead of a raw guid — the guid is extracted automatically lark-cli task +upload-attachment \ --resource-id "https://applink.feishu.cn/client/todo/task?guid=<task_guid>" \ - Network accessline 16
lark-cli task +upload-attachment --resource-id "https://applink.feishu.cn/client/todo/task?guid=<task_guid>" - Network accessline 17
--resource-id "https://applink.feishu.cn/client/todo/task?guid=<task_guid>" \
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-wiki/SKILL.md
- Access to secretsline 17
[Credential-related source omitted] - Access to secretsline 17
[Credential-related source omitted] - Network accessline 35
- 命中 0 条:停下来问用户是名称拼错了还是调用方无权限;**不要**自行改名字重试。 - 用户明确选定后再执行 `lark-cli wiki +delete-space --space-id <ID> --yes`(高风险写操作,必须显式 `--yes`)。 - 反例:不要把 wiki URL / 名称直接当 `--space-id`(如 `--space-id "https://.../wiki/<wiki_token>"`);务必先用 `wiki +node- - Network accessline 35
- 命中 0 条:停下来问用户是名称拼错了还是调用方无权限;**不要**自行改名字重试。 - 用户明确选定后再执行 `lark-cli wiki +delete-space --space-id <ID> --yes`(高风险写操作,必须显式 `--yes`)。 - 反例:不要把 wiki URL / 名称直接当 `--space-id`(如 `--space-id "https://.../wiki/<wiki_token>"`);务必先用 `wiki +node- - Network accessline 36
- 用户明确选定后再执行 `lark-cli wiki +delete-space --space-id <ID> --yes`(高风险写操作,必须显式 `--yes`)。 - 反例:不要把 wiki URL / 名称直接当 `--space-id`(如 `--space-id "https://.../wiki/<wiki_token>"`);务必先用 `wiki +node-get` 解析出 `data.space_id` 再传。 - 用户要在知识库中创建新节点,优先 - Network accessline 36
- 用户明确选定后再执行 `lark-cli wiki +delete-space --space-id <ID> --yes`(高风险写操作,必须显式 `--yes`)。 - 反例:不要把 wiki URL / 名称直接当 `--space-id`(如 `--space-id "https://.../wiki/<wiki_token>"`);务必先用 `wiki +node-get` 解析出 `data.space_id` 再传。 - 用户要在知识库中创建新节点,优先 - Network accessline 37
- 反例:不要把 wiki URL / 名称直接当 `--space-id`(如 `--space-id "https://.../wiki/<wiki_token>"`);务必先用 `wiki +node-get` 解析出 `data.space_id` 再传。 - Network accessline 37
- 反例:不要把 wiki URL / 名称直接当 `--space-id`(如 `--space-id "https://.../wiki/<wiki_token>"`);务必先用 `wiki +node-get` 解析出 `data.space_id` 再传。
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-wiki/references/lark-wiki-member-list.md
- Network accessline 32
| `--space-id` | string | **Yes** | — | Wiki space ID; use `my_library` for the personal document library (user only) | | `--page-size` | int | No | 50 | Page size, 1-50 | | `--page-token` | string | No | — | Page cursor; implies single-pag - Network accessline 33
| `--page-size` | int | No | 50 | Page size, 1-50 | | `--page-token` | string | No | — | Page cursor; implies single-page fetch (no auto-pagination) | | `--page-all` | bool | No | `false` | Automatically paginate through all pages (capped b - Network accessline 34
| `--page-token` | string | No | — | Page cursor; implies single-page fetch (no auto-pagination) | - Network accessline 66
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-wiki/references/lark-wiki-move-to-drive.md
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-wiki/references/lark-wiki-node-get.md
- Network accessline 17
| Flag | Type | Required | Default | Description | |------|------|----------|---------|-------------| | `--node-token` | string | **Yes** | — | `node_token`, cloud-doc `obj_token`, or a Lark URL embedding one (e.g. `https://feishu.cn/wiki/< - Network accessline 18
|------|------|----------|---------|-------------| | `--node-token` | string | **Yes** | — | `node_token`, cloud-doc `obj_token`, or a Lark URL embedding one (e.g. `https://feishu.cn/wiki/<token>` or `https://feishu.cn/docx/<token>`). Match - Network accessline 19
| `--node-token` | string | **Yes** | — | `node_token`, cloud-doc `obj_token`, or a Lark URL embedding one (e.g. `https://feishu.cn/wiki/<token>` or `https://feishu.cn/docx/<token>`). Matches the `--node-token` naming used by sibling `+node
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-wiki/references/lark-wiki-node-list.md
- Network accessline 14
# Drill with a wiki URL (CLI normalizes /wiki/<token> to node_token) lark-cli wiki +node-list --space-id <SPACE_ID> --parent-node-token "https://feishu.cn/wiki/wikcn_xxx" - Network accessline 15
lark-cli wiki +node-list --space-id <SPACE_ID> --parent-node-token "https://feishu.cn/wiki/wikcn_xxx" - Network accessline 38
| `--parent-node-token` | string | No | — | Parent wiki node token, or a `/wiki/<token>` URL; omit to list the space root | | `--page-size` | int | No | 50 | Page size, 1-50 | | `--page-token` | string | No | — | Page cursor; implies single - Network accessline 39
| `--page-size` | int | No | 50 | Page size, 1-50 | | `--page-token` | string | No | — | Page cursor; implies single-page fetch (no auto-pagination) | | `--page-all` | bool | No | `false` | Automatically paginate through all pages (capped b - Network accessline 40
| `--page-token` | string | No | — | Page cursor; implies single-page fetch (no auto-pagination) | - Network accessline 71
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/lark-skills/lark-wiki/references/lark-wiki-space-list.md
- Network accessline 28
|------|------|---------|-------------| | `--page-size` | int | 50 | Page size, 1-50 | | `--page-token` | string | — | Page cursor; implies single-page fetch (no auto-pagination) | - Network accessline 29
| `--page-size` | int | 50 | Page size, 1-50 | | `--page-token` | string | — | Page cursor; implies single-page fetch (no auto-pagination) | | `--page-all` | bool | `false` | Automatically paginate through all pages (capped by `--page-limit - Network accessline 30
| `--page-token` | string | — | Page cursor; implies single-page fetch (no auto-pagination) | - Network accessline 59
[Credential-related source omitted]
pinvou3-app/src-tauri/resources/common/bundle/tmeet-skills/tmeet-skill/references/tmeet-app.md
- Network accessline 48
# 开启会中展示:设置 homepage tmeet app set --homepage "https://example.com/app" - Network accessline 49
tmeet app set --homepage "https://example.com/app" - Network accessline 60
# 同时修改多项 tmeet app set --homepage "https://example.com/app" --sdk-name "我的 CLI 助手" --layout-style wide_sidebar - Network accessline 61
tmeet app set --homepage "https://example.com/app" --sdk-name "我的 CLI 助手" --layout-style wide_sidebar - Network accessline 66
| 参数 | 类型 | 必填 | 默认值 | 说明 | |------|------|:----:|--------|------| | `--homepage` | string | 三选一 | — | 应用主页 URL。**非空**:会中下发并展示当前 CLI 应用,用户点击后打开该 URL;**空字符串(`""`)**:会中不再下发当前 CLI 应用。非空时**必须为 `http://` 或 `https://` 开头的合法 URL**;`https://` 时该地址需 - Network accessline 67
|------|------|:----:|--------|------| | `--homepage` | string | 三选一 | — | 应用主页 URL。**非空**:会中下发并展示当前 CLI 应用,用户点击后打开该 URL;**空字符串(`""`)**:会中不再下发当前 CLI 应用。非空时**必须为 `http://` 或 `https://` 开头的合法 URL**;`https://` 时该地址需拥有**被本机信任**的 SSL/TLS 证书,否则会中 - Network accessline 68
| `--homepage` | string | 三选一 | — | 应用主页 URL。**非空**:会中下发并展示当前 CLI 应用,用户点击后打开该 URL;**空字符串(`""`)**:会中不再下发当前 CLI 应用。非空时**必须为 `http://` 或 `https://` 开头的合法 URL**;`https://` 时该地址需拥有**被本机信任**的 SSL/TLS 证书,否则会中打开会被拦截。**协议选择须遵循[调用准则](#调用准则)中的协议选择判定表* - Network accessline 77
- 若用户表述为"关闭 / 隐藏 / 不再显示 CLI 应用",应使用 `--homepage ""`; - 若用户表述为"打开 / 展示 / 让 CLI 应用出现在会中",应确认用户提供的具体 URL 再调用;用户未提供 URL 时**不得自行填充默认值**。 - **URL 合法性校验**:`--homepage` 非空时必须是 `http://` 或 `https://` 开头的合法 URL。若用户提供的是其它非法格式(例如缺失 scheme、`ftp://` 等) - Network accessline 78
- 若用户表述为"打开 / 展示 / 让 CLI 应用出现在会中",应确认用户提供的具体 URL 再调用;用户未提供 URL 时**不得自行填充默认值**。 - **URL 合法性校验**:`--homepage` 非空时必须是 `http://` 或 `https://` 开头的合法 URL。若用户提供的是其它非法格式(例如缺失 scheme、`ftp://` 等),先提示用户修正,不要直接透传导致命令报错。 - **协议选择判定表(`http://` 与 `https:/ - Network accessline 79
- **URL 合法性校验**:`--homepage` 非空时必须是 `http://` 或 `https://` 开头的合法 URL。若用户提供的是其它非法格式(例如缺失 scheme、`ftp://` 等),先提示用户修正,不要直接透传导致命令报错。 - Network accessline 80
- **协议选择判定表(`http://` 与 `https://`)**:腾讯会议客户端 **3.45.10 之前的版本不支持打开 `http://` 页面,仅支持 `https://`**;3.45.10 及以后版本两者均支持。按下表逐项判定,**不得跳过**: - Network accessline 82
| 用户提供的 URL | 是否已确认目标用户客户端版本 ≥ 3.45.10 | 处理 | |---|:---:|---| | `https://...` | 无需判定 | 直接调用 `tmeet app set` | - Network accessline 83
|---|:---:|---| | `https://...` | 无需判定 | 直接调用 `tmeet app set` | | `http://...` | 已确认(用户本轮明确回复版本号 ≥ 3.45.10) | 直接调用 `tmeet app set` | - Network accessline 84
| `https://...` | 无需判定 | 直接调用 `tmeet app set` | - Network accessline 85
| `http://...` | 已确认(用户本轮明确回复版本号 ≥ 3.45.10) | 直接调用 `tmeet app set` | - Network accessline 86
| `http://...` | 未确认 / 不知道 / 用户只说"应该是新版" | **必须先向用户询问客户端版本号**(如"请在腾讯会议客户端『关于我们』中查看版本号"),得到明确版本号后再调用;**不得**因用户口头保证"是新版"而跳过确认 | - Network accessline 87
| `http://...` | 已确认 < 3.45.10 | 告知用户该版本客户端不支持 `http://`,请其提供 `https://` 地址或升级客户端后再重试;**不得**直接调用 `tmeet app set` | - Network accessline 89
即便用户表示"我这边就是新版"、"应该没问题",只要未拿到明确版本号,仍按"未确认"处理,不得自我说服跳过询问。 - **选用 `https://` 时的证书要求**:`--homepage` 指向的 `https://` 地址必须拥有**被本机信任**的 SSL/TLS 证书;使用默认自签或无证书时,会中打开会被安全策略拦截。**Agent 不代替用户选择或签发证书方案**(涉及操作系统、本地服务框架、企业策略等差异),若用户询问方案可提示常见方向(如 `mkcert`、企 - Network accessline 90
- **选用 `https://` 时的证书要求**:`--homepage` 指向的 `https://` 地址必须拥有**被本机信任**的 SSL/TLS 证书;使用默认自签或无证书时,会中打开会被安全策略拦截。**Agent 不代替用户选择或签发证书方案**(涉及操作系统、本地服务框架、企业策略等差异),若用户询问方案可提示常见方向(如 `mkcert`、企业内部 CA、反向代理挂已有证书等),并建议以对应工具的官方文档为准。 - Network accessline 125
|---------|------|---------| | `at least one of the flags ... must be used` | `set` 命令未提供任一参数 | 至少提供 `--homepage` / `--sdk-name` / `--layout-style` 之一 | | URL 校验失败 | `--homepage` 非空但不是 `http://` / `https://` 开头的合法 URL | 修正为 `http://` 或 `htt - Network accessline 126
| `at least one of the flags ... must be used` | `set` 命令未提供任一参数 | 至少提供 `--homepage` / `--sdk-name` / `--layout-style` 之一 | | URL 校验失败 | `--homepage` 非空但不是 `http://` / `https://` 开头的合法 URL | 修正为 `http://` 或 `https://` 开头的合法 URL,或用 `""` 关闭展示 - Network accessline 127
| URL 校验失败 | `--homepage` 非空但不是 `http://` / `https://` 开头的合法 URL | 修正为 `http://` 或 `https://` 开头的合法 URL,或用 `""` 关闭展示 | - Network accessline 128
| 会中点击应用后页面无法打开 / 白屏(`http://` 地址) | 目标用户腾讯会议客户端版本 < 3.45.10,不支持打开 `http://` 页面 | 让用户升级到 3.45.10 或更高版本;或改用 `https://` 地址后重新 `tmeet app set --homepage` | - Network accessline 129
| `character limit exceeded` | `--homepage` 超过 200 个字符 | 缩短 URL 至 200 字符以内后重试 | | `character width limit exceeded` | `--sdk-name` 显示宽度超过 20(ASCII 计 1,非 ASCII 计 2) | 缩短名称至宽度 20 以内后重试 | | 会中点击应用后页面被拦截 / 白屏(`https://` 地址) | 该 `https://` 地址的 SS - Network accessline 130
| `character width limit exceeded` | `--sdk-name` 显示宽度超过 20(ASCII 计 1,非 ASCII 计 2) | 缩短名称至宽度 20 以内后重试 | | 会中点击应用后页面被拦截 / 白屏(`https://` 地址) | 该 `https://` 地址的 SSL/TLS 证书未被本机信任(默认自签或无证书) | 让用户使该地址的证书被本机信任后重试;仍不生效请 `tmeet tshoot` 反馈 | | 错误码 `5 - Network accessline 131
| 会中点击应用后页面被拦截 / 白屏(`https://` 地址) | 该 `https://` 地址的 SSL/TLS 证书未被本机信任(默认自签或无证书) | 让用户使该地址的证书被本机信任后重试;仍不生效请 `tmeet tshoot` 反馈 |
pinvou3-app/src-tauri/resources/common/bundle/tmeet-skills/tmeet-skill/references/tmeet-auth.md
pinvou3-app/src-tauri/resources/common/bundle/tmeet-skills/tmeet-skill/scripts/agent_init.py
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-disk/SKILL.md
- Network accessline 46
|---|---| | 明确提"微盘 / 网盘 / disk / Wecom 网盘" | 本 skill | | 提供 `https://drive.weixin.qq.com/s?k=...` 链接(微盘分享 URL) | 本 skill(作为 `get` / `download` 的 `url` 入参) | - Network accessline 47
| 明确提"微盘 / 网盘 / disk / Wecom 网盘" | 本 skill | | 提供 `https://drive.weixin.qq.com/s?k=...` 链接(微盘分享 URL) | 本 skill(作为 `get` / `download` 的 `url` 入参) | | 提供 `https://doc.weixin.qq.com/<doc\|sheet\|smartsheet\|smartpage>/...` 链接 | 对应 `wecomcli-do - Network accessline 48
| 提供 `https://drive.weixin.qq.com/s?k=...` 链接(微盘分享 URL) | 本 skill(作为 `get` / `download` 的 `url` 入参) | - Network accessline 49
| 提供 `https://doc.weixin.qq.com/<doc\|sheet\|smartsheet\|smartpage>/...` 链接 | 对应 `wecomcli-doc` / `wecomcli-sheet` / `wecomcli-smartsheet` / `wecomcli-smartpage` | - Network accessline 183
|---|---|:----:|---|---| | `file_id` | string | 二选一 | — | 文件 ID;与 `url` 二选一;同时提供时优先使用 `file_id` | | `url` | string | 二选一 | — | 微盘文件分享 URL(形如 `https://drive.weixin.qq.com/s?k=AJEAIQdfAAoN4N17GM`);与 `file_id` 二选一 | - Network accessline 185
| `url` | string | 二选一 | — | 微盘文件分享 URL(形如 `https://drive.weixin.qq.com/s?k=AJEAIQdfAAoN4N17GM`);与 `file_id` 二选一 | - Network accessline 296
- **仅适用于离线二进制文件**:只有 `type=file`(对应 `file_types` 中的 `offline_word` / `offline_excel` / `offline_ppt` / `offline_pdf` / `image` / `videoaudio` / `design`)才能通过本接口下载到本地。 - **在线文档形态一律不走下载**:若搜索返回的 `type` 是 `smartsheet` / `smartpage` / `sheet` / - Network accessline 298
- **URL 形态识别**:只有 `https://drive.weixin.qq.com/s?k=...` 是微盘文件分享 URL,可作为 `url` 参数;`https://doc.weixin.qq.com/...` / `https://page.weixin.qq.com/...` 都是在线文档链接,禁止传入本接口。 - Network accessline 364
- **上传素材来源约束**:`upload` 的 `file_content_media` 与 `file_path` 二选一,两者必须提供其一,不能同时传。`file_content_media` 必须是合法的 `media_id`(前缀 `mc`),禁止自行构造或猜测;`file_path` 只能是用户明确给出或前置技能返回的**真实本地文件路径**,禁止编造。两者都没有时用自然语言追问,禁止靠搜索/幻觉凑一个文件。 - **搜索必须有界**:一组条件搜完必要时再调整一 - Network accessline 365
- **搜索必须有界**:一组条件搜完必要时再调整一次;2~3 轮仍无结果就停下来如实告知用户"未搜到",并请用户提供更准确的关键词/文件类型/创建者,禁止无限换关键词硬搜。 - **CLI 报错原样转达**:命令返回明确错误码时如实告知用户并给替代建议,禁止用 curl / python 等通用手段绕过 CLI 强行完成。 - **内部 ID 不外露**:`creator_userid` / `space_id` / `folder_id` / `file_id` / `d - Network accessline 366
- **CLI 报错原样转达**:命令返回明确错误码时如实告知用户并给替代建议,禁止用 curl / python 等通用手段绕过 CLI 强行完成。
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-doc/SKILL.md
- Network accessline 32
- 用户说"创建文档 / 写文档 / 整理成文档" 且未指定 doc 类型 → 改用 `wecomcli-smartpage`(智能文档为默认) - 用户给的链接是 `https://doc.weixin.qq.com/smartpage/...` 或者 `https://page.weixin.qq.com/smartpage/...` → 改用 `wecomcli-smartpage` - Network accessline 33
- 用户给的链接是 `https://doc.weixin.qq.com/smartpage/...` 或者 `https://page.weixin.qq.com/smartpage/...` → 改用 `wecomcli-smartpage` - Network accessline 138
1. 从文档链接提取(优先):用户提供了企微文档 URL 时,直接从 URL 中解析。URL 格式为 `https://doc.weixin.qq.com/<type>/<docid>?scode=...`,取 `/<type>/` 后、`?` 前的部分即为 docid。
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-doc/scripts/build_docx.py
- Executable scriptline 1
Executable file
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-email/references/get-mail.md
- Network accessline 136
- `inline_images` 和/或 `attachments` 数组为空或不存在 - 但正文 Markdown 中包含指向 `work.weixin.qq.com/filepreview/security/...` 的 URL: - **图片**:`` 形式 - Network accessline 137
- 但正文 Markdown 中包含指向 `work.weixin.qq.com/filepreview/security/...` 的 URL: - **图片**:`` 形式 - **附件**:`[文件名](https://work.weixin.qq.com/filepreview/security/s?k=...)` 形式的链接,链接文本包含文 - Network accessline 138
- **图片**:`` 形式 - Network accessline 139
- **附件**:`[文件名](https://work.weixin.qq.com/filepreview/security/s?k=...)` 形式的链接,链接文本包含文件名和文件大小
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-media/SKILL.md
- Network accessline 88
- **不做内容解析**:本 skill 只负责文件的下载落地与上传,`download` 拿到 `file_path` 后如需查看内容,直接通过 `file_path` 读取,不在本 skill 职责范围内。 - **内部 ID 不外露**:`media_id` 仅用于后续接口调用,禁止直接展示给用户;下载后的本地 `file_path` 同样不展示给用户。 - **CLI 报错原样转达**:命令返回明确错误码时如实告知用户并给替代建议,禁止用 curl / python - Network accessline 90
- **CLI 报错原样转达**:命令返回明确错误码时如实告知用户并给替代建议,禁止用 curl / python 等通用手段绕过 CLI 强行完成。
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-meeting/references/meeting-list.md
- Network accessline 112
| `meetings[].notes[].note_content` | 智能纪要文字内容(每个媒体房间一条,最多 10 条) | | `meetings[].notes[].todo_content` | 智能纪要待办内容 - Network accessline 113
| `meetings[].notes[].todo_content` | 智能纪要待办内容 | | `meetings[].note_url` - Network accessline 114
| `meetings[].note_url` | 会议智能纪要 URL(如 `"https://xxx"`)。**仅当用户明确询问会议链接 / 纪要链接时才展示**,其余情况不主动输出;**只要展示链接,就必须用 markdown 跳转链接格式 `[会议主题](链接)`**,`[]` 内放该会议主题(`subject`,如 `[产品评审周会](https://xxx)`),禁止裸贴 URL、 - Network accessline 115
| `meetings[].has_note_permission` | 是否有会议纪要权限 | | `meetings[].record_url` - Network accessline 116
| `meetings[].record_url` | 会议录制地址 URL(如 `"https://xxx"`)。**仅当用户明确询问录制链接 / 回放链接时才展示**,其余情况不主动输出;**只要展示链接,就必须用 markdown 跳转链接格式 `[会议主题](链接)`**,`[]` 内放该会议主题(`subject`,如 `[产品评审周会](https://xxx)`),禁止裸贴 URL、 - Network accessline 129
- **链接展示格式(`note_url` 会议纪要链接、`record_url` 会议录制链接)[CRITICAL]**: - **默认不展示**:`note_url` 仅当用户明确询问会议链接 / 纪要链接时才输出;`record_url` 仅当用户明确询问录制链接 / 回放链接时才输出;其余情况一律不主动输出。 - **展示格式强约束**:**只要要展示这两类链接,就必须用 markdown 跳转链接格式 `[会议主题](链接)`**——`[]` 内放该会议主题 - Network accessline 130
- **默认不展示**:`note_url` 仅当用户明确询问会议链接 / 纪要链接时才输出;`record_url` 仅当用户明确询问录制链接 / 回放链接时才输出;其余情况一律不主动输出。 - **展示格式强约束**:**只要要展示这两类链接,就必须用 markdown 跳转链接格式 `[会议主题](链接)`**——`[]` 内放该会议主题(`subject`),`()` 内放对应 URL,如 `[产品评审周会](https://xxx)`。 - **严禁**:直 - Network accessline 131
- **展示格式强约束**:**只要要展示这两类链接,就必须用 markdown 跳转链接格式 `[会议主题](链接)`**——`[]` 内放该会议主题(`subject`),`()` 内放对应 URL,如 `[产品评审周会](https://xxx)`。
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-message/SKILL.md
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-pptx/references/component-hyperlink.md
- Network accessline 12
| 形式 | 示例 | | :--- | :--- | | 外链 | `https://docs.qq.com` / `http://...` | - Network accessline 13
| :--- | :--- | | 外链 | `https://docs.qq.com` / `http://...` | | 邮件 | `mailto:foo@bar.com` | - Network accessline 14
| 外链 | `https://docs.qq.com` / `http://...` | - Network accessline 26
<Text href="https://docs.qq.com" style={{ color: '#2563EB', textDecoration: 'underline' }}> - Network accessline 40
<Picture src="hero_1" href="https://example.com" style={{ width: 400 }} />
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-pptx/references/component-image.md
- Network accessline 15
<Image src="https://...(上传口返回的 url)" style={{ width: 400, borderRadius: 12 }} /> - Network accessline 19
<Image src="https://...(上传口返回的 url)" - Network accessline 20
src="https://...(上传口返回的 url)" - Network accessline 81
<Image src="https://...(上传口返回的 url)" style={{ width: 400, height: 225, objectFit: 'cover' }} />
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-pptx/references/component-qrcode.md
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-pptx/references/pptx-api.md
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-pptx/scripts/doc_image_extractor.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-pptx/scripts/pptx2image.py
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-sheet/SKILL.md
- Network accessline 25
- 搜索文档 / 修改文档权限 / 重命名 / 加成员 → 改用 `wecomcli-doc-manage` - 用户给的链接是 `https://doc.weixin.qq.com/smartsheet/...` → 改用 `wecomcli-smartsheet` - Network accessline 26
- 用户给的链接是 `https://doc.weixin.qq.com/smartsheet/...` → 改用 `wecomcli-smartsheet` - Network accessline 142
1. 从文档链接提取(优先):用户提供了企微文档 URL 时,直接从 URL 中解析。URL 格式为 `https://doc.weixin.qq.com/<type>/<docid>?scode=...`,取 `/<type>/` 后、`?` 前的部分即为 docid。
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartpage/SKILL.md
- Network accessline 134
| 状态 | 域名 | `docid` 前缀 | 示例 | | --- | --- | --- | --- | | 编辑态(可读写) | `doc.weixin.qq.com` | `a1_` | `https://doc.weixin.qq.com/smartpage/<doc_id>?scode=<scode>` | - Network accessline 135
| --- | --- | --- | --- | | 编辑态(可读写) | `doc.weixin.qq.com` | `a1_` | `https://doc.weixin.qq.com/smartpage/<doc_id>?scode=<scode>` | | 发布态(只读) | `page.weixin.qq.com` | `b1_` | `https://page.weixin.qq.com/smartpage/p/<doc_id>?scode=<scode>` | - Network accessline 136
| 编辑态(可读写) | `doc.weixin.qq.com` | `a1_` | `https://doc.weixin.qq.com/smartpage/<doc_id>?scode=<scode>` | - Network accessline 137
| 发布态(只读) | `page.weixin.qq.com` | `b1_` | `https://page.weixin.qq.com/smartpage/p/<doc_id>?scode=<scode>` | - Network accessline 183
1. 从文档链接提取(优先):用户提供了企微文档 URL 时,直接从 URL 中解析。URL 格式为 `https://doc.weixin.qq.com/<type>/<docid>?scode=...`,取 `/<type>/` 后、`?` 前的部分即为 docid。
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartpage/references/formula/pageblock.md
- Network accessline 15
// 打开外部链接 OPENLINK("https://www.example.com") - Network accessline 16
OPENLINK("https://www.example.com") - Network accessline 23
// 假设 currentUrl="https://doc.weixin.qq.com/smartpage/<docid>?p=<current_page_id>" - Network accessline 25
// 假设你想跳转到 page_id 为 <new_page_id> 的页面 OPENLINK("https://doc.weixin.qq.com/smartpage/<docid>?p=<new_page_id>") - Network accessline 26
OPENLINK("https://doc.weixin.qq.com/smartpage/<docid>?p=<new_page_id>")
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartpage/references/formula/templates.md
- Network accessline 352
// 跳转至百度链接 OPENLINK("https://baidu.com") - Network accessline 353
OPENLINK("https://baidu.com") - Network accessline 355
// 若你知道当前文档的 doc.weixin.qq.com 链接,需要跳转到其他页面,修改 p=<page_id> 参数为目标 page_id 即可 // 假设当前页面为:https://doc.weixin.qq.com/smartpage/<docid>?p=<current_page_id>,或者末尾没有 p=<page_id> - Network accessline 356
// 假设当前页面为:https://doc.weixin.qq.com/smartpage/<docid>?p=<current_page_id>,或者末尾没有 p=<page_id> - Network accessline 357
// 你需要跳转到另一个页面,page_id 为 <new_page_id>,则写为以下 URL 即可 OPENLINK("https://doc.weixin.qq.com/smartpage/<docid>?p=<new_page_id>") --- - Network accessline 358
OPENLINK("https://doc.weixin.qq.com/smartpage/<docid>?p=<new_page_id>")
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartpage/references/mdx-syntax.md
- Network accessline 113
[访问 Google](https://www.google.com) - Network accessline 660
<linkcard linkUrl="https://docs.qq.com" linkName="链接标题" linkDescription="描述文字,默认为链接地址" linkThumbnail="缩略图URL" linkIcon="图标URL"> - Network accessline 736
- **代码围栏(` ``` … ``` `)内**:代码块内容原样保留,渲染器不解析 JSX,无需转义; - **行内代码(`` `…` ``)内**:同上,原样保留 - **Markdown 链接 URL 部分**(如 `[文字](https://…)`):URL 里的 `&` 等字符保持原样,不转义 - Network accessline 737
- **行内代码(`` `…` ``)内**:同上,原样保留 - **Markdown 链接 URL 部分**(如 `[文字](https://…)`):URL 里的 `&` 等字符保持原样,不转义 - **删除线**:`~` 是删除线时无需转义 - Network accessline 738
- **Markdown 链接 URL 部分**(如 `[文字](https://…)`):URL 里的 `&` 等字符保持原样,不转义
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartpage/references/smartpage-edit.md
- Network accessline 64
`content_type=markdown` 读回的页面正文里,原文中的图片会以 `` 形式返回,`<图片URL>` 是**外部可直接访问的 CDN 链接**(通常形如 `https://w...qpic.cn/...`)。 - Network accessline 72
1. **收集图片 URL**:读完 `content_file_inner` / `file_path` 指向的 markdown 后,扫描 `` 语法,收齐所有图片的 URL(保留其在正文中的出现顺序,便于对齐上下文)。 2. **下载到本地**:对每个图片 URL,用**通用网络下载工具**(如 `curl -sSL -o <本地路径> <图片URL>`)落地到本地临时目录,得到本地图片文件路径。 - Network accessline 73
2. **下载到本地**:对每个图片 URL,用**通用网络下载工具**(如 `curl -sSL -o <本地路径> <图片URL>`)落地到本地临时目录,得到本地图片文件路径。 - Network accessline 121
| 字段 | 类型 | 说明 | | --- | --- | --- | | `url` | string | 上传后的文件访问 URL。图片返回直接图片资源 URL,通常形如 `https://w...qpic.cn/...`;非图片文件返回文件分享链接,通常形如 `https://d...qq.com/...?k=...` | - Network accessline 123
| `url` | string | 上传后的文件访问 URL。图片返回直接图片资源 URL,通常形如 `https://w...qpic.cn/...`;非图片文件返回文件分享链接,通常形如 `https://d...qq.com/...?k=...` | - Network accessline 144
{ "url": "https://example.com/xxx/xxx" - Network accessline 145
"url": "https://example.com/xxx/xxx"
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartsheet/SKILL.md
- Network accessline 104
1. **从文档链接提取(优先)**:用户提供企微文档 URL 时,从 `https://doc.weixin.qq.com/<type>/<docid>?...` 的 `/<type>/` 后、`?` 前提取;智能表格的 `<type>` 为 `smartsheet`。
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartsheet/references/smart-sheet-record-values.md
- Network accessline 28
| `checkbox` | bool 布尔值 | `true` | | `date_time` | string | 必须严格按照 `"YYYY-MM-DD HH:mm:ss"` 标准时间格式 | | `image` | CellImageValue 数组 | `[{"id": "xxx", "title": "图片", "imageUrl": "https://..."}]` | - Network accessline 29
| `date_time` | string | 必须严格按照 `"YYYY-MM-DD HH:mm:ss"` 标准时间格式 | | `image` | CellImageValue 数组 | `[{"id": "xxx", "title": "图片", "imageUrl": "https://..."}]` | | `attachment` | CellAttachmentValue 数组 | `[{"id": "xxx", "title": "文件名", "fileUr - Network accessline 30
| `image` | CellImageValue 数组 | `[{"id": "xxx", "title": "图片", "imageUrl": "https://..."}]` | - Network accessline 31
| `attachment` | CellAttachmentValue 数组 | `[{"id": "xxx", "title": "文件名", "fileUrl": "https://..."}]` | - Network accessline 32
| `user` | CellUserValue 数组 | 读取时返回 `[{"userId": "<userid>", "userName": "<姓名>"}]`;写入时优先传 `userName` 写入(若报错则改传 `userId`,通过 `wecomcli-contact` 技能获取) | | `url` | CellUrlValue 数组 | `[{"text": "链接名", "link": "https://..."}]` | | `select` | Opti - Network accessline 33
| `url` | CellUrlValue 数组 | `[{"text": "链接名", "link": "https://..."}]` | - Network accessline 75
| 字段 | 类型 | 说明 | |------|------|------| | `url` | string | 上传后的文件访问 URL。图片返回直接图片资源 URL,通常形如 `https://w...qpic.cn/...`;非图片文件返回文件分享链接,通常形如 `https://d...qq.com/...?k=...` | - Network accessline 77
| `url` | string | 上传后的文件访问 URL。图片返回直接图片资源 URL,通常形如 `https://w...qpic.cn/...`;非图片文件返回文件分享链接,通常形如 `https://d...qq.com/...?k=...` | - Network accessline 122
[{ "title": "图片名", "imageUrl": "https://..." }] - Network accessline 133
[{ "title": "文件名.pdf", "fileUrl": "https://..." }]
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartsheet/references/smart-sheet-webhook-examples.md
- Network accessline 126
"fSIGN_DATE": "1741622400000", "fSALES": [{"user_id": "zhaoliu"}], "fCONTRACT": [{"text": "合同文件", "link": "https://doc.example.com/contract/2025-001"}] - Network accessline 127
"fSALES": [{"user_id": "zhaoliu"}], "fCONTRACT": [{"text": "合同文件", "link": "https://doc.example.com/contract/2025-001"}] } - Network accessline 128
"fCONTRACT": [{"text": "合同文件", "link": "https://doc.example.com/contract/2025-001"}] - Network accessline 144
"fPARTICIPANTS": "产品、开发、测试", "fSUMMARY": "确定优先开发支付模块,目标 3 月底完成联调,4 月初上线。", "fDOC_LINK": [{"text": "评审文档", "link": "https://doc.example.com/meeting/20250310"}] - Network accessline 145
"fSUMMARY": "确定优先开发支付模块,目标 3 月底完成联调,4 月初上线。", "fDOC_LINK": [{"text": "评审文档", "link": "https://doc.example.com/meeting/20250310"}] } - Network accessline 146
"fDOC_LINK": [{"text": "评审文档", "link": "https://doc.example.com/meeting/20250310"}]
pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-smartsheet/references/smart-sheet-webhook.md
- Network accessline 39
1. **Webhook 完整 URL** - 在智能表格右上角菜单选择「接收外部数据」→ 选择目标工作表 → 开启 → 复制。 - 格式形如 `https://qyapi.weixin.qq.com/cgi-bin/wedoc/smartsheet/webhook?key=XXXXXX`。 - Network accessline 40
- 在智能表格右上角菜单选择「接收外部数据」→ 选择目标工作表 → 开启 → 复制。 - 格式形如 `https://qyapi.weixin.qq.com/cgi-bin/wedoc/smartsheet/webhook?key=XXXXXX`。 - URL 相当于目标表的写入密钥;用户可关闭「接收外部数据」使其失效,不得在回复中回显完整 URL 或 key。 - Network accessline 41
- 格式形如 `https://qyapi.weixin.qq.com/cgi-bin/wedoc/smartsheet/webhook?key=XXXXXX`。 - Network accessline 150
| 单选 | `[{"text":"已完成"}]` | 选项文本必须与表格预设完全一致 | | 多选 | `[{"text":"前端"},{"text":"后端"}]` | 每个选项一个对象 | | 链接 | `[{"text":"需求文档","link":"https://doc.example.com"}]` | 数组格式 | - Network accessline 151
| 多选 | `[{"text":"前端"},{"text":"后端"}]` | 每个选项一个对象 | | 链接 | `[{"text":"需求文档","link":"https://doc.example.com"}]` | 数组格式 | | 地理位置 | `[{"latitude":"31.23040","longitude":"121.47370","source_type":1,"title":"上海市徐汇区"}]` | 最多一条 | - Network accessline 152
| 链接 | `[{"text":"需求文档","link":"https://doc.example.com"}]` | 数组格式 |
pinvou3-app/src-tauri/resources/common/skill-marketplace/ima-skills/SKILL.md
- Network accessline 41
The tool sends POST JSON requests only to `https://ima.qq.com`, applies a response-size limit, and does not expose credentials to the model or subprocesses.
pinvou3-app/src-tauri/resources/common/skill-marketplace/ima-skills/knowledge-base/SKILL.md
- Network accessline 38
{"api_path":"openapi/wiki/v1/import_urls","body":{"knowledge_base_id":"<kb_id>","urls":["https://example.com/article"]}}
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/SKILL.md
- Network accessline 2
name: tencent-docs description: 腾讯文档(docs.qq.com)-在线云文档平台,是创建、编辑、管理**在线**文档的首选 skill。仅当用户明确指向腾讯文档/在线文档/docs.qq.com,或任务需要在线协作文档时使用;泛指"做个文档/保存成文件/PPT"且未点名在线平台时,默认走本地工具(本地 pptx 技能等),不要误用本 skill。支持能力:(1) 创建各类在线文档(文档/Word/Excel/幻灯片/思维导图/流程图/智能表格 - Network accessline 3
description: 腾讯文档(docs.qq.com)-在线云文档平台,是创建、编辑、管理**在线**文档的首选 skill。仅当用户明确指向腾讯文档/在线文档/docs.qq.com,或任务需要在线协作文档时使用;泛指"做个文档/保存成文件/PPT"且未点名在线平台时,默认走本地工具(本地 pptx 技能等),不要误用本 skill。支持能力:(1) 创建各类在线文档(文档/Word/Excel/幻灯片/思维导图/流程图/智能表格/收集表)(2) 管理知识库空间(创建 - Network accessline 4
homepage: https://docs.qq.com/home - Network accessline 5
version: 1.0.41-pinvou2 author: tencent-docs source: https://cdn.addon.tencentsuite.com/static/tencent-docs.zip(官方 1.0.41;Pinvou 适配:原版命令行调用方式改为内置 MCP 工具名 tencent-docs/tdoc-slide/tdoc-doc/tdoc-sheet,移除授权脚本与文件导入/OCR 外部依赖脚本,get_slide_info.sh 改 - Network accessline 6
author: tencent-docs source: https://cdn.addon.tencentsuite.com/static/tencent-docs.zip(官方 1.0.41;Pinvou 适配:原版命令行调用方式改为内置 MCP 工具名 tencent-docs/tdoc-slide/tdoc-doc/tdoc-sheet,移除授权脚本与文件导入/OCR 外部依赖脚本,get_slide_info.sh 改为 stdin 喂响应的纯 jq 归并器,移除 - Network accessline 7
source: https://cdn.addon.tencentsuite.com/static/tencent-docs.zip(官方 1.0.41;Pinvou 适配:原版命令行调用方式改为内置 MCP 工具名 tencent-docs/tdoc-slide/tdoc-doc/tdoc-sheet,移除授权脚本与文件导入/OCR 外部依赖脚本,get_slide_info.sh 改为 stdin 喂响应的纯 jq 归并器,移除 slidep 全局安装脚本 setup.j - Network accessline 163
- **文件管理**:manage.folder_list 获取目录 → manage.* 工具进行重命名、移动、删除、复制、权限设置 - **网页剪藏**:scrape_url 抓取网页 → scrape_progress 轮询进度 → 自动保存为智能文档(用户提供 URL 时必须优先使用此工作流) - **本地 HTML 一键上云**:`node aipage_pack.js` 打包成 .aipage → 调用 `mcp_tencent-docs_manage.pre_i - Network accessline 164
- **网页剪藏**:scrape_url 抓取网页 → scrape_progress 轮询进度 → 自动保存为智能文档(用户提供 URL 时必须优先使用此工作流) - **本地 HTML 一键上云**:`node aipage_pack.js` 打包成 .aipage → 调用 `mcp_tencent-docs_manage.pre_import` 获取上传地址 → shell `curl -X PUT` 上传 .aipage 到 COS → `manage.async - Network accessline 165
- **本地 HTML 一键上云**:`node aipage_pack.js` 打包成 .aipage → 调用 `mcp_tencent-docs_manage.pre_import` 获取上传地址 → shell `curl -X PUT` 上传 .aipage 到 COS → `manage.async_import` 触发 → `manage.import_progress` 轮询,详见 `references/aipage_references.md`。 - Network accessline 168
## 核心规则 - **🚨 所有 PPT / 幻灯片任务统一走 Slide 工作流**:用户提供 `https://docs.qq.com/slide/<id>` 链接、或提及 "PPT / 幻灯片 / 演示文稿 / slide / 投影片" 等任何与 PPT 相关的需求(包括 0-1 生成整份、续写、加页、改页、删页、检查),**必须**按 `slide/entry.md` 的工作流执行:先跑状态脚本 → 必要时写 DESIGN → 用 `tdoc-slide` 服务的 ` - Network accessline 169
- **🚨 所有 PPT / 幻灯片任务统一走 Slide 工作流**:用户提供 `https://docs.qq.com/slide/<id>` 链接、或提及 "PPT / 幻灯片 / 演示文稿 / slide / 投影片" 等任何与 PPT 相关的需求(包括 0-1 生成整份、续写、加页、改页、删页、检查),**必须**按 `slide/entry.md` 的工作流执行:先跑状态脚本 → 必要时写 DESIGN → 用 `tdoc-slide` 服务的 `slide_*` - Network accessline 171
- **优先批量写入,避免多次重复调用**:当对同一文档存在**连续 3 次及以上**的数据写入(如向智能表格写多行记录、向 sheet 写多个单元格/区域、向文档插入多段内容等)时,**必须**使用对应工具的**批量写入接口**一次性提交(如 `smartsheet.add_records` / `smartsheet.update_records`、`sheet.set_range_value`、批量插入类工具),**严禁**用单条写入接口循环多次调用。批量调用可减少往返 - Network accessline 172
- **用户需要保存/上传Markdown格式内容**:直接填入 `create_smartcanvas_by_mdx` 的 `mdx` 参数,MDX 已向下兼容全部 Markdown 语法,无需转换,也无需切换 `content_format` - **用户有本地文件保存/沉淀/落盘**:一律使用 `mcp_tencent-docs_manage.pre_import` → shell `curl -X PUT` 上传 COS → `manage.async_import` - Network accessline 173
- **用户有本地文件保存/沉淀/落盘**:一律使用 `mcp_tencent-docs_manage.pre_import` → shell `curl -X PUT` 上传 COS → `manage.async_import` → `manage.import_progress` 统一上传通路,保留原文件结构,不要用 `create_*` 工具重新生成内容;文件格式是否支持由后端判定,收到"不支持"错误时再降级到其他通路 - Network accessline 189
| ---------- | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - Network accessline 190
| **400006** | **Token 鉴权失败** | 需要先完成本地授权,详见 `references/auth.md` | | **400007* - Network accessline 191
| **400007** | **VIP权限不足** | ⭐ **立即升级VIP**:访问 [https://docs.qq.com/vip?immediate_buy=1&part_aid=persnlspace_mcp](https://docs.qq.com/vip?immediate_buy=1&part_aid=persnlspace_mcp) 购买VIP服务 | - Network accessline 192
| **400008** | **积分不足** | ⭐ **立即购买积分**:访问 [https://docs.qq.com/vip/asset-center?tab=ai&fromPage=offsite&part_aid=offsite_claw](https://docs.qq.com/vip/asset-center?tab=ai&fromPage=offsite&part_aid=offsite_claw) 购买积分服务 | - Network accessline 207
skill 版本随 Pinvou 连接器发布更新,无需在对话中自行检查升级。如需了解官方最新动态,可访问 [腾讯文档 MCP 开发者文档](https://docs.qq.com/open/document/app)。
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/aipage_pack.js
- Executable scriptline 1
#!/usr/bin/env node
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/aipage_references.md
- Network accessline 65
> Step 2 的 `manage.pre_import` 与 Step 3 的 `curl -X PUT` 上传 COS 均由模型直接 - Network accessline 71
curl -sS -X PUT \ - Network accessline 107
# ③ PUT 上传到 COS curl -sS -X PUT -H "Content-Type: application/octet-stream" \ - Network accessline 108
curl -sS -X PUT -H "Content-Type: application/octet-stream" \
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/auth.md
- Network accessline 13
|------|---------| | `invalid_token` / `token_invalid`(400006) | 提示用户:「腾讯文档 Token 已失效,请在 Pinvou 插件中心的『腾讯文档 MCP』卡片重新连接,获取新 Token 后粘贴更新。」 | | `vip_required`(400007) | 提示用户:「当前操作需要腾讯文档 VIP 权限。」(升级入口:https://docs.qq.com/vip?immediate_buy=1&part - Network accessline 14
| `invalid_token` / `token_invalid`(400006) | 提示用户:「腾讯文档 Token 已失效,请在 Pinvou 插件中心的『腾讯文档 MCP』卡片重新连接,获取新 Token 后粘贴更新。」 | | `vip_required`(400007) | 提示用户:「当前操作需要腾讯文档 VIP 权限。」(升级入口:https://docs.qq.com/vip?immediate_buy=1&part_aid=persnlspace_mc - Network accessline 15
| `vip_required`(400007) | 提示用户:「当前操作需要腾讯文档 VIP 权限。」(升级入口:https://docs.qq.com/vip?immediate_buy=1&part_aid=persnlspace_mcp ) | - Network accessline 18
用户更新 Token 的官方入口:[腾讯文档开放平台授权页](https://docs.qq.com/scenario/open-claw.html)(QQ / 微信扫码登录后获取个人 Token),更新请在插件中心操作,不在对话中进行。
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/diagram_references.md
- Network accessline 39
{ "file_id": "mind_1234567890", "url": "https://docs.qq.com/mind/DV2h5cWJ0R1lQb0lH", - Network accessline 40
"file_id": "mind_1234567890", "url": "https://docs.qq.com/mind/DV2h5cWJ0R1lQb0lH", "error": "", - Network accessline 41
"url": "https://docs.qq.com/mind/DV2h5cWJ0R1lQb0lH", - Network accessline 70
{ "file_id": "flow_1234567890", "url": "https://docs.qq.com/flow/DV2h5cWJ0R1lQb0lH", - Network accessline 71
"file_id": "flow_1234567890", "url": "https://docs.qq.com/flow/DV2h5cWJ0R1lQb0lH", "error": "", - Network accessline 72
"url": "https://docs.qq.com/flow/DV2h5cWJ0R1lQb0lH",
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/docengine_references.md
- Network accessline 12
| -------- | ----------------------------------------------------------------------------- | | 所属服务 | `tdoc-doc` | | 服务地址 | `https://docs.qq.com/api/v6/doc/mcp` - Network accessline 13
| 所属服务 | `tdoc-doc` | | 服务地址 | `https://docs.qq.com/api/v6/doc/mcp` | | 工具前缀 | `doc.*`(如 `doc.insert_markdown`、`doc.get_outline`、`d - Network accessline 14
| 服务地址 | `https://docs.qq.com/api/v6/doc/mcp` | - Network accessline 22
> ⚠<U+FE0F> **所有 `doc.*` 工具均支持 `file_id` / `file_url` 二选一**。若用户提供的是文档链接(形如 `https://docs.qq.com/doc/<file_id>`),可直接传 `file_url`,或先从链接末尾解析出 `file_id` 再调用。 - Network accessline 36
所有 docengine 工具都支持 `file_id` 与 `file_url` 二选一: - `file_id` (string, 可选): 文档唯一标识符 - `file_url` (string, 可选): 腾讯文档链接(形如 `https://docs.qq.com/doc/<file_id>`) - Network accessline 38
- `file_url` (string, 可选): 腾讯文档链接(形如 `https://docs.qq.com/doc/<file_id>`) - Network accessline 494
- `image_id` (string, 可选): 图片的 `image_id`(方式二备选),与 `content` 二选一。获取方式有两种: 1. 通过 `upload_image` MCP 接口上传图片后获取; 2. 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取(适合图片体积较大的场景):引导用户自行登录开放平台后台,完成 OAuth 授权并调用 - Network accessline 495
1. 通过 `upload_image` MCP 接口上传图片后获取; 2. 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取(适合图片体积较大的场景):引导用户自行登录开放平台后台,完成 OAuth 授权并调用图片上传接口(`POST https://docs.qq.com/openapi/resources/v2/images`,multipart/form - Network accessline 496
2. 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取(适合图片体积较大的场景):引导用户自行登录开放平台后台,完成 OAuth 授权并调用图片上传接口(`POST https://docs.qq.com/openapi/resources/v2/images`,multipart/form-data 直传图片文件)。`Access-Token`、`Client-I - Network accessline 636
"source": 1, "pos": 42, "image_url": "https://docimg8.docs.qq.com/image/AgAABsUhABzwC7ScF1dHP4mZWR9jTQ5i.jpeg" - Network accessline 637
"pos": 42, "image_url": "https://docimg8.docs.qq.com/image/AgAABsUhABzwC7ScF1dHP4mZWR9jTQ5i.jpeg" }, - Network accessline 638
"image_url": "https://docimg8.docs.qq.com/image/AgAABsUhABzwC7ScF1dHP4mZWR9jTQ5i.jpeg" - Network accessline 685
{ "file_url": "https://docs.qq.com/doc/xxxxxxxx", - Network accessline 686
"file_url": "https://docs.qq.com/doc/xxxxxxxx", - Network accessline 687
"idx": 12, "old_image_url": "https://docimg3.docs.qq.com/image/AgAABsUhABzuGm3nPThHvJMLVLu3pZUz.png", "image_id": "KlCYcLj1CTUoMfAR9bleB+G+..." - Network accessline 688
"old_image_url": "https://docimg3.docs.qq.com/image/AgAABsUhABzuGm3nPThHvJMLVLu3pZUz.png", - Network accessline 699
- `image_id` (string, 条件必填): 新图片的 `image_id`(方式二备选),与 `content` 二选一(**必须提供其一**)。获取方式有两种: 1. 通过 `upload_image` MCP 接口上传图片后获取; 2. 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取(适合图片体积较大、base64 内容超出传输限制的场景 - Network accessline 700
1. 通过 `upload_image` MCP 接口上传图片后获取; 2. 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取(适合图片体积较大、base64 内容超出传输限制的场景):引导用户自行登录开放平台后台,完成 OAuth 授权并调用图片上传接口(`POST https://docs.qq.com/openapi/resources/v2/images - Network accessline 701
2. 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取(适合图片体积较大、base64 内容超出传输限制的场景):引导用户自行登录开放平台后台,完成 OAuth 授权并调用图片上传接口(`POST https://docs.qq.com/openapi/resources/v2/images`,multipart/form-data 直传图片文件)。`Access- - Network accessline 1202
"file_id": "doc_1234567890", "idx": 10, "link": "https://docs.qq.com", - Network accessline 1203
"idx": 10, "link": "https://docs.qq.com", "text": "腾讯文档" - Network accessline 1204
"link": "https://docs.qq.com", - Network accessline 1674
{ "file_id": "new_doc_file_id", "file_url": "https://docs.qq.com/doc/new_doc_file_id", - Network accessline 1675
"file_id": "new_doc_file_id", "file_url": "https://docs.qq.com/doc/new_doc_file_id", "title": "我的新文档", - Network accessline 1676
"file_url": "https://docs.qq.com/doc/new_doc_file_id", - Network accessline 1710
{ "upload_url": "https://upload.example.com/...", - Network accessline 1711
"upload_url": "https://upload.example.com/...", - Network accessline 2366
- `replace_text` 的 `ranges` 参数中 `begin` 和 `end` 必须在文档有效范围内 - 替换文本的推荐流程:优先调用 `doc.resolve_document_structure` 基于 `text_preview` 定位;若无法可靠定位,再调用 `doc.find` 补充查找;确认后再用 `doc.replace_text` 精确替换。如果需要全部替换可直接使用 `doc.find_and_replace` - **所有 `doc.*` - Network accessline 2367
- 替换文本的推荐流程:优先调用 `doc.resolve_document_structure` 基于 `text_preview` 定位;若无法可靠定位,再调用 `doc.find` 补充查找;确认后再用 `doc.replace_text` 精确替换。如果需要全部替换可直接使用 `doc.find_and_replace` - **所有 `doc.*` 工具均支持 `file_id` / `file_url` 二选一**;若用户提供的是文档链接(形如 `https:// - Network accessline 2368
- **所有 `doc.*` 工具均支持 `file_id` / `file_url` 二选一**;若用户提供的是文档链接(形如 `https://docs.qq.com/doc/<file_id>`),可直接传 `file_url`,也可先解析出 `file_id` 再传入
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/manage_references.md
- Network accessline 93
"id": "doc_001", "title": "会议纪要", "url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH", - Network accessline 94
"title": "会议纪要", "url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH", "is_folder": false - Network accessline 95
"url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH", - Network accessline 193
"file_id": "doc_1234567890", "title": "项目计划", "url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH", - Network accessline 194
"title": "项目计划", "url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH", "type": "doc", - Network accessline 195
"url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH", - Network accessline 242
"file_id": "sheet_1", "title": "sheet_name_1", "url": "https://docs.qq.com/sheet/sheet_file_id_1" - Network accessline 243
"title": "sheet_name_1", "url": "https://docs.qq.com/sheet/sheet_file_id_1" }, - Network accessline 244
"url": "https://docs.qq.com/sheet/sheet_file_id_1" - Network accessline 247
"file_id": "sheet_2", "title": "sheet_name_2", "url": "https://docs.qq.com/sheet/sheet_file_id_2" - Network accessline 248
"title": "sheet_name_2", "url": "https://docs.qq.com/sheet/sheet_file_id_2" } - Network accessline 249
"url": "https://docs.qq.com/sheet/sheet_file_id_2" - Network accessline 305
"file_id": "DtDywXFgYFru", "title": "项目计划", "url": "https://docs.qq.com/doc/DtDywXFgYFru", - Network accessline 306
"title": "项目计划", "url": "https://docs.qq.com/doc/DtDywXFgYFru", "type": "smartcanvas", - Network accessline 307
"url": "https://docs.qq.com/doc/DtDywXFgYFru", - Network accessline 661
"id": "DtDywXFgYFru_copy", "title": "项目计划-副本", "url": "https://docs.qq.com/doc/DtDywXFgYFru_copy", - Network accessline 662
"title": "项目计划-副本", "url": "https://docs.qq.com/doc/DtDywXFgYFru_copy", "trace_id": "trace_xyz" - Network accessline 663
"url": "https://docs.qq.com/doc/DtDywXFgYFru_copy", - Network accessline 781
{ "upload_url": "https://cos.ap-guangzhou.myqcloud.com/import/...", - Network accessline 782
"upload_url": "https://cos.ap-guangzhou.myqcloud.com/import/...", - Network accessline 882
"file_id": "DjVlDHwqVVzs", "file_name": "report", "file_url": "https://docs.qq.com/doc/DRGpWbERId3FWVnpz", - Network accessline 883
"file_name": "report", "file_url": "https://docs.qq.com/doc/DRGpWbERId3FWVnpz", "trace_id": "trace_xyz" - Network accessline 884
"file_url": "https://docs.qq.com/doc/DRGpWbERId3FWVnpz", - Network accessline 936
**使用场景**: - 调用 `manage.export_file` 后轮询查询导出状态 - 导出完成后获取文件下载 URL,通过 curl 等工具下载到本地 - Network accessline 938
- 导出完成后获取文件下载 URL,通过 curl 等工具下载到本地 - Network accessline 977
"progress": 100, "file_name": "mcp_import.docx", "file_url": "https://docs-import-export-xxx.cos.ap-guangzhou.myqcloud.com/export/docx/...", - Network accessline 978
"file_name": "mcp_import.docx", "file_url": "https://docs-import-export-xxx.cos.ap-guangzhou.myqcloud.com/export/docx/...", "trace_id": "trace_xyz" - Network accessline 979
"file_url": "https://docs-import-export-xxx.cos.ap-guangzhou.myqcloud.com/export/docx/...", - Network accessline 984
> **注意**:`file_url` 为带签名的临时下载链接,有效期约 30 分钟,需及时下载。可通过 `curl -L -o <本地路径> "<file_url>"` 命令保存到本地。 - Network accessline 1036
> **推荐方式**:依次执行「计算文件 MD5 和大小 → 调用 `manage.pre_import` 获取上传链接 → `curl -X PUT` 上传文件到 COS」三步,拿到 `file_key`、`task_id` 后直接调用 `manage.async_import` 触发导入。 - Network accessline 1040
→ 使用 md5sum/md5 计算文件 MD5,使用 stat 获取文件大小(字节) → 调用 manage.pre_import(传入 file_name、file_size、file_md5)获取上传链接 → shell 执行 curl -X PUT 上传文件到 COS - Network accessline 1041
→ 调用 manage.pre_import(传入 file_name、file_size、file_md5)获取上传链接 → shell 执行 curl -X PUT 上传文件到 COS → 成功后记录返回的 FILE_KEY、FILE_NAME、FILE_MD5、TASK_ID - Network accessline 1042
→ shell 执行 curl -X PUT 上传文件到 COS - Network accessline 1065
步骤 3:上传文件到 COS → curl -X PUT -H "Content-Type: application/octet-stream" --data-binary "@<文件路径>" "<upload_url>" - Network accessline 1066
→ curl -X PUT -H "Content-Type: application/octet-stream" --data-binary "@<文件路径>" "<upload_url>" - Network accessline 1089
步骤 3:下载文件到本地 → 使用 curl 或其他 HTTP 工具下载文件 - Network accessline 1090
→ 使用 curl 或其他 HTTP 工具下载文件 - Network accessline 1091
→ curl -L -o <本地保存路径> "<file_url>"
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/ocr_references.md
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/slideengine_references.md
- Network accessline 12
| -------- | --------------------------------------------------------------------------------------- | | 所属服务 | `tdoc-slide` | | 服务地址 | `https://docs.qq.com/api/v6/ - Network accessline 13
| 所属服务 | `tdoc-slide` | | 服务地址 | `https://docs.qq.com/api/v6/slide/mcp` | | 工具前缀 | `slide_*`(如 `slide_add_shape`、`s - Network accessline 14
| 服务地址 | `https://docs.qq.com/api/v6/slide/mcp` | - Network accessline 20
> ⚠<U+FE0F> **所有 `slide_*` 工具均使用 `file_id` 或 `file_url` 标识文档**(二选一)。若用户提供的是文档链接(形如 `https://docs.qq.com/slide/<id>`),可直接传入 `file_url`,服务端自动解析。 - Network accessline 30
- `file_id` (string): 文档唯一标识符,形如 `300000000$WKxxx` - `file_url` (string): 腾讯文档的分享链接(形如 `https://docs.qq.com/slide/...`),服务端自动解析为 file_id - Network accessline 31
- `file_url` (string): 腾讯文档的分享链接(形如 `https://docs.qq.com/slide/...`),服务端自动解析为 file_id - Network accessline 570
| `w` | number | 否 | 图片宽度(磅 pt,1pt = 12700 EMU),<=0 时使用图片自身原始宽度 | | `h` | number | 否 | 图片高度(磅 pt,1pt = 12700 EMU),<=0 时使用图片自身原始高度 | | `image_id` | string | 否 | 已上传图片的加密 ID(有效期一天,方式一首选),与 content 二选一。适合图片体积较大、base64 内容超出 MCP 单次传输限制的场景。【推荐获取方 - Network accessline 571
| `h` | number | 否 | 图片高度(磅 pt,1pt = 12700 EMU),<=0 时使用图片自身原始高度 | | `image_id` | string | 否 | 已上传图片的加密 ID(有效期一天,方式一首选),与 content 二选一。适合图片体积较大、base64 内容超出 MCP 单次传输限制的场景。【推荐获取方式】调用 tencent-docs MCP 的 `upload_image` 工具,传入: - `image_base64`:图片文 - Network accessline 572
| `image_id` | string | 否 | 已上传图片的加密 ID(有效期一天,方式一首选),与 content 二选一。适合图片体积较大、base64 内容超出 MCP 单次传输限制的场景。【推荐获取方式】调用 tencent-docs MCP 的 `upload_image` 工具,传入: - `image_base64`:图片文件的实际 base64 编码内容(不含 data URI 前缀,不要传文件路径或 URL),≤10MB; - `file_name`
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/smartsheet_references.md
- Network accessline 840
| 日期(dateTime) | `string_value` | `{"field": "日期", "string_value": "1720000000000"}` | | 图片(image) | `image_value` | `{"field": "封面", "image_value": {"items": [{"image_id": "图片id"}]}}` | | 超链接(url) | `url_value` | `{"field": "链接", "url_valu - Network accessline 841
| 图片(image) | `image_value` | `{"field": "封面", "image_value": {"items": [{"image_id": "图片id"}]}}` | | 超链接(url) | `url_value` | `{"field": "链接", "url_value": {"items": [{"text": "链接文字", "type": "url", "link": "https://..."}]}}` | | 多选(select - Network accessline 842
| 超链接(url) | `url_value` | `{"field": "链接", "url_value": {"items": [{"text": "链接文字", "type": "url", "link": "https://..."}]}}` | - Network accessline 866
{ "items": [ {"text": "链接显示文字", "type": "url", "link": "https://example.com"} - Network accessline 867
"items": [ {"text": "链接显示文字", "type": "url", "link": "https://example.com"} ] - Network accessline 868
{"text": "链接显示文字", "type": "url", "link": "https://example.com"}
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/space_references.md
- Network accessline 172
"has_child": false, "doc_type": "smartcanvas", "url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH" - Network accessline 173
"doc_type": "smartcanvas", "url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH" } - Network accessline 174
"url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH" - Network accessline 219
"has_child": false, "doc_type": "smartcanvas", "url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH" - Network accessline 220
"doc_type": "smartcanvas", "url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH" }, - Network accessline 221
"url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH"
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/references/workflows.md
- Network accessline 177
{ "url": "https://example.com/article", - Network accessline 178
"url": "https://example.com/article", - Network accessline 221
"title": "示例网页标题", "file_id": "doc_1234567890", "file_url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH", - Network accessline 222
"file_id": "doc_1234567890", "file_url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH", "error": "", - Network accessline 223
"file_url": "https://docs.qq.com/doc/DV2h5cWJ0R1lQb0lH",
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/sheet/api/mcp-api.md
- Network accessline 402
"row": 0, "col": 0, "url": "https://docs.qq.com", - Network accessline 403
"col": 0, "url": "https://docs.qq.com", "display_text": "腾讯文档" - Network accessline 404
"url": "https://docs.qq.com", - Network accessline 901
- `image_id` (string, 可选): 图片的 image_id,本质是对图片信息加密后的字符串,与 `content` 二选一,适合图片体积较大的场景。获取方式: - 通过 `upload_image` MCP 接口上传图片后获取 - 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取:引导用户自行登录开放平台后台,完成 OAuth 授权并调用 - Network accessline 902
- 通过 `upload_image` MCP 接口上传图片后获取 - 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取:引导用户自行登录开放平台后台,完成 OAuth 授权并调用图片上传接口(`POST https://docs.qq.com/openapi/resources/v2/images`,multipart/form-data 直传图片文件)。`A - Network accessline 903
- 通过[腾讯文档开放平台 OpenAPI](https://docs.qq.com/open/developers/?nlc=1#/login) 图片上传接口获取:引导用户自行登录开放平台后台,完成 OAuth 授权并调用图片上传接口(`POST https://docs.qq.com/openapi/resources/v2/images`,multipart/form-data 直传图片文件)。`Access-Token`、`Client-Id`、`Open-Id` 等
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/sheet/entry.md
- Network accessline 15
| -------- | -------------------------------------------------------------------------------- | | 所属服务 | `tdoc-sheet` | | 服务地址 | `https://docs.qq.com/api/v6/sheet/mcp` - Network accessline 16
| 所属服务 | `tdoc-sheet` | | 服务地址 | `https://docs.qq.com/api/v6/sheet/mcp` | | 工具前缀 | `sheet.*`(如 `sheet.get_cell_data`、`sheet.set_c - Network accessline 17
| 服务地址 | `https://docs.qq.com/api/v6/sheet/mcp` |
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/sidebar-pptx-generator/references/component-image.md
- Network accessline 25
| 属性 | 说明 | | :--- | :--- | | `src` | **必填**。本地相对路径(相对项目根),必须先保存到 `resources/images/`。**严禁** `http://` / `https://` / `image://` 占位符 | - Network accessline 26
| :--- | :--- | | `src` | **必填**。本地相对路径(相对项目根),必须先保存到 `resources/images/`。**严禁** `http://` / `https://` / `image://` 占位符 | | `style.width` / `style.height` | 显示尺寸。建议与图片实际尺寸比例一致,避免拉伸变形 | - Network accessline 27
| `src` | **必填**。本地相对路径(相对项目根),必须先保存到 `resources/images/`。**严禁** `http://` / `https://` / `image://` 占位符 | - Dangerous shell operationline 79
- **不得用通配符删除图片资源**(如 `rm -rf resources/images/*.png`)。替换图片时优先覆盖明确文件;确需删除时逐个指定具体路径。
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/sidebar-pptx-generator/references/component-qrcode.md
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/sidebar-pptx-generator/scripts/doc_image_extractor.py
- Executable scriptline 1
#!/usr/bin/env python3
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/sidebar-pptx-generator/scripts/get_slide_info.sh
- Executable scriptline 1
#!/bin/bash
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/slide/entry.md
- Network accessline 275
- 链接来源优先级: 1. 用户输入里已经带的 `file_url`,直接沿用。 2. 用户只给了 `file_id`,则拼成 `https://docs.qq.com/slide/<file_id>`。 - Network accessline 276
1. 用户输入里已经带的 `file_url`,直接沿用。 2. 用户只给了 `file_id`,则拼成 `https://docs.qq.com/slide/<file_id>`。 3. 通过 `manage.create_file`(doc_type=`slide`)创建出来的新 PPT,直接使用接口返回的 `file_url`。 - Network accessline 277
2. 用户只给了 `file_id`,则拼成 `https://docs.qq.com/slide/<file_id>`。 - Network accessline 278
3. 通过 `manage.create_file`(doc_type=`slide`)创建出来的新 PPT,直接使用接口返回的 `file_url`。 - 链接展示格式:用 Markdown 链接,例如 `[在腾讯文档中打开](https://docs.qq.com/slide/<file_id>)`,不要只贴裸 URL,也不要藏在折叠区或代码块里。 - 链接放置位置:放在"完成内容总结"之后、"风险点 / 待确认"之前;如果有多次操作合并回复,只展示一次最新链接即可。 - Network accessline 279
- 链接展示格式:用 Markdown 链接,例如 `[在腾讯文档中打开](https://docs.qq.com/slide/<file_id>)`,不要只贴裸 URL,也不要藏在折叠区或代码块里。
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/entry.md
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/mdx_references.md
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/2026_personal_annual_goal_plan.mdx
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/british_shorthair_cat_care_guide.mdx
- Network accessline 106
<Image src="https://docimg9.docs.qq.com/image/AgAABW21wb4K0MZIpqxFM6Mi7OztZMON.jpeg" alt="英短蓝猫正面特写" align="center" width="600" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/chinese_modern_wedding_planning_guide.mdx
- Network accessline 214
</Column> <Column width="40%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="中式建筑与意境" /> - Network accessline 215
<Column width="40%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="中式建筑与意境" /> </Column> - Network accessline 216
<Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="中式建筑与意境" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/coffee_shop_location_analysis_report.mdx
- Network accessline 68
<Image src="https://docimg4.docs.qq.com/image/AgAABW21wb40E36Y6UtI6IP0zjlydglA.jpeg" alt="商业环境分析" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/company_5th_anniversary_event_plan.mdx
- Network accessline 85
<Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="场地示意图" align="center" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/family_weekly_healthy_meal_plan.mdx
- Network accessline 241
<Image src="https://docimg5.docs.qq.com/image/AgAABW21wb40I9KCtKxC_oGkkEzaohow.jpeg" alt="健康食材" width="600" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/new_tea_brand_annual_promotion_plan.mdx
- Network accessline 334
<ColumnList> <Column width="33%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="春季:草本新生计划" align="center" /> - Network accessline 335
<Column width="33%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="春季:草本新生计划" align="center" /> <Callout blockColor="light_green" borderColor="green" icon="🌱"> - Network accessline 336
<Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="春季:草本新生计划" align="center" /> - Network accessline 348
</Column> <Column width="33%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb40E36Y6UtI6IP0zjlydglA.jpeg" alt="夏季:多巴胺色彩嘉年华" align="center" /> - Network accessline 349
<Column width="33%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb40E36Y6UtI6IP0zjlydglA.jpeg" alt="夏季:多巴胺色彩嘉年华" align="center" /> <Callout blockColor="light_red" borderColor="red" icon="🎨"> - Network accessline 350
<Image src="https://docimg4.docs.qq.com/image/AgAABW21wb40E36Y6UtI6IP0zjlydglA.jpeg" alt="夏季:多巴胺色彩嘉年华" align="center" /> - Network accessline 362
</Column> <Column width="34%"> <Image src="https://docimg5.docs.qq.com/image/AgAABW21wb46qz32SyNLKa1sFTGyeZn7.jpeg" alt="秋季:都市漫游指南" align="center" /> - Network accessline 363
<Column width="34%"> <Image src="https://docimg5.docs.qq.com/image/AgAABW21wb46qz32SyNLKa1sFTGyeZn7.jpeg" alt="秋季:都市漫游指南" align="center" /> <Callout blockColor="light_blue" borderColor="blue" icon="🪐"> - Network accessline 364
<Image src="https://docimg5.docs.qq.com/image/AgAABW21wb46qz32SyNLKa1sFTGyeZn7.jpeg" alt="秋季:都市漫游指南" align="center" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/office_worker_knowledge_side_business_plan.mdx
- Network accessline 272
<Image src="https://docimg5.docs.qq.com/image/AgAABW21wb46qz32SyNLKa1sFTGyeZn7.jpeg" alt="高效办公生产内容" align="center" width="600" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/online_office_tool_user_research_report.mdx
- Network accessline 458
<Image src="https://docimg5.docs.qq.com/image/AgAABW21wb46qz32SyNLKa1sFTGyeZn7.jpeg" alt="团队协作办公场景" align="center" width="800" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/shared_powerbank_business_model_report.mdx
- Network accessline 380
<Image src="https://docimg4.docs.qq.com/image/AgAABW21wb40E36Y6UtI6IP0zjlydglA.jpeg" alt="共享充电宝未来演进图" align="center" width="800" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/smartwatch_comparison_apple_watch_vs_huawei_gt.mdx
- Network accessline 110
<ColumnList> <Column width="50%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="Apple Watch S10 显示效果" align="center" /> - Network accessline 111
<Column width="50%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="Apple Watch S10 显示效果" align="center" /> </Column> - Network accessline 112
<Image src="https://docimg4.docs.qq.com/image/AgAABW21wb44g4x3qSJJyKiiUzaiZdFS.jpeg" alt="Apple Watch S10 显示效果" align="center" /> - Network accessline 113
</Column> <Column width="50%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb40E36Y6UtI6IP0zjlydglA.jpeg" alt="华为 Watch GT 5 Pro 显示效果" align="center" /> - Network accessline 114
<Column width="50%"> <Image src="https://docimg4.docs.qq.com/image/AgAABW21wb40E36Y6UtI6IP0zjlydglA.jpeg" alt="华为 Watch GT 5 Pro 显示效果" align="center" /> </Column> - Network accessline 115
<Image src="https://docimg4.docs.qq.com/image/AgAABW21wb40E36Y6UtI6IP0zjlydglA.jpeg" alt="华为 Watch GT 5 Pro 显示效果" align="center" />
pinvou3-app/src-tauri/resources/common/skill-marketplace/tencent-docs-skill/smartcanvas/template/space_theme_6th_birthday_party_plan.mdx
- Network accessline 294
</Paragraph> <BulletedList> <Link href="https://s.taobao.com/search?q=太空主题生日装饰套装">1. 太空主题生日装饰套装</Link> (包含背景布、气球) - Network accessline 295
<BulletedList> <Link href="https://s.taobao.com/search?q=太空主题生日装饰套装">1. 太空主题生日装饰套装</Link> (包含背景布、气球) </BulletedList> - Network accessline 296
<Link href="https://s.taobao.com/search?q=太空主题生日装饰套装">1. 太空主题生日装饰套装</Link> (包含背景布、气球) - Network accessline 297
</BulletedList> <BulletedList> <Link href="https://s.taobao.com/search?q=宇航员翻糖蛋糕定制">2. 宇航员翻糖蛋糕定制</Link> (建议提前一周预约) - Network accessline 298
<BulletedList> <Link href="https://s.taobao.com/search?q=宇航员翻糖蛋糕定制">2. 宇航员翻糖蛋糕定制</Link> (建议提前一周预约) </BulletedList> - Network accessline 299
<Link href="https://s.taobao.com/search?q=宇航员翻糖蛋糕定制">2. 宇航员翻糖蛋糕定制</Link> (建议提前一周预约) - Network accessline 300
</BulletedList> <BulletedList> <Link href="https://s.taobao.com/search?q=太空伴手礼小礼物">3. 太空伴手礼小礼物</Link> (建议购买礼包套装) - Network accessline 301
<BulletedList> <Link href="https://s.taobao.com/search?q=太空伴手礼小礼物">3. 太空伴手礼小礼物</Link> (建议购买礼包套装) </BulletedList> - Network accessline 302
<Link href="https://s.taobao.com/search?q=太空伴手礼小礼物">3. 太空伴手礼小礼物</Link> (建议购买礼包套装)
pinvou3-app/src-tauri/resources/common/skill-marketplace/visualizer/SKILL.md
- Network accessline 14
- 已用本技能目录下的 `scripts/validate_visualizer_html.py` 校验最终 `.html`,且结果为通过。 - 已调用 `mcp_pinvou3_present_artifact(path, title)` 展示产物卡(内置 MCP 工具默认延迟加载:工具列表里没有它时先 `tool_search` 激活;`tool_search` 返回 `mcp_boot` connecting(MCP 服务仍在启动)就等待数秒重试,connecting - Network accessline 15
- 已调用 `mcp_pinvou3_present_artifact(path, title)` 展示产物卡(内置 MCP 工具默认延迟加载:工具列表里没有它时先 `tool_search` 激活;`tool_search` 返回 `mcp_boot` connecting(MCP 服务仍在启动)就等待数秒重试,connecting 消失后仍搜不到,才算产物卡后端本轮不可用——在回复里说明即可)。 - HTML 使用 Chart.js UMD:`https://cdnjs. - Network accessline 16
- HTML 使用 Chart.js UMD:`https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js`。 - Network accessline 68
## HTML 产物硬规则 - 输出 `.html` 文件,不输出 Markdown 包裹的 HTML。 - 使用 Chart.js UMD:`https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js`。 - Network accessline 69
- 输出 `.html` 文件,不输出 Markdown 包裹的 HTML。 - 使用 Chart.js UMD:`https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js`。 - 每个 `<canvas>` 必须有 `role="img"`、描述性 `aria-label` 和 fallback text。 - Network accessline 70
- 使用 Chart.js UMD:`https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js`。
pinvou3-app/src-tauri/resources/common/skill-marketplace/visualizer/references/visualizer-design-system.md
- Network accessline 14
- The final answer pastes the full HTML instead of calling `mcp_pinvou3_present_artifact(path, title)`. - The HTML contains `echarts`, `Plotly`, `cdn.plot.ly`, or `cdn.jsdelivr.net/npm/echarts`. - Chart.js is not loaded from `https://cdnjs. - Network accessline 15
- The HTML contains `echarts`, `Plotly`, `cdn.plot.ly`, or `cdn.jsdelivr.net/npm/echarts`. - Chart.js is not loaded from `https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js`. - Any Chart.js `<canvas>` is missing `role="img"` - Network accessline 16
- Chart.js is not loaded from `https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js`. - Network accessline 106
<canvas id="myChart" role="img" aria-label="Bar chart of quarterly revenue">Fallback text.</canvas> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js"></script> - Network accessline 107
</div> <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js"></script> <script> - Network accessline 108
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/4.4.1/chart.umd.js"></script> - Network accessline 168
| Coverage | URL | Projection | Object key | |----------|-----|------------|------------| | US states | `https://cdn.jsdelivr.net/npm/us-atlas@3/states-10m.json` | `d3.geoAlbersUsa()` | `.states` | - Network accessline 169
|----------|-----|------------|------------| | US states | `https://cdn.jsdelivr.net/npm/us-atlas@3/states-10m.json` | `d3.geoAlbersUsa()` | `.states` | | World countries | `https://cdn.jsdelivr.net/npm/world-atlas@2/countries-110m.json` | - Network accessline 170
| US states | `https://cdn.jsdelivr.net/npm/us-atlas@3/states-10m.json` | `d3.geoAlbersUsa()` | `.states` | - Network accessline 171
| World countries | `https://cdn.jsdelivr.net/npm/world-atlas@2/countries-110m.json` | `d3.geoNaturalEarth1()` | `.countries` | - Network accessline 172
| Per-country subdivisions | `https://cdn.jsdelivr.net/npm/datamaps@0.5.10/src/js/data/{iso3}.topo.json` | varies | `.{iso3}` |
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 500 facts
- Network access in prose of the SKILL.mddws/SKILL.md:21Low confidence
- Network access in prose of the SKILL.mddws/SKILL.md:22Low confidence
- Network access in prose of documentationdws/references/best_practices/06-data-analytics.md:10Low confidence
- Network access in prose of documentationdws/references/best_practices/06-data-analytics.md:11Low confidence
- Network access in prose of documentationdws/references/best_practices/06-data-analytics.md:12Low confidence
- Network access in prose of documentationdws/references/capability-limits.md:23Low confidence
- Network access in prose of documentationdws/references/capability-limits.md:25Low confidence
- Access to secrets in code of documentationdws/references/global-reference.md:16Low confidence
- Access to secrets in code of documentationdws/references/global-reference.md:17Low confidence
- Access to secrets in code of documentationdws/references/global-reference.md:18Low confidence
- Access to secrets in prose of documentationdws/references/global-reference.md:54Low confidence
- Access to secrets in code of documentation: a variable, placeholder or call, not a stored valuedws/references/global-reference.md:61Low confidence
- Access to secrets in prose of documentation: a variable, placeholder or call, not a stored valuedws/references/global-reference.md:114Low confidence
- Access to secrets in prose of documentationdws/references/global-reference.md:116Low confidence
- Network access in prose of documentationdws/references/intent-guide.md:163Low confidence
- Network access in prose of documentationdws/references/products/aitable.md:7Low confidence
- Network access in prose of documentationdws/references/products/aitable.md:8Low confidence
- Network access in prose of documentationdws/references/products/aitable.md:9Low confidence
- Network access in prose of documentationdws/references/products/aitable.md:10Low confidence
- Network access in prose of documentationdws/references/products/aitable.md:12Low confidence
- Network access in prose of documentationdws/references/products/aitable.md:454Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-attachment.md:5Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-attachment.md:43Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-attachment.md:44Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-attachment.md:45Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-attachment.md:56Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-attachment.md:57Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-cell-value.md:216Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-cell-value.md:217Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-cell-value.md:224Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-cell-value.md:251Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-cell-value.md:256Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-cell-value.md:342Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-cell-value.md:343Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-cell-value.md:344Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-export-import.md:53Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-export-import.md:54Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-export-import.md:68Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-export-import.md:69Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-export-import.md:70Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-export-import.md:137Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-export-import.md:151Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-export-import.md:158Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-record-create.md:28Low confidence
- Network access in prose of documentationdws/references/products/aitable/aitable-record-create.md:30Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-record-share.md:25Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-record-share.md:26Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-record-share.md:27Low confidence
- Network access in code of documentationdws/references/products/aitable/aitable-record-share.md:28Low confidence
- Network access in prose of documentationdws/references/products/attendance.md:152Low confidence
and 450 more
Only the first 500 facts are listed.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md pinvou3-app/src-tauri/resources/common/bundle/builtin-skills/visual-design/SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Native | Manifest AGENTS.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md pinvou3-app/src-tauri/resources/common/bundle/builtin-skills/visual-design/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md pinvou3-app/src-tauri/resources/common/bundle/builtin-skills/visual-design/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md pinvou3-app/src-tauri/resources/common/bundle/builtin-skills/visual-design/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md pinvou3-app/src-tauri/resources/common/bundle/builtin-skills/visual-design/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/pinvou-pinvou-agent/)