AGENTS.md · diff

git:20261015.c94bdc8 to git:20261026.d687ba3

1 added, 1 removed. Audit B to B.

# AGENTS.md
本文件适用于在 TrailSnap(行影集)仓库中工作的编码代理,仅保留执行约束和文档入口。
## 按需查阅
- - 需求规格、AC、Agent 编码交付与提交:[.agents/skills/trailsnap-commit/SKILL.md](.agents/skills/trailsnap-commit/SKILL.md)。处理平台需求时按此流程使用 MCP,无需手动进入页面创建规格和领取任务。
+ - 需求规格、AC、Agent 编码交付与提交:[.agents/skills/trailsnap-commit/SKILL.md](.agents/skills/trailsnap-commit/SKILL.md)。受信任 Agent 按此流程使用 MCP;普通用户 AI 反馈与 Fork 贡献使用需求平台 `/api/agent-guide` 的公开 HTTP 流程,无需登录或配置 MCP。
- 开发环境与贡献流程:[CONTRIBUTING.md](CONTRIBUTING.md)。
- 安装与部署:[README.md](README.md);架构概览:[doc/architecture_design.md](doc/architecture_design.md)。
- 各模块的启动与构建命令:对应的 `package/<模块>/README.md`。
- 测试参数、服务生命周期与 CI 约定:[tests/README.md](tests/README.md)。
## 后端约束
- 新增 API 统一返回 `BaseResponse[T]`(`code`、`msg`、`data`),使用 `success()` / `fail()`;主后端定义见 `package/server/app/dependencies.py`。
- 修改 ORM 模型后,使用 Alembic 生成并提交迁移,同时提供 PostgreSQL(`package/server/alembic/`)和 SQLite(`package/server/alembic_sqlite/`)版本。同一 PR 内的多次迁移按数据库类型分别合并为一个迁移文件。
## 前端约束
以下路径均相对于 `package/website/`。
- Vue 组件使用 `<script setup lang="ts">`;状态使用 Pinia;HTTP 请求统一通过 `src/api/*`。
- 跟随主题的强调色使用 `src/style.css` 中的 `primary-*` 工具类,不硬编码品牌色。JS 绘图或动态样式通过 `src/composables/useTheme.ts` 的 `injectTheme()` 读取 `currentTheme.value.primary` / `.rgb`,并在主题切换后重新绘制。
- 每个 `text-gray-*` 和 `bg-white` 都必须搭配对应的 `dark:` 变体。Element Plus 组件继承全局暗色配置,不在各实例内覆盖内部颜色。
## 测试约束
- 本地与 CI 统一使用 `tests/scripts/run-tests.ps1`,按改动范围选择测试层和级别。
- 测试环境变量统一由 `tests/.env.test` 提供(模板:`tests/.env.test.example`;CI:`tests/.env.test.ci`)。
- 使用 Playwright CLI 调试本地开发环境时,账号密码为 `trailsnap` / `trailsnap`;登录失败应向用户询问,不得自行创建测试账号。
常用冒烟测试(仓库根目录执行):
```powershell
pwsh .\tests\scripts\run-tests.ps1 -Layer unit -Level smoke
```