Monitor CI
nrwl/nx
Monitor Nx Cloud CI pipeline and handle self-healing fixes. An agent skill from nrwl/nx.
A skill your agent uses when hierconfig produces wrong or unexpected output — incorrect remediation commands, missing or extra negations, repeated commands, lines nested under the wrong parent…
$ npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install netdevops/hier_config hier-config-troubleshoot --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/netdevops/hier_config.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/hier-config-troubleshoot .claude/skills/hier-config-troubleshoot && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "hier-config-troubleshoot" agent skill from https://github.com/netdevops/hier_config/tree/master/.claude/skills/hier-config-troubleshoot into .claude/skills/hier-config-troubleshoot/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hier-config-troubleshoot", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/netdevops/hier_config/tree/master/.claude/skills/hier-config-troubleshootType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install netdevops/hier_config hier-config-troubleshoot --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/netdevops/hier_config.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/hier-config-troubleshoot .agents/skills/hier-config-troubleshoot && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "hier-config-troubleshoot" agent skill from https://github.com/netdevops/hier_config/tree/master/.claude/skills/hier-config-troubleshoot into .agents/skills/hier-config-troubleshoot/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hier-config-troubleshoot", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install netdevops/hier_config hier-config-troubleshoot --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/netdevops/hier_config.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/hier-config-troubleshoot .cursor/skills/hier-config-troubleshoot && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "hier-config-troubleshoot" agent skill from https://github.com/netdevops/hier_config/tree/master/.claude/skills/hier-config-troubleshoot into .cursor/skills/hier-config-troubleshoot/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hier-config-troubleshoot", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/netdevops/hier_config.git --path .claude/skills/hier-config-troubleshoot--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install netdevops/hier_config hier-config-troubleshoot --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/netdevops/hier_config.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/hier-config-troubleshoot .gemini/skills/hier-config-troubleshoot && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "hier-config-troubleshoot" agent skill from https://github.com/netdevops/hier_config/tree/master/.claude/skills/hier-config-troubleshoot into .gemini/skills/hier-config-troubleshoot/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hier-config-troubleshoot", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install netdevops/hier_config hier-config-troubleshootInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/netdevops/hier_config.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/hier-config-troubleshoot .github/skills/hier-config-troubleshoot && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "hier-config-troubleshoot" agent skill from https://github.com/netdevops/hier_config/tree/master/.claude/skills/hier-config-troubleshoot into .github/skills/hier-config-troubleshoot/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hier-config-troubleshoot", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install netdevops/hier_config hier-config-troubleshoot --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/netdevops/hier_config.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/hier-config-troubleshoot .opencode/skills/hier-config-troubleshoot && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "hier-config-troubleshoot" agent skill from https://github.com/netdevops/hier_config/tree/master/.claude/skills/hier-config-troubleshoot into .opencode/skills/hier-config-troubleshoot/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "hier-config-troubleshoot", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
hier-config-troubleshootA skill your agent uses when hierconfig produces wrong or unexpected output — incorrect remediation commands, missing or extra negations, repeated commands, lines nested under the wrong parent…
Hier Config Troubleshoot is an agent skill from netdevops/hier_config. Use when hierconfig produces wrong or unexpected output — incorrect remediation commands, missing or extra negations, repeated commands, lines nested under the wrong parent, DuplicateChildError, inaccurate future() or rollback results, or config lines parsed incorrectly.
Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in DevOps & Cloud. The repository describes itself as: Hierarchical Configuration. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 806c654. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitpoetryFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Hier Config Troubleshoot loads about 1.4k tokens when it runs. Until then it costs about 74 tokens; SKILL.md has 560 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from netdevops/hier_config at commit 806c654, republished under its MIT licence (© netdevops). 560 words, ~1,405 tokens.
.claude/skills/hier-config-troubleshoot/SKILL.md (or your agent's skills folder).Diagnose why hier_config produced unexpected output. Work from a minimal reproduction, identify which layer is responsible (parsing → driver rules → diff algorithm), then fix at the source with a regression test.
Reduce the problem to the smallest config pair that shows it, using inline tuples — no fixture files needed:
from hier_config import Platform, get_hconfig_fast_load
running_config = get_hconfig_fast_load(Platform.CISCO_IOS, ("hostname foo",))
generated_config = get_hconfig_fast_load(Platform.CISCO_IOS, ("hostname bar",))
print("\n".join(running_config.config_to_get_to(generated_config).dump_simple()))Bisect: delete config lines until removing one more makes the symptom disappear. That line (and its ancestry) is where to look. If the report compares platforms ("works on X, broken on Y"), reproduce both platforms — claimed-working references are often wrong, and the platforms that actually differ tell you which rule is responsible. If the raw config parses differently than expected, compare get_hconfig() (full parse with preprocessing) against get_hconfig_fast_load() (no preprocessing) — a difference means a per_line_sub/full_text_sub/config_preprocessor or indentation issue.
config.dump_simple() — the parsed tree as indented lines; wrong nesting is visible immediately.running_config.unified_diff(generated_config) — structure-aware diff.config.driver.rules — the live rule set; check what the platform driver actually matches.| Symptom | Likely cause | Where to look |
|---|---|---|
Command emitted as no X + Y instead of just Y | Missing idempotency rule — the command is last-write-wins on the device but the driver doesn't know | idempotent_commands in the platform driver; add IdempotentCommandsRule |
Negation has the wrong form (no shutdown vs default shutdown vs truncated args) | Negation rules | negate_with (NegationDefaultWithRule), negation_default_when, or the driver's swap_negation override |
| Lines nested under the wrong parent; everything after line X collapses under it | Irregular indentation in vendor output; an IndentAdjustRule matching too broadly or missing | indent_adjust rules. Real cases: XR template blocks; Huawei peer-public-key end (see git log for #205, #268) |
DuplicateChildError | Platform legitimately repeats a child text under one parent | Add ParentAllowsDuplicateChildRule (see #266 for a real example) |
| Section replaced wholesale (or should be, but isn't) | Sectional overwrite | sectional_overwrite / sectional_overwrite_no_negate (XR route-policy is the canonical case) |
Missing/wrong exit token after a section (exit, quit, end-policy) | Sectional exiting | sectional_exiting rules; exit_text_parent_level for unindented exits |
| Commands in an order the device rejects | Ordering weights | ordering rules (lower weight applies first) |
| Junk lines in the tree (banners, comments, timestamps) | Load-time substitutions | per_line_sub / full_text_sub |
future() or rollback doesn't match real device behavior | Known algorithm limitations | docs/user/future-config.md#known-limitations — duplicate children and order-dependent sections (ACLs need sequence numbers) are documented limits |
| Wrong platform behavior entirely | Wrong driver selected | Confirm the Platform enum member; GENERIC has almost no rules |
Rule semantics reference: docs/user/custom-drivers.md#driver-rule-types. Layer responsibilities: docs/dev/architecture.md.
Rules match on full ancestry via MatchRule tuples (fields AND together; tuple entries match root→leaf lineage). Test a hypothesis directly:
from hier_config.models import MatchRule
child = running_config.get_child_deep((MatchRule(startswith="interface"), MatchRule(startswith="ip address")))
if child is None:
print("no child matched — the lineage tuple is wrong or the line parsed differently")
else:
print(child, child.is_lineage_match((MatchRule(startswith="interface"),)))If a driver rule should match but doesn't, print the rule set (config.driver.rules.idempotent_commands, etc.) and check each MatchRule field against the actual line text — trailing whitespace and startswith vs equals mismatches are the usual culprits.
_instantiate_rules() — recipe in docs/dev/extending.md.base.py, root.py, child.py): rare; read docs/dev/architecture.md first and check git log for related fixes before changing shared behavior.docs/user/custom-drivers.md#customizing-existing-drivers.Every fix ships with a regression test that reproduces the original symptom (docs/dev/testing.md, round-trip idiom) and a CHANGELOG.md entry. Fixes to one platform must not leak: run the full suite (poetry run ./scripts/build.py lint-and-test), not just the platform's test file.
© netdevops, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/hier-config-troubleshoot of netdevops/hier_config.
Open the folder on GitHubat commit 806c654
Hier Config Troubleshoot next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Hier Config Troubleshoot this skillnetdevops/hier_config | 150 | — | ~1.4k | Automated safety check: Pass | MIT | |
| Monitor CInrwl/nx | 29k | 6 repos | ~4.7k | Automated safety check: Pass | MIT | |
| Terraform and OpenTofu Guideagentscope-ai/QwenPaw | 35k | 6 repos | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Vercel Optimize Auditvercel-labs/agent-skills | 32k | 9 repos | ~4.3k | Automated safety check: Pass | None | |
| Openclaw Live Updateropenclaw/openclaw | 392k | — | ~3.7k | Automated safety check: Pass | MIT | |
| Analyze GitHub Action Logswithastro/astro | 63k | 1 repos | ~1.3k | Automated safety check: Pass | Custom licence |
nrwl/nx
Monitor Nx Cloud CI pipeline and handle self-healing fixes. An agent skill from nrwl/nx.
agentscope-ai/QwenPaw
Guidance for writing and testing Terraform and OpenTofu code: module structure, naming, test approaches, CI/CD workflows, state handling and security scanning.
vercel-labs/agent-skills
Runs a metrics-first audit of a deployed Vercel project, gating investigations on real signals to produce ranked, citation-backed cost and performance recommendations.
openclaw/openclaw
Maintain the canonical live OpenClaw main checkout, macOS LaunchAgent-managed Gateway, local macOS app, exact-head main CI, and recurring full release validation.
withastro/astro
Analyze recent GitHub Actions workflow runs to identify patterns, mistakes, and improvements.
kubesphere/kubesphere
Creates and queries KubeSphere users, workspaces and projects and assigns built-in roles, defaulting to least privilege and never deleting anything.
netdevops/hier_config
A skill your agent uses when adding hierconfig support for a new network platform or operating system — creating a platform driver, registering a new Platform enum member, or scaffolding driver…
netdevops/hier_config
A skill your agent uses when asked to review changes, self-review work, or prepare a pull request in the hierconfig repository — especially before opening or updating a PR, or when checking…
Categories
A skill your agent uses when hierconfig produces wrong or unexpected output — incorrect remediation commands, missing or extra negations, repeated commands, lines nested under the wrong parent…. Hier Config Troubleshoot is an agent skill from netdevops/hier_config. Use when hierconfig produces wrong or unexpected output — incorrect remediation commands, missing or extra negations, repeated commands, lines nested under the wrong parent, DuplicateChildError, inaccurate future() or rollback results, or config lines parsed incorrectly.
Hier Config Troubleshoot fits situations like: hierconfig produces wrong; unexpected output — incorrect remediation commands; extra negations; repeated commands.
Run `npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a claude-code`. Or copy the skill folder (.claude/skills/hier-config-troubleshoot in netdevops/hier_config) into .claude/skills/hier-config-troubleshoot in your project. Claude Code loads it when a task matches its description.
Run `npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a codex`. Or copy the skill folder (.claude/skills/hier-config-troubleshoot in netdevops/hier_config) into .agents/skills/hier-config-troubleshoot in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add netdevops/hier_config --skill hier-config-troubleshoot -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/hier-config-troubleshoot, .gemini/skills/hier-config-troubleshoot, .github/skills/hier-config-troubleshoot and .opencode/skills/hier-config-troubleshoot in your project.
Going by SKILL.md and its folder, Hier Config Troubleshoot needs the command-line tools its instructions call (git and poetry). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Hier Config Troubleshoot is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Hier Config Troubleshoot: Monitor CI (nrwl/nx, 29k stars), Terraform and OpenTofu Guide (agentscope-ai/QwenPaw, 35k stars), Vercel Optimize Audit (vercel-labs/agent-skills, 32k stars) and Openclaw Live Updater (openclaw/openclaw, 392k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
netdevops (a GitHub organization) maintains it in netdevops/hier_config, which has 150 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on September 21, 2026.
Source: netdevops/hier_config on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.