- tools/ui_map.mjs find <words on screen | key | /anomalous/route | file.js>, read from the code
each time (tools/ui_map_scan.mjs: the words, what each web file shows and calls, its CSS
classes, imports, the backend's routes); build writes the whole map to the untracked
docs/ui-map.md, with the routes no page calls and the words no file uses.
- docs/architecture/ui-flows.md: the hand-written part for the AI workbench (what each part
is for, what a click does, why) and a glossary of one name per thing. The structure check
fails when a word in it is no longer on screen, a file or route it names is gone, or a
retired name is back on screen.
- One name each on the AI page: 素材 (not 材料), 留言 (not 消息), 节点结构 (the / command
too), 连接 for the last AI, 副本 for the task's tab, 撤销; English "Node map".
- AGENTS.md: look a button up with the map before changing it.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>