원클릭으로
pick-compose-template
Shows the user a template picker card with the 3 candidate templates you picked.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Shows the user a template picker card with the 3 candidate templates you picked.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Create a new contact (person or business) with ALL its channels and address in one call.
Fetch the full body and metadata of a single email by message_id.
Record a new bill / recurring expense
Create a new calendar event in Yorik's local calendar
Attach a postal address (home, work, billing, shipping) to an existing contact.
Attach a channel (email, phone, whatsapp, signal, sms, website, social) to a contact.
| name | pick_compose_template |
| description | Shows the user a template picker card with the 3 candidate templates you picked. |
| when_to_use | Call AFTER list_compose_templates with the 3 best-fit template_ids you chose by reading their prose, in best-first order. The user clicks one; you'll see a `[template_picked id=X]` reply. Wait for that reply, then call compose_draft with the chosen id. Do NOT enumerate the candidates in prose — the card carries them. |
| when_not_to_use | - You haven't read the template list yet — call list_compose_templates first. - Iterating on an existing draft (Compose context line carries `draft_id=N` — template is locked). - The user already named the exact template — pass a single-element candidates list so the picker still confirms but skips ambiguity. |
| inputs | {"candidates":{"type":"array","items":{"type":"string"},"required":true,"description":"1-5 template_ids in best-first order, as returned by list_compose_templates. First\nelement is your top pick; order carries the ranking. Each id must exist in the\nlist_compose_templates output — unknown ids are silently dropped (the picker still\nrenders with the surviving candidates).\n"}} |
| outputs | {"ok":{"type":"boolean","description":"True once the picker card is emitted with at least one valid candidate."},"rendered":{"type":"array","description":"The candidate ids that actually rendered on the card (after dedupe + unknown-id filtering)."},"unknown":{"type":"array","description":"Candidate ids passed in but not found in the template directory — log only, not user-visible."}} |
| permissions | ["admin","member","restricted"] |
| side_effects | Emits a `template_picker` ui_action that the chat renders inline. The card carries the candidates' name, description, kind, and when_to_use bullets. User click → `[template_picked id=X]` follow-up message routes the chosen template back to the LLM. |
| cost | One template-directory lookup. Sub-millisecond. |
| tags | ["compose","templates","picker"] |
Renders a template picker card with the candidate template_ids you pass.
The user clicks one and you receive a [template_picked id=X] follow-up
message; resume the request with compose_check_recipient + compose_draft
using that id.
candidates in best-first order — position carries the ranking.[template_picked id=…] before calling compose_draft.