Skip to content

feat: 游戏画面建档(非战斗 app)+ MCP tool 规范化 - #2481

Merged
DoctorReid merged 54 commits into
mainfrom
feat/game-screen-archive
Jul 18, 2026
Merged

feat: 游戏画面建档(非战斗 app)+ MCP tool 规范化#2481
DoctorReid merged 54 commits into
mainfrom
feat/game-screen-archive

Conversation

@DoctorReid

@DoctorReid DoctorReid commented Jul 12, 2026

Copy link
Copy Markdown
Collaborator

游戏画面建档(非战斗 app)

按 application 流程逐个截图 / 分析 / 建档,补全 docs/game/screens/ 知识库:

  • 邮件、兑换码输入、驱动盘拆解、快捷手册-日常、丽都城募、报刊亭(scratch_card)、3D地图(传送枢纽)
  • 大世界补左上角菜单按钮
  • 代表截图归档到 zzz-od-test/screens/(webp q90,UID 打码)

当前无法覆盖的子态在文档 / 测试留标记(scratch_card 嗷呜对话 / 确认、3D地图选传送点 / 前往、驱动盘拆解确认等)。

MCP tool 规范化

design-principles + 新增 mcp-implementation.md 全面优化 backend MCP:

  • annotations:21 tool 加 ToolAnnotations(readOnlyHint / destructiveHint / title);修复 snake_case 静默失效 bug(mcp sdk 字段名 camelCase,snake_case 被 pydantic 当 extra 忽略,所有副作用标注此前实际是空的)
  • Field:关键参数加 description(pc_alt / press_time / save_image / op_id 等);check_game_window 返回 str → WindowStatus(与 HTTP /game/window 对称)
  • disambiguate:4 组相似 tool 互指(click↔key_tap↔drag / run 三兄弟 / capture↔analyze / list_apps↔list_ops)
  • 新增 key_tap / drag tool + click_game pc_alt / press_time=0.1 + 截图 UID 打码(fill_uid_black)
  • 新增 mcp-implementation.md(项目特化规范,通用引用官方 mcp-server-dev 的 tool-design.md)+ mcp.md 工具表更正 + ai_coding 推荐安装 mcp-server-dev

skill 方法论

  • zzz-od-dev-screen-onboarding:补「信息源三层并用」「截图获取手动分解」「vision 必需」+ 精简
  • zzz-od-dev-skill-guide:规范3 分场景(独立发布 vs 项目内 dev skill)

测试(zzz-od-test)

画面建档 fixture(webp)+ MCP tool 规范化测试(test_tool_annotations_marked 校验 camelCase annotations 生效、check_game_window 结构化等)。


🤖 Generated with Claude Code

Summary by CodeRabbit

  • 新功能
    • 新增键盘短按/长按(支持按压时长区分)与鼠标拖拽交互能力;支持通过 Alt 解锁光标后再进行点击/交互。
  • 改进
    • 点击交互新增并返回 pc_alt;默认点击等待时间更合理。
    • 截图与实时画面分析增加 UID 打码保护隐私。
    • MCP 工具返回更结构化,异常兜底更一致,并完善工具参数与说明。
  • 文档
    • 扩充多项屏幕建档与识别说明(含 3D 地图、邮件、丽都周纪等),并更新 MCP 实现/测试方法论。

DoctorReid and others added 19 commits July 11, 2026 22:23
- click_game 新增 pc_alt 参数透传 controller.click:大世界等 pc_alt=true
  画面锁光标,不按 Alt 点击落空(框架内部点击本就带,MCP 层此前未暴露)
- press_time 默认 0.0 → 0.1:win_click press_time=0 按住仅 1ms,绝区零
  识别不到;对齐 controller.click 默认 0.1,避免默认调用点击失效
- capture/analyze 接入 controller.fill_uid_black 打码 UID:对齐框架
  screenshot()(它本就打码),防止账号信息经 MCP 截图落盘 / 外泄

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- 邮件:列表态 + 确认弹窗子态建档(analyze area 全中 + vision 补状态
  图标 / 模态布局);状态流转 + 识别特征 + 可交互元素齐
- 大世界:可交互元素补左上角「按钮-菜单」(汉堡≡,screen_info 本有、
  doc 此前漏写)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
建档信息源三层并用:截图 analyze/vision + screen_info area_list +
application 代码。analyze 只返当前帧命中 area,screen_info 才是全集;
doc 可交互元素/流转要与 area_list 逐条对齐,避免漏写已建模元素。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- 菜单-更多功能:共用画面(功能入口枢纽),已建模 menu_more.yml;vision
  补 3x5 功能网格 + 模态遮罩 + NEW 徽章
- 兑换码输入:redemption_code 特有;⚠️ screen_info 缺口(无独立 screen,
  area 借 menu.yml);兑换结果弹窗未覆盖(需真码)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- 仓库-驱动仓库:音擎 TAB-驱动盘进入;驱动盘管理;已建模,识别模糊
  (近期 commit「修复驱动盘拆解页面识别失败」范围内)
- 驱动盘拆解:默认态 + 快速选择弹窗;⚠️ 默认态误匹配快捷手册-日常
  (screen_info 识别问题);拆解确认弹窗待补(需选中+真拆解)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
快捷手册-日常:5-tab 枢纽的日常 tab(今日活跃度奖励);engagement_reward app
领活跃度;⚠️ 领取确认/奖励预览弹窗待补(活跃度已满);标注 app 从拆解画面
回大世界的导航卡点(BackToNormalWorld + 拆解画面误匹配)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
丽都城募(大月卡):菜单→丽都城募;5 tab(选择奖励/兑换商店/等级回馈/成长
任务/城募赠礼);city_fund 领成长任务 + 等级回馈;默认 + 成长任务两态。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
README 加进度段:已建档 5 个纯 UI app(email/redemption_code/drive_disc_dismantle/
engagement_reward/city_fund);标注跳过 app(传送/移动/拖拽,MCP click_game+
input_text 无法复现)+ notify(无画面,只发推送)。待 MCP 补 transport/move/
drag/键盘注入后补。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- key_tap(key, press_time):透传 btn_controller(press_time=0 短按 tap,>0 长按
  press→保持→release)。覆盖 esc/移动 wasd/交互 f/空格 等。
  验证:key_tap('w', press_time=1.5) 长按移动,场景位移(CLENNUP 1139→1003),注入有效。
- drag(x1,y1,x2,y2,duration):透传 controller.drag_to。覆盖刮刮卡刮/八卦收集拖/
  咖啡拖动等 UI 拖拽(同 framework app scratch_card 等路径)。
- 解锁之前跳过的 app(scratch_card/hou_hou_bakery/random_play/trigrams_collection/
  suibian_temple)的操作能力(transport 仍待补)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
跑 app 中途 capture 抓不到画面(app 快 + 子态时机 + 运行慢三重叠加)→ 手动分解动作为
单步(transport / move / interact / drag 各一步 + capture)。配套:transport 朝向重置
(传送后继承,先传送别的地图再回);move 后 sleep 等到位;F 长按 press_time;操作后
等画面动画再 capture。scratch_card 实战验证。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
报刊亭:scratch_card 场景(大世界 F 交互进);报刊亭场景 + 刮态已建;嗷呜对话 / 确认
弹窗待补(时机)。README:scratch_card 从跳过移到已建(move/interact/drag 类,用
key_tap + drag + Transport 分解)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
底层 click/key_tap/drag 无内置等待(等待在 operation round 层 success_wait,
MCP 不经 round)。MCP 直接调 controller 无等待 → 连续调用会截过渡帧/操作失效
(本轮 scratch_card 实测:move 后不等就 interact 失效、F 后不等 capture 截旧画面)。
click_game / key_tap / drag docstring 加操作后 sleep 提醒(点击 ~1s / move ~1s /
interact ~1-2s / esc ~0.5s / drag ~0.5s),不加参数(底层无,描述提醒即可)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
scratch_card 实战暴露的后续点,补进 SKILL.md 截图获取段:
- 操作后等动画再 capture(底层 click/key_tap/drag 无内置等待,等待在 operation
  round 层 success_wait,MCP 不经;F 后立即 capture 截旧画面)
- move 后 sleep ~1s(防 interact 失效,issue #2405,scratch_card 代码 sleep 1)
- interact(F)长按 press_time=0.2(短按无效)
- sleep 建议值(click 1s / move 1s / interact 1-2s / esc 0.5s / drag 0.5s)
design.md 同步决策。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
3D地图:大世界点地图进;传送枢纽(Transport/多 app 经此);区域列表+地图+传送点+
前往。默认(区域选择)已建;选传送点/前往子态待补(MapTransport 手动分解步骤多)。
入口:大世界点「地图」(@1777,367,pc_alt=true)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
第 2 步「主观理解」原仅"读图 vision",太弱。强化:必须用多模态大模型/工具看图
(analyze_image / vision),不只靠 MCP analyze 的 OCR/area(OCR 看不见图形按钮 /
布局 / 状态图标 / 模态性 / 角色朝向);每张建档截图必看;vision 失败(如 400)必
重试不跳过。design.md 加决策(反面:scratch_card 刮态 vision 400 跳过 → 漏布局;
误判「大世界-普通」为独立画面)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
原规范3「自包含:不引文件」一刀切禁外引。但项目内 dev skill(放 skills/,跟项目走、
不独立发布)的核心就是教 agent 操作项目 runtime 资产(screen_info / application 源码 /
docs/game),禁了就没法干活。分场景:独立发布 skill 仍严格自包含;项目内 dev skill
可引 runtime 资产路径(操作对象,稳定),但具体代码文件/实现行/易变文档抽象化。
判据:操作资产路径可引(稳定),佐证性代码/文档位置抽象(易变)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
对照 skill-guide 4 规范审视优化:
- description 精简为纯「何时用」(去 docs/game 具体路径)
- 截图获取段精简:去 specifics(scratch_card 例子 / issue #2405 / F=0.2 具体值 /
  sleep 建议值表),留核心判据(手动分解 + transport 重置 + 操作后等 + move 后 sleep
  + F 长按);移走的细节 design.md 已有
- 去具体代码外指:devtools_screen_manage_interface →「项目编辑器约定」;
  删「详见 screens/README.md」(易变外指)
- 按 skill-guide 新规范3:runtime 资产路径(screen_info/application/docs/game)保留,
  实现细节抽象化

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- 新增 mcp-implementation.md: 项目特化落地规范(annotations 分类/Field/返回对称/错误兜底/docstring/checklist),通用方法论引用官方 mcp-server-dev 的 tool-design.md
- design-principles: P3 加指针 + annotations 字段名 camelCase 修正(原 snake_case 说法错)
- mcp.md: 工具表更正(key_tap/drag/pc_alt/press_time=0.1/数量 19→21/路线图)
- README/ai_coding: 索引补实现规范 + 推荐安装 mcp-server-dev(claude-plugins-official,专门 MCP 无杂烩)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- annotations: 21 tool 加 ToolAnnotations(readOnlyHint/destructiveHint/title);修复 snake_case 静默失效(mcp sdk 字段名 camelCase,snake_case 被 pydantic 当 extra 忽略)
- Field: 关键参数加 description(pc_alt/press_time/save_image/op_id 等,FastMCP 不解析 docstring Args 段)
- check_game_window: 返回 str→WindowStatus(与 HTTP /game/window 对称 P11)
- disambiguate: 4 组相似 tool 互指(click↔key_tap↔drag / run 三兄弟 / capture↔analyze / list_apps↔list_ops)
- key_tap/drag 新增 + click_game 加 pc_alt/press_time=0.1 + capture/analyze UID 打码(fill_uid_black)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
@coderabbitai

coderabbitai Bot commented Jul 12, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

本次更新扩展 MCP 后端工具契约与交互能力,补充 MCP、测试和游戏画面知识库文档,并完善画面建档、技能引用及测试规范。

Changes

MCP 后端工具契约

Layer / File(s) Summary
后端截图与交互能力
src/zzz_od/backend/backend_context.py
截图增加 UID 打码;click_game 支持 pc_alt;新增 key_tapdrag
MCP 工具注册与参数契约
src/zzz_od/backend/mcp/app.py
补充工具注解、参数描述、结构化返回及异常兜底。
运行工具与帮助工具描述
src/zzz_od/backend/mcp/service_app.py, src/zzz_od/backend/mcp/prompts.py
为运行、operation 和帮助工具增加参数元数据及更具体的说明。
MCP 开发规范与工具清单
docs/develop/setup/ai_coding.md, docs/develop/zzz/backend/*
新增 MCP 实现规范,更新工具清单、注解规则和安装索引。

游戏画面知识库文档

Layer / File(s) Summary
画面索引与建档进度
docs/game/screens/README.md
新增非战斗画面索引,并汇总建档、跳过及待补状态。
菜单与基础页面建档
docs/game/screens/邮件.md, docs/game/screens/菜单-更多功能.md, docs/game/screens/兑换码输入.md, docs/game/screens/快捷手册-日常.md, docs/game/screens/打开游戏.md
补充页面入口、状态流转、识别锚点、交互元素和识别快照,并规范登录子态标题层级。
交互型页面建档
docs/game/screens/*.md
新增地图、活动、仓库、经营及其他非战斗页面的状态和操作说明。
大世界交互说明
docs/game/screens/大世界.md
补充菜单按钮操作条件及待确认区域。

开发技能与测试规范

Layer / File(s) Summary
画面建档流程规范
skills/zzz-od-dev-screen-onboarding/*
明确三层信息源、强制 vision、单步截图、等待动画、操作参数及归档规则。
技能引用边界
skills/zzz-od-dev-skill-guide/*
区分独立发布技能与项目内开发技能的外部引用范围。
测试断言与多帧 mock 规范
docs/develop/testing/README.md, AGENTS.md
补充按 node 返回类型断言、按检测目标 mock 画面、连续调用验证及测试仓提交规则。

Estimated code review effort: 4 (Complex) | ~60 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 标题准确概括了本次 PR 的两项主变更:非战斗游戏画面建档与 MCP tool 规范化。
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/game-screen-archive

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 7

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
skills/zzz-od-dev-screen-onboarding/SKILL.md (1)

72-72: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

修正 WebP Q90 的“无损”描述。

WebP Q90 是有损压缩;当前表述与第 65 行“lossy”说明矛盾,容易让后续维护者误把归档图当作模板裁剪源。

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@skills/zzz-od-dev-screen-onboarding/SKILL.md` at line 72, Update the
image-format guidance in SKILL.md to describe WebP q90 as lossy rather than
lossless, keeping the existing space-saving and 1080p coordinate requirements
unchanged.
docs/develop/zzz/backend/mcp.md (1)

11-11: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

check_game_window 返回类型文档与代码不一致。

app.pycheck_game_window 已从返回 str 改为 WindowStatus | dict(Line 130),但 mcp.md Line 11 仍标注返回「状态文本(str)」。应更新为结构化 WindowStatus 描述,与 analyze_screen 等其他工具的返回格式说明保持一致。

📝 建议修改
-| `check_game_window` | `backend.check_window()` | 状态文本(`str`) |
+| `check_game_window` | `backend.check_window()` | `WindowStatus`(结构化 JSON;backend 抛错时返 `{'error': ...}`) |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/develop/zzz/backend/mcp.md` at line 11, 更新 mcp.md 中 check_game_window
的返回类型说明,使其与 app.py 中 check_game_window 的 WindowStatus | dict
实际返回保持一致;将“状态文本(str)”替换为结构化 WindowStatus 描述,并参考 analyze_screen 等工具的格式说明。
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/game/screens/README.md`:
- Around line 26-39: 统一本节各进度项的标识格式,改为使用“app 标识(对应 screen_name)”并补充 scratch_card
在上方索引中的对应关系;确保 email、redemption_code、scratch_card 等条目都能通过索引反查,同时保留现有中文说明和进度分类。

In `@docs/game/screens/仓库-驱动仓库.md`:
- Line 24:
统一“左上角-街区”出口的返回目标名称与文档其他位置的规范命名,将“大世界”改为“大世界-普通”;仅在项目明确支持别名时保留当前名称并标注其别名关系。

In `@docs/game/screens/兑换码输入.md`:
- Around line 46-51: 更新“screen_info 缺口”备注,准确说明 redemption_code_app.py 通过 OCR
完成菜单打开及兑换码入口导航,并通过 get_area('菜单', ...) 获取菜单 area 后由 round_by_click_area
直接点击;移除“靠模糊匹配菜单操作”等笼统表述,保留其余识别路径信息。

In `@docs/game/screens/邮件.md`:
- Around line 15-18: 将邮件状态表中“② 确认弹窗(待补)”更新为“② 确认弹窗(已验证,截图待补)”,并保持其余入口、出口及后文内容不变。
- Around line 85-86:
更新邮件画面识别规则,移除“三锚点任一命中即识别”的逻辑;至少要求标题“邮件”与“按钮-返回”或“全部领取”中的一个次级锚点同时命中,或改用等效加权匹配,以避免仅凭通用按钮误识别其他页面。

In `@skills/zzz-od-dev-screen-onboarding/SKILL.md`:
- Line 3: 更新 SKILL.md 的 frontmatter
description,仅保留“拿到一张游戏截图”这一触发条件,移除“分析并纳入画面知识库”等执行内容。
- Line 36: 更新 SKILL.md 中围绕多模态看图与 OCR
局限的说明,移除“大世界-普通”等具体项目案例及其示例化表述,改写为跨场景可复用的抽象判据;将具体踩坑和案例移至 design.md,保留每张截图必须使用
vision 且失败需重试的要求。

---

Outside diff comments:
In `@docs/develop/zzz/backend/mcp.md`:
- Line 11: 更新 mcp.md 中 check_game_window 的返回类型说明,使其与 app.py 中 check_game_window
的 WindowStatus | dict 实际返回保持一致;将“状态文本(str)”替换为结构化 WindowStatus 描述,并参考
analyze_screen 等工具的格式说明。

In `@skills/zzz-od-dev-screen-onboarding/SKILL.md`:
- Line 72: Update the image-format guidance in SKILL.md to describe WebP q90 as
lossy rather than lossless, keeping the existing space-saving and 1080p
coordinate requirements unchanged.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 7d5b7795-dd3b-42ef-9052-0d25a3e07441

📥 Commits

Reviewing files that changed from the base of the PR and between 1a9932c and 7c8acf8.

📒 Files selected for processing (24)
  • docs/develop/setup/ai_coding.md
  • docs/develop/zzz/backend/README.md
  • docs/develop/zzz/backend/design-principles.md
  • docs/develop/zzz/backend/mcp-implementation.md
  • docs/develop/zzz/backend/mcp.md
  • docs/game/screens/3D地图.md
  • docs/game/screens/README.md
  • docs/game/screens/丽都城募.md
  • docs/game/screens/仓库-驱动仓库.md
  • docs/game/screens/兑换码输入.md
  • docs/game/screens/大世界.md
  • docs/game/screens/快捷手册-日常.md
  • docs/game/screens/报刊亭.md
  • docs/game/screens/菜单-更多功能.md
  • docs/game/screens/邮件.md
  • docs/game/screens/驱动盘拆解.md
  • skills/zzz-od-dev-screen-onboarding/SKILL.md
  • skills/zzz-od-dev-screen-onboarding/design.md
  • skills/zzz-od-dev-skill-guide/SKILL.md
  • skills/zzz-od-dev-skill-guide/design.md
  • src/zzz_od/backend/backend_context.py
  • src/zzz_od/backend/mcp/app.py
  • src/zzz_od/backend/mcp/prompts.py
  • src/zzz_od/backend/mcp/service_app.py

Comment thread docs/game/screens/README.md Outdated
Comment thread docs/game/screens/仓库-驱动仓库.md Outdated
Comment thread docs/game/screens/兑换码输入.md
Comment thread docs/game/screens/邮件.md Outdated
Comment thread docs/game/screens/邮件.md Outdated
Comment thread skills/zzz-od-dev-screen-onboarding/SKILL.md Outdated
Comment thread skills/zzz-od-dev-screen-onboarding/SKILL.md Outdated
DoctorReid and others added 7 commits July 12, 2026 14:12
- 卦象集录 doc(主界面+今日已领取已建档;滑动获取卦象/领奖确认待补)+ README 索引/进度/跳过
- onboarding skill: 加「Transport 失败排查」(传送点未解锁=地图未探索)+ mock 测试断言踩坑(round_wait 用 status 非 is_success)
- testing README 第3节: 断言看 node 返回类型通用判据(round_success/find_area→is_success;round_wait/retry→status)
- hou_hou_bakery 跳过(3.0 布亚斯特城区未探索,Transport 失败)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- 对话 doc(通用兜底画面,NPC 名不固定/旁白无;有 NPC 名已建档,旁白待补)+ README 索引/进度
- onboarding skill: 第4步加「兜底画面」判据(无匹配→先想 loading/对话);design 记兜底方法论 + vision 第3人称盲区(角色背部=面向前方,非背对)
- suibian_temple 入口标待补(卡「前往随便观」建筑传送,需 move 走近)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/develop/testing/README.md`:
- Line 187: Update the git command in the testing documentation to use a valid
pathspec: change the test repository’s `git -C zzz-od-test add` target from
`test/...` to `test/`, or explicitly list the intended test files.
- Line 206: Update the convert_to_webp.py documentation link in the image
conversion guidance to use
../../../skills/zzz-od-dev-screen-onboarding/convert_to_webp.py, removing the
incorrect .claude segment while preserving the surrounding instructions.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 9b368fab-ae49-4697-badc-87eebb354b9b

📥 Commits

Reviewing files that changed from the base of the PR and between e88626f and 56a3fb2.

📒 Files selected for processing (8)
  • AGENTS.md
  • docs/develop/testing/README.md
  • docs/develop/zzz/backend/mcp.md
  • docs/game/screens/README.md
  • docs/game/screens/仓库-驱动仓库.md
  • docs/game/screens/兑换码输入.md
  • docs/game/screens/邮件.md
  • skills/zzz-od-dev-screen-onboarding/SKILL.md
🚧 Files skipped from review as they are similar to previous changes (5)
  • docs/game/screens/仓库-驱动仓库.md
  • docs/game/screens/README.md
  • docs/game/screens/邮件.md
  • docs/develop/zzz/backend/mcp.md
  • skills/zzz-od-dev-screen-onboarding/SKILL.md

Comment thread docs/develop/testing/README.md Outdated
Comment thread docs/develop/testing/README.md Outdated
7 条 Minor + 不留债:
- 标题层级 MD001: 6 doc(丽都周纪/卦象集录/咖啡店/对话/影像店营业/打开游戏)子态快照 #### → ###;SKILL/design 建档规范同步(原 #### 跳级)
- 坐标笔误: 影像店营业(宣传员列表 530,140-1770-972 / 主题筛选 双连字符)+ 咖啡店(对话框标题 880,800-1040-840)
- 随便观 screen_info 数量 8 → 7(实际 7 个有独立 screen_info);README 口径澄清(9 子画面实拍 11 webp)
- 丽都周纪 领取奖励 pc_rect 点坐标: 标注根因(screen_info yml 同为点坐标 1558,314,合法矩形待补)
- design: Transport 失败归因软化(勿唯一归因,结合地图截图/日志/超时节点)+ 第3人称朝向判据限定追尾视角(勿泛化)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
docs/game/screens/打开游戏.md (1)

158-168: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

统一验证码登录态的区域命名。
docs/game/screens/打开游戏.md:158-168 这里的状态标题和 OCR 都是手机号/验证码登录,但匹配 area 仍沿用 国服-账号密码进入游戏国服-账号密码-新 这类命名;如果这是历史兼容 ID,需要在文档里明确说明,否则建议改成与验证码登录态一致的名称,避免后续引用混淆。

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/game/screens/打开游戏.md` around lines 158 - 168, 统一“验证码登录态”章节中的匹配 area
命名,将仍使用“账号密码”的 `国服-账号密码进入游戏`、`国服-账号密码进入游戏-新`、`国服-账号密码-新`
改为与手机号/验证码登录语义一致的名称;若这些名称必须作为历史兼容 ID 保留,则在该章节明确标注其兼容用途及对应的新名称。
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/game/screens/README.md`:
- Line 25: 核对“随便观”条目中的 9 个子画面清单与 screen_info 状态,修正数量统计使其一致:若清单仍为 9 个且 3 个无
screen_info,将“7 有”改为“6 有”;若实际包含 10 个子画面,则将总数改为 10。

---

Outside diff comments:
In `@docs/game/screens/打开游戏.md`:
- Around line 158-168: 统一“验证码登录态”章节中的匹配 area 命名,将仍使用“账号密码”的
`国服-账号密码进入游戏`、`国服-账号密码进入游戏-新`、`国服-账号密码-新` 改为与手机号/验证码登录语义一致的名称;若这些名称必须作为历史兼容 ID
保留,则在该章节明确标注其兼容用途及对应的新名称。
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 7ef37caf-e816-4a3b-9454-36489bfaf68e

📥 Commits

Reviewing files that changed from the base of the PR and between 56a3fb2 and 013bb48.

📒 Files selected for processing (10)
  • docs/game/screens/README.md
  • docs/game/screens/丽都周纪.md
  • docs/game/screens/卦象集录.md
  • docs/game/screens/咖啡店.md
  • docs/game/screens/对话.md
  • docs/game/screens/影像店营业.md
  • docs/game/screens/打开游戏.md
  • docs/game/screens/随便观.md
  • skills/zzz-od-dev-screen-onboarding/SKILL.md
  • skills/zzz-od-dev-screen-onboarding/design.md
🚧 Files skipped from review as they are similar to previous changes (5)
  • docs/game/screens/卦象集录.md
  • docs/game/screens/丽都周纪.md
  • docs/game/screens/随便观.md
  • skills/zzz-od-dev-screen-onboarding/design.md
  • skills/zzz-od-dev-screen-onboarding/SKILL.md

Comment thread docs/game/screens/README.md Outdated
3 条 Minor:
- testing README §7: git add test/... → test/(有效 pathspec);AGENTS.md 提交坑同步
- testing README §8: convert_to_webp.py 链接去 .claude/(git 跟踪根 skills/,非 .claude/skills/)
- screens/README 随便观: 9 子画面口径矛盾(原写 7 有+3 无=10≠9)→ 共 7 screen_info(入口+6 子画面)、3 无(好物铺/自动托管/经营总览),10 画面一致

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@AGENTS.md`:
- Line 89: 修正 AGENTS.md 中独立测试仓 zzz-od-test 的提交指引:在执行 git -C zzz-od-test add
test/ 后,使用有效的 Git 提交流程提交测试改动,确保不会将 commit 作为不可执行的 Git 子命令,并保留测试仓需单独提交的要求。
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 6cbd06b8-001d-4959-b655-55069891ad20

📥 Commits

Reviewing files that changed from the base of the PR and between 013bb48 and 83c523c.

📒 Files selected for processing (3)
  • AGENTS.md
  • docs/develop/testing/README.md
  • docs/game/screens/README.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • docs/game/screens/README.md
  • docs/develop/testing/README.md

Comment thread AGENTS.md Outdated
DoctorReid and others added 11 commits July 15, 2026 16:55
- 「前往随便观」是初版 b15da09(#1010)从其他地方传送后点击进入口的遗留;
  现在 Transport 落地直达入口(不经 interact)不再出现(git log -S 确认仅初版引入)
- 「确认」「领取收益」保留待验证(interact 进入口自动收益场景,当前 Transport 不命中),加注释标注
- 顺手 ruff fix import 排序(I001,预存)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- ②选传送点:点区域后底部传送点列表(随便观/阿朔/汀曼咖啡 等)
- ③传送确认弹窗:是否传送至该地点 + 确认(地图/确认 area @1024,600-1232,708)
- 纠正旧「前往」表述(现流程点传送点后直接弹确认弹窗,无前往按钮)
- ⚠️ vision 确认无勾选框(自动进入交互勾选项未复现,可能每日首次才有,待验证)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
传送流程(MapTransport,确认按钮)用 map.yml(screen_name=地图,网格视图);锄大地(TransportBy3dMap,图标+前往)用 3d_map.yml(3D地图,立体)。此前把网格传送的「选传送点/传送确认弹窗」误建到 3D地图,现纠正:新建地图.md;3D地图.md 删误建②③、流转改 TransportBy3dMap 真实流程(区域→子区域→筛选→图标→前往,无确认弹窗);README 更新两行。analyze_screen 验证默认.webp 仍是 3D地图(立体)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
CodeRabbit 指出 `git -C zzz-od-test add test/ && commit` 中 `commit` 不是 git 子命令会执行失败。改为 `&& git -C zzz-od-test commit`。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
docs/game: gameplay/随便观.md(经营玩法新)+ screens/随便观.md 游历补坑(副本选择 offset-100/选中态/副本态区分/选时间无3分钟/派遣无确认弹窗/收获链)+ gameplay/README 索引。skill: zzz-od-dev-gameplay-onboarding(新,已有 app 建玩法 doc 方法论,按 skill-guide)+ screen-onboarding SKILL/design(vision 客观可信/推理不可信)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- 制造坊/售卖铺/饮茶仙/德丰大押/好物铺 深化(代码事实+状态态+screen_info 对齐)
- 制造坊选商品子态 id_mark 失效 = 设计如此(CraftDispatch.back_at_last 靠此判断未退出选商品页)
- 售卖铺换邦布子态 lcs=0.5 误匹配(低风险,仅 back_from_cancel_selling 场景)
- 德丰大押纠正: app 未接入但 op 已实现(非'代码未开启')
- 实拍 webp 11→22 张

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- gameplay/随便观.md 玩法视角重写(目标/资源/经济循环/托管vs手动),实操验证(传送直达2次/托管收益云纹徽3031200)
- mechanics/传送.md(新): 传送机制集中(两种地图/入口 N·M/传送点类型/行为/解锁/op)
- screens/地图.md + 3D地图.md: 机制引用 mechanics 精简,入口纠正(按 N 普通/M=3D),区域选择 default 态
- screens/随便观.md: 全子玩法深化 + 传送直达(2次) + 恢复托管路径
- develop/zzz/application/随便观.md: 中文名 + 引用 gameplay + 设计决策 + 配置对齐代码
- harness/doc_organization.md(新): 四文档维度(gameplay/mechanics/screen/develop)+ skill vs doc 分界
- harness/README.md + AGENTS.md: doc_organization 索引/指引
- skills: gameplay-onboarding 翻转(玩法权威非代码) + screen-onboarding(vision 客观/传送方法论)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
- AGENTS.md: 加「产出前先判断:信息放哪、写什么」段(方法→skill/具体→doc/玩法vs自动化/不重复/不确定→问);自维护指南拆 5 bullet 去术语 + 加「清晰易懂」准则;L60 三→四文档;深入阅读加 harness 链接
- entry_files.md: §2/§4 标题去术语(只留每次会话总要看的/小改大改);删悬空角标 ②③;§3 单一信息源→一处维护;§1 always-on 注;defer→依托;按-scope→分文件类型
- .claude/CLAUDE.md: 删「知识维护:边干边补」段(@import AGENTS.md 覆盖)
- skill-guide: 硬规范 4 补「具体游戏事实归 doc 不归 skill」
- 两轮子 agent review 驱动(去 harness 行话/消矛盾/给定义+例子)

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
经 chrome-devtools MCP 驱动米游社的能力 skill,各流程边做边实测:
- 登录(扫码)、游戏板块导航(URL 路径码 / API gids)、搜索(searchPosts)、前瞻兑换码
- 方法论:避风控(优先读浏览器已加载结果、写操作走点击)、Vue/React div
  按文本定位(版本号按 \d+前瞻 模式,不写死)、操作后验证、扫码让用户扫
- 签到实测 APP-only,web 不可做(design 记三种验证)

配套 docs/develop/setup/chrome-devtools-mcp.md(connect 模式 + Session 0
会话坑 + .ps1 UTF-8 BOM 编码坑);ai_coding.md MCP 索引补一行指向它。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
B类状态态全完成(饮茶缺料+补料联动/邦巢聘用A+S+持有上限/游历收获链);补制造选邦布/好物铺兑换/售卖选商品/托管状态态;发现德丰大押2.5移除百通宝云纹徽tab改德丰珍宝(op死代码app短路);开始托管暂停制造台游历;邻里心愿一次性

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
咖啡店 pc_rect 补缺逗号(坐标格式);打开游戏验证码登录态 area 命名加兼容注(沿用历史命名);随便观/README webp 数去掉具体数字(避免建档后过时不一致)。其余 15 条 review comment 经 verify 已在之前提交处理。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
@DoctorReid

Copy link
Copy Markdown
Collaborator Author

CodeRabbit review comment 处理 (54efe81)

本次修正:

  • 咖啡店 pc_rect 补缺逗号(坐标格式 x1,y1-x2,y2)
  • 打开游戏验证码登录态 area 命名加兼容注(国服-账号密码* 沿用历史命名,两态文字一致)
  • 随便观/README webp 数去具体数字(建档频繁变,避免过时不一致)

经 verify 已处理(之前提交):SKILL description/WebP 有损、mcp check_game_window 返回、testing pathspec、各画面标题层级/命名、design Transport 诊断/朝向、AGENTS 测试仓提交。

待实拍:丽都周纪 领取奖励 pc_rect 单点(ridu_weekly.yml [1558,314,1558,314])— doc 已标「合法矩形待补」,yml 待实拍后补。

DoctorReid and others added 2 commits July 18, 2026 13:09
重 app 多子玩法建档(app 维度);版本迁移核对(德丰大押2.5 tab移除教训);边缘状态态人机协作(B类待条件+用户帮切);跨画面 op 联动记流转;doc 不写具体 webp 数。gameplay-onboarding 玩法视角判据已覆盖(之前随便观翻转时强化)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
screen-onboarding SKILL 重写排版(重 app 节移流程前「建档规模」、截图获取归 3 组子标题、可交互判据移到 §2、补 mock 断言 node 返回类型 + 追尾视角判据防 design 内容丢失、sleep 值内联、加边界声明);gameplay-onboarding 判据段去重(三处复述→指针)。三轮子 agent review 通过(对照 design 内容无丢失、排版清晰、无新问题)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
@DoctorReid

Copy link
Copy Markdown
Collaborator Author

screen-onboarding skill review comment 处理 (df98b8b)

4 条 CodeRabbit 早期建议已全部采纳:

  • description 只保留触发条件(L3)✅
  • 移除 SKILL 具体项目案例(抽象化,大世界-普通等归 doc)✅
  • design Transport 失败不只归因未探索(加多证据结合 + 勿唯一归因)✅
  • design 第3人称朝向判据限适用范围(追尾摄像机 + 当前场景,勿泛化)✅

本次 df98b8b 还做了排版优化(重 app 节移流程前「建档规模」/ 截图获取归 3 组子标题 / 可交互判据移到 §2 / 补回 mock 断言 node 返回类型 + 追尾视角判据防 design 内容丢失 / sleep 值内联 / 边界声明),三轮子 agent review 通过(对照 design 内容完整、排版清晰、无新问题)。

DoctorReid and others added 7 commits July 18, 2026 13:58
screen doc 快修(对照 screen-onboarding 新方法论):丽都周纪(metadata appears_in/source_image 后缀)、兑换码(BackToNormalWorld 出口+识别快照编号+confirm_code 说明)、影像店(area 数写死+漏 area+咨询状态标注)、咖啡店(三段式②+2 status)、驱动盘(commit 措辞过时)、丽都城募(2.6 版本+开启流程)、报刊亭(嗷呜 area);gameplay(登录/游戏启动 信息来源置信度)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
影像店营业(random_play 纯经营)补 develop doc(18节点编排/config/设计决策)+ gameplay doc(玩法视角)+ screen appears_in 改 gameplay 名 + gameplay README 索引;驱动盘/咖啡店补跨画面 op 联动专节(BackToNormalWorld / CombatSimulation 等)。委托助手含 auto_battle 战斗,goal 跳过。

Co-Authored-By: Claude Code <noreply@anthropic.com>
Co-Authored-By: glm-5.2 <noreply@bigmodel.cn>
@DoctorReid
DoctorReid merged commit 7277d04 into main Jul 18, 2026
8 checks passed
@DoctorReid
DoctorReid deleted the feat/game-screen-archive branch July 18, 2026 06:50
@github-actions github-actions Bot locked as resolved and limited conversation to collaborators Jul 21, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants