# xpcool.com 工作空间 · 统一规则与项目索引 > 随会话自动加载。本文件只放**规则与索引**;生产部署、服务器/容器/站点清单、nginx 与证书约定、安全加固与告警去重、本机工具链坑位,全部见同目录 **`DEPLOY.md`**。 ## 三条铁律(全项目通用) 1. **中文注释**:写/改代码时,在应有处(函数、复杂逻辑、配置项、非显然分支)加中文注释。 2. **做记录**:每次请求/变更/修复/文档动作,在对应项目 `CHANGELOG.md` 顶部追加一条 `YYYY-MM-DD | 类型 | 一句话摘要`(REQ/CHG/FIX/DOC/CFG/DEP)。 3. **中文优先**:思考、输出、交流能中文就中文。 ## 接口设计规范(2026-08-27 起 · 强制) - 新建 HTTP 接口**一律 POST**;**URL 不带任何参数**(查询参数、路径参数 `{id}` 都禁止);**入参全部走 body(JSON)**。 - 路由用静态 path(如 `/recruitment/info/update`),`id` 等也放 body。 - 同时约束 service 后端(g.Meta `method:"post"`)与 admin 前端(`requestClient.post(url, data)`,url 无参)。 - 范本模块:service.xpcool.com `recruitment`;存量接口逐步迁移。 ## 界面开发约定(2026-08-26 起) - admin.xpcool.com 写 TDesign 组件前**先用 TDesign MCP 查官方文档**(`tdesign-mcp-server`,配在 `~/.workbuddy/mcp.json`),用官方封装属性,避免自造轮子。 - 树形表格必须用 `t-enhanced-table`;异步数据后需 `await nextTick()` + `tableRef.value.expandAll()`(`defaultExpandAll` 只在首次渲染生效)。 ## 工作空间与项目索引 - 本仓库 `workbuddy.xpcool.com`(规则+索引+每日日志),远程 `https://git.xpcool.com/xpcool/workbuddy.xpcool.com.git`。 - **布局约定**:所有项目与工作空间位于同一父目录下(`workbuddy.xpcool.com`、`admin.xpcool.com`、`service.xpcool.com`、`tool.xpcool.com`、`home.xpcool.com`、`xpcool.com`),换设备按此布局 clone,索引即生效。 | 项目 | 类型 | 变更记录 | 远程仓库 | |------|------|---------|---------| | admin.xpcool.com | Vue 管理后台前端 | `../admin.xpcool.com/.workbuddy/memory/CHANGELOG.md` | git.xpcool.com/xpcool/admin.xpcool.com.git | | service.xpcool.com | Go 后端服务 | `../service.xpcool.com/.workbuddy/memory/CHANGELOG.md` | git.xpcool.com/xpcool/service.xpcool.com.git | | tool.xpcool.com | 前端工具站 | `../tool.xpcool.com/.workbuddy/memory/CHANGELOG.md` | git.xpcool.com/xpcool/tool.xpcool.com.git | | home.xpcool.com | 前端服务台(公开服务入口) | `../home.xpcool.com/.workbuddy/memory/CHANGELOG.md` | 本地 git init/commit,远程待建 | | xpcool.com | 主域名:随机壁纸站(浏览器实时生成,可导出 4K;中英日韩 + 日夜主题) | `../xpcool.com/.workbuddy/memory/CHANGELOG.md` | 2026-09-13 上线;本地 git init/commit,远程待建 | > **站点备案号(同域名子站通用):`黔ICP备2026003933号`** —— 集中写在 xpcool.com `src/config.ts` 的 `SITE.icp`,跳转核验 `https://beian.miit.gov.cn/`;admin.xpcool.com 在 `packages/preferences/src/index.ts` 的 `appCopyrightPreferences`。改号时两处一起改。**待办**:home / tool 两个子站尚未展示备案号。 ## 命中流程 判断涉及哪个项目 → 读该项目 CHANGELOG 头部 10–15 条 → 处理后于顶部追加本次记录 → 新增项目时同步更新上方索引表。 ## 协作约定 - **只 commit、不要 push**(推送由用户自行完成,避免凭据交互失败)。换设备开工前先 `git pull` 各仓库。 - **验证分工**:AI 能做的(类型检查、构建、冒烟测试)照做;浏览器交互体验、视觉效果交给用户手动验证,不反复折腾自动化。 - 服务器操作走 SSH:`193.112.118.168:22025`,用户 `xxcool`,密钥 `~/.ssh/xpcool_ed25519`。**尽量把多个操作合并成一次 SSH 调用**,减少权限弹窗。