Domotz Devices — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Domotz Devices (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Domotz automatically discovers and monitors devices on networks where agents are deployed. Devices include servers, workstations, network equipment, IoT devices, printers, and any IP-connected hardware. Each device is associated with a specific agent (site).
device is anything that answered a LAN scan, including unmanaged phones, printers, and IoT gear. Managed-endpoint inventory is atera or ncentral.
scoped to a single agent, so fleet-wide network inventory means fanning out site by site; auvik-devices answers it directly.
but reboot, removal, and config key off the Dashboard serial; use meraki-devices.
runzero.Domotz agents continuously scan local networks and automatically discover new devices. Discovered devices are classified by type and can be:
Devices are identified by multiple attributes:
| Status | Meaning |
|---|---|
ONLINE | Device is reachable on the network |
OFFLINE | Device is not responding |
UNKNOWN | Status cannot be determined |
| Tool | Description | Arguments |
|---|---|---|
domotz_devices_list | Every device on the agent's network, with status, IPs, MAC, and type | agent_id |
domotz_devices_get | Full detail for one device — vendor, model, OS, services | agent_id, device_id |
domotz_devices_uptime | Uptime history and current uptime | agent_id, device_id |
domotz_devices_history | Online/offline event history | agent_id, device_id |
domotz_devices_inventory | Inventory metadata — owner, location, notes, custom fields | agent_id, device_id |
All IDs are numbers. There is no device search tool and no pagination arguments — domotz_devices_list returns the full census for the agent in one response, and matching by name, IP, or MAC is done client-side over that array.
domotz_devices_inventory is the operator-maintained metadata layer (owner, location, notes), not the discovery data. It is where the human context lives, and it is empty unless somebody filled it in.
domotz_devices_listParameters:
agent_id -- The agent monitoring this network (required)Example response:
[
{
"id": 789,
"display_name": "Core Switch",
"ip_addresses": ["192.168.1.1"],
"hw_address": "AA:BB:CC:DD:EE:FF",
"vendor": "Cisco Systems",
"type": {
"detected_id": 3,
"label": "Network Device"
},
"status": "ONLINE",
"last_status_change": "2026-03-27T10:00:00Z",
"first_seen": "2025-06-15T08:30:00Z"
}
]domotz_devices_getParameters:
agent_id -- The agent ID (required)device_id -- The specific device ID (required)There is no server-side search, so a lookup is a list-and-filter:
agent_id; "anywhere in theestate" means domotz_agents_list then a call per agent.
domotz_devices_list for each agent in scope.ip_addresses, hw_address, display_name, orhostname. Prefer MAC when devices move on DHCP.
domotz_devices_get on the match for full detail.Say that the match was done locally when you report it — a device absent from the list is absent from the agent's last scan, which is not the same as "not on the network".
domotz_devices_list with the agent_id for the sitedomotz_devices_inventory for the devices that matter to pick upowner, location, and notes
first_seenNew devices appear only as the agent's own scan cycle finds them. There is no tool to force a rescan, so a device connected moments ago may not be listed yet.
domotz_devices_get for current statusdomotz_devices_history for the online/offline event sequence —this is what distinguishes a flapping device from a clean outage
domotz_devices_uptime for how long it has been up since thelast transition
domotz_agents_get before trusting any of it; a dead collectorreports last-known state as if it were current
For the actual connectivity graph, use domotz_network_topology — see the network skill. domotz_devices_list grouped by subnet is a weaker substitute and should not be presented as topology.
Cause: Invalid device ID, device has been removed, or the ID belongs to a different agent Solution: Verify the agent_id/device_id pair against domotz_devices_list. Device IDs are not globally unique across agents.
Cause: Agent has not completed its initial scan, agent is offline, or no devices on the network Solution: Check domotz_agents_get status. There is no scan trigger — if discovery has not run yet, the only option is to wait for the agent's own cycle.
Cause: Agent is offline, so records persist and read as last-known rather than current Solution: Check the agent's status and last_seen first. A report of "all devices online" from a site whose collector died is worse than no report.
agent_id and filter locally
last_status_change to detect recent outagesdomotz_devices_history rather than a single status read when thequestion is "has this been stable"
vendor field to categorize devices by manufacturerfirst_seen dates to detect new/rogue devices on the networkit includes staff phones and personal laptops, not just managed assets
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.