[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71S31F53BJGK656PVHWV6FS":3,"skill-same:01M71S31F53BJGK656PVHWV6FS":66},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":48,"repositoryHtmlUrl":49,"repositoryHomepageUrl":6,"ownerHtmlUrl":50,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":51,"install":52,"resources":65},"01M71S31F53BJGK656PVHWV6FS","offer-personaliser",null,"Compose the personalised offer letter from the negotiated terms and the JD's compensation framework. Surface it for HR BP HITL approval before the non-revocable send (gated by an onPreToolUse hook per §4.13).","arturcrmbot\u002Fzava-control-plane","arturcrmbot","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F156445312?v=4","01M71R9QBEJ4ZSX5AXBGBYH82C","Artur Zielinski","01M71R9QCJSV19ESCAF5773TWH",1,"MIT","https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane\u002Fblob\u002Fmain\u002Fapi\u002Fserver\u002Fskills\u002Foffer-personaliser\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"offer personaliser","gated","approval","it","terms","lookup","hook","compensation","offer letter","hitl","jd","template","comp","hr","hr bp","send","for","compose","fetch","letter","2026-11-10 13:02:02",false,"---\nname: offer-personaliser\ndescription: Compose the personalised offer letter from the negotiated terms and the JD's compensation framework. Surface it for HR BP HITL approval before the non-revocable send (gated by an onPreToolUse hook per §4.13).\nallowed-tools: offer_template_fetch, comp_band_lookup\n---\n\nYou are the offer-personaliser step in the POC2 hiring orchestrator (Phase 9).\n\n## Inputs\n\nThe candidate, the JD, the panel feedback (from Phase 7), and any negotiated comp deltas captured during interview.\n\n## Procedure\n\n1. Call `offer_template_fetch(jurisdiction, role_family)` for the right base letter (USA at-will, DE statutory notice).\n2. Call `comp_band_lookup(role, level, market)` to confirm the negotiated number sits within the approved band.\n3. Compose the letter: name, title, start date target, base + bonus + equity components, signing bonus (if any), location\u002Fremote policy, jurisdiction clauses, manager + HR BP signatures.\n4. Set `requires_hr_bp_approval = true` always. The orchestrator-level HITL waits on the `offer_approval` external event before the send.\n\n## Output\n\n```json\n{\n  \"candidate_id\": \"C-001\",\n  \"offer_letter_md\": \"Dear ...,\",\n  \"comp\": {\"base\": 0, \"bonus\": 0, \"equity\": 0, \"signing\": 0, \"currency\": \"GBP\"},\n  \"start_date_target\": \"2026-06-15\",\n  \"within_band\": true,\n  \"requires_hr_bp_approval\": true,\n  \"send_attachments\": [\"offer.pdf\", \"benefits-summary.pdf\"]\n}\n```\n\nThe actual send is performed by an `onPreToolUse`-hook-gated `graph_mail` call\n*after* the orchestrator unblocks on HR BP approval. The skill never sends.\n","You are the offer-personaliser step in the POC2 hiring orchestrator (Phase 9).\n\n## Inputs\n\nThe candidate, the JD, the panel feedback (from Phase 7), and any negotiated comp deltas captured during interview.\n\n## Procedure\n\n1. Call `offer_template_fetch(jurisdiction, role_family)` for the right base letter (USA at-will, DE statutory notice).\n2. Call `comp_band_lookup(role, level, market)` to confirm the negotiated number sits within the approved band.\n3. Compose the letter: name, title, start date target, base + bonus + equity components, signing bonus (if any), location\u002Fremote policy, jurisdiction clauses, manager + HR BP signatures.\n4. Set `requires_hr_bp_approval = true` always. The orchestrator-level HITL waits on the `offer_approval` external event before the send.\n\n## Output\n\n```json\n{\n  \"candidate_id\": \"C-001\",\n  \"offer_letter_md\": \"Dear ...,\",\n  \"comp\": {\"base\": 0, \"bonus\": 0, \"equity\": 0, \"signing\": 0, \"currency\": \"GBP\"},\n  \"start_date_target\": \"2026-06-15\",\n  \"within_band\": true,\n  \"requires_hr_bp_approval\": true,\n  \"send_attachments\": [\"offer.pdf\", \"benefits-summary.pdf\"]\n}\n```\n\nThe actual send is performed by an `onPreToolUse`-hook-gated `graph_mail` call\n*after* the orchestrator unblocks on HR BP approval. The skill never sends.\n",{"name":5,"description":7,"allowed-tools":44},"offer_template_fetch, comp_band_lookup","main","db273d7d646605c0bf0175dc9c8057b9ad2628b5","api\u002Fserver\u002Fskills\u002Foffer-personaliser",2,"https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane","https:\u002F\u002Fgithub.com\u002Farturcrmbot","2026-09-28 17:47:06",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add arturcrmbot\u002Fzava-control-plane --skill offer-personaliser",{"tool":58,"command":59},"bunx","bunx skills add arturcrmbot\u002Fzava-control-plane --skill offer-personaliser",{"tool":61,"command":62},"pnpm","pnpm dlx skills add arturcrmbot\u002Fzava-control-plane --skill offer-personaliser","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane\u002Fblob\u002Fmain\u002Fapi\u002Fserver\u002Fskills\u002Foffer-personaliser\u002FSKILL.md",true,[],[67,88,104,117,125,132],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":39},"01M71SJECD4KXSSJV1B0HSY4T4","proactive-customer-care","Proactively notifies and, where warranted, extends a small bounded goodwill gesture to a customer whose itinerary materially changed.","https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane\u002Fblob\u002Fmain\u002Fverticals\u002Ftravel\u002Fskills\u002Fproactive-customer-care\u002FSKILL.md",[],[74,75,76,77,78,79,80,81,82,83,84,85,86,87],"proactive","customer","proactive customer care","customer care","gesture","action","bounded","status","check","booking","operations","travel","issue","itinerary",{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":39},"01M71SJ9VHGNNTB6452H1KRZD6","payment-exception","Resolves a failed balance payment by retrying it to complete the booking, or releasing the booking's inventory when retry is not viable.","https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane\u002Fblob\u002Fmain\u002Fverticals\u002Ftravel\u002Fskills\u002Fpayment-exception\u002FSKILL.md",[],[95,96,22,97,98,83,99,100,101,81,102,103,82,84,85],"payment","payment exception","retry","balance","when","release","complete","capacity","inventory",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":39},"01M71SJ6S6XREB0J6CCVCSFZ9E","hotel-supplier-recovery","Restores accommodation for a shortfall-hit hotel allotment by moving contracted rooms from a donor allotment with headroom, resolving the reported supplier shortfall.","https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane\u002Fblob\u002Fmain\u002Fverticals\u002Ftravel\u002Fskills\u002Fhotel-supplier-recovery\u002FSKILL.md",[],[111,112,113,114,82,84,85,115,35,116],"hotel supplier recovery","hotel","recovery","with","move","headroom",{"skillNo":118,"name":119,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":122,"publishedAt":39},"01M71SJ4G5MPM50WZ6F66M3PNS","holiday-sales-booking","https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane\u002Fblob\u002Fmain\u002Fverticals\u002Ftravel\u002Fskills\u002Fholiday-sales-booking\u002FSKILL.md",[],[123,83,124],"holiday sales booking","sales",{"skillNo":126,"name":127,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":130,"publishedAt":39},"01M71SJ2AHHWN2C4YV2RKEE947","flight-disruption-recovery","https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane\u002Fblob\u002Fmain\u002Fverticals\u002Ftravel\u002Fskills\u002Fflight-disruption-recovery\u002FSKILL.md",[],[131,113],"flight disruption recovery",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":138,"publishedAt":39},"01M71SHYPK8HNQ80C9XAWSER53","destination-operations","Dispatches a replacement resort transfer when an arrival is at risk, rebinding any travellers on the at-risk transfer to the replacement.","https:\u002F\u002Fgithub.com\u002Farturcrmbot\u002Fzava-control-plane\u002Fblob\u002Fmain\u002Fverticals\u002Ftravel\u002Fskills\u002Fdestination-operations\u002FSKILL.md",[],[139,84,140,141,82,142,85,143,99,144],"destination operations","destination","risk","dispatch","at","transfer"]