From infrahub
Creates and manages Infrahub YAML files for infrastructure objects like devices, locations, organizations, and modules. Use when populating data instances or defining hierarchies, not schemas or queries.
npx claudepluginhub opsmill/claude-marketplace --plugin infrahubThis skill is limited to using the following tools:
Expert guidance for creating Infrahub object (data) files.
examples.mdreference.mdrules/_sections.mdrules/_template.mdrules/children-components.mdrules/children-hierarchy.mdrules/format-structure.mdrules/organization-load-order.mdrules/patterns-common.mdrules/range-expansion.mdrules/value-attributes.mdrules/value-generic-relationships.mdrules/value-relationships.mdCreates, validates, and modifies Infrahub schema YAML files for nodes, generics, attributes, relationships, and extensions. Useful for designing data models, adding schema nodes, validating definitions, and planning migrations.
Manages hosts, groups, and variables in Ansible inventory files using INI and YAML formats for infrastructure organization across environments.
Generates Terragrunt HCL files including root.hcl, terragrunt.hcl, stacks, child modules, multi-env layouts, and dependency wiring with 2025 features like feature flags and exclude blocks.
Share bugs, ideas, or general feedback.
Expert guidance for creating Infrahub object (data) files. Objects are YAML files that populate schema nodes with actual infrastructure data -- devices, locations, organizations, modules, and more.
Existing schema files:
!find . -name "*.yml" -path "*/schemas/*" -o -name "*schema*" -name "*.yml" 2>/dev/null | head -10
Existing object files:
!find . -name "*.yml" -path "*/objects/*" 2>/dev/null | head -20
If invoked with arguments (e.g., /infrahub:managing-objects DcimDevice spine-01),
use the first argument as the kind and remaining arguments as object details.
| Priority | Category | Prefix | Description |
|---|---|---|---|
| CRITICAL | File Format | format- | apiVersion, kind, spec structure |
| CRITICAL | Value Mapping | value- | Attributes, dropdowns, references |
| HIGH | Children | children- | Hierarchy/component nesting |
| MEDIUM | Range | range- | Sequential interface expansion |
| MEDIUM | Organization | organization- | Naming, load order, multi-doc |
| LOW | Patterns | patterns- | Flat lists, devices, git repos |
---
apiVersion: infrahub.app/v1
kind: Object
spec:
kind: <NodeKind> # Schema node kind (e.g., DcimDellServer)
data:
- <attribute>: <value> # List of object instances
apiVersion, kind: Object, spec.kind, and spec.data
are always required. Each spec block targets a single
node kind.
Follow these steps when creating object data files: