Context for developing and debugging Hubitat Elevation apps, drivers, and hub environment — sandbox constraints, lifecycle idioms, capability contracts, plus grounded deploy/log-tail/lint mechanisms.
—
—
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
High
Do not use without reviewing
Hubitat's two planes behave differently across a multi-hub setup. Conflating them is why "I deployed to the hub" sometimes hits the wrong one.
hub-config skill owns that config.skills/_reference/endpoints.md).POST /login first; the mechanisms must switch to the authenticated path.version integer returned by /app/ajax/code and /driver/ajax/code is bumped on every save and is the concurrency token. An update must send the current version.skills/_reference/endpoints.md).version optimistic-concurrency pattern is not code-only. POST /device/update (device rename/edit) carries a per-device version token with the identical read-fresh-then-send rule — read it from fullJson immediately before each POST (skills/_reference/endpoints.md).