ha-mcp-dev 8.4.2.dev2529__tar.gz → 8.4.2.dev2530__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ha_mcp_dev-8.4.2.dev2529/src/ha_mcp_dev.egg-info → ha_mcp_dev-8.4.2.dev2530}/PKG-INFO +1 -1
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/pyproject.toml +10 -3
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_search.py +11 -2
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530/src/ha_mcp_dev.egg-info}/PKG-INFO +1 -1
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/LICENSE +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/MANIFEST.in +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/README.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/setup.cfg +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/__main__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_pypi_marker +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_rich_compat.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/requirements.txt +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/LICENSE +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/MANIFEST.sha256 +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/VENDORED +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/__main__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/asyncio/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/asyncio/client.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/asyncio/connection.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/asyncio/messages.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/asyncio/router.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/asyncio/server.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/auth.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/cli.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/client.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/connection.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/datastructures.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/exceptions.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/extensions/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/extensions/base.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/extensions/permessage_deflate.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/frames.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/headers.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/http11.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/imports.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/auth.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/client.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/exceptions.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/framing.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/handshake.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/http.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/protocol.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/server.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/protocol.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/proxy.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/py.typed +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/server.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/streams.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/client.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/connection.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/messages.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/router.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/server.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/utils.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/client.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/connection.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/messages.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/router.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/server.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/utils.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/typing.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/uri.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/utils.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/version.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_version.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/auth/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/auth/consent_form.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/auth/oidc_compat.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/auth/provider.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/backup_manager.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/browser_landing.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/client/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/client/rest_client.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/client/supervisor_client.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/client/websocket_client.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/client/websocket_listener.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/config.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/content.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/paths.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/theme_guard.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/errors.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/hacs_auto_refresh.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/llm_exposure.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/log_filters.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/approval_queue.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/editing.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/evaluator.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/handlers.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/middleware.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/model.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/persistence.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/policy/value_sources.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/py.typed +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/read_only.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/redaction.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/renamed_tools.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/area-target-over-entity-list/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/arrive-home-automation/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/assist-shortcut-card/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/avg-temperature/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/backup-deletion-confirmation/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/blueprint-authoring/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/button-event-entity/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/device-id-trigger-migration/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/helper-flow-fields-not-platform-yaml/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/media-player-song/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/motion-light-automation-mode/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/rename-entity-impact-analysis/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/template-attributes-yaml-exception/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/timer-finished-automation/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/evals/vacuum-last-clean/case.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/scripts/check_eval_cases.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/backups.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/server.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_advanced.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_backups.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_fs.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_server.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_theme.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_tools.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_i18n.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_locale_policy.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_persistence.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_supervisor.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_theme.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_tools_meta.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/README.md +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/cs.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/de.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/en.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/eo.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/es.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/fr.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/it.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/ko.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/nl.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/pl.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/ru.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/sv.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/tlh.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/zh-Hans.json +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/settings.css +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/settings.html +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/settings.js +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/smoke_test.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/strict_bps.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/auto_backup.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/backup.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/best_practice_checker.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/best_practice_result.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/best_practice_variables.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/bulk_selector.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_api.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_config_entries.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_config_reads.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_devices.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_registries.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_registry_lookup.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/config_entry_flow.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/config_entry_flow_form.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/config_entry_flow_menu.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/config_entry_flow_walker.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/config_entry_identity.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/config_entry_reconfigure.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/config_entry_reload_watch.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/device_control.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/error_log_parsing.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/hacs_registration.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/helpers.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/integration_reconfigure.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/log_common.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/log_sources.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/log_sources_supervisor.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/radio/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/radio/base.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/radio/matter.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/radio/thread.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/radio/zigbee.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/radio/zwave.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/reference_validator.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/registry.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/renamed_tool_middleware.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_base.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_config.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_graph.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_addons.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_areas.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_assist_pipeline.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_blueprints.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_bug_report.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_calendar.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_camera.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_categories.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_code.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_config_automations.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_dev.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_energy.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_entities.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_filesystem.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_groups.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_hacs.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_history.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_integrations.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_labels.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_logs.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_radio.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_registry.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_resources.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_security_policy.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_service.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_services.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_system.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_themes.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_todo.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_traces.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_updates.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_utility.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_yaml_read.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/tools_zones.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/util_helpers.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/validation_middleware.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/transforms/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/transforms/categorized_search.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/transport_security.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/update_check.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/config_hash.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/config_write_lock.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/data_paths.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/domain_handlers.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/entity_membership.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/fuzzy_search.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/operation_manager.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/python_sandbox.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/skill_loader.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/utils/usage_logger.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/visibility/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/visibility/enforcement.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/visibility/model.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/visibility/persistence.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/visibility/resolver.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/tests/__init__.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/tests/test_constants.py +0 -0
- {ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/tests/test_env_manager.py +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "ha-mcp-dev"
|
|
7
|
-
version = "8.4.2.
|
|
7
|
+
version = "8.4.2.dev2530"
|
|
8
8
|
description = "Home Assistant MCP Server - Complete control of Home Assistant through MCP"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
# Upper bound widened to <3.15 so the package installs on Home Assistant's
|
|
@@ -296,9 +296,16 @@ dev = [
|
|
|
296
296
|
# config_flow imports it; HA provides it at runtime, tests need it here).
|
|
297
297
|
"voluptuous>=0.15.2",
|
|
298
298
|
# Real voluptuous-openapi for the embedded e2e LLM-API test: it converts
|
|
299
|
-
# the REAL tool-schema catalog exactly like llm_api.py does at runtime
|
|
300
|
-
#
|
|
299
|
+
# the REAL tool-schema catalog exactly like llm_api.py does at runtime.
|
|
300
|
+
# HA core shipped it through 2026.8; from 2026.9 the component manifest
|
|
301
|
+
# is what installs it. Unit tests stub it.
|
|
301
302
|
"voluptuous-openapi>=0.4.1",
|
|
303
|
+
# What core 2026.9 switched to, and converts with when the manifest
|
|
304
|
+
# requirement above is missing. Needed to assert the round trip an
|
|
305
|
+
# LLM-API tool schema actually makes there (#2361): voluptuous-openapi
|
|
306
|
+
# alone cannot show the defect, since it spells an exclusive bound in the
|
|
307
|
+
# numeric form Anthropic accepts.
|
|
308
|
+
"probatio>=0.11.4",
|
|
302
309
|
"pytest-xdist>=3.8.0",
|
|
303
310
|
"requests>=2.25.0",
|
|
304
311
|
"lefthook>=1.10.0",
|
|
@@ -2226,7 +2226,13 @@ class SearchTools:
|
|
|
2226
2226
|
float | None,
|
|
2227
2227
|
Field(
|
|
2228
2228
|
default=None,
|
|
2229
|
-
gt=0
|
|
2229
|
+
# Inclusive floor, not gt=0. Home Assistant re-emits this
|
|
2230
|
+
# schema for a conversation agent through an OpenAPI 3.0
|
|
2231
|
+
# codec, which turns an exclusive bound into a form Anthropic
|
|
2232
|
+
# rejects as an invalid input_schema — failing every turn, not
|
|
2233
|
+
# just calls to this tool. See tests/src/unit/
|
|
2234
|
+
# test_tool_schema_exclusive_bounds.py (issue #2361).
|
|
2235
|
+
ge=0.001,
|
|
2230
2236
|
le=300,
|
|
2231
2237
|
description=(
|
|
2232
2238
|
"Per-call override for the per-id config-fetch wall-clock "
|
|
@@ -4551,7 +4557,10 @@ class SearchTools:
|
|
|
4551
4557
|
float | None,
|
|
4552
4558
|
Field(
|
|
4553
4559
|
default=None,
|
|
4554
|
-
|
|
4560
|
+
# Keep this identical to the ha_search parameter feeding it.
|
|
4561
|
+
# Undecorated helper, so this Field never reaches an advertised
|
|
4562
|
+
# schema and no guard can see it.
|
|
4563
|
+
ge=0.001,
|
|
4555
4564
|
le=300,
|
|
4556
4565
|
description=(
|
|
4557
4566
|
"Per-call override for the per-id config-fetch wall-clock "
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/MANIFEST.sha256
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/VENDORED
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/__main__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/client.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/connection.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/exceptions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/frames.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/headers.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/http11.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/imports.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/auth.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/http.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/legacy/server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/protocol.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/proxy.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/py.typed
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/streams.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/client.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/messages.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/router.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/sync/utils.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/client.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/messages.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/router.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/trio/utils.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/typing.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/utils.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/_vendor/websockets/version.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/client/supervisor_client.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/client/websocket_listener.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/capture.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/content.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/paths.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/provision.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/dashboard_screenshot/theme_guard.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/AGENTS.md
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/CLAUDE.md
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/LICENSE
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/resources/skills-vendor/README.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_advanced.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_backups.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_fs.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_theme.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_handlers_tools.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_locale_policy.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/_persistence.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/README.md
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/cs.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/de.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/en.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/eo.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/es.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/fr.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/it.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/ko.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/nl.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/pl.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/ru.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/sv.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/tlh.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/settings_ui/locales/zh-Hans.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/best_practice_checker.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/best_practice_result.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/best_practice_variables.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_config_entries.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_config_reads.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_registries.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/component_registry_lookup.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.4.2.dev2529 → ha_mcp_dev-8.4.2.dev2530}/src/ha_mcp/tools/config_entry_flow_form.py
RENAMED
|
File without changes
|