飞书 CLI `lark approval approvals search` 实战指南:从自然语言到可发起审批定义的精准定位
飞书 CLIlark approval approvals search实战指南从自然语言到可发起审批定义的精准定位【免费下载链接】cliThe official Lark/飞书 CLI tool, maintained by the larksuite team — built for humans and AI Agents. Covers core business domains including Messenger, Docs, Base, Sheets, Calendar, Mail, Tasks, Meetings, and more, with 200 commands and 20 AI Agent Skills.项目地址: https://gitcode.com/gh_mirrors/cli414/cli本指南以 larksuite CLIlark-cli审批技能lark-approval中的approvals search命令为对象讲解如何通过关键词把用户可发起的审批定义候选项找出来为后续查看定义详情approvals get与发起原生审批实例instances create铺路。读完本文你将掌握该命令的完整参数用法、返回字段的业务含义、Agent 场景下的使用规则与结果整理方式并理解它与审批提单工作流的衔接关系及底层--dry-run预览机制。一、命令定位审批提单工作流的第一步在飞书 CLI 的审批技能中approvals search承担的是一个非常具体的职责搜索当前用户可发起的审批定义launchable approvals。它是一次只读操作不会创建审批实例也不产生任何写副作用因此可以放心地反复调用、用来探测用户的真实意图。从 skills/lark-approval/SKILL.md 的命令选型表可以看到lark-approval按想做什么划分命令搜可发起定义走approvals search看定义详情走approvals get发起原生审批实例走instances create。三者构成固定的处理链approvals search - approvals get - instances create而approvals search正是这条链的入口当用户只有自然语言意图、还没有approval_code时先用它把可发起的审批定义候选项找出来再进入后续步骤。典型场景包括帮我找一下请假审批有哪些可以发起的报销单先搜一下出差审批再帮我提单需要强调的是审批待办不是飞书任务只要用户的核心对象是审批单据/审批待办/审批实例就应优先走lark-approval不要让渡给lark-task。二、命令语法与核心参数approvals search的基本形态如下# 按关键词搜索可发起审批定义 lark-cli approval approvals search --data {keyword:请假} --as user # 使用 page_token 翻页 lark-cli approval approvals search --data {keyword:请假, page_token:example_page_token} --as user # 表格格式输出便于快速浏览候选定义 lark-cli approval approvals search --data {keyword:出差} --format table --as user # 预览 API 调用不执行 lark-cli approval approvals search --data {keyword:请假} --as user --dry-run参数一览参数必填说明--data {...}是查询参数使用 JSON 传入keyword是搜索关键词例如请假、报销、出差、采购locale否返回语言例如zh-CN、en-US、ja-JPpage_size否分页大小page_token否翻页标记首次请求不填后续使用上一次返回的page_token--as user否建议显式指定用户身份可发起审批定义是面向当前用户的查询--format否输出格式json默认、ndjson、table、csv--dry-run否预览 API 调用不执行两个细节值得展开--as user与身份语义。审批是人的动作lark-approval的所有命令默认按用户身份执行SKILL.md 也明确要求所有命令默认--as user。对approvals search而言可发起的定义集合本来就依赖当前用户的可见范围与权限需要的 scopes 为[approval:approval:read]因此显式传--as user能让返回结果更贴近当前用户到底能发起哪些单。--dry-run的预览机制。--dry-run并不会真正发起 API 调用而是把将要发出的 HTTP 请求原样预览出来。从源码 internal/cmdutil/dryrun.go 可以看到PrintDryRun会基于client.RawApiRequest组装一个DryRunAPI把请求方法、URL、查询参数、请求体request.Data以及调用身份app_id / user_open_id一并输出当Format pretty时在 stdout 打出# dry-run: request not sent标记随后逐行展示METHOD url与请求体 JSON。这意味着你可以在正式执行前确认请求打到了哪个端点、keyword等参数是否按预期携带、以什么身份发起。对 Agent 场景来说这是低成本、零副作用的安全校验手段。三、返回结果重点字段解读approvals search返回的是可发起审批定义的候选列表。虽然字段可能较多但优先关注以下四个即可完成绝大多数决策字段说明approval_code审批定义 Code后续approvals get和instances create都要用它approval_name审批定义名称给用户做候选选择时最关键is_external是否为三方审批定义true表示不能走原生instances.createcreate_link三方审批定义的发起链接is_externaltrue时优先返回给用户这四个字段共同决定了下一步动作的分叉approval_name用于确认候选定义是不是用户想要的那张单避免把请假申请和请假销假等相似名称搞混approval_code是后续所有操作的钥匙必须原样保留is_external是能不能走原生提单的判定开关create_link则是三方定义的出口需要直接交给用户。四、使用规则与决策边界approvals search的正确用法不是搜到就提单而是遵循一整套决策规则避免 Agent 替用户拍板或误操作这是发起审批工作流的第一步。标准顺序是approvals search-approvals get-instances create。搜索结果为空时不要猜。直接告诉用户当前关键词下没有可发起定义并建议用户换关键词。命中多个结果时不要替用户拍板。先把候选定义列出来让用户选择目标审批定义。is_externaltrue时不要调用approval instances create。这类定义属于三方审批优先返回create_link并说明需要通过链接发起。只有is_externalfalse的原生定义才继续approvals get。如果用户已经明确给出approval_code不要再 search。直接执行approval approvals get。第 6 条对应 skills/lark-approval/references/lark-approval-approvals-get.md 中的常见输入来源如果你手上已经有approval_code可以绕过搜索直达详情lark-cli approval approvals get --params {approval_code:APPROVAL_CODE} --as user这背后的原则是先拿最小必要信息再执行——对象已明确时应压缩步骤不要默认走list - filter - detail - write全链路。五、结果整理输出成候选清单approvals search的结果不应原样倾倒给用户而应整理为候选清单优先展示名称 approval_code 是否三方定义 下一步建议。建议输出成下面这种结构找到 3 个可发起审批定义 1. 请假申请 - approval_code: 7C468A54-8745-2245-9675-08B7C63E7A85 - is_external: false - next: 可继续读取 definitions 详情approvals get 2. 差旅报销 - approval_code: 99887766-xxxx - is_external: true - next: 返回 create_link引导用户通过链接发起这样的结构让用户或上层 Agent 编排一眼就能看到每个候选是什么、它的 code 是什么、能不能走原生提单、下一步该做什么。配合--format table使用命令行下快速浏览多个候选定义会更直观。六、常见后续操作search 之后怎么办1用户选中了某个定义继续查看详情lark-cli approval approvals get --params {approval_code:APPROVAL_CODE} --as userapprovals get返回的form表单定义快照和node_list流程节点列表是后续组装提单 payload 的唯一可靠来源form用于识别控件id、type、选项值范围以及fieldList等明细子控件结构node_list用于识别节点 key、need_approver是否要求发起人补充审批人、approver_chosen_multi是否允许多人。注意approvals.get.form不是instances.create可直接复用的 payload 模板它主要用于识别字段结构与选项值范围。2确认是原生定义后再准备发起审批实例lark-cli approval instances create --data {approval_code:APPROVAL_CODE,form:[...]} --as user --yesinstances create是写操作需要的 scopes 为[approval:instance:write]。执行前必须让用户确认最终定义、表单值和节点参数真正执行时显式传--yes如需要幂等可补uuid。成功后至少回报approval_name、instance_code与instance_link。3确认是三方定义时直接返回链接当is_externaltrue时优先向用户返回create_link说明该审批需在三方系统或跳转页面中发起而不是通过原生instances.create。最小判断表你手上有什么下一步只有口语需求比如帮我提个请假审批先approvals search已经拿到approval_code直接approvals get已拿到form/node_list且用户已给出表单值和审批人组装instances createis_externaltrue返回create_link不要调instances create七、与相关 reference 的配合搜到之后的值来源approvals search本身只解决找到哪个定义而提单时每个值从哪里拿由 skills/lark-approval/references/lark-approval-instance-value-sourcing.md 定义。它的默认来源规则与本命令直接相关审批定义、approval_code、is_external、create_link等基础信息默认从approval approvals search获取控件id、type、选项值、子控件结构默认从approval approvals get.form获取节点 key、need_approver、approver_chosen_multi等节点信息默认从approval approvals get.node_list获取。也就是说approvals search产出的正是整条值来源链的第一环。在此基础上skills/lark-approval/references/lark-approval-initiate.md 给出了完整的提单工作流与严禁行为清单如严禁跳过approvals.get、严禁对三方定义调用instances create、严禁把姓名直接写进node_approver_list等建议在编排完整流程时一并阅读。八、小结一条命令一个清晰的分叉点approvals search的价值在于它是自然语言意图与结构化approval_code之间的桥梁也是整条审批提单链上唯一需要面向用户做候选选择的节点。用好它只需记住三件事参数极简必填只有--data {keyword:...}配合--as user、--format、--dry-run即可覆盖绝大多数场景决策靠is_externaltrue走create_linkfalse才继续approvals get-instances create结果要整理输出名称 approval_code 是否三方定义 下一步建议的候选清单而不是把原始 JSON 直接丢给用户。如果需要进一步了解控件取值结构input/date/radio/fieldList等与节点参数组装可继续阅读 lark-approval-instance-form-control-parameters.md 与 lark-approval-initiate.md它们与本文共同构成搜索定义 - 查看详情 - 发起实例的完整闭环。【免费下载链接】cliThe official Lark/飞书 CLI tool, maintained by the larksuite team — built for humans and AI Agents. Covers core business domains including Messenger, Docs, Base, Sheets, Calendar, Mail, Tasks, Meetings, and more, with 200 commands and 20 AI Agent Skills.项目地址: https://gitcode.com/gh_mirrors/cli414/cli创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Vue Router 2 路由过渡动画完全指南:为 router-view 接入 transition 的三种实战方案

Vue Router 2 路由过渡动画完全指南:为 router-view 接入 transition 的三种实战方案

前端路由 【免费下载链接】vue-router 🚦 The official router for Vue 2 项目地址: https://gitcode.com/gh_mirrors/vu/vue-router 点击查看 免费下载 本篇技术指南围绕 Vue 2 官方路由库 vue-router 的路由过渡动画(Transitions&#xff…

2026/9/21 1:55:01 阅读更多 →
swagger-codegen 生成的 TypeScript Angular 客户端:构建、发布与消费指南

swagger-codegen 生成的 TypeScript Angular 客户端:构建、发布与消费指南

开发工具代码生成API设计 【免费下载链接】swagger-codegen swagger-codegen contains a template-driven engine to generate documentation, API clients and server stubs in different languages by parsing your OpenAPI / Swagger definition. 项目地址: http…

2026/9/21 1:55:01 阅读更多 →
IPython 终端快捷键完全指南:内置绑定、筛选器与自定义配置

IPython 终端快捷键完全指南:内置绑定、筛选器与自定义配置

IPython 终端快捷键完全指南:内置绑定、筛选器与自定义配置 【免费下载链接】ipython Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc. 项目地址: https://gitco…

2026/9/21 1:55:01 阅读更多 →

最新新闻

深入解析 Airbyte 声明式连接器 source-nebius-ai:基于 Low-Code CDK 的 Manifest 驱动数据同步

深入解析 Airbyte 声明式连接器 source-nebius-ai:基于 Low-Code CDK 的 Manifest 驱动数据同步

深入解析 Airbyte 声明式连接器 source-nebius-ai:基于 Low-Code CDK 的 Manifest 驱动数据同步 【免费下载链接】airbyte Open-source data movement for ELT pipelines and AI agents — from APIs, databases & files to warehouses, lakes, and AI applicat…

2026/9/21 2:26:21 阅读更多 →
ADManager Plus:企业级AD域图形化管理与PowerShell深度集成平台

ADManager Plus:企业级AD域图形化管理与PowerShell深度集成平台

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 2:26:21 阅读更多 →
AXI DMA errors:200深度解析:ZYNQ下DMADecErr的定位与修复

AXI DMA errors:200深度解析:ZYNQ下DMADecErr的定位与修复

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 2:26:21 阅读更多 →
VS Code Python开发环境配置指南:从解释器到虚拟环境一步到位

VS Code Python开发环境配置指南:从解释器到虚拟环境一步到位

1. 为什么选VS Code来做Python开发先说个我踩过的坑。早些年做Python开发,我用的还是PyCharm,功能确实全,但启动慢、吃内存,笔记本风扇转得跟飞机引擎似的。后来换到VS Code,一开始也有点不适应——感觉它更像一个&quo…

2026/9/21 2:26:21 阅读更多 →
Android Studio记单词App实战:Room+RecyclerView+Material3

Android Studio记单词App实战:Room+RecyclerView+Material3

简介:本资源是一份面向计算机及相关专业本科生的安卓开发实战项目,专为课程设计与期末大作业打造,适用于正在完成Android移动应用开发实践任务的学习者。项目基于Android Studio开发,实现功能完整的记单词App,含单词记…

2026/9/21 2:26:21 阅读更多 →
丹弗斯VLT2900变频器实战解读:从说明书到调试维护全攻略

丹弗斯VLT2900变频器实战解读:从说明书到调试维护全攻略

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 2:25:21 阅读更多 →

日新闻

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程 【免费下载链接】agentic-awesome-skills AAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and …

2026/9/21 0:00:01 阅读更多 →
gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析

gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析

gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析 【免费下载链接】gin-vue-admin 🚀ViteVue3Gin拥有AI辅助的基础开发平台,企业级业务AI开发解决方案,内置mcp辅助服务,内置skills管理,…

2026/9/21 0:00:01 阅读更多 →
Wox 全功能插件开发实战指南:基于 Python / Node.js 宿主与 WebSocket 的持久化插件体系

Wox 全功能插件开发实战指南:基于 Python / Node.js 宿主与 WebSocket 的持久化插件体系

桌面应用AI 应用插件系统 【免费下载链接】Wox A cross-platform launcher that simply works 项目地址: https://gitcode.com/gh_mirrors/wo/Wox 点击查看 免费下载 全功能插件(Full-featured Plugin)是 Wox 三类插件实现方式中能力最完整的…

2026/9/21 0:00:01 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/21 2:19:36 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/19 23:01:36 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/19 17:50:38 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →