add-inventory-device
Add physical equipment to one or more YAML files referenced by inventory/stands.yaml. Use when asked to register a DUT, analyzer, generator, or other supported device, create a new device inventory so
SKILL.mdskills/add-inventory-device/SKILL.md
GitHubAdd Inventory Device
Register physical equipment without leaking secrets or coupling tests to physical identifiers.
Inspect
- Read
AGENTS.mdcompletely and follow its approval and verification rules. - Read
inventory/stands.yamland every path indevice_files. - Read
src/hardware_test/factory/devices.pyto discover supported inventorytypevalues. - Read inventory models and existing device entries to follow the current schema and naming.
- Determine the device ID, supported type, example-safe model, transport data, and credential reference. Ask for missing required values.
Choose the inventory source
- Add the device to the closest existing equipment file when its grouping is clear.
- Propose a new explicit YAML file when a category or location has enough devices to justify it.
- Add a new file to
device_files; never use glob discovery. - Resolve paths relative to
inventory/stands.yaml. - Check device IDs globally across all listed files and reject duplicates.
Design and review
- Use only types already supported by
_DEVICE_TYPES. - Treat support for a new device class or type as a separate architectural change; do not extend
_DEVICE_TYPESimplicitly. - Store host, port, model, transport type, and credential reference in device inventory.
- Never store a password, private key, token, or real organization secret in YAML.
- Use documentation-only address ranges for template examples.
- Show the complete proposed device YAML, any
device_fileschange, and all affected files. - Request explicit approval before modifying files.
Example:
version: 1
devices:
analyzer_02:
type: analyzer
model: example-analyzer-b
transport:
type: ssh
ssh:
host: 192.0.2.23
port: 22
credentials: analyzer-default
Implement and verify
- Modify only the approved inventory sources and documentation.
- Preserve unrelated equipment and stand definitions.
- Load the combined inventory and verify the new ID is present.
- Verify all stand references remain valid and duplicate IDs fail clearly.
- Add or update tests only after production changes are approved, as required by
AGENTS.md. - Do not connect to equipment or run hardware tests unless explicitly requested.
- Stage the intended changes and run
./scripts/ci.sh. - Report the source file, device ID, supported type, and verification results.