Real IMAP connection via imapflow library: - Connects to IMAP server (IMAPFlow, TLS on port 993) - Fetches recent messages (configurable limit, default 20) - Extracts: from, fromEmail, subject, date, snippet (200 chars) - Thread-to-contact matching (PRD §6.1): 1. Match sender email against persons table 2. If no person match, extract domain and match against company.website 3. Returns matchedCompany + matchedPerson for each email - Audit-logged (action: crm.mailsync:imap) - Zod validated (host, port, user, password, folder, limit) - 502 on IMAP connection failure with detail - 400 on validation failure Tested: invalid creds → 502 'IMAP connection failed', missing host → 400
2.4 KiB
Executable File
2.4 KiB
Executable File
name, description, visibility, mode, carrier, scenario, pattern_source, source_priority, triggers, related_patterns
| name | description | visibility | mode | carrier | scenario | pattern_source | source_priority | triggers | related_patterns | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| social-card-screenshot-explainer | 截图 / UI / 工具流解释类社交卡 — 必须给截图一个"舞台":可读裁切 + 标注层级 + 出现的理由。骨架:封面 + 大截图 + 3 个标注 / 截图裁切 + 放大细节 + 结论 / before-after 截图对 / 产品 UI 框 + 编号 callout / 3 步工作流。截图要大到手机能看清,箭头节制,加一个 takeaway 标题。触发:"做个工具教程卡 / AI 工作流卡 / UI 解释卡 / 截图说明卡 / before-after 卡"。NOT 原图直接丢上画布,NOT 装饰性无关截图。 | public | template | fixed-image | social-content | pattern.html | skill-first |
|
social-card-swiss |
Social Card Screenshot Explainer
Use for tool walkthroughs, product UI explanations, app feature breakdowns, AI workflow screenshots, or before/after UI captures.
Core Rule
Never drop a raw screenshot onto the canvas and call it designed. A screenshot needs a stage, readable crop, annotation hierarchy, and a reason to be there.
Structure Options
- cover + large screenshot + 3 annotations
- screenshot crop + zoomed detail + conclusion
- before / after screenshot pair
- product UI frame + numbered callouts
- 3-step workflow with one screenshot per step
Must Do
- Keep the screenshot large enough to inspect on phone.
- Crop irrelevant browser chrome unless it helps context.
- Use device/browser frames only when they clarify the source.
- Use arrows/callouts sparingly; labels must not cover key UI.
- Add one takeaway title so the card is not just a screenshot.
Avoid
- Tiny unreadable UI captures.
- Too many callout bubbles.
- Fake product screenshots.
- Decorative screenshots unrelated to the point.
Related Pattern
Use social-card-swiss as the closest pattern if a visual reference is needed.
Pattern Source Rule
Read this SKILL.md first. Do not read pattern.html by default.
Read pattern.html only when you need concrete layout rhythm, spatial relationships, or interaction/annotation behavior that this markdown cannot fully specify. When read, extract patterns only; do not copy DOM, CSS classes, exact spacing, placeholder copy, or styling wholesale.