5086b88a00
- Add 'gateway_env_vars' configuration option to addon config - Parse semicolon-separated KEY=VALUE pairs from add-on options - Export environment variables to gateway process at startup - Store parsed env vars in openclaw.json (gateway.env) Allows users to pass custom environment variables to the gateway via Home Assistant add-on configuration, e.g.: gateway_env_vars: 'SERVICE_API_KEY=123;SERVICE2_API=1231' These variables are exported to the gateway process and can be used for API authentication, feature flags, or other configuration needs.
118 lines
3.7 KiB
YAML
118 lines
3.7 KiB
YAML
name: OpenClaw Assistant
|
|
version: "0.5.49"
|
|
slug: openclaw_assistant
|
|
description: Run OpenClaw Assistant (OpenClaw-compatible) as a Home Assistant add-on.
|
|
url: https://github.com/techartdev/OpenClawHomeAssistant
|
|
arch:
|
|
- amd64
|
|
- aarch64
|
|
- armv7
|
|
startup: services
|
|
boot: auto
|
|
init: false
|
|
hassio_api: false
|
|
homeassistant_api: false
|
|
host_network: true
|
|
|
|
# Home Assistant Ingress (UI inside the add-on page)
|
|
ingress: true
|
|
ingress_port: 48099
|
|
panel_title: OpenClaw Assistant
|
|
panel_icon: mdi:robot
|
|
|
|
map:
|
|
- addon_config:rw
|
|
- share:rw
|
|
- media:rw
|
|
options:
|
|
timezone: "Europe/Sofia"
|
|
|
|
# Enable web terminal inside Home Assistant (Ingress) via ttyd
|
|
enable_terminal: true
|
|
|
|
# Terminal port (change if 7681 conflicts with another service)
|
|
terminal_port: 7681
|
|
|
|
# Public base URL for opening the Gateway Web UI in a new tab (not embedded).
|
|
# Recommended: NO trailing slash.
|
|
# Example: "https://example.duckdns.org:12345" or "http://192.168.1.10:18789"
|
|
gateway_public_url: ""
|
|
|
|
# Optional: Home Assistant long-lived token (for local HA API scripts/tools)
|
|
homeassistant_token: ""
|
|
|
|
# Optional: outbound HTTP/HTTPS proxy for OpenClaw network access.
|
|
# Example: "http://192.168.2.1:3128"
|
|
http_proxy: ""
|
|
|
|
# Optional: Router SSH defaults (leave empty if you don't need router automation)
|
|
# This is a generic SSH configuration intended for a router/firewall or any network device
|
|
# reachable from inside the HA host LAN.
|
|
router_ssh_host: ""
|
|
router_ssh_user: ""
|
|
router_ssh_key_path: "/data/keys/router_ssh"
|
|
|
|
# Cleanup stale session lock files left after crashes/restarts
|
|
clean_session_locks_on_start: true
|
|
clean_session_locks_on_exit: true
|
|
|
|
# Gateway mode:
|
|
# - local: Run gateway locally (recommended for most users)
|
|
# - remote: Connect to a remote gateway
|
|
# Default is local.
|
|
gateway_mode: local
|
|
|
|
# Gateway network bind mode:
|
|
# - loopback: bind to 127.0.0.1 only (local access only, most secure)
|
|
# - lan: bind to all interfaces (accessible from local network)
|
|
# - tailnet: bind to Tailscale IP only (accessible only via Tailscale — recommended for remote access)
|
|
# - auto: prefer loopback; use tailnet if Tailscale is available
|
|
# Default is loopback for security.
|
|
gateway_bind_mode: loopback
|
|
|
|
# Gateway port to listen on
|
|
gateway_port: 18789
|
|
|
|
# Enable OpenAI-compatible Chat Completions API endpoint
|
|
# When enabled, OpenClaw can be used as a conversation agent in HA Assist pipeline
|
|
# via Extended OpenAI Conversation (HACS) or any OpenAI-compatible client
|
|
enable_openai_api: false
|
|
|
|
# Allow insecure HTTP authentication (required for HTTP gateway access on LAN)
|
|
# WARNING: Only enable if you're using HTTP (not HTTPS) for gateway_public_url
|
|
# Default is false for security.
|
|
allow_insecure_auth: false
|
|
|
|
# Force IPv4-first DNS result ordering for Node fetch/network calls.
|
|
# Useful on networks where IPv6 resolution exists but IPv6 egress is broken
|
|
# (can affect Telegram API polling in some HAOS/VM setups).
|
|
force_ipv4_dns: false
|
|
|
|
# Environment variables to pass to the gateway (semicolon-separated key=value pairs)
|
|
# Example: "SERVICE_API=123;SERVICE2_API=1231"
|
|
# These will be exported as environment variables when running the gateway
|
|
gateway_env_vars: ""
|
|
|
|
|
|
schema:
|
|
timezone: str
|
|
enable_terminal: bool?
|
|
terminal_port: int(1024,65535)?
|
|
gateway_public_url: str?
|
|
homeassistant_token: str?
|
|
http_proxy: str?
|
|
|
|
router_ssh_host: str
|
|
router_ssh_user: str
|
|
router_ssh_key_path: str
|
|
|
|
clean_session_locks_on_start: bool?
|
|
clean_session_locks_on_exit: bool?
|
|
gateway_mode: list(local|remote)?
|
|
gateway_bind_mode: list(auto|loopback|lan|tailnet)?
|
|
gateway_port: int(1,65535)?
|
|
enable_openai_api: bool?
|
|
allow_insecure_auth: bool?
|
|
force_ipv4_dns: bool?
|
|
gateway_env_vars: str?
|