CtrlK
CommunityDocumentationLog inGet started
Tessl Logo

tessl/pypi-homeassistant

tessl install tessl/pypi-homeassistant@2025.9.0

Open-source home automation platform running on Python 3.

Agent Success

Agent success rate when using this tile

69%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.19x

Baseline

Agent success rate without this tile

58%

rubric.jsonevals/scenario-4/

{
  "context": "This criteria evaluates how well an engineer uses Home Assistant's Device Registry API to implement a smart home device management system. The focus is on proper usage of device registration, metadata management, and query capabilities.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "DeviceRegistry initialization",
      "description": "Correctly obtains and uses the DeviceRegistry instance from Home Assistant, using async_get(hass) or similar registry access pattern",
      "max_score": 10
    },
    {
      "name": "async_get_or_create usage",
      "description": "Uses DeviceRegistry.async_get_or_create() method to register devices with proper parameters including config_entry_id, connections, identifiers, manufacturer, model, name, sw_version, hw_version, and area_id",
      "max_score": 25
    },
    {
      "name": "Connection tuples",
      "description": "Correctly structures device connections as sets of tuples with (connection_type, value) format, such as (CONNECTION_NETWORK_MAC, mac_address) or (CONNECTION_ZIGBEE, zigbee_id)",
      "max_score": 10
    },
    {
      "name": "Identifier tuples",
      "description": "Correctly structures device identifiers as sets of tuples with (domain, unique_id) format for unique device identification",
      "max_score": 10
    },
    {
      "name": "async_update_device usage",
      "description": "Uses DeviceRegistry.async_update_device() method to modify device properties including area_id, name_by_user, sw_version, hw_version, merge_identifiers, and merge_connections",
      "max_score": 20
    },
    {
      "name": "async_get_device query",
      "description": "Uses DeviceRegistry.async_get_device() method to retrieve devices by identifiers or connections parameter",
      "max_score": 10
    },
    {
      "name": "async_remove_device usage",
      "description": "Uses DeviceRegistry.async_remove_device() method to properly remove devices from the registry",
      "max_score": 5
    },
    {
      "name": "Registry devices property",
      "description": "Accesses the DeviceRegistry.devices property to retrieve all registered devices as a dictionary",
      "max_score": 5
    },
    {
      "name": "Async/await patterns",
      "description": "Properly uses async/await syntax for all asynchronous DeviceRegistry operations",
      "max_score": 5
    }
  ]
}

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/homeassistant@2025.9.x
tile.json