Agent skill

Ha Frontend Types

by home-assistant in home-assistant/frontend

Home Assistant frontend TypeScript conventions. An agent skill from home-assistant/frontend.

Apache-2.0Auto-check passedFrontend & Design

Install Ha Frontend Types

skills CLI
$ npx skills add home-assistant/frontend --skill ha-frontend-types -a claude-code

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

GitHub CLI
$ gh skill install home-assistant/frontend ha-frontend-types --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/home-assistant/frontend.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/ha-frontend-types .claude/skills/ha-frontend-types && 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
ha-frontend-types
GitHub stars
5.7k
Token cost
~574 tokens
SKILL.md length
276 words
Files
1
Skills in repo
12
Repo updated
First seen
Licence
Apache-2.0

At a glance

Home Assistant frontend TypeScript conventions. An agent skill from home-assistant/frontend.

  • Reviewing backend data contracts
  • SKILL.md covers Home Assistant Data Contracts, Reuse Home Assistant Contracts, Assertions and Lit Lifecycle Types, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Optional schemas

What it does

Ha Frontend Types is an agent skill from home-assistant/frontend. Home Assistant frontend TypeScript conventions. Use when defining or reviewing backend data contracts, optional schemas, shared types, assertions, or Lit lifecycle types.

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

It sits in Frontend & Design, covering Data governance. It works with Home Assistant and TypeScript. The repository describes itself as: :lollipop: Frontend for Home Assistant. The licence is Apache-2.0.

When your agent uses it

  • Reviewing backend data contracts
  • Optional schemas
  • Lit lifecycle types

Example prompts

  • “/ha-frontend-types”

What it can do on your machine

Read from SKILL.md and the folder at commit 0e9b62e. 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 typescript).

    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

Ha Frontend Types loads about 574 tokens when it runs. Until then it costs about 47 tokens; SKILL.md has 276 words of instructions outside code blocks.

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

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 home-assistant/frontend at commit 0e9b62e, republished under its Apache-2.0 licence (© home-assistant). 276 words, ~574 tokens.

Download SKILL.mdSave it as .claude/skills/ha-frontend-types/SKILL.md (or your agent's skills folder).
name
ha-frontend-types
description
Home Assistant frontend TypeScript conventions. Use when defining or reviewing backend data contracts, optional schemas, shared types, assertions, or Lit lifecycle types.

HA Frontend Types

Use this skill for Home Assistant-specific TypeScript contracts and type choices.

Home Assistant Data Contracts

Verify data contracts against the source that owns them, such as Home Assistant Core, Supervisor, a WebSocket handler, or an exported component type. Do not shape a type around assumptions made by its current frontend consumers.

  • Match required, optional, nullable, and defaulted fields to the producer and runtime contract. Preserve optional configuration fields when omission is supported and has defined behavior.
  • Use distinct request and response types when their wire shapes differ.
  • When changing a shared contract, check affected consumers, tests, fixtures, and mocks.

Reuse Home Assistant Contracts

  • Reuse the canonical Home Assistant type when one exists. Define shared contract types in the data or API module that owns them.
  • Reuse types exported by components and helpers rather than reconstructing their payloads. For event types, follow ha-frontend-events.
  • When one domain contract is used across modules, define and export it from the module that owns that contract.

Prefer an existing owning contract. Introduce a frontend-specific type when the frontend shape or boundary genuinely differs.

Assertions

Prefer accurate types and runtime narrowing. Use assertions or TypeScript suppressions at boundaries where the runtime invariant is understood but cannot be expressed cleanly; keep them narrow and explain non-obvious invariants.

Lit Lifecycle Types

For Lit lifecycle methods that receive changed properties, use PropertyValues<this> when the method only needs public reactive properties:

ts
protected willUpdate(changedProperties: PropertyValues<this>) {
  // ...
}

Use unparameterized PropertyValues when the method inspects private or protected reactive properties, which are not keys of this. Do not add assertions solely to retain PropertyValues<this>.

Enforced Baseline

Use import type for type-only imports. This is enforced by the repository ESLint configuration.

© home-assistant, Apache-2.0. 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 .agents/skills/ha-frontend-types of home-assistant/frontend.

Open the folder on GitHubat commit 0e9b62e

Compare with similar skills

Ha Frontend Types 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.

Ha Frontend Types compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ha Frontend Types this skillhome-assistant/frontend5.7k—~574Automated safety check: PassApache-2.0
Web Artifacts Builderanthropics/skills180k40 repos~769Automated safety check: PassApache-2.0
Ink Tui Wizardnovuhq/novu40k—~1.9kAutomated safety check: PassMIT
Frontend Module Standardssiteboon/claudecodeui14k—~2.6kAutomated safety check: PassAGPL-3.0
Dify Component Writing Guidelanggenius/dify158k—~626Automated safety check: PassCustom licence
React Frontend Development Guidelinesdiet103/claude-code-infrastructure-showcase10k2 repos~2.9kAutomated safety check: PassMIT

Similar skills

  • Web Artifacts Builder

    anthropics/skills

    Official

    Builds multi-component claude.ai HTML artifacts as a small React, TypeScript and Tailwind project, then bundles it into one shareable HTML file.

    180k GitHub starsUsed in 40 repos~769 tokens
    Frontend & DesignAuto-check passed
  • Ink Tui Wizard

    novuhq/novu

    Build terminal user interfaces (TUIs) using Ink (React for CLIs) and @inkjs/ui with a reactive, session-driven wizard pattern.

    40k GitHub stars~1.9k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Frontend Module Standards

    siteboon/claudecodeui

    Enforces one repository's React and TypeScript module layout for code under src/: source-root imports, feature barrels, deliberate exports and no deep imports.

    14k GitHub stars~2.6k tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Use when implementing or refactoring React/TypeScript components and the task requires decisions about component ownership, feature boundaries, state, data…

    158k GitHub stars~626 tokensUpdated today
    Frontend & DesignAuto-check passed
  • React Frontend Development Guidelines

    diet103/claude-code-infrastructure-showcase

    Guidelines for React 18 and TypeScript apps covering Suspense data fetching, lazy loading, feature folders, MUI v7 styling, TanStack Router and performance.

    10k GitHub starsUsed in 2 repos~2.9k tokens
    Frontend & DesignAuto-check passed
  • Formik Form Patterns

    ChrisWiles/claude-code-showcase

    Shows how to build forms with Formik and Yup validation, including conditional rules, field helpers, GraphQL submission, edit forms and multi-step flows.

    6.1k GitHub starsUsed in 3 repos~2.1k tokens
    Frontend & DesignAuto-check passed

More from home-assistant/frontend

All 12 skills in this repo
  • Ha Frontend Components

    home-assistant/frontend

    Home Assistant frontend component patterns. An agent skill from home-assistant/frontend.

    5.7k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Ha Frontend Contexts

    home-assistant/frontend

    Home Assistant frontend Lit context and hass migration guidance.

    5.7k GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Ha Frontend Demo

    home-assistant/frontend

    Home Assistant standalone demo structure, configurations, URL navigation, mocked APIs, shared demo stubs used by gallery, and verification.

    5.7k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Ha Frontend Gallery

    home-assistant/frontend

    Home Assistant frontend gallery structure, pages, demos, content, and verification.

    5.7k GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Ha Frontend Styling

    home-assistant/frontend

    Home Assistant frontend styling, theming, spacing, responsive layout, RTL, and View Transitions guidance.

    5.7k GitHub stars~799 tokensUpdated today
    Auto-check passed
  • Ha Frontend Testing

    home-assistant/frontend

    Home Assistant frontend testing and validation workflow. An agent skill from home-assistant/frontend.

    5.7k GitHub stars~1.7k tokensUpdated today
    Auto-check passed

Questions about Ha Frontend Types

What does Ha Frontend Types do?

Home Assistant frontend TypeScript conventions. An agent skill from home-assistant/frontend. Ha Frontend Types is an agent skill from home-assistant/frontend. Home Assistant frontend TypeScript conventions.

When should I use Ha Frontend Types?

Ha Frontend Types fits situations like: reviewing backend data contracts; optional schemas; lit lifecycle types.

How do I install Ha Frontend Types in Claude Code?

Run `npx skills add home-assistant/frontend --skill ha-frontend-types -a claude-code`. Or copy the skill folder (.agents/skills/ha-frontend-types in home-assistant/frontend) into .claude/skills/ha-frontend-types in your project. Claude Code loads it when a task matches its description.

How do I install Ha Frontend Types in Codex?

Run `npx skills add home-assistant/frontend --skill ha-frontend-types -a codex`. Or copy the skill folder (.agents/skills/ha-frontend-types in home-assistant/frontend) into .agents/skills/ha-frontend-types in your project. Codex loads it when a task matches its description.

Can I use Ha Frontend Types 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 home-assistant/frontend --skill ha-frontend-types -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ha-frontend-types, .gemini/skills/ha-frontend-types, .github/skills/ha-frontend-types and .opencode/skills/ha-frontend-types in your project.

What does Ha Frontend Types need to run?

SKILL.md names no scripts, command-line tools or credentials: Ha Frontend Types is instructions for the agent only.

Does Ha Frontend Types 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 Ha Frontend Types 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 Ha Frontend Types use?

Ha Frontend Types is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ha Frontend Types use?

About 574 tokens (SKILL.md is roughly 2.3k 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 Ha Frontend Types?

Skills that share tags, products or a category with Ha Frontend Types: Web Artifacts Builder (anthropics/skills, 180k stars), Ink Tui Wizard (novuhq/novu, 40k stars), Frontend Module Standards (siteboon/claudecodeui, 14k stars) and Dify Component Writing Guide (langgenius/dify, 158k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ha Frontend Types?

home-assistant (a GitHub organization) maintains it in home-assistant/frontend, which has 5,698 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 10, 2026.

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