一键导入
device-state-query
Query one fabric node and return its interface and BGP state as structured JSON
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Query one fabric node and return its interface and BGP state as structured JSON
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Snapshot a node's state before and after a change, then report exactly what changed and whether the fabric is still healthy
Summarize a single piece of fabric state in a structured way, instead of returning a raw tool dump (replace this with your own one-line, verb-first description that says when to use the skill)
Walk a workshop participant through contributing a skill or lab back to the Skills & Specs Lab via fork and pull request, including GitHub PAT setup
Return a focused, structured health summary for one fabric node (interfaces and BGP), instead of a raw tool dump
Scaffold a new agentskills.io SKILL.md from a short description, with the right frontmatter, a focused scope, and a quality checklist
| name | device-state-query |
| description | Query one fabric node and return its interface and BGP state as structured JSON |
| state | draft |
Lab 1b solution. Use this skill to get the current operational state of a single
node in the lab fabric as structured data that another skill or a human can act
on. This is the first of the two composable skills; change-validation calls it
to snapshot state before and after a change.
One node, read-only. Nodes: spine1, spine2, leaf1, leaf2.
<node> is a known fabric node; otherwise return an error object.clab-skills-specs-lab-<node>.docker exec clab-skills-specs-lab-<node> sr_cli "show interface brief"docker exec clab-skills-specs-lab-<node> sr_cli "show network-instance default protocols bgp neighbor"{
"node": "<node>",
"captured_at": "<iso8601>",
"interfaces": [{"name": "ethernet-1/1", "oper": "up"}],
"bgp": [{"peer": "10.1.1.1", "peer_as": 65100, "state": "established"}],
"healthy": true
}
Keep the structure stable across calls. change-validation diffs two of these,
so field names and shape must not vary between the pre and post snapshot.
{"error": "unknown node <name>"}.{"node": "<node>", "error": "container not running"}.healthy: false with a note, never a
half-parsed object.