对 T-678 细化与 T-679a/b/c 拆分的全栈复核结果: T-678:修正背景中不准确的收敛理由。api_type 在 app/ai.py 只有 :348、 :350 两处使用且都在图片路径内,文字路径从不读取该字段;不能全局收敛 的真实原因是 appconfig.py:881 对所有模型统一校验,收窄取值集合会让 存量文字模型在载入与保存时抛 ConfigError。方案首条同步改为按校验口径 表述,避免实现时去找不存在的文字侧分支。 T-679a/b/c:三处补加发布门禁,说明三者未全部完成前不得发布。拆分只为 控制改动面,不构成可独立发布的中间态——重复计费的二次确认定义在 T-679c,若 a/b 先上线,用户已能创建并失败 direct 任务却在无提示情况下 重试,属资金口径缺口而非体验缺陷。 T-679a:补记本任务组有意放宽 T-677「不给商品套图新增自定义网关路径」 的边界及理由(套图是来源切换后唯一完全断链的模块,图片理解不在放宽 范围内),避免后续回看误判两者矛盾。 T-679a:比例近似映射改为同时记录用户选择的比例与实际输出尺寸。原方案 只存原始比例会让 DB 记 9:16 而文件实际为 1024x1536;当前 add_asset 的 aspect_ratio 只写入无消费者(app/image_studio.py:707-731)故暂不可见, 但历史展示或导出一旦信任该字段即出错。新增字段迁移须附加式且幂等。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
项目文档导航
蝦皮圈優化助手(代号 cmshopee)的 harness coding 文档集合。agent 开始编程前从
00-ai-start-here.md进入。
一句话定位
蝦皮圈優化助手(代号 cmshopee)是一个给电商运营使用的 Windows PySide6 桌面自动化工具,用于管理多个 Shopee 卖家账号、并用 CDP 驱动 Chrome 批量修改商品标题、替换商品封面图。V0 已验证单账号「改标题 + 换封面」闭环;当前 V1 工作台为 6 Tab:①导入采集 → ②AI生成 → ③点击「开始更新」并确认后批量提交 → 回写结果,④账号管理,⑤设置,⑥商品套图生成。
文档导航
../AGENTS.md:Codex / 通用 AI coding agent 的仓库级入口。../CLAUDE.md:Claude Code 的薄入口,具体规则以AGENTS.md为准。../progress.md:执行历史流水,只追加记录任务执行、验证、阻塞和决策。- AI 开发入口:agent 每次开始工作的入口、阅读顺序和任务领取规则。
- 项目愿景:为什么做、为谁做、产品原则、非目标。
- 需求:要什么、用户故事、验收标准。
- 技术栈:语言、运行平台、CDP 方案、GUI 选型和运行命令。
- 架构设计:模块职责、账号与配置目录数据模型、CDP 已验证事实和开发顺序。
- 编码规则:写代码前必须遵守的硬约束。
- 任务文件:新任务入口——一任务一文件
docs/tasks/T-<编号>.md,避免多 agent 并发抢改同一文件、ID 撞号。 - 任务看板(历史归档):T-000~T-549 历史任务,已冻结,不再新增。
- 模块 / CLI 合约:本地模块接口、Chrome 启动参数、账号配置 schema。
- 界面与流程结构:GUI 窗口、操作流程、按钮职责(无前端路由,用 GUI 流程替代)。
- 旧 AI工场兼容层端到端验收:T-622 前图片工作区的自动化覆盖;当前⑥商品套图继续复用其中的数据与 cmhub 服务。
- AI工场托管模型评测与默认档位策略:OpenAI / GPT 托管能力经 cmhub 别名落地前的评测样本、档位策略、上线门槛与运营用法。
- AI工场 BYOK 启动门禁记录:自定义模型 / BYOK 开工前的授权、设备凭证、Provider 白名单、task secret 和接口契约检查记录。
- 当前实现状态:当前代码现实、可运行命令、下一步可做任务。
- 常见问题排查:本地配置、启动报错、敏感文件修复等排障记录。
- 产品与 UI 评估:以 PM + UI 设计视角评估主流程模块 / 组件合理性,含优化方案与优先级清单。
- 界面配色设计:语义色板与组件配色映射规范,指导给状态 / 按钮 / 校验 / 登录状态上色。
- 工程评估:全栈视角评估工程基础设施与可维护性(依赖清单 / CI / 打包 / gui.py 拆分 / lint),含 P0-P2 与优先级。
- 打包与分发:PyInstaller 免安装 exe 打包命令、排除本地数据规则和用户手动更新方式。
- 对接 cmhub AI 网关设计:把生文/生图从本地直连改为对接 cmhub 计费网关的设计方案、改动边界与待确认问题。
- 版本检查接口契约:启动强制升级的服务端响应格式、客户端读取字段、强制规则与发版约定。
运行环境安装
python -m pip install -r requirements.txt
python -m pip install -r requirements-dev.txt
python -m ruff check app tests main.py
python -m compileall app main.py
python -m unittest discover -s tests
python -m pip install -r requirements-build.txt
powershell -ExecutionPolicy Bypass -File scripts\build_exe.ps1
requirements.txt 只锁定运行所需第三方依赖;requirements-dev.txt 锁定 ruff 等开发检查依赖;打包环境使用 requirements-build.txt 安装 PyInstaller;T-538 后 data/ 统一保存配置、SQLite、图片、登录态、日志、提示词和密钥,运营 Excel 仍是本地数据,不提交版本库。
GitHub Actions 工作流见 .github/workflows/tests.yml,在 push / pull_request 上使用 Windows + Python 3.11 安装 requirements.txt 与 requirements-dev.txt,并自动运行 ruff、语法检查和全量单元/GUI 测试。
任务 / 进度 / 当前状态
06-tasks.md维护任务看板:任务 ID、依赖、验收要点和状态。../progress.md维护执行进度:每轮实际做了什么、跑了什么验证、遇到什么阻塞、做了什么决策。current-state.md维护当前快照:当前目录、可运行命令、已完成摘要和下一个可领取任务。
维护原则
- 需求变化先改文档,再改代码。
- CDP 交互的关键事实(选择器、就绪判断、上传/拖拽方式)一旦定稿,写入
04-architecture.md,代码不得另起一套。 - 涉及账号、登录凭证、Cookie 时,文档与代码只用占位符或路径引用,绝不写入真实值。
- agent 开始新任务前,必须从
00-ai-start-here.md进入。