CtrlK
BlogDocsLog inGet started
Tessl Logo

lark-contact

飞书 / Lark 通讯录:按姓名 / 邮箱解析成 open_id,或按 open_id 反查姓名 / 部门 / 邮箱 / 联系方式 / 个人状态 / 签名。当用户提到某人姓名要下一步发消息 / 排日程,或拿到 open_id 想查具体信息时使用。不负责部门树遍历、按部门列员工、组织架构图,这类需求走原生 OpenAPI。

77

Quality

100%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

100%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured skill body: a command-selection table, executable worked examples, focused caveats, and a clear out-of-scope section. Content is split appropriately across real reference files with clean navigation.

DimensionReasoningScore

Conciseness

Lean body that assumes Claude's competence — a decision table, short concrete examples, and bullet caveats with no preamble explaining what Feishu/Lark is, matching the lean-and-efficient anchor.

3 / 3

Actionability

Provides fully executable, copy-paste-ready commands with real flags (e.g. 'lark-cli contact +search-user --query "张三" --has-chatted --as user' and the batch_query invocation with explicit --params/--data JSON), not pseudocode.

3 / 3

Workflow Clarity

The search→send flow is sequenced ('先搜,确认 open_id,再发') with an explicit disambiguation checkpoint ('搜索命中多条…把候选列给用户挑;不要擅自选第一条'); the batch operation is a non-destructive read so the missing feedback loop does not cap it.

3 / 3

Progressive Disclosure

Overview body points to two real, one-level-deep reference files (lark-contact-search-user.md, lark-contact-get-user.md) via clearly signaled links and defers sibling domains to other skills, with no nested reference chains.

3 / 3

Total

12

/

12

Passed

Description

100%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A tightly-scoped, third-person description that states concrete capabilities, gives explicit use-when triggers, and draws clear boundaries against adjacent skills. It hits the top anchor on every dimension with no fluff.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — '按姓名 / 邮箱解析成 open_id' and reverse-lookup of '姓名 / 部门 / 邮箱 / 联系方式 / 个人状态 / 签名' — matching the multi-action anchor, not the single-domain anchor at 2.

3 / 3

Completeness

Explicitly answers both what (resolve/reverse-lookup) and when via the '当…时使用' trigger clause, with a negative boundary; not the what-only anchor at 2.

3 / 3

Trigger Term Quality

Uses natural trigger phrasing a user would actually say ('当用户提到某人姓名要下一步发消息 / 排日程', '拿到 open_id 想查具体信息时'), giving good coverage rather than just technical jargon.

3 / 3

Distinctiveness Conflict Risk

Has a clear contact-resolution niche and explicitly excludes overlapping domains ('不负责部门树遍历…走原生 OpenAPI'), so it is unlikely to trigger for sibling skills.

3 / 3

Total

12

/

12

Passed

Validation

75%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation12 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 6 suspicious

Warning

Total

12

/

16

Passed

Repository
larksuite/cli
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.