# autotrain(铁路系统发票)· 代码图谱索引 (CODEMAP) > 由 codebase-memory-mcp 于 2026-07-09 生成 · 图谱 548 节点 / 1704 边 · 活文件,每次 /wrap-up 覆盖 ## 一、给能连 MCP 的 agent(首选) 本项目已索引,project 名 `Users-qoragufimo390gmail.com-Documents-works-autotrain`。直接查图谱代替 grep(省 ~120x token): - 架构总览:`get_architecture(project="Users-qoragufimo390gmail.com-Documents-works-autotrain", aspects=["all"])` - 查函数/类:`search_graph(project="Users-qoragufimo390gmail.com-Documents-works-autotrain", name_pattern=".*X.*")` - 调用链:`trace_path(project="Users-qoragufimo390gmail.com-Documents-works-autotrain", function_name="X", direction="both")` - 死代码:`search_graph(project="Users-qoragufimo390gmail.com-Documents-works-autotrain", max_degree=0, exclude_entry_points=true)` - Cypher:`query_graph(project="Users-qoragufimo390gmail.com-Documents-works-autotrain", query="MATCH ...")` 未连 MCP?CLI 等价:`~/.local/bin/codebase-memory-mcp cli ''` ## 二、结构画像快照(连不上 MCP 时读这段就够) - **规模**:548 节点 / 1704 边 / 30 文件 - **语言**:Python 6 · Bash 3 - **节点构成**:Section 182 · Function 180 · Variable 91 · File 30 · Module 30 · Method 17 · Folder 8 · Class 7 · Branch 1 · Decorator 1 · Project 1 - 判性质:Function/Method 多 = 应用代码;Section 182 说明文档/配置块占比较高(AGENTS.md/CODEMAP.md 等文档拆段) - **目录地图**: - `scripts/` - 主代码,9 文件,5 个入口 CLI + 校准/重启/守护脚本(`invoice_tool.py` / `web_ui.py` / `vision_fallback.py` / `record_step.py` / `add_invoice_passenger_name.py` / `calibrate.py` / `restart_web_ui.sh` / `web_ui_watchdog.sh` / `install_web_ui_launch_agent.sh`) - `docs/` - `usage.md` / `debug-trace-2026-06-09.md` / `screen-adaptation.md` / `device-adaptation.md` / `web-ui-adaptation-log.md` - `templates/` - `android_flow.example.json` - `out/` - 交付产物(CSV/README/manifest) - **入口 / 路由**:5 个 `main()` 入口 - `scripts.invoice_tool.main` - 主 CLI(台账/名单/邮件/Android 自动化/视觉批量) - `scripts.web_ui.main` - HTTP 服务(端口 8765,含 `/calibrate` 校准页) - `scripts.vision_fallback.main` - 视觉调用层(ping/detect-page/ask/list-rows) - `scripts.record_step.main` - 录制工具 - `scripts.add_invoice_passenger_name.main` - 乘客名补充 - **热点函数**(按入度 fan_in): - `builtins.dict.get` (82) · `builtins.print` (44) · `builtins.len` (34) · `builtins.list.append` (27) - `scripts.invoice_tool.run_adb` (23) - ADB 执行封装,全 Android 路径共用 - `scripts.invoice_tool.project_path` (20) - 项目路径常量 - `scripts.invoice_tool.adb_dump_nodes` (17) - uiautomator XML dump 解析 - `scripts.invoice_tool.adb_visible_texts` (14) - 可见文本提取 - `scripts.invoice_tool.match_roster` (13) - 名单匹配 - `scripts.invoice_tool.read_progress` (12) - 读处理进度 CSV - **聚类(clusters)**:9 个社区,核心几簇与脚本分工对应: - Web UI 状态层:`status_payload` / `do_POST` / `write_json` / `str` / `len` - H5 扫码开票单流程:`android_h5_page_run` / `read_progress` / `update_progress` / `build_vision_page_queue` / `get` - 原生列表 XML 路径:`android_invoice_step` / `run_adb` / `auto_scan_qr_to_list` / `android_vision_page_run` / `android_page_step` - 视觉驱动路径:`_vision_find_button` / `apply_speed_defaults` / `_vision_find_qr_thumbnail` / `record` / `int` - 台账导入/导出:`import_codes` / `export_summary` / `ensure_dirs` / `print` / `list` / `str` - 名单匹配 + 路径:`project_path` / `match_roster` / `android_run_flow` / `android_type_id` / `import_roster` - 页面队列构建:`build_visible_page_queue` / `first_matched_visible_passenger` / `find_android_nodes` / `node_center_y` / `append` - 解析入口:`build_parser` / `main` - **边构成**:CALLS 712 · DEFINES 567 · USAGE 148 · SEMANTICALLY_RELATED 127 · WRITES 76 · SIMILAR_TO 26 · CONTAINS_FILE 25 · DEFINES_METHOD 12 · CONTAINS_FOLDER 7 · IMPORTS 2 · DECORATES 1 · HAS_BRANCH 1 - 注意:IMPORTS 仅 2 条 - 脚本间靠文件(CSV/配置/截图)耦合而非 import,与 AGENTS.md「四个脚本通过文件耦合」描述一致