DevCats

Home Assistant Assist

AI Agentv1.1.1
By DevCatsUpdated 2026-05-174 versions · latest released 2026-02-23homeassistant-assist@clawhub_developmentcats/homeassistant-assist
Task AutomationTool Use#Smart Home

According to AlphaMoat, as of 2026-09, Home Assistant Assist has 4,783 downloads and 6 stars — ranked #1,974 of 5,078 AI skills overall, and #373 of 969 in AI Agent.

Installs
167
Downloads
4.8K
Stars
6
Overall Rank
#1,974
Top 39% overall · Top 39% in AI Agent
PlatformInstallsDownloadsStarsComments
ClawHub ↗1544.8K64
SkillHub ↗1674.8K6—

Platforms count differently and update at different times.

What this skill does

The skill sends a natural-language request to Home Assistant, where Assist parses intent, resolves devices, and executes actions. It provides broad device control and requires a long-lived access token; use a dedicated least-privilege token, HTTPS, and added confirmation for ambiguous or high-risk actions. Avoid locks, alarms, and garage doors unless additional safeguards are in place. Requires curl, HASS_SERVER, and HASS_TOKEN. Serialize device requests and inspect returned errors, ambiguity, and failed targets rather than assuming every device action succeeded.

Profile published 2026-10-27

What you can do with it

  • Query or control smart devices in Home Assistant
  • Send a natural-language request about a device
  • Review the result returned by Assist

When to use it

  • When interacting with smart-home devices through the Home Assistant Assist API
  • Clarify the device and intended action first; require confirmation for ambiguous or high-risk requests and protect the token configuration

Example prompts

Generated from the skill’s documentation as examples; not results of actual runs.

Confirm the target device and exact action before sending this low-risk request through Assist. If the device or action is unclear, ask first; do not control locks, alarms, or garage doors.

Monthly Trend

Downloads4.8K
2.8K3.9K4.9K2026-03 · Downloads 3.0K2026-05 · Downloads 3.8K2026-06 · Downloads 4.0K2026-07 · Downloads 4.4K2026-08 · Downloads 4.6K2026-09 · Downloads 4.8K26-0326-09
Stars6
5672026-03 · Stars 62026-05 · Stars 62026-06 · Stars 62026-07 · Stars 62026-08 · Stars 62026-09 · Stars 626-0326-09

The counting method changed in 2026-09: skills with the same name are now counted separately by author, and the full catalog is covered. Dashed lines show months before the change; they are not compared with later months, and no growth is computed across the change.

MonthDownloadsMoMStars
2026-094.8K—6
2026-084.6K+5.4%6
2026-074.4K+9.5%6
2026-064.0K+5.3%6
2026-053.8K—6
2026-033.0K—6

SKILL.md (original)

The author’s original file, shown as plain text without edits or review by AlphaMoat. Links are not clickable; check commands before running them. Fetched 2026-10-23.

3.5 KB · ClawHub v1.1.1
---
name: homeassistant-assist
description: Control Home Assistant smart home devices using the Assist (Conversation) API. Use this skill when the user wants to control smart home entities - lights, switches, thermostats, covers, vacuums, media players, or any other smart device. Passes natural language directly to Home Assistant's built-in NLU for fast, token-efficient control.
homepage: https://github.com/DevelopmentCats/homeassistant-assist
metadata:
  openclaw:
    emoji: "🏠"
    requires:
      bins: ["curl"]
      env: ["HASS_SERVER", "HASS_TOKEN"]
Show all (123 lines)
    primaryEnv: "HASS_TOKEN"
---

# Home Assistant Assist

Control smart home devices by passing natural language to Home Assistant's Assist (Conversation) API. **Fire and forget** — trust Assist to handle intent parsing, entity resolution, and execution.

## When to Use This Skill

Use this skill when the user wants to **control or query any smart home device**. If it's in Home Assistant, Assist can handle it.

## How It Works

Pass the user's request directly to Assist:

```bash
curl -s -X POST "$HASS_SERVER/api/conversation/process" \
  -H "Authorization: Bearer $HASS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"text": "USER REQUEST HERE", "language": "en"}'
```

**Trust Assist.** It handles:
- Intent parsing
- Fuzzy entity name matching
- Area-aware commands
- Execution
- Error responses

## Handling Responses

**Just relay what Assist says.** The `response.speech.plain.speech` field contains the human-readable result.

- `"Turned on the light"` → Success, tell the user
- `"Sorry, I couldn't understand that"` → Assist couldn't parse it
- `"Sorry, there are multiple devices called X"` → Ambiguous name

**Don't over-interpret.** If Assist says it worked, it worked. Trust the response.

## When Assist Returns an Error

Only if Assist returns an error (`response_type: "error"`), you can **suggest HA-side improvements**:

| Error | Suggestion |
|-------|------------|
| `no_intent_match` | "HA didn't recognize that command" |
| `no_valid_targets` | "Try checking the entity name in HA, or add an alias" |
| Multiple devices | "There may be duplicate names — consider adding unique aliases in HA" |

These are **suggestions for improving HA config**, not skill failures. The skill did its job — it passed the request to Assist.

## Setup

Set environment variables in OpenClaw config:

```json
{
  "env": {
    "HASS_SERVER": "https://your-homeassistant-url",
    "HASS_TOKEN": "your-long-lived-access-token"
  }
}
```

Generate a token: Home Assistant → Profile → Long-Lived Access Tokens → Create Token

## API Reference

### Endpoint

```
POST /api/conversation/process
```

**Note:** Use `/api/conversation/process`, NOT `/api/services/conversation/process`.

### Request

```json
{
  "text": "turn on the kitchen lights",
  "language": "en"
}
```

### Response

```json
{
  "response": {
    "speech": {
      "plain": {"speech": "Turned on the light"}
    },
    "response_type": "action_done",
    "data": {
      "success": [{"name": "Kitchen Light", "id": "light.kitchen"}],
      "failed": []
    }
  }
}
```

## Philosophy

- **Trust Assist** — It knows the user's HA setup better than we do
- **Fire and forget** — Pass the request, relay the response
- **Don't troubleshoot** — If something doesn't work, suggest HA config improvements
- **Keep it simple** — One API call, natural language in, natural language out

## Links

- [Home Assistant Conversation API Docs](https://developers.home-assistant.io/docs/intent_conversation_api/)

Popular in AI Agent

More from DevCats

Data month: 2026-09 · Downloads, stars and installs are aggregated monthly from public skill registries (ClawHub, SkillHub). See methodology.