工作规则新增用户指令暗语:bug:/需求:(查码分析不改代码)、 grill:(反方评审)、落task(定案落文档并自动提交)、审 T-### (核实后审核任务更新)、补(补结论并提交)、做 T-###(实现+ 验证+执行记录+提交)。默认全栈视角、只提交本次相关文件。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
5.5 KiB
5.5 KiB
AGENTS.md
Codex / 通用 AI coding agent 的仓库级入口。进入本仓库后,先读本文,再进入
docs/00-ai-start-here.md。
项目定位
蝦皮圈優化助手(代号 cmshopee)是一个 Windows 本地桌面自动化工具:管理多个 Shopee 卖家账号,用 CDP 驱动 Chrome 自动改商品标题、换商品封面。当前单账号流程已验证,正在扩展多账号管理与 GUI。
文档位置
- 项目文档集合在
docs/,导航见docs/README.md。 - 编程入口是
docs/00-ai-start-here.md,它继续导航到愿景、需求、技术栈、架构、编码规则、任务看板。 - 执行历史流水在根目录
progress.md;当前快照在docs/current-state.md。
必读顺序
每次开始工作前,按顺序读取:
- 本文
AGENTS.md:仓库定位与规则。 docs/00-ai-start-here.md:编程入口与流程。docs/04-architecture.md:尤其第七节 CDP 已验证事实。docs/05-coding-rules.md:硬性编码规则。docs/06-tasks.md+docs/current-state.md:领取任务、了解现状。- 与当前任务相关的具体文档。
工作规则
- 正式代码统一放入
app/包;迁移完成后复用app/cdp.py,遵守架构第七节的选择器、就绪判断、上传/拖拽方式,不另起一套 CDP 交互。 - ①「导入采集」点击采集后可以为本轮匹配到的账号自动确保 Chrome 就绪:已打开则复用,未打开才启动;只检测登录态,不自动登录、不填密码、不绕过验证码。③「更新蝦皮」仍保持高风险边界:更新前只检测账号 Chrome/CDP/登录态,不自动启动缺失账号 Chrome。
- 只做当前任务范围内的事;T-504 已接入的多账号并行、dry-run、运行日志属于当前范围,其他 V2 / V3 功能只记录不实现。
- CDP 选择器 / 流程 / 配置 schema 变化,必须同步更新
docs/04-architecture.md与相关任务。 - 新任务一任务一文件写进
docs/tasks/T-<编号>.md,不再手改docs/06-tasks.md(已冻结为 T-000~T-549 历史归档);命名/frontmatter/领取规则见docs/tasks/README.md。为避免多 agent 并发抢改同一文件、ID 撞号。 - 改完后只更新对应任务文件:把状态改
DONE、执行记录写进该任务文件的## 执行记录一节。不再逐任务追加progress.md、不再逐任务覆盖docs/current-state.md(这两个是每任务共享写入点,多 agent 并发会互相抢/覆盖)。progress.md冻结为历史归档;docs/current-state.md不再手动逐任务维护,当前状态以docs/tasks/各任务 frontmatter 为准,后续可由脚本汇总生成。 - 用户指令暗语(用户输入以下触发词时按约定执行,默认全栈工程师视角、只提交本次相关文件):
bug: <现象>/需求: <描述>→ 先查代码再给分析和方案,只讨论不改代码;grill: <方案>→ 反方评审,逐点挑战该方案;落task→ 把已讨论定案落成docs/tasks/T-<编号>.md(按上述规则查号防撞),只写文档不写代码,写完自动提交 git;审 T-<编号>→ 先核代码事实,再审核该任务文件最近的更新是否合理、给缺口;补→ 把讨论新增的结论补进当前任务文件并提交 git;做 T-<编号>→ 实现该任务 + 跑任务内验证命令 + 执行记录写进任务文件 + 提交 git。
安全红线
- 绝不把真实账号、密码、Cookie、token 写进代码、文档或日志;密码/API Key 可在本地配置或 DB 明文保存,但文件必须 gitignore,且不自动登录。
config.json、config/ai_models.json、cmshopee.db、chrome_user_data_dir/、images/(含配置、密钥、业务数据、登录态、图片)绝不提交版本库。shopee待处理任务模板.xlsx是标准空模板,可提交;运营复制填写后的 Excel 属于业务数据,不提交版本库。- 「更新」提交线上、删除满 9 张封面等不可逆动作,必须有显式确认;③ 点击「开始更新」后必须弹窗确认,用户确认后才批量更新当前筛选结果。
- 不绕过 Shopee 的验证码、风控、限流或权限校验。
验证
python -m compileall app main.py # 语法检查(T-000 后)
python -m unittest discover -s tests # 纯逻辑单元测试(T-006 完成且 tests/ 存在后)
python prototypes/demo.py # 单账号闭环(不提交)
T-006 前若 tests/ 不存在,不运行 unittest discover,只在回复中说明测试基座待建立;T-006 后纯逻辑改动必须跑该命令。
涉及 CDP 改动,在测试商品(ITEM_ID 51100639510)上实跑确认;如命令不可运行,在回复里如实说明。
风格
- 文档与 UI 文案用中文,标识符用英文。
- 所有用户可见文本必须使用中文:包括弹窗标题/正文/按钮、窗口标题、按钮、菜单、label、placeholder、tooltip、状态栏、空状态、确认框、运行日志、错误提示和成功提示等。URL、配置键、API 字段、模型别名、第三方/Shopee 原始错误可保留原文,但外围必须给中文解释;不得直接把英文技术报错裸露给用户。
- 内容面向 agent 执行:能落到“读什么、改什么、验证什么”。