diff --git a/.agents/README.md b/.agents/README.md new file mode 100644 index 0000000..0cd19eb --- /dev/null +++ b/.agents/README.md @@ -0,0 +1,21 @@ +# my-resume Agent Skills + +本目录存放 `my-resume` 的项目级 Agent skill。规则参考 SeaCloud 项目的 agent skill 组织方式,并按当前 Vite、Three.js 和作品集页面场景保留最小必要规范。 + +## 使用入口 + +1. 进入仓库后先读 `AGENTS.md`。 +2. 创建或修改代码文件时,使用 `header-comment-sync` 保持中文文件头、导出声明和复杂逻辑注释同步。 +3. 提交或推送代码时,使用 `chinese-commit-message` 生成英文 type 前缀加中文摘要的 commit message。 +4. 所有 skill 的触达文件补齐规则只处理本次任务相关文件,不要求为了单次任务全仓扫描。 + +## 当前项目事实 + +- 应用类型:独立 Vite + Three.js 作品集站点。 +- 技术栈:Vite、Three.js、GSAP、Lenis、原生 JavaScript。 +- 关键边界:交互与动效逻辑需要关注移动端性能、 reduced-motion 降级和首屏可读性。 + +## Skill 索引 + +- `header-comment-sync`:中文文件头、导出声明、复杂逻辑和风险边界注释。 +- `chinese-commit-message`:中文提交信息格式。 diff --git a/.agents/skills/chinese-commit-message/SKILL.md b/.agents/skills/chinese-commit-message/SKILL.md new file mode 100644 index 0000000..95cde0e --- /dev/null +++ b/.agents/skills/chinese-commit-message/SKILL.md @@ -0,0 +1,54 @@ +--- +name: chinese-commit-message +description: 在本仓库执行 git commit、整理提交说明或准备推送时使用,保持提交信息使用英文类型前缀加中文描述。 +--- + +# 中文提交信息 + +## 何时使用 + +- 用户要求提交、推送或整理 commit message。 +- 你准备执行 `git commit`。 +- 需要总结当前 diff 的提交说明。 + +## 核心要求 + +1. 提交信息必须使用英文 type 加中文摘要,例如 `feat: 补齐作品集 agent skill 规范`。 +2. 常用 type 优先使用 `feat`、`fix`、`refactor`、`docs`、`chore`。 +3. 不强制 scope;只有模块边界非常清楚时才使用 `feat(scene): ...`。 +4. 标题部分使用简洁中文,直接说明改动,不写“修改一下”“更新代码”这类空泛描述。 +5. 非 trivial 改动建议补中文正文,用扁平 bullet 按文件或内容块说明关键动作。 +6. 正文与标题之间空一行;正文每条 bullet 对应一个独立文件或明确内容块。 +7. 如果用户指定提交信息,优先尊重用户原意,只做必要格式整理。 + +## 触达文件补齐 + +- 不要求为了提交信息单独全仓扫描。 +- 提交前如果 diff 中的触达文件明显违反对应 skill 的触达补齐要求,应先修正当前相关链路,再整理 commit message。 +- commit 正文应概括本次触达补齐,例如“补齐触达文件注释”“同步 README 目录说明”。 + +## 推荐结构 + +```text +feat: 补齐作品集 agent skill 规范 + +- .agents/README.md: 新增项目级 skill 索引和使用入口 +- .agents/skills: 补充中文提交与注释同步规则 +- AGENTS.md: 增加本地 skill 入口 +``` + +## 不推荐写法 + +- `新增规则` +- `feat: add skills` +- `fix bug` +- `update` +- 复杂改动只有标题没有正文。 +- 正文写成长段流水账或嵌套列表。 + +## 落地检查 + +- type 是否合理。 +- 中文摘要是否覆盖主改动。 +- 是否需要正文。 +- 正文是否按文件或内容块归纳。 diff --git a/.agents/skills/header-comment-sync/SKILL.md b/.agents/skills/header-comment-sync/SKILL.md new file mode 100644 index 0000000..77f3645 --- /dev/null +++ b/.agents/skills/header-comment-sync/SKILL.md @@ -0,0 +1,66 @@ +--- +name: header-comment-sync +description: 在本仓库创建或修改 ts、tsx、js、jsx、mjs、cjs、vue、astro 文件时使用,保持中文文件头、导出声明、复杂逻辑和风险边界注释准确。 +--- + +# 注释规范与同步 + +## 目标 + +让下一次进入文件的维护者能快速理解当前职责、关键约束和风险边界。注释解释“为什么”和“边界”,不复述代码表面行为。 + +## 适用场景 + +- 新增或修改页面入口、Three.js 场景、动效编排、渲染、数据、工具或脚本文件。 +- 修改滚动时间线、WebGL shader、响应式布局、性能降级、 reduced-motion 或首屏渲染逻辑。 +- 发现旧注释与当前代码行为不一致。 + +## 核心原则 + +- 注释使用中文,描述当前事实。 +- 简单局部变量不强行注释。 +- 文件头说明文件当前职责,1 到 2 行即可。 +- 导出的函数、类、类型、常量、配置对象和复杂模块方法应有用途说明。 +- 复杂动画相位、shader uniform、滚动联动、性能降级和浏览器兼容边界需要短注释。 +- TODO/FIXME 必须说明触发条件、剩余动作和可删除条件。 + +## 文件头规则 + +- 每个适用文件都要有准确文件头。 +- 如果文件必须以 `"use client"` 或 `"use server"` 开头,文件头注释放在指令之后、导入之前。 +- Vue 文件不为了补头注释重排模板结构;在 `