lark-approval

Query, process, and initiate Lark approval tasks and instances via lark-cli.

Updated May 28, 2026
One-click install
npx skills add https://github.com/changfengpro/agent-skills --skill lark-approval-changfengpro
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lark-approval
Source: https://github.com/changfengpro/agent-skills/tree/main/skills/lark-approval
Command: npx skills add https://github.com/changfengpro/agent-skills --skill lark-approval-changfengpro

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Handling Lark (Feishu) approvals manually through the client is slow when you need to search launchable approval definitions, process pending tasks, or submit new approval instances programmatically. This Skill routes all approval-related intents to the correct lark-cli approval commands with strict parameter rules. ## Core Features & Use Cases - Approval Task Processing: Query pending/completed approval tasks and approve, reject, transfer, add-sign, rollback, or remind on them using instance_code and task_id pairs. - Native Approval Initiation: Follow the fixed chain approvals search -> approvals get -> instances create to submit leave, expense, or travel approvals with correctly structured form controls and node approvers. - Instance Management: View instance details, cancel initiated instances, query initiated lists, and append CC recipients. - Use Case: A user says "approve my pending leave requests" — the Skill runs tasks query to get instance_code and task_id, then executes tasks approve with confirmation. ## Quick Start Ask the assistant to list my pending Lark approvals and approve the leave request from yesterday.

Frequently Asked Questions about lark-approval

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I approve a pending Lark approval task from the command line?

First run lark-cli approval tasks query with topic 1 to get the instance_code and task_id, then run lark-cli approval tasks approve with both values and an optional comment. Write operations require the --yes flag after user confirmation.

How to submit a leave approval in Feishu using the API?

Follow the fixed chain: approvals search to find the approval_code, approvals get to read the form controls and node_list, then instances create with the assembled form JSON array. Never skip approvals get, since control IDs and option values come from the definition detail.

What is the difference between Lark approval tasks and Lark tasks?

Approval todos are approval documents and instances, not Feishu tasks. Any action on approval documents such as approve, reject, transfer, or rollback belongs to lark-approval; only non-approval todos should go to lark-task.

Why does my Lark approval write operation fail with error 1395001?

Error 1395001 means the task state changed or the write precondition failed, often because someone else already processed the task. Do not retry blindly; run one status query with tasks query or instances get, then report the conclusion to the user.

Can I initiate third-party Lark approval definitions through the API?

No. Definitions with is_external=true cannot be submitted via instances create. Return the create_link from the search result and guide the user to initiate through that link instead.

Which approval form controls are not supported by the create instance API?

Unsupported controls include text, mutableGroup, account, serialNumber, tripGroup, and several HR control groups such as onboarding and offboarding groups. If a definition contains these, it cannot be fully submitted through the API alone.