larkcowork/lark-cowork-plugins/approval-triage
Claude Code and agent skill by larkcowork/lark-cowork-plugins
- community
Checking that the SKILL.md file is still in the repository.
Triage pending Lark Approval queue — recommend approve/reject/ask-more per item with policy citation. Triggers "approval pending", "duyệt expense", "queue duyệt", "có gì cần duyệt".
Install
npx vskill@latest install larkcowork/lark-cowork-plugins/approval-triageSKILL.md
approval-triage
"8 approvals pending, 5 min each" → "1 batch review, 30 seconds." Agent reads; user decides.
Verbs: raw approval exposes only instances/tasks subgroups — NO +list/+get/+approve/+reject shortcut. Use the atomic lark-approval skill (wraps the API). Workflow below is conceptual flow; call the atomic skill, not raw bash. docs +search (for policy docs) takes --query + --filter JSON, no --type flag; needs search:docs:read scope. Atomic shapes + token flags: connectors/LARK-RECIPES.md.
Workflow
- Read memory.
do-not.md,policies.md(thresholds/categories),
team-roster.md (requester level + manager line), delegation-rules.md (exec — financial thresholds).
- List pending via atomic
lark-approvalskill: `list-pending
--assignee me`.
- Per approval, fetch detail (parallel ~5) via atomic skill:
get-instance <id> → requester, type, amount, reason, attachments.
- Cross-check policy. Look up rule in
policies.md(or
docs +search --query "<policy keyword>" --jq '.data' to find the doc — peek the shape, don't guess nested paths); compare requester pattern + amount vs delegation-rules.md threshold.
- Recommend per item:
- ✅ APPROVE — within policy, clean history, valid category,
below auto-decide threshold.
- ⚠️ NEEDS CHECK — 10-20% over threshold, unusual pattern,
missing context.
- ❌ REJECT — clear policy violation, over hard limit, abuse pattern.
- Format batch report — APPROVE list (batch-approvable) / NEEDS
CHECK (concern + link) / REJECT (policy reason) + action checklist.
- On confirm "approve lô N" — iterate approved batch via atomic
skill approve <id> --comment "..." per item. Each triggers pre-mutate.sh → audit log.
Hard rules
- Never auto-approve without explicit confirm (do-not.md §4).
- Show rationale for every recommendation.
- Batch ≤10 per confirm — split if more.
- Each rationale cites a §N from
policies.md(or "policy unclear"). - Reject comment always includes reason + how to fix.
- Audit every approve/reject (automatic via hook).
- Refuse if user lacks approval authority (verify via
team-roster.md).
Edge cases
- No policy in memory → "needs check" for all amount-based decisions.
- Approval expired while reviewing → surface + skip.
- Self-approval → refuse (policy violation).
- Threshold > user authority → route to manager (
team-roster.md).
Memory
Required: policies.md, team-roster.md. Recommended: delegation-rules.md (exec), incident-log.md.
Cadence
Morning brief: count + top 3 by amount. On-demand: full triage. Friday 16h: reminder if backlog >5.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckinggovernance/skills/approval-triage/SKILL.md
Popularity
- Repository stars
- 1
- Repository forks
- 10
- 7-day trend score
- 8
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/larkcowork/lark-cowork-plugins/approval-triage)