# Gemini CLI 读图教程：把手绘审批流程转成可校对的 Mermaid

## 身份和范围

本站原创 fixture 与人工参考；实际运行：人工 Mermaid 八边拓扑与实际渲染。目标代理模型、账号会话、付费 API、第三方 PR、推送和发布均未执行。公开包不含 .env；需要时仅在自己的临时练习目录从文本模板创建。

## 本地命令

```sh
python3 verify.py
```

## 七步原生操作

### 1. 保存原始手绘与节点编号

打开 handwritten.png：七个节点、八条有向边，包含 B→D→B 回环和 C→G 拒绝出口。E→D 的标签故意含“补…？”不确定字，不能在识别后悄悄补成肯定事实。 包内原图是本站人工编排、程序落图的数字草图，不是真实纸笔扫描；也可换成自己的手绘照片做相同拓扑验收。

### 2. 让 Gemini 用真实文件工具读图

在图片所在项目启动 Gemini CLI，明确让 read_file 读取 handwritten.png。原生 read_file 支持图片，但 Glob/Grep 的文本检索不等于看懂图；保留真实工具反馈，不能画一张假的 CLI 成功界面。

### 3. 先列节点和边再生成语法

要求返回 nodes/edges/uncertainLabels，逐一标识提交、字段检查、主管审批、补充材料、财务复核、归档和拒绝。若文字模糊就写 unknown，避免直接生成漂亮图后难以查漏边。

### 4. 生成可编辑 Mermaid 并保留问号

将节点表转 flowchart TD；E→D 的边标为“补…？待确认”。包内 reference.mmd 是本站人工正确拓扑参考，不是 Gemini 输出；模型自己的源文件另存 actual.mmd。

### 5. 运行八条边的结构核验

执行 python3 verify.py，逐边比较 reference.mmd 和 topology.json。这个检查器只解析本题限定语法，不是通用 Mermaid parser；实际模型语法错误还要交给 Mermaid 渲染器。

### 6. 渲染后用原图逐箭头复核

打开 reference.html 的实际 Mermaid 渲染，逐项核对七节点、八边、拒绝出口和退回回环。渲染成功只证明语法可画，不证明手绘已被正确理解。

### 7. 把不确定标签交还原作者

交付 Mermaid 源码、实际渲染图和待确认项。原图作者确认 E→D 标签后再修改源文件并重渲染；不确定项消失必须有确认依据。

## 验收产物

Mermaid 源码、实际渲染结果；逐节点、逐箭头对照表与 uncertain-label 清单，保留人工确认处

## 门槛

- Gemini CLI 需要 Node >=20 和网络；Google 登录、Gemini API key、Vertex 的额度与权限不同。
- read_file 官方支持图片输入；使用可读 PNG，并记录实际模型对图片的支持。
- 图片 OCR 和连线识别可能出错；验收必须人工逐边核对，不能宣称无损识别。

## 官方来源

- https://geminicli.com/docs/tools/file-system/
- https://geminicli.com/docs/get-started/authentication/

静态配图冻结于本次输入。修改输入需重新运行并自行重渲染；不把旧截图当新结果。
