重构 monorepo 并完善网页端订阅与首页体验
- 迁移为 frontend-web、frontend-electron、backend-web 与 docker 部署结构 - 网页端:订阅门禁二次弹窗、套餐/支付组件化、顶栏分组对齐 - 首页:最近文件与模板库布局优化,缩略图对齐,下载与删除操作 - 新增管理后台、支付与云端文件 API,更新 README 与项目规范 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
---
|
||||
description: 对话、查证、改动、引用与指令优先级(本仓库默认)
|
||||
alwaysApply: true
|
||||
---
|
||||
|
||||
# 用户级规则(核心)
|
||||
|
||||
## 非琐碎开发(回复最前 3 行)
|
||||
|
||||
`Skills:`(0~3 个,无则写无)| `MCP:`(无则写无)| `操作:` 勾选 Skills 或写「跳过」。
|
||||
任务相关须读对应 `SKILL.md` 并按其执行;MCP 先读 schema,强相关再用,勿为调用而调用。
|
||||
|
||||
## 原则
|
||||
|
||||
- **不知则停**:无法从仓库或权威来源验证 → 只问缺什么或给最短验证;禁止猜、禁止先改再说。
|
||||
- **禁幻觉**:不编造路径、符号、API、配置、版本;不确定写「不确定」及如何查证。
|
||||
- **继承上下文**:结合整段对话;最新一条默认延续当前任务,区分细化与换方向。
|
||||
- **回复**:简体中文;标识符与代码保持原文。结构:**结论** → **要点** → **命令**(若有)。少寒暄、少加粗;禁「保证/一定/完美/彻底解决」。
|
||||
- **引用代码**:独占一行 `startLine:endLine:filepath`,行号与路径须真实。
|
||||
- **中文 UTF-8**:含中文文件 UTF-8 无 BOM;灌库只用 `scripts/apply-mysql-utf8.ps1`(禁 `type`/管道灌库);`bat` 不写中文 SQL。
|
||||
|
||||
## 改动
|
||||
|
||||
- **最小 scope**:只改任务所需;少动无关文件;禁止为省事堆进单文件(巨型组件、全局聚合 types/index 等)。
|
||||
- **单点推进**:同一问题优先一处修;连续两次仍不稳 → 停加代码,列 1~3 条假设或要最小复现。
|
||||
- **未要求不扩**:连带风险一句点出;与任务冲突时让用户选,不绕边界扩 scope。
|
||||
- **随改随清**:替换/迁路径/删功能时,在同一边界内删失效代码、引用、配置与文件;先搜索确认无引用再删,无法确认则问用户。
|
||||
- **清理范围**:不做无关全库大扫除;不主动删跨模块资产、文档、迁移、构建产物或用途不明的历史文件;删/留须在回复中简要说明。
|
||||
|
||||
## 结构
|
||||
|
||||
- 动手前读仓库既有目录、命名与同类模块(`README` / `AGENTS.md` / `docs` / 邻近代码),新代码跟现有一致。
|
||||
- **一次一边界**(feature / 层 / 子系统);契约(类型、API、路由配置)与实现(handler、service、UI)分离,避免逻辑散落。
|
||||
- 单文件过大先按仓库习惯拆分;复用现有抽象;diff 与 UI/错误处理跟仓库一致。
|
||||
|
||||
## 执行
|
||||
|
||||
- 能本机执行则直接执行并回报;不把可执行项只写成教程;失败可换路径再试。
|
||||
- `user_info` 中的日期/年份以该字段为准。
|
||||
- 密钥、令牌、生产配置脱敏,不写入仓库与日志。
|
||||
|
||||
## 遵循
|
||||
|
||||
- 用户规则、工具说明、Skill 说明中指定格式/流程须执行,非建议。
|
||||
@@ -0,0 +1,12 @@
|
||||
---
|
||||
description: 写代码时的约束(本仓库默认)
|
||||
alwaysApply: true
|
||||
---
|
||||
|
||||
# 写代码
|
||||
|
||||
- 只改完成任务所需的代码;不 drive-by 重构、不编辑无关文件、不扩 scope;不写无调用链的示范代码、不夹带 demo 文件。
|
||||
- 写之前读上下文;命名、类型、抽象、import、注释密度与现有代码一致;优先复用已有函数/组件。
|
||||
- diff 中每行都应对任务负责:不写冗长注释/显而易见 docstring/多余变量/过度 try-catch;优先统一路径而非堆分支。
|
||||
- 不删与任务无关的注释或代码(避免难审 diff)。
|
||||
- UI:间距、字体、颜色、布局与现有设计一致。
|
||||
@@ -0,0 +1,19 @@
|
||||
---
|
||||
description: 仅在用户明确要求时 git commit;安全协议
|
||||
alwaysApply: true
|
||||
---
|
||||
|
||||
# Git commit
|
||||
|
||||
- 仅当用户在当前对话中明确要求创建 commit 时才提交;若含糊先问。用户未要求 commit 则不要提交。
|
||||
- 禁止:`git config` 任何修改。
|
||||
- 禁止:未获用户明确要求的破坏性命令(如 `push --force`、`reset --hard` 等)。
|
||||
- 禁止:跳过 hooks(`--no-verify`、`--no-gpg-sign` 等)除非用户明确要求。
|
||||
- 禁止:`git push --force` 到 `main`/`master`;若用户要求则先警告。
|
||||
- 避免 `git commit --amend`。仅当同时满足:用户明确要求 amend,或 commit 成功但 hook 自动改了文件需纳入;且 HEAD 为你本会话所建;且未 push(`git status` 显示 ahead 且未 push)——才 amend。commit 失败或被 hook 拒绝:禁止 amend,修问题后新建 commit。已 push:禁止 amend(除非用户明确要求并知悉需 force)。
|
||||
- 禁止:`git` 带 `-i` 的交互命令。
|
||||
- 无改动则不要空 commit。
|
||||
- 不要 stage/提交明显密钥文件(`.env`、`credentials.json` 等);用户若坚持提交须警告。
|
||||
- 创建 commit 时并行执行:`git status`、`git diff`(staged+unstaged)、`git log`(看消息风格);该阶段除 git 外不要用其它命令读仓库/扫代码;分析后写 message;再顺序:`git add` 相关文件 → `git commit` → `git status` 校验。
|
||||
- commit message 用 HEREDOC 传入(示例):`git commit -m "$(cat <<'EOF'\n...\nEOF\n)"`。
|
||||
- 禁止:用户未明确要求则不要 `git push`。
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
description: GitHub 任务用 gh;创建 PR 流程
|
||||
alwaysApply: true
|
||||
---
|
||||
|
||||
# GitHub / PR
|
||||
|
||||
- 所有 GitHub 相关操作(issues、PR、checks、releases、从 URL 取信息)用 `gh`,通过 Shell 执行。
|
||||
- 创建 PR 前并行:`git status`、`git diff`、检查当前分支是否跟踪远端及是否与远端同步、`git log` + `git diff <base-branch>...HEAD`(覆盖从 base 分叉起的全部提交,非只看最新一条)。
|
||||
- 分析将纳入 PR 的全部改动与全部相关 commit,再写 PR 摘要。
|
||||
- 顺序:必要时建新分支 → 需要时 `git push -u origin HEAD` → `gh pr create`;`--body` 用 HEREDOC。
|
||||
- PR body 结构:`## Summary`(1~3 条)、`## Test plan`(可勾选清单)。
|
||||
- 完成后把 PR URL 返回给用户。
|
||||
- 禁止:`git config` 修改;禁止用户未要求时 `push`。
|
||||
Reference in New Issue
Block a user