Communitygithub.com

cli-anything-drawio

一個用於 Draw.io 的 CLI 工具 — 可從命令列建立、編輯及匯出圖表。

cli-anything-drawio 是什麼?

此技能提供一個命令列介面(CLI)來操作 Draw.io 圖表,讓開發者或 AI 代理能以程式化方式建立、編輯、管理和匯出圖表。它支援包含形狀、連接線、頁面及匯出在內的完整工作流程,並可在人類可讀輸出與機器可讀 JSON(透過 `--json` 旗標)之間切換,特別適合被 AI 代理或自動化腳本呼叫。該工具內建互動式 REPL 模式(附帶標籤補全與歷史記錄),以及專案管理和復原/重做功能(最多 50 層歷史)。支援平台包括 Python 3.10+ 及系統內安裝的 drawio。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-drawio

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

cli-anything-drawio 是做什麼的?

一個用於 Draw.io 的 CLI 工具 — 可從命令列建立、編輯及匯出圖表。

安裝

此 CLI 作為 cli-anything-drawio 套件的一部分進行安裝:

pip install cli-anything-drawio

前置需求:

  • Python 3.10+
  • 系統上必須安裝 drawio

使用方式

基本命令

# 顯示說明
cli-anything-drawio --help

# 啟動互動式 REPL 模式
cli-anything-drawio

# 建立新專案
cli-anything-drawio project new -o project.json

# 以 JSON 輸出執行(供代理使用)
cli-anything-drawio --json project info -p project.json

REPL 模式

當不帶子命令執行時,CLI 會進入互動式 REPL 階段:

cli-anything-drawio
# 互動式輸入命令,支援標籤補全與歷史記錄

命令組

Project(專案)

專案管理:new(新建)、open(開啟)、save(儲存)、info(資訊)。

命令描述
new建立新的空白圖表
open開啟現有的 .drawio 專案檔
save儲存目前專案
info顯示詳細專案資訊
xml列印目前專案的原始 XML
presets列出可用的頁面大小預設

Shape(形狀)

形狀操作:add(新增)、remove(移除)、move(移動)、resize(調整大小)、style(樣式)。

命令描述
add新增形狀到圖表
remove依 ID 移除形狀
list列出頁面上的所有形狀
label更新形狀的標籤文字
move移動形狀到新座標
resize調整形狀大小
style設定形狀的樣式屬性
info顯示形狀的詳細資訊
types列出所有可用的形狀類型

Connect(連接)

連接器操作:add(新增)、remove(移除)、style(樣式)。

命令描述
add在兩個形狀之間新增連接器
remove依 ID 移除連接器
label更新連接器的標籤
style設定連接器的樣式屬性
list列出頁面上的所有連接器
styles列出可用的邊緣樣式

Page(頁面)

頁面操作:add(新增)、remove(移除)、rename(重新命名)、list(列出)。

命令描述
add新增頁面
remove依索引移除頁面
rename重新命名頁面
list列出所有頁面

Export(匯出)

匯出操作:渲染為 PNG、PDF、SVG。

命令描述
render將圖表匯出為檔案
formats列出可用的匯出格式

Session(階段)

階段管理:status(狀態)、undo(復原)、redo(重做)。

命令描述
status顯示目前階段的狀態
undo復原上次操作
redo重做上次復原的操作
save-state將階段狀態儲存至磁碟
list列出所有已儲存的階段

範例

建立新專案

建立一個新的 drawio 專案檔。

cli-anything-drawio project new -o myproject.json
# 或搭配 JSON 輸出以程式化方式使用
cli-anything-drawio --json project new -o myproject.json

互動式 REPL 階段

啟動一個支援復原/重做的互動式階段。

cli-anything-drawio
# 互動式輸入命令
# 使用 'help' 查看可用命令
# 使用 'undo' 和 'redo' 進行歷史導航

匯出專案

將專案匯出為最終輸出格式。

cli-anything-drawio --project myproject.json export render output.pdf --overwrite

狀態管理

CLI 透過以下方式維護階段狀態:

  • 復原/重做:最多 50 層歷史記錄
  • 專案持久性:將專案狀態儲存/載入為 JSON
  • 階段追蹤:追蹤修改與變更

輸出格式

所有命令支援雙重輸出模式:

  • 人類可讀(預設):表格、色彩、格式化文字
  • 機器可讀(--json 旗標):結構化 JSON,供代理使用
# 人類輸出
cli-anything-drawio project info -p project.json

# 供代理使用的 JSON 輸出
cli-anything-drawio --json project info -p project.json

供 AI 代理使用

當以程式化方式使用此 CLI 時:

  1. 務必使用 --json 旗標以取得可解析的輸出
  2. 檢查回傳碼 — 0 表示成功,非零表示錯誤
  3. 解析 stderr 以取得失敗時的錯誤訊息
  4. 在所有檔案操作中使用絕對路徑
  5. 在匯出操作後確認輸出是否存在

更多資訊

  • 完整文件:參閱套件中的 README.md
  • 測試覆蓋率:參閱套件中的 TEST.md
  • 方法論:參閱 cli-anything-plugin 中的 HARNESS.md

版本

1.0.0

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

cli-anything-adguardhome

>-

cli-anything-anygen

>-

cli-anything-audacity

>-

cli-anything-blender

>-

cli-anything-browser

Browser automation CLI using DOMShell MCP server. Maps Chrome

cli-anything-calibre

>-

cli-anything-ccswitch

CLI interface for CC Switch — manage AI coding tool configurations from the terminal

cli-anything-chromadb

>-

cli-anything-cloudanalyzer

Command-line interface for CloudAnalyzer — Agent-friendly harness for CloudAnalyzer, a QA platform for mapping, localization, and perception outputs. Supports 27 commands across 8 groups: point cloud evaluation, trajectory evaluation, ground segmentation QA, config-driven quality gates, baseline evolution, processing, visualization, and interactive REPL.

cli-anything-cloudcompare

Command-line interface for CloudCompare — Agent-friendly harness for CloudCompare, the open-source 3D point cloud and mesh processing software. Supports 41 commands across 9 groups: project management, session control, point cloud operations (subsample, filter, segment, analyze), mesh operations, distance computation (C2C, C2M), transformations (ICP, matrix), export (LAS/LAZ/PLY/PCD/OBJ/STL/E57), and interactive REPL.

cli-anything-comfyui

>-

cli-anything-dify-workflow

Wrapper for the Dify workflow DSL CLI. Create, inspect, validate, edit, and export Dify workflow files through a CLI-Anything harness.

cli-anything-eez-studio

Use EEZ Studio from the command line: inspect and modify native .eez-project files, edit LVGL screens/widgets, manage SCPI commands, and invoke the real EEZ Studio backend for LVGL builds.

cli-anything-eth2-quickstart

>-

cli-anything-exa

>-

cli-anything-firefly-iii

Firefly III CLI - Personal finance management via CLI-Anything

cli-anything-freecad

Complete CLI harness for FreeCAD parametric 3D CAD modeler (258 commands). Covers ALL workbenches: Part (29 primitives + boolean + mirror + loft + sweep), Sketcher (26 cmds: geometry + constraints + editing), PartDesign (38 cmds: pad/pocket/groove/fillet/chamfer/patterns/hole/datum), Assembly (11 cmds), Mesh (16 cmds), TechDraw (15 cmds: views + dimensions + PDF/SVG), Draft (33 cmds: 2D shapes + arrays + transforms), FEM (12 cmds), CAM/CNC (10 cmds), Surface (6 cmds), Spreadsheet (7 cmds), Import (13 formats), Export (17 formats), Measure (12 cmds), Materials (21 presets). Headless FreeCAD export to STEP/IGES/STL/OBJ/DXF/PDF/glTF/3MF.

cli-anything-gimp

>-

cli-anything-godot

>-

cli-anything-inkscape

>-

相關技能