network
作者 markdown-viewer使用 network 技能创建带有 mxGraph 设备图标、自动布局、区域分组和清晰链路语义的 PlantUML 网络拓扑图。它适用于 LAN、WAN、企业网络、数据中心、无线、安全以及厂商专有图示,并提供网络使用示例,以及 network 与 uml 或 cloud 何时使用的说明。
该技能评分为 84/100,属于目录用户的优质候选项。它提供了足够具体的网络图工作流细节、示例和约束,能帮助 agent 更准确地触发使用,并在更少猜测的情况下产出更有用的结果。
- 触发性强:说明清楚限定为 PlantUML 网络拓扑图,并明确排除了 uml/cloud 用例。
- 操作清晰:提供了关于代码块、开始/结束标记、链路语法、分区和样式的关键规则,能减少 agent 歧义。
- 安装决策价值高:多个示例文件覆盖 LAN、WAN、企业、数据中心、混合云、安全和厂商专属的 Cisco/Citrix 图示。
- 未发现安装命令或支持文件,因此是否采用取决于直接阅读 SKILL.md 和示例。
- 仓库以示例为主,参考资产和脚本较少,agent 可能仍需从样例中推断部分图标可用性和准确的 stencil 名称。
network 技能概览
network 技能能做什么
network 技能可以帮助你用 PlantUML 创建网络拓扑图,并配合设备级的 mxGraph 图标,让你不用靠猜语法也能建模 LAN、WAN、企业网络、数据中心和厂商风格图。它特别适合需要一套 network skill 来画出“像真实运维环境”的基础设施图,而不是抽象示意图的时候。
适合谁使用
如果你要记录路由器、交换机、防火墙、服务器、无线接入、DMZ、分支站点或混合链路,并且希望图能传达真实拓扑,就适合用这个技能。它尤其适合需要对设计进行对比、评审变更,或为架构文档生成图示的团队。
它为什么不一样
network 的核心价值在于图标还原度高,而且遵循拓扑感知的约定:mxGraph 画板名称、区域分组、链路类型和自动布局指引。相比通用提示词,它能给出更具体的结果,也能减少常见问题,比如图面凌乱、图标家族选错,或者画成软件类 UML 图。
如何使用 network 技能
安装并查看正确的文件
先运行 npx skills add markdown-viewer/skills --skill network 安装。然后先读 SKILL.md,再看 examples/ 里的示例文件,比如 lan-topology.md、enterprise-network.md、datacenter-network.md 和 hybrid-cloud.md。这些示例比通读整个仓库更快展示 network usage 的实战写法。
把粗略想法转成可用提示词
好的输入会明确拓扑、区域、设备和链路类型。例如: “Create a branch office network with Internet, firewall, core switch, two access switches, 12 workstations, Wi‑Fi APs, and a site-to-site VPN to HQ. Use Cisco icons and show the DMZ separately.” 这比 “draw my network” 更有效,因为这个技能需要范围和结构,才能选对合适的 stencil 家族。
遵守真正影响结果的图表规则
network guide 期望输出的是带有 @startuml 和 @enduml 的 PlantUML,并且要用正确的代码块围栏:使用 plantuml 或 puml,不要用纯文本。物理链路用 --,无线或备份路径用 ..,分组区域用 rectangle 或 package。如果需要云或 Internet 形状,应该显式建模,不要让它们变成隐含信息。
按照你的工作场景顺序阅读示例
如果你不确定该用哪套 stencil,先看 examples/lan-topology.md 了解通用网络,再看 examples/cisco-network.md 了解 Cisco 占比高的环境,然后是 examples/enterprise-network.md 了解分层企业布局,最后看 examples/security-architecture.md 了解纵深防御模式。这样的路径通常比随便扫一遍仓库更能帮你为 network 技能写出更好的第一版提示词。
network 技能常见问题
network 技能只能画 Cisco 图吗?
不是。Cisco 支持很好,但 network 技能同样面向通用 LAN/WAN 布局、Citrix、数据中心、无线和安全导向的网络图。应该选择与你环境匹配的 stencil 家族,而不是硬把所有内容都塞进一种厂商风格里。
什么时候不该用 network?
如果你要画的是通用软件架构、类图,或者云服务图,而拓扑更多是逻辑关系而不是设备关系,就不适合用它。目标是应用流程时,应该用偏 UML 的技能;目标是云服务架构时,应该改用云导向的技能。
它比直接提示 PlantUML 更好吗?
通常是更好的,因为这个技能会收窄 stencil 词汇、连接语义和分组模式,而这些在一次性提示词里很容易出错。简单场景下,普通提示词也能用;但当你需要一致的设备图标,以及一张读起来像基础设施图的拓扑图时,network skill 更可靠。
使用前我应该准备什么?
提前准备好网络区域、设备类型、站点数量、偏好的厂商风格和链路行为。如果你能明确说出 “DMZ”“core”“access”“VPN” 或 “wireless” 这类具体术语,输出通常会更准确,也更容易快速收敛。
如何提升 network 技能的效果
提供拓扑事实,而不是只给主题
最好的 network install 结果来自具体的拓扑信息:站点数量、主要子网或区域、设备角色,以及哪些链路是物理的、哪些是逻辑的。比起 “enterprise network diagram”,像 “Retail WAN with HQ, 4 branches, firewall at each branch, and VPN backhaul” 这样的描述更容易得到高质量输出。
说明图标家族和使用目的
如果你想要 Cisco 19、Cisco SAFE、Citrix 或通用 network 图标,请一开始就说明。还要说明这张图是用于运维、文档还是架构评审,因为这会影响 network 技能该保留多少细节、又该简化多少内容。
留意两个常见失败模式
第一个是把太多终端塞进一张图,导致图面过载;解决办法是要求分层分组,或者拆成多个子图。第二个是链路语义不清;解决办法是明确说明哪些连接是 Ethernet、wireless、VPN、management 或 traffic flow,这样技能才能正确选择 --、.. 或 -->。
从第一版开始迭代
拿到第一版输出后,可以通过补充缺失区域、让标签更清楚,或者减少每个集群中的设备类型来继续优化。如果结果看起来太泛,就加上约束,比如 “show DMZ and internal VLANs separately,” “use vendor-specific icons,” 或 “emphasize WAN failover paths,”,这样 network 技能通常能给出更有决策价值的修订版。
