docs: 同步设计Token约束至AGENTS.md并添加根目录gitignore规范
这个提交包含在:
107
AGENTS.md
107
AGENTS.md
@@ -82,6 +82,7 @@
|
||||
- 文件与多媒体存储:直接复用官方 OSS/COS/Local 插件,严禁手写底层上传流。
|
||||
- 缓存与任务:复用 Cool-Admin 官方 Redis 缓存装饰器与 Task 定时任务引擎。
|
||||
- 支付与通讯:涉及第三方支付或短信通知,优先复用官方插件。
|
||||
- 数据库 crmmpdata
|
||||
|
||||
### 4.2 管理后台前端 Arco Design (React) 最大化复用清单
|
||||
1. **官方模板与中后台骨架复用**:
|
||||
@@ -135,3 +136,109 @@
|
||||
- 保证推送到远端的代码干净无杂质(严禁提交临时调试文件、无用日志打印或未验证代码)。
|
||||
6. **全局中文交流与文档**:
|
||||
- 团队内部交互、设计文档、代码注释及任务汇报均统一采用中文描述。
|
||||
|
||||
|
||||
更新版,已把**风格约束**一起并入 AI Coding 约束。可直接放入 `.cursorrules` / `CLAUDE.md`。
|
||||
|
||||
```md
|
||||
# NexaCard AI — AI Coding 约束
|
||||
|
||||
## 风格定位
|
||||
- 瑞士国际主义 + 现代 SaaS + 编辑感
|
||||
- 内容优先,留白即品牌,AI 隐形,CRM 无感,NFC 轻量
|
||||
- 全球商务、中性、可信、克制
|
||||
- 禁止炫技、拟物、霓虹、玻璃拟态、重装饰
|
||||
- 一屏只允许 1 个主 CTA
|
||||
|
||||
## 技术栈
|
||||
- Next.js + TypeScript + Tailwind + shadcn/ui
|
||||
- 移动端:Expo / React Native
|
||||
- 状态:Zustand + TanStack Query
|
||||
- 表单:react-hook-form + zod
|
||||
- 国际化:next-intl
|
||||
- 测试:Vitest + Playwright
|
||||
|
||||
## 设计 Token(必须引用,禁止硬编码)
|
||||
颜色 Light / Dark:
|
||||
- primary: #0B5CFF / #4D8DFF
|
||||
- primary-soft: #EAF1FF / #102A4D
|
||||
- ai: #7C5CFF / #9B8CFF
|
||||
- bg: #FFFFFF / #0B0D10
|
||||
- surface: #F7F8FA / #12151A
|
||||
- border: #E3E7ED / #262B33
|
||||
- text: #101828 / #F2F4F7
|
||||
- text-2: #667085 / #98A2B3
|
||||
- success: #12B76A / #32D583
|
||||
- warning: #F79009 / #FDB022
|
||||
- error: #F04438 / #F97066
|
||||
|
||||
间距:4 / 8 / 12 / 16 / 24 / 32 / 48 / 64
|
||||
圆角:按钮 12px,卡片 16px,模态 20px
|
||||
阴影:0 1px 2px rgba(16,24,40,0.04)
|
||||
字体:Inter, Noto Sans SC, Noto Sans Arabic, Noto Sans JP, Noto Sans KR
|
||||
字号:12 / 14 / 16 / 20 / 24 / 32 / 40
|
||||
行高:正文 1.6,标题 1.25,阿语 1.7
|
||||
最大宽度:内容 1200px,文章 720px
|
||||
行宽:45–75 字符
|
||||
|
||||
## 配色规则
|
||||
- 中性色占 80–90%,品牌色占 10–20%
|
||||
- 品牌主色只用单一钴蓝
|
||||
- 语义色只用于状态,不做装饰
|
||||
- 禁止红、绿、黄作为品牌主色
|
||||
- AI 渐变只允许小面积,面积 <5%
|
||||
- NFC 用主色 20% 透明脉冲,一次 400ms,不循环
|
||||
|
||||
## 组件规则
|
||||
- 按钮高 40 / 44 / 48,触控区 ≥44×44
|
||||
- 输入框高 44,标签在上,错误在下
|
||||
- 卡片 1px 边框,圆角 16,无重阴影
|
||||
- 卡片最多两层嵌套,优先用分隔线
|
||||
- 图标线性 1.5px,20 / 24px
|
||||
- 焦点环 2px primary,offset 2,必须可见
|
||||
- 加载优先骨架屏
|
||||
- 空状态:一句话 + 一个主 CTA
|
||||
- 悬停仅 2–4% 明暗变化,不放大
|
||||
|
||||
## 动效
|
||||
- 微交互 150ms,抽屉 250ms,页面 400ms
|
||||
- 缓动:cubic-bezier(0.2, 0.8, 0.2, 1)
|
||||
- 支持 prefers-reduced-motion
|
||||
- AI 用微光,不用打字机作为唯一反馈
|
||||
- NFC 用一次脉冲,不循环
|
||||
|
||||
## 代码规范
|
||||
- 严格 TypeScript,禁止 any
|
||||
- 组件 PascalCase,函数式
|
||||
- 样式只用 Tailwind,禁止内联 style
|
||||
- 所有文案走 i18n key,禁止硬编码
|
||||
- 颜色 / 间距 / 字体必须用 token,禁止魔法值
|
||||
- 支持暗色模式,用 CSS 变量
|
||||
- 支持 RTL,用 logical properties(ms / me / ps / pe)
|
||||
- 语义化标签 + aria + 键盘可达
|
||||
- 动效必须支持 reduced-motion
|
||||
|
||||
## 国际化
|
||||
- next-intl,默认 en
|
||||
- 独立 URL:/en /es /fr
|
||||
- hreflang + sitemap
|
||||
- 日期 / 货币 / 时区本地化
|
||||
- 按钮和标签预留 30% 文本扩展
|
||||
- 社交适配:WhatsApp、LinkedIn、Telegram、Line、KakaoTalk、微信
|
||||
- 支付:Stripe、PayPal
|
||||
- GDPR、CCPA、Cookie 同意、数据导出 / 删除
|
||||
- WCAG 2.2 AA,正文对比度 ≥ 4.5:1
|
||||
- 不强制登录看名片,不自动播放声音
|
||||
|
||||
## 禁止
|
||||
- 纯黑 #000
|
||||
- 超过 3 种字体
|
||||
- 大面积渐变 / 重阴影 / 霓虹
|
||||
- 硬编码文案或颜色
|
||||
- 固定宽度按钮
|
||||
- 强制登录看名片
|
||||
- 自动播放声音
|
||||
- 一屏多个主按钮
|
||||
- 装饰性插画 / 拟物图标 / 文化特定符号
|
||||
- 禁止使用emoji
|
||||
```
|
||||
在新工单中引用
屏蔽一个用户