hier_config: Skill for Claude Code

.claude/skills/hier-config-new-driver/SKILL.md

hier-config-new-driver is a skill for Claude Code from netdevops/hier_config. It costs 44 tokens per session (1,191 once invoked), scanned A, original, MIT.

A development recipe for adding support for a new network platform or operating system to hier_config through a platform driver. The driver describes how that platform’s configuration syntax should be read and written.

In plain words
What is it for?
Use it to add a platform enum member, create a driver, handle platform-specific commands and sections, and scaffold its tests.
Why use it?
It provides the project’s expected structure, rules, and tests for vendors or platforms that are not yet supported.

Skill for Claude Code

Written for Claude Code: installed under .claude/.

This is netdevops/hier_config's own configuration. It tells Claude Code how to work on hier_config itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything hier_config configures →

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is poetry run ./scripts/build.py lint-and-test.

Reuse

Borrowing it

Nothing to install: this file belongs to netdevops/hier_config. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/netdevops/hier_config/master/.claude/skills/hier-config-new-driver/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/netdevops/hier_config

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for hier-config-new-driver

README.md
[![agentmods](https://agentmods.dev/badge/skills/netdevops/hier_config/hier-config-new-driver.svg)](https://agentmods.dev/skills/netdevops/hier_config/hier-config-new-driver)
Your own site
<a href="https://agentmods.dev/skills/netdevops/hier_config/hier-config-new-driver"><img src="https://agentmods.dev/badge/skills/netdevops/hier_config/hier-config-new-driver.svg" alt="Measured on agentmods" height="20"></a>
Per session 44 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,191 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00044 $0.01191
Opus 5 $0.00022 $0.00596
Sonnet 5 $0.00009 $0.00238
Haiku 4.5 $0.00004 $0.00119

Measured 5d ago against content hash be92c2878d87, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

hier-config-new-driver scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/hier-config-new-driver/SKILL.md · 101 lines

How it starts

The opening of the file, as written. The whole thing — 101 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Build a New hier_config Platform Driver

Scaffold an in-tree platform driver the way this repo expects. The authoritative recipe is docs/dev/extending.md; this skill adds the concrete templates. For a driver that lives outside this repo (in user code), follow docs/user/custom-drivers.md#creating-a-custom-driver instead.

Step 1: Characterize the Platform

Answer these before writing code — they determine which overrides and rules the driver needs. Study real config samples from the platform:

Question Driver hook if non-default
Negation prefix (no ? undo ? delete ?) negation_prefix property (default "no ")
Some commands reset with a different form? NegationDefaultWithRule / override swap_negation
Sections closed with an exit token (exit, quit, end-*)? SectionalExitingRule / override sectional_exit
Last-write-wins commands (hostname, description, …)? IdempotentCommandsRule
Comment/banner lines to strip on load? PerLineSubRule / FullTextSubRule
Blocks with irregular indentation? IndentAdjustRule
Flat set/delete syntax (Junos-like)? config_preprocessor + declaration_prefix (see platforms/vyos/driver.py)
Order-sensitive commands? OrderingRule with weights

Reference implementations: platforms/huawei_vrp/driver.py (small, rule-based), platforms/vyos/driver.py (preprocessor-based), platforms/cisco_ios/driver.py (comprehensive).

Step 2: Write the Failing Test First (TDD)

Create tests/test_driver_<platform>.py before the driver exists — conventions in docs/dev/testing.md. Flat functions, full annotations, round-trip idiom:

from hier_config import Platform, get_hconfig_fast_load


def test_negation_prefix() -> None:
    running_config = get_hconfig_fast_load(
        Platform.ACME_OS, ("interface eth0", "  shutdown")
    )
    generated_config = get_hconfig_fast_load(
        Platform.ACME_OS, ("interface eth0",)
    )
    remediation = running_config.config_to_get_to(generated_config)
    assert remediation.dump_simple() == ("interface eth0", "  no shutdown")

    running_after = running_config.future(remediation)
    rollback = running_after.config_to_get_to(running_config)
    running_after_rollback = running_after.future(rollback)
    assert not tuple(running_config.unified_diff(running_after_rollback))

Read the full file on GitHub · 101 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 101 lines · 44 tokens per session scan A be92c2878d87

Subscribe to this mod's changes

hier-config-new-driver is a skill published in the GitHub repository netdevops/hier_config (149 stars, last pushed 10d ago), licensed MIT. It adds 44 tokens to every session and 1,191 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-01.

Related

Other skills, from other repositories

analyzing-network-traffic-of-malware

Analyzes network traffic generated by malware during sandbox execution or live incident response to identify C2 protocols, data exfiltration channels, payload downloads, and lateral movement patterns using Wireshark, Zeek, and Suricata. Activates for requests involving malware network analysis, C2 traffic decoding…

mukul975/Anthropic-Cybersecurity-Skills · 81 tokens

cis-aws-foundations-4.3

Ensure AWS Config is enabled in all regions.

CyberStrikeus/CyberStrike · 18 tokens

breaking-down-the-work

Splits scope into a product-first work breakdown that follows the 100% rule, keeps pieces from overlapping, uses outline numbers, and gives every piece a dictionary entry. Use when an epic, feature, or new subsystem needs a clean split into deliverables, or one source of truth before folders or work begin. Do not use…

FlyFission/nuclear-grade-context-engineering · 84 tokens

deciding-who-decides

Decides who holds authority for a change — the agent at the edge or a human gate — by matching decision rights to reversibility, evidence, and consequence, and names the escalation trigger. Use when an agent could act on something irreversible, trust-bearing, or thinly evidenced. Do not use for trivial reversible…

FlyFission/nuclear-grade-context-engineering · 80 tokens

organizing-project-folders

Designs a clean folder and file layout as real architecture, building it from a work breakdown or an existing tree, grouping by what changes together and what happens to it, with platform-safe sortable names and a short note per folder. Use when laying out a repo or agent workspace, deciding where a file belongs, or…

FlyFission/nuclear-grade-context-engineering · 94 tokens

rating-change-risk

Picks Quick, Standard, or a stronger human-reviewed mode based on consequence, how easy it is to undo, and how much is unknown. Use when you start a change to code, docs, dependencies, AI power, releases, or public claims and the right level of care is unclear. Do not use for a tiny easy-to-undo edit with obvious…

FlyFission/nuclear-grade-context-engineering · 103 tokens