cli-anything-mermaid 是做什么的?
通过有状态的项目文件和 mermaid.ink 渲染器创建、编辑和渲染 Mermaid 图表。专为 AI 代理和高级用户设计,无需图形界面即可生成流程图、序列图等可视化内容。
安装
此 CLI 工具作为 cli-anything-mermaid 包的一部分安装:
pip install cli-anything-mermaid
前提条件:
- Python 3.10+
- 无需外部软件(渲染使用 mermaid.ink 云服务)
用法
基本命令
# 显示帮助
cli-anything-mermaid --help
# 启动交互式 REPL 模式
cli-anything-mermaid
# 创建新项目
cli-anything-mermaid project new -o diagram.json
# 以 JSON 输出运行(供代理消费)
cli-anything-mermaid --json project info
REPL 模式
当不带有子命令调用时,CLI 将进入交互式 REPL 会话:
cli-anything-mermaid
# 以交互方式输入命令,支持 Tab 补全和历史记录
命令组
Project(项目)
项目生命周期命令。
| 命令 | 描述 |
|---|---|
new | 创建新的 Mermaid 项目,可选样本预设和主题 |
open | 打开现有的 Mermaid 项目文件 |
save | 将当前项目保存到文件 |
info | 显示当前项目信息 |
samples | 列出可用的样本图表预设 |
Diagram(图表)
图表源代码操作命令。
| 命令 | 描述 |
|---|---|
set | 替换 Mermaid 源代码(内联或从文件) |
show | 打印当前 Mermaid 源代码 |
Export(导出)
渲染和分享命令。
| 命令 | 描述 |
|---|---|
render | 通过 mermaid.ink 将图表渲染为 SVG 或 PNG |
share | 生成可分享的 Mermaid Live Editor 链接 |
Session(会话)
会话状态命令。
| 命令 | 描述 |
|---|---|
status | 显示当前会话状态 |
undo | 撤销上一次图表源代码更改 |
redo | 重做上一次撤销的更改 |
示例
创建并渲染流程图
# 创建带有流程图样本的项目
cli-anything-mermaid project new --sample flowchart -o flow.json
# 替换图表源代码
cli-anything-mermaid --project flow.json diagram set --text "graph TD; A-->B; B-->C;"
# 渲染为 SVG
cli-anything-mermaid --project flow.json export render output.svg --format svg
创建序列图
# 创建带有序列图样本的项目
cli-anything-mermaid project new --sample sequence -o seq.json
# 从文件设置图表
cli-anything-mermaid --project seq.json diagram set --file my_diagram.mmd
# 渲染为 PNG
cli-anything-mermaid --project seq.json export render output.png --format png
分享图表
# 生成可编辑的 Mermaid Live 链接
cli-anything-mermaid --project flow.json export share --mode edit
# 生成只读链接
cli-anything-mermaid --project flow.json export share --mode view
交互式 REPL 会话
cli-anything-mermaid
# new flowchart
# set graph TD; A-->B; B-->C;
# render output.svg
# share
# quit
状态管理
CLI 维护会话状态,包括:
- 撤销/重做:还原或重放图表源代码更改
- 项目持久化:以 JSON 格式保存/加载项目状态
- 会话跟踪:跟踪修改和变更
输出格式
所有命令支持两种输出模式:
- 人类可读(默认):表格、颜色、格式化文本
- 机器可读(
--json标志):结构化 JSON,供代理消费
# 人类输出
cli-anything-mermaid project info
# 供代理使用的 JSON 输出
cli-anything-mermaid --json project info
面向 AI 代理的提示
当以编程方式使用此 CLI 时:
- 始终使用
--json标志 以获得可解析的输出 - 检查返回码 — 0 表示成功,非零表示错误
- 解析 stderr 以获取失败时的错误信息
- 对所有文件操作使用绝对路径
- 在渲染操作后验证输出文件是否存在
更多信息
- 完整文档:请参阅包内的 README.md
- 测试覆盖:请参阅包内的 TEST.md
- 方法论:请参阅 cli-anything-plugin 中的 HARNESS.md
版本
1.0.0