前言¶
設計評審、架構說明和交付文檔裏,UML 圖往往要落在 Visio(.vsdx)裏,方便和非開發同事一起改。常見做法是手拖圖形、對齊連線,或者先畫在別的工具裏再導出,再進 Visio 微調,來回成本高。若希望由 AI 根據自然語言描述直接產出可編輯的 Visio 文件,而不是隻給 Mermaid 截圖或 PlantUML 源碼,可以看一下 SkillHub 上的社區 Skill UML-Visio-generate(座標 @user_6090b166/visio-uml-generate)。
下面介紹它是什麼、能做什麼、如何安裝,以及按官方 SKILL 文檔復現工作流時要注意的點。
這是什麼¶
UML-Visio-generate 是一套基於通用 SKILL.md 格式的 Agent Skill:根據用戶的文字描述,識別 UML 圖類型與元素,生成結構化 JSON,再調用包內 Python 腳本輸出 Microsoft Visio(.vsdx) 文件。
- 維護方:SkillHub 社區發佈者
user_6090b166,來源標記爲community。 - 分類:
dev-programming。 - 版本:
1.0.1(以 SkillHub 頁面與skillhub search結果爲準)。 - 依賴:標籤標明
requires_api_key=false,不依賴額外 API Key。 - 官方入口:SkillHub 技能頁;API 座標頁爲
https://api.skillhub.cn/user_6090b166/visio-uml-generate。
Skill 文檔中的內部名稱寫作 visio-uml-generator,與商店展示名 UML-Visio-generate 指同一套能力。
核心功能¶
依據 Skill 包內 SKILL.md,已聲明的能力如下。
支持的 UML 圖類型¶
| 類型 | 說明 |
|---|---|
| 類圖(Class Diagram) | 類、接口、屬性、方法,以及繼承、組合、依賴等關係 |
| 用例圖(Use Case Diagram) | 參與者、用例、關聯、包含、擴展關係 |
| 序列圖(Sequence Diagram) | 參與者、生命線、同步/異步/返回消息 |
| 活動圖(Activity Diagram) | 動作節點、決策、開始/結束、控制流 |
工作流(Agent 側)¶
- 分析用戶文案,判斷 UML 圖類型與元素。
- 生成符合
references/uml-schema.md中 Schema 的 JSON 定義。 - 運行
scripts/generate_vsdx.py,生成.vsdx文件。 - 將文件交付給用戶。
實現要點(文檔說明)¶
.vsdx爲 ZIP + XML;腳本從零構建 Visio XML 結構。- 自動佈局:類圖網格、用例圖左右分佈、序列圖垂直時間線、活動圖垂直流程。
- 配色:類(藍)、接口(綠)、用例(黃)、活動(青)。
- 連接器:按關係類型設置箭頭(如空心三角表示繼承、虛線表示依賴、菱形表示組合等)。
- 生成腳本:
scripts/generate_vsdx.py爲純 Python,文檔寫明無第三方依賴。
文檔中記載的測試結果:四類圖均通過(類圖 5 類 5 關係、用例圖 2 參與者 4 用例 5 關係、序列圖 4 參與者 6 消息、活動圖 7 節點 7 流)。包內附帶示例輸入 visio-uml-test/ecommerce-class-diagram.json,文檔還列出對應示例輸出 ecommerce-class-diagram.vsdx。
安裝與啓用¶
安裝前需本機有 SkillHub CLI。未安裝時可按 SkillHub 安裝說明 執行:
command -v skillhub && skillhub --version
# 完整安裝(CLI + 默認 Skill,文檔推薦)
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
# 僅安裝 CLI
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash -s -- --cli-only
安裝 Skill 時必須用 --dir 指向當前 Agent 的 skills 目錄,否則默認落在 ./skills/,Agent 可能識別不到。官方頁面給出的安裝提示爲:根據 https://skillhub.cn/install/skillhub.md 安裝 @user_6090b166/visio-uml-generate。
命令行安裝示例(與 skillhub search 輸出一致):
skillhub install visio-uml-generate --namespace user_6090b166 --dir <你的 Agent skills 目錄>
常見客戶端 skills 路徑(摘自 SkillHub 安裝文檔):
- Cursor:
~/.cursor/skills/ - Codex:
~/.codex/skills/或項目下的.agents/skills/ - Claude Code:
~/.claude/skills/
裝好後在對應客戶端啓用該 Skill,讓 Agent 讀取包內 SKILL.md 並按工作流執行。文檔未單獨區分 Cursor 與 Claude Code 的觸發方式,二者均以「skills 目錄 + SKILL.md」爲準。
典型用法¶
1、自然語言驅動(推薦)¶
在已加載 Skill 的對話中,用中文或英文描述系統與關係,例如電商領域的類與倉儲接口。Agent 應按 SKILL.md 完成 JSON 編寫並調用 scripts/generate_vsdx.py,最後給出 .vsdx 路徑。
2、對照包內 JSON 示例¶
Skill 提供的電商類圖示例 JSON 片段結構如下(type 爲 class_diagram,含 classes 與 relationships):
{
"title": "E-Commerce System - Class Diagram",
"type": "class_diagram",
"classes": [
{
"name": "User",
"attributes": ["- id: Long", "- username: String"],
"methods": ["+ login(password: String): Boolean"]
}
],
"relationships": [
{
"source": "User",
"target": "Order",
"type": "association",
"label": "places",
"multiplicity_source": "1",
"multiplicity_target": "0..*"
}
]
}
完整字段見包內 visio-uml-test/ecommerce-class-diagram.json。在 Agent 或本地按 Schema 寫好 JSON 後,由 Skill 指引運行 scripts/generate_vsdx.py 生成 Visio 文件;具體命令行參數以包內腳本爲準(SKILL.md 未展開 CLI 幫助)。
適用場景與注意¶
適合誰
- 需要在 Visio 生態裏交付 UML、且希望用對話描述代替大量手動畫線的開發者或架構師。
- 已使用 Cursor、Claude Code、Codex 等支持 SkillHub skills 的客戶端,並願意用 SkillHub CLI 管理技能包。
限制與坑
- 輸出形態:目標是
.vsdx,不是 Mermaid/PlantUML 渲染圖;複雜版式仍可能要在 Visio 裏微調。 - 包內容完整性:
SKILL.md聲明應有scripts/generate_vsdx.py與references/uml-schema.md。若你安裝的1.0.1包內僅有文檔與示例 JSON、缺少腳本與 Schema,生成步驟無法本地執行,需在 SkillHub 向發佈者反饋或等待包更新後再用。 - 社區來源:
community技能無官方廠商背書,生產環境使用前建議在副本中驗證生成文件能否用本機 Visio 正常打開、編輯。 - 統計口徑:SkillHub 抓取資料顯示評分
100000、下載1268、安裝0;頁面數字會變動,以商店實時數據爲準。
結尾¶
UML-Visio-generate 把「文字描述 → 結構化 UML JSON → Visio .vsdx」寫進 Agent 工作流,覆蓋類圖、用例圖、序列圖、活動圖四類常見圖,且不要求 API Key。若你的交付物必須是 Visio 可編輯文件,可以按上文命令裝入當前 Agent 的 skills 目錄試用。
官方地址:https://www.skillhub.cn/skills/user_6090b166/visio-uml-generate