用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/gptme/gptme-contrib --skill home-assistant命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Structured output formatting for clarity and accessibility. Optimized for command-heavy workflows and neurodivergent accessibility (ADHD, dyslexia, autism). Adapted from ayghri/i-have-adhd.
Wrap up the session safely: gate on uncommitted/unpushed work and missing journal, refuse to end if anything is unsaved, write the closing summary, then exit the harness when the session was light (stay alive for review when it was substantial). Invoke as /end (Claude Code, Codex) or /skill:end (gptme).
Auto-discover and run the relevant test suite after making code edits. Use when you've edited source files and want to verify correctness without being told which tests to run. Do NOT use for purely exploratory sessions with no file edits, or when the user has already specified which test command to run.
基于 SOC 职业分类
正在显示 SKILL.md
| name | home-assistant |
| description | Query a Home Assistant instance for presence, sensor data, calendar events, and cameras |
| category | Agent Infrastructure |
| tags | ["home-assistant","iot","context","location","presence"] |
| license | MIT |
| compatibility | Requires HA_HOST and HA_API_KEY env vars |
| metadata | {"author":"bob","version":"1.0.0","tags":"home-assistant,iot,context,location,presence","requires_tools":"","requires_skills":""} |
| keywords | ["home assistant","is person home","ha.py status","person presence","home assistant sensor"] |
Query a Home Assistant instance for presence, sensor data, calendar events, and cameras.
Credentials in .env at your agent workspace root:
HA_HOST=https://<your-ha-host>
HA_API_KEY=<long-lived-access-token>
Cloud connectivity: If your HA instance uses Nabu Casa, the host resolves publicly
(CNAME → *.ui.nabu.casa). No /etc/hosts entry or VPN needed.
Generate a long-lived token: HA UI → Profile → Long-Lived Access Tokens → Create.
HA=gptme-contrib/skills/home-assistant/scripts/ha.py
# Test connectivity
uv run python3 $HA status
# Owner's current location / presence
uv run python3 $HA location
# Full real-world context (location, weather, next event, recent automations)
# — useful before voice calls, standups, or scheduling decisions
uv run python3 $HA context
uv run python3 $HA --json context
# All person/device tracker states
uv run python3 $HA persons
# Upcoming calendar events
uv run python3 $HA calendar
# List all cameras
uv run python3 $HA cameras
# Get any entity state
uv run python3 $HA state <entity_id>
# List all entities (optionally filtered by domain)
uv run python3 $HA states
uv run python3 $HA states --domain sensor
uv run python3 $HA states --domain device_tracker
# JSON output for scripting
uv run python3 $HA location --json
HA entity IDs follow predictable patterns — discover yours with ha.py states:
| Domain | Example | Notes |
|---|---|---|
person.<name>person.alice |
| state: home/away/zone_name |
device_tracker.* | device_tracker.alice_phone | GPS source for person entity |
sensor.*_battery_level | sensor.alice_phone_battery_level | % |
calendar.main | calendar.main | Primary Google calendar |
weather.forecast_* | weather.forecast_home | Current weather |
camera.* | camera.front_door | Camera snapshot |
zone.home | zone.home | Home geofence |
Use ha.py states --domain sensor to browse what's available on your instance.
Base URL: $HA_HOST/api/
Auth header: Authorization: Bearer $HA_API_KEY
Key endpoints:
GET /api/states — all entity statesGET /api/states/<entity_id> — single entityGET /api/config — HA config (location, timezone)GET /api/calendars/<entity_id>?start=<iso-utc>&end=<iso-utc> — calendar events (note: Z suffix required for UTC, not +00:00)GET /api/camera_proxy/<entity_id> — camera snapshot (binary JPEG)If the agent's Google account is shared as a reader on the owner's main calendar,
use gog (gogcli) directly without HA:
# Upcoming events
gog calendar events "<owner-google-account>" --results-only -j
# Compact view
gog calendar events "<owner-google-account>" --results-only -j | python3 -c "
import json, sys
for e in json.load(sys.stdin):
start = e.get('start', {}).get('dateTime', e.get('start', {}).get('date', '?'))[:16]
print(f'{start} {e.get(\"summary\", \"(no title)\")}')
"
HA_HOST and HA_API_KEY to their .envgptme-contrib/skills/home-assistant/scripts/ha.pyFor Google Calendar: share the owner's calendar with the agent's Google account (reader access).