一键导入
ui-voyager
// 以 subagent 启动的 UI 漫游与异常发现技能。Use when the user, AGENTS, or the current task requires “UI漫游者”. 该 skill 负责系统性地把目标页面能点的都点一遍、把上下左右能滑的都滑一遍,重点发现空白页、越界、裁切、错位、布局失衡、状态切换异常等问题;必要时结合 ui-test 与截图检查,并把意见记入 .memory/YYYY-MM-DD/ui-volayor。
// 以 subagent 启动的 UI 漫游与异常发现技能。Use when the user, AGENTS, or the current task requires “UI漫游者”. 该 skill 负责系统性地把目标页面能点的都点一遍、把上下左右能滑的都滑一遍,重点发现空白页、越界、裁切、错位、布局失衡、状态切换异常等问题;必要时结合 ui-test 与截图检查,并把意见记入 .memory/YYYY-MM-DD/ui-volayor。
Release the local Markdown fork used by Zhihu++. Use when you need to merge upstream huarangmeng/Markdown into the zly2006 fork master, preserve only approved fork deltas, publish a new Maven Central alpha, update Zhihu's Android dependency versions, and verify the build. Applies specifically to /Users/zhaoliyan/IdeaProjects/Zhihu and its .tmp/Markdown-zly2006 fork checkout.
以 subagent 启动的 UI 挑剔用户评审。Use when the user, AGENTS, or the current task requires “挑剔的用户”. 该 skill 会分别扮演新用户与老用户,对界面的 self explain、明确性、直觉性、效率、布局和操作习惯提出高标准意见;默认给出 5-10 条有效建议,必要时结合 ui-test 与截图检查,并把意见记入 .memory/YYYY-MM-DD/picky-user。
Zhihu++ LLM 自动化 UI 测试。使用 testTag 系统精准定位 Compose 元素并交互,替代硬编码坐标的 adb tap。提供已知 tag 列表、文字内容点击、截图验证等能力。适用于:功能验证、UI 回归测试、自动化交互流程。
当用户要求复刻知乎网页版的功能、交互、接口行为或视觉细节时,使用此技能采集真实网页证据、分析 API 与 UI 结构,并落地到 Zhihu++ Android 代码。
Release the local LaTeX fork used by Zhihu++. Use when you need to merge upstream huarangmeng/latex into the zly2006 fork, preserve only approved fork deltas (font removal), publish a new Maven Central release, update Markdown's latex dependency, and verify the build. Applies specifically to /Users/zhaoliyan/IdeaProjects/latex as the fork checkout.
| name | ui-voyager |
| description | 以 subagent 启动的 UI 漫游与异常发现技能。Use when the user, AGENTS, or the current task requires “UI漫游者”. 该 skill 负责系统性地把目标页面能点的都点一遍、把上下左右能滑的都滑一遍,重点发现空白页、越界、裁切、错位、布局失衡、状态切换异常等问题;必要时结合 ui-test 与截图检查,并把意见记入 .memory/YYYY-MM-DD/ui-volayor。 |
| license | CC BY-NC-SA 4.0 |
spawn_agent(agent_type="verifier");若更偏 UI 行为探索,可用 critic 作为备选。TODAY=$(date +%F)
python3 .agents/skills/ui-review-memory/memory_store.py show-pending --agent ui-volayor --date "$TODAY"
ui-volayor 作为 memory key,这是项目约定路径。show-pending 会跨天读取所有未关闭意见,不只看今天的目录。fixed / rejected / invalid 且有理由地关闭,必须重新提出。dump 当前页面。dump 或截图验证。优先使用:
python3 .agents/skills/ui-test/llm_test_helper.py dump
python3 .agents/skills/ui-test/llm_test_helper.py tap --tag ...
python3 .agents/skills/ui-test/llm_test_helper.py screenshot /tmp/ui-voyager.png
只有在没有 tag / text / desc 且必须手势时,才使用 adb shell input swipe ...。
如果你怀疑某个点不一定是 bug,而更像产品/UI 判断题:
picky-user 从用户视角再判断一次。TODAY=$(date +%F)
python3 .agents/skills/ui-review-memory/memory_store.py record-issue \
--agent ui-volayor \
--date "$TODAY" \
--persona explorer \
--severity high \
--kind rendering \
--title "横向卡片滚动后右侧内容被截断" \
--why "滚动结束后最后一张卡片右边界不可见,属于明确渲染异常。" \
--repro "进入目标页,向左滑动横向卡片列表直到最后一项。" \
--expected "每张卡片都应完整显示,边距一致。"
kind 推荐值:rendering、layout、navigation、state、blank、other如果你确认一个已关闭问题再次出现,使用 --reopen 复用旧 id:
TODAY=$(date +%F)
python3 .agents/skills/ui-review-memory/memory_store.py record-issue \
--agent ui-volayor \
--date "$TODAY" \
--persona explorer \
--severity high \
--kind rendering \
--title "已关闭的渲染异常再次出现" \
--why "相同渲染问题重新复现,应该沿用旧编号。" \
--repro "按原路径进入页面并重复相同步骤。" \
--expected "复用旧 issue id 并标记为 reopened。" \
--reopen
Status: pass | needs-work
Coverage:
- 点击过的入口:...
- 访问过的状态:...
- 执行过的滑动:up/down/left/right
Confirmed bugs:
1. [high] 标题
Repro: ...
Why bug: ...
Memory: UV-20260417-001
Needs picky-user judgement:
1. 标题
Repro: ...
Why unsure: ...
Carry-over:
- UV-20260417-00X: ...
TODAY=$(date +%F)
python3 .agents/skills/ui-review-memory/memory_store.py update-status \
--agent ui-volayor \
--date "$TODAY" \
--id UV-20260417-001 \
--status rejected \
--note "设计确认后判定这是有意保留的滚动裁切,不视为 bug。"
update-status 会按 id 自动定位旧记录,所以即使 issue 来自前几天,也可以继续传今天的 --date。