feat: IMAP mail sync with thread-to-contact matching (PRD §6.1)
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
This commit is contained in:
1 parent
7acc0c5451
commit
e45b68bb8b
1089 files changed
+260614
No files matched your search
Executable
+43
@@ -0,0 +1,43 @@
|
||||
---
|
||||
name: ui-ux-pro-max
|
||||
description: UI/UX design intelligence and implementation guidance for building polished interfaces. Use when the user asks for UI design, UX flows, information architecture, visual style direction, design systems/tokens, component specs, copy/microcopy, accessibility, or to generate/critique/refine frontend UI (HTML/CSS/JS, React, Next.js, Vue, Svelte, Tailwind). Includes workflows for (1) generating new UI layouts and styling, (2) improving existing UI/UX, (3) producing design-system tokens and component guidelines, and (4) turning UX recommendations into concrete code changes.
|
||||
---
|
||||
|
||||
Follow these steps to deliver high-quality UI/UX output with minimal back-and-forth.
|
||||
|
||||
## 1) Triage
|
||||
Ask only what you must to avoid wrong work:
|
||||
- Target platform: web / iOS / Android / desktop
|
||||
- Stack (if code changes): React/Next/Vue/Svelte, CSS/Tailwind, component library
|
||||
- Goal and constraints: conversion, speed, brand vibe, accessibility level (WCAG AA?)
|
||||
- What you have: screenshot, Figma, repo, URL, user journey
|
||||
|
||||
If the user says "全部都要" (design + UX + code + design system), treat it as four deliverables and ship in that order.
|
||||
|
||||
## 2) Produce Deliverables (pick what fits)
|
||||
Always be concrete: name components, states, spacing, typography, and interactions.
|
||||
|
||||
- **UI concept + layout**: Provide a clear visual direction, grid, typography, color system, key screens/sections.
|
||||
- **UX flow**: Map the user journey, critical paths, error/empty/loading states, edge cases.
|
||||
- **Design system**: Tokens (color/typography/spacing/radius/shadow), component rules, accessibility notes.
|
||||
- **Implementation plan**: Exact file-level edits, component breakdown, and acceptance criteria.
|
||||
|
||||
## 3) Use Bundled Assets
|
||||
This skill bundles data you can cite for inspiration/standards.
|
||||
|
||||
- **Design intelligence data**: Read from `skills/ui-ux-pro-max/assets/data/` when you need palettes, patterns, or UI/UX heuristics.
|
||||
- **Upstream reference**: If you need more phrasing/examples, consult `skills/ui-ux-pro-max/references/upstream-skill-content.md`.
|
||||
|
||||
## 4) Optional Script (Design System Generator)
|
||||
If you need to quickly generate tokens and page-specific overrides, use the bundled script:
|
||||
|
||||
```bash
|
||||
python3 skills/ui-ux-pro-max/scripts/design_system.py --help
|
||||
```
|
||||
|
||||
Prefer running it when the user wants a structured token output (ASCII-friendly).
|
||||
|
||||
## Output Standards
|
||||
- Default to ASCII-only tokens/variables unless the project already uses Unicode.
|
||||
- Include: spacing scale, type scale, 2-3 font pair options, color tokens, component states.
|
||||
- Always cover: empty/loading/error, keyboard navigation, focus states, contrast.
|
||||
Reference in new issue
Block a user