From human-resources
Draft an offer letter with comp details and terms. Use when a candidate is ready for an offer, assembling a total comp package (base, equity, signing bonus), writing the offer letter text itself, or prepping negotiation guidance for the hiring manager.
How this skill is triggered — by the user, by Claude, or both
Slash command
/human-resources:draft-offer <role and level><role and level>The summary Claude sees in its skill listing — used to decide when to auto-load this skill
> If you see unfamiliar placeholders or need to check which tools are connected, see [CONNECTORS.md](../../CONNECTORS.md).
If you see unfamiliar placeholders or need to check which tools are connected, see CONNECTORS.md.
Draft a complete offer letter for a new hire.
Lark-native execution (depth core: LARK-PATTERNS, LARK-RECIPES, LARK-FUSION). Pull comp-band context from the
~~HRIS/~~compensation dataspecialty MCP (or a comp Lark Base vialark_base_search); for a market sanity-check, delegate to the/comp-analysisskill. Land the finished offer letter as a durable Wiki doc vialark_wiki_node_create(orlark_doc_create, P8) so HR + the hiring manager share one canonical copy — delegate authoring/edits to thelark-docskill. Route the offer through a real Lark approval instance for the compensation sign-off (P7,lark_apiapproval recipe /lark-approvalskill) instead of an ad-hoc "ok by me". Track offer status (extended / accepted / declined) in the recruiting Base (P5,lark_base_record_upsert). Send the candidate's offer mail as a draft only (lark_mail_draft_create, P2) — never auto-send. Resolve the hiring manager / candidate withlark_contact_searchfirst (P1).
/draft-offer $ARGUMENTS
If you don't have all details, I'll help you think through them.
## Offer Letter Draft: [Role] — [Level]
### Compensation Package
| Component | Details |
|-----------|---------|
| **Base Salary** | $[X]/year |
| **Equity** | [X shares/units], [vesting schedule] |
| **Signing Bonus** | $[X] (if applicable) |
| **Target Bonus** | [X]% of base (if applicable) |
| **Total First-Year Comp** | $[X] |
### Terms
- **Start Date**: [Date]
- **Reports To**: [Manager]
- **Location**: [Office / Remote / Hybrid]
- **Employment Type**: [Full-time, Exempt]
### Benefits Summary
[Key benefits highlights relevant to the candidate]
### Offer Letter Text
Dear [Candidate Name],
We are pleased to offer you the position of [Title] at [Company]...
[Complete offer letter text]
### Notes for Hiring Manager
- [Negotiation guidance if needed]
- [Comp band context]
- [Any flags or considerations]
If ~~HRIS (specialty external MCP, or comp Lark Base) is connected:
lark_base_search if approximated in a Base)If ~~ATS (specialty external MCP, or recruiting Lark Base) is connected:
lark_base_record_upsert if the pipeline lives in a Baselark_contact_search for the candidate, hiring manager, and approver →
open_ids./open-apis/approval/v4/instances via lark_api, dry_run first; confirm shapes with the
lark-approval skill). Don't send the offer until it's approved.lark_wiki_node_create) or a
doc (lark_doc_create); fill/format via the lark-doc skill.lark_base_record_upsert (dry_run first).lark_mail_draft_create the candidate's offer mail — leave it as a draft for a
human to review and send. Never auto-send.Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub larkcowork/lark-cowork-plugins --plugin human-resources