Agent skill

Add Device

by SukramJ in SukramJ/aiohomematic

Add a new Homematic device type with DeviceProfileRegistry registration, custom data point class, and tests.

MITAuto-check passed

Install Add Device

skills CLI
$ npx skills add SukramJ/aiohomematic --skill add-device -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install SukramJ/aiohomematic add-device --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/SukramJ/aiohomematic.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/add-device .claude/skills/add-device && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
add-device
GitHub stars
168
Token cost
~735 tokens
SKILL.md length
75 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
MIT

At a glance

Add a new Homematic device type with DeviceProfileRegistry registration, custom data point class, and tests.

  • Works in 4 steps: Register with DeviceProfileRegistry → For Devices with Multiple Configurations → Add a Calculated Data Point (if needed) → …
  • The user wants to add support for a new device model
  • SKILL.md covers Step 1: Register with…, Step 2: For Devices with…, Step 3: Add a Calculated Data… and Step 4: Add Tests, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Add Device is an agent skill from SukramJ/aiohomematic. Add a new Homematic device type with DeviceProfileRegistry registration, custom data point class, and tests. Use when the user wants to add support for a new device model.

Its SKILL.md is about 740 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Python 3 Interface to interact with HomeMatic devices. The licence is MIT.

When your agent uses it

  • The user wants to add support for a new device model

Example prompts

  • “/add-device”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Register with DeviceProfileRegistry
  2. For Devices with Multiple Configurations
  3. Add a Calculated Data Point (if needed)
  4. Add Tests

What it can do on your machine

Read from SKILL.md and the folder at commit b3fdfe2. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are python).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Add Device loads about 735 tokens when it runs. Until then it costs about 46 tokens; SKILL.md has 75 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~46
When it runs · the whole SKILL.md, loaded when a task matches
~735

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from SukramJ/aiohomematic at commit b3fdfe2, republished under its MIT licence (© SukramJ). 75 words, ~735 tokens.

Download SKILL.mdSave it as .claude/skills/add-device/SKILL.md (or your agent's skills folder).
name
add-device
description
Add a new Homematic device type with DeviceProfileRegistry registration, custom data point class, and tests. Use when the user wants to add support for a new device model.

Adding a New Device Type

Device-to-profile mappings are managed via DeviceProfileRegistry. Most new devices can use existing CustomDataPoint subclasses.

Step 1: Register with DeviceProfileRegistry

Register in the appropriate entity module (e.g., aiohomematic/model/custom/switch.py, climate.py):

python
# In aiohomematic/model/custom/switch.py (or appropriate module)
from aiohomematic.const import DataPointCategory, DeviceProfile, Parameter
from aiohomematic.model.custom.registry import DeviceProfileRegistry, ExtendedDeviceConfig

# Simple registration
DeviceProfileRegistry.register(
    category=DataPointCategory.SWITCH,
    models="HmIP-NEW-SWITCH",           # Single model or tuple of models
    data_point_class=CustomDpSwitch,     # Existing or new CustomDataPoint class
    profile_type=DeviceProfile.IP_SWITCH,
    channels=(3,),                        # Channel(s) where STATE lives
)

# With extended configuration (additional data points)
DeviceProfileRegistry.register(
    category=DataPointCategory.CLIMATE,
    models=("HmIP-NEW-THERMO", "HmIP-NEW-THERMO-2"),
    data_point_class=CustomDpIpThermostat,
    profile_type=DeviceProfile.IP_THERMOSTAT,
    channels=(1,),
    schedule_channel_no=1,
    extended=ExtendedDeviceConfig(
        additional_data_points={
            0: (Parameter.SOME_EXTRA_PARAM,),
        },
    ),
)

Step 2: For Devices with Multiple Configurations

E.g., lock + button lock:

python
from aiohomematic.model.custom.registry import DeviceConfig, DeviceProfileRegistry

DeviceProfileRegistry.register_multiple(
    category=DataPointCategory.LOCK,
    models="HmIP-NEW-LOCK",
    configs=(
        DeviceConfig(
            data_point_class=CustomDpIpLock,
            profile_type=DeviceProfile.IP_LOCK,
        ),
        DeviceConfig(
            data_point_class=CustomDpButtonLock,
            profile_type=DeviceProfile.IP_BUTTON_LOCK,
            channels=(0,),
        ),
    ),
)

Step 3: Add a Calculated Data Point (if needed)

Create calculated class in aiohomematic/model/calculated/:

python
"""Calculated data point."""

from __future__ import annotations

from aiohomematic.model.calculated.data_point import CalculatedDataPoint


class NewCalculation(CalculatedDataPoint):
    """Calculate derived value."""

    async def calculate_value(self) -> float:
        """Calculate and return derived value."""
        value1 = await self._get_source_value("PARAMETER1")
        value2 = await self._get_source_value("PARAMETER2")
        return value1 + value2

Step 4: Add Tests

Add tests in tests/test_model_*.py.

Reference

See docs/developer/extension_points.md for detailed instructions and more examples.

© SukramJ, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/add-device of SukramJ/aiohomematic.

Open the folder on GitHubat commit b3fdfe2

Compare with similar skills

Add Device next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Add Device compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Add Device this skillSukramJ/aiohomematic168—~735Automated safety check: PassMIT
Foundation Models On Deviceaffaan-m/ECC276k4 repos~2.1kAutomated safety check: PassMIT
Mdm Device Managementsickn33/agentic-awesome-skills47k1 repos~3kAutomated safety check: NotesMIT
Foundation Models On Deviceaffaan-m/ECC276k3 repos~1.5kAutomated safety check: PassMIT
Developer Device Platform Basicsgoogle/skills21k—~2.5kAutomated safety check: PassApache-2.0
Implementing Usb Device Control Policymukul975/Anthropic-Cybersecurity-Skills34k—~1.4kAutomated safety check: PassApache-2.0

Similar skills

  • Apple FoundationModels framework for on-device LLM — text generation, guided generation with @Generable, tool calling, and snapshot streaming in iOS 26+.

    276k GitHub starsUsed in 4 repos~2.1k tokens
    AI & LLM EngineeringAuto-check passed
  • Mdm Device Management

    sickn33/agentic-awesome-skills

    Manage and secure company devices with MDM solutions. An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 1 repo~3k tokens
    DevOps & CloudAuto-check: notes
  • 苹果FoundationModels框架用于设备上的LLM——文本生成、使用@Generable进行引导生成、工具调用,以及在iOS 26+中的快照流。

    276k GitHub starsUsed in 3 repos~1.5k tokens
    MobileAuto-check passed
  • Official

    Provides guidance and instructions on managing remote devices on Developer Device Platform (DDP).

    21k GitHub stars~2.5k tokensUpdated yesterday
    MobileAuto-check passed
  • Implementing Usb Device Control Policy

    mukul975/Anthropic-Cybersecurity-Skills

    Implements USB device control policies to restrict unauthorized removable media access on endpoints, preventing data exfiltration and malware introduction via USB devices.

    34k GitHub stars~1.4k tokensUpdated 1 mo ago
    SecurityAuto-check passed
  • OpenLogi Device Diagnosis

    AprilNEA/OpenLogi

    Finds the first failing layer when an OpenLogi Logitech device is missing or misbehaving across enumeration, open, probe, IPC and UI.

    23k GitHub stars~1.6k tokensUpdated today
    DevelopmentAuto-check passed

More from SukramJ/aiohomematic

  • Add Translation

    SukramJ/aiohomematic

    Add or update translation keys for i18n. An agent skill from SukramJ/aiohomematic.

    168 GitHub stars~445 tokensUpdated 2 days ago
    Auto-check passed

Questions about Add Device

What does Add Device do?

Add a new Homematic device type with DeviceProfileRegistry registration, custom data point class, and tests. Add Device is an agent skill from SukramJ/aiohomematic. Add a new Homematic device type with DeviceProfileRegistry registration, custom data point class, and tests.

When should I use Add Device?

Add Device fits situations like: the user wants to add support for a new device model.

How do I install Add Device in Claude Code?

Run `npx skills add SukramJ/aiohomematic --skill add-device -a claude-code`. Or copy the skill folder (.claude/skills/add-device in SukramJ/aiohomematic) into .claude/skills/add-device in your project. Claude Code loads it when a task matches its description.

How do I install Add Device in Codex?

Run `npx skills add SukramJ/aiohomematic --skill add-device -a codex`. Or copy the skill folder (.claude/skills/add-device in SukramJ/aiohomematic) into .agents/skills/add-device in your project. Codex loads it when a task matches its description.

Can I use Add Device in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add SukramJ/aiohomematic --skill add-device -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/add-device, .gemini/skills/add-device, .github/skills/add-device and .opencode/skills/add-device in your project.

What does Add Device need to run?

SKILL.md names no scripts, command-line tools or credentials: Add Device is instructions for the agent only. Our summary lists: Python 3.

Does Add Device access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Add Device safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Add Device use?

Add Device is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Add Device use?

About 735 tokens (SKILL.md is roughly 2.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Add Device?

Skills that share tags, products or a category with Add Device: Foundation Models On Device (affaan-m/ECC, 276k stars), Mdm Device Management (sickn33/agentic-awesome-skills, 47k stars), Foundation Models On Device (affaan-m/ECC, 276k stars) and Developer Device Platform Basics (google/skills, 21k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Add Device?

SukramJ (a GitHub user) maintains it in SukramJ/aiohomematic, which has 168 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 8, 2026.

Source: SukramJ/aiohomematic on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.