ha-mcp-dev 8.3.0.dev2440__tar.gz → 8.3.0.dev2444__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.3.0.dev2440/src/ha_mcp_dev.egg-info → ha_mcp_dev-8.3.0.dev2444}/PKG-INFO +1 -1
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/pyproject.toml +1 -1
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_fetch.py +1 -1
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_graph.py +11 -4
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444/src/ha_mcp_dev.egg-info}/PKG-INFO +1 -1
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/LICENSE +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/MANIFEST.in +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/README.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/setup.cfg +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/__main__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_pypi_marker +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_rich_compat.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/requirements.txt +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/LICENSE +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/MANIFEST.sha256 +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/VENDORED +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/__main__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/asyncio/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/asyncio/client.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/asyncio/connection.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/asyncio/messages.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/asyncio/router.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/asyncio/server.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/auth.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/cli.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/client.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/connection.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/datastructures.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/exceptions.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/extensions/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/extensions/base.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/extensions/permessage_deflate.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/frames.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/headers.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/http11.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/imports.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/auth.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/client.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/exceptions.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/framing.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/handshake.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/http.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/protocol.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/server.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/protocol.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/proxy.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/py.typed +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/server.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/streams.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/client.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/connection.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/messages.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/router.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/server.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/utils.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/client.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/connection.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/messages.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/router.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/server.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/utils.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/typing.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/uri.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/utils.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/version.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_version.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/auth/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/auth/consent_form.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/auth/oidc_compat.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/auth/provider.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/backup_manager.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/browser_landing.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/client/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/client/rest_client.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/client/supervisor_client.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/client/websocket_client.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/client/websocket_listener.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/config.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/content.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/paths.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/theme_guard.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/errors.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/hacs_auto_refresh.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/llm_exposure.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/log_filters.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/approval_queue.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/editing.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/evaluator.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/handlers.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/middleware.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/model.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/persistence.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/policy/value_sources.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/py.typed +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/read_only.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/redaction.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/renamed_tools.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/evals/evals.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/server.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_advanced.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_backups.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_fs.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_server.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_theme.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_tools.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_i18n.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_locale_policy.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_persistence.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_supervisor.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_theme.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_tools_meta.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/README.md +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/cs.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/de.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/en.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/eo.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/es.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/fr.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/it.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/ko.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/nl.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/pl.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/ru.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/sv.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/tlh.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/zh-Hans.json +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/settings.css +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/settings.html +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/settings.js +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/smoke_test.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/strict_bps.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/auto_backup.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/backup.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/best_practice_checker.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/best_practice_result.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/best_practice_variables.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/bulk_selector.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_api.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_config_entries.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_config_reads.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_devices.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_registries.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_registry_lookup.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_flow.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_flow_form.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_flow_menu.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_flow_walker.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_identity.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_reconfigure.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_reload_watch.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/device_control.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/error_log_parsing.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/hacs_registration.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/helpers.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/integration_reconfigure.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/radio/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/radio/base.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/radio/matter.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/radio/thread.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/radio/zigbee.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/radio/zwave.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/reference_validator.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/registry.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/renamed_tool_middleware.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_base.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_config.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_addons.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_areas.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_assist_pipeline.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_blueprints.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_bug_report.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_calendar.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_camera.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_categories.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_code.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_config_automations.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_dev.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_energy.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_entities.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_filesystem.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_groups.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_hacs.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_history.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_integrations.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_labels.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_radio.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_registry.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_resources.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_search.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_security_policy.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_service.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_services.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_system.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_themes.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_todo.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_traces.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_updates.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_utility.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_yaml_read.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/tools_zones.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/util_helpers.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/validation_middleware.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/transforms/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/transforms/categorized_search.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/transport_security.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/update_check.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/config_hash.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/config_write_lock.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/data_paths.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/domain_handlers.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/entity_membership.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/fuzzy_search.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/operation_manager.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/python_sandbox.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/skill_loader.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/utils/usage_logger.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/visibility/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/visibility/enforcement.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/visibility/model.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/visibility/persistence.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/visibility/resolver.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/tests/__init__.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/tests/test_constants.py +0 -0
- {ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/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.3.0.
|
|
7
|
+
version = "8.3.0.dev2444"
|
|
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
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_fetch.py
RENAMED
|
@@ -201,7 +201,7 @@ class ConfigFetchMixin(ScoringMixin):
|
|
|
201
201
|
|
|
202
202
|
``deprioritize`` moves the named ids to the BACK of the queue while
|
|
203
203
|
keeping every id in it (relative order preserved within each group).
|
|
204
|
-
The automation and
|
|
204
|
+
The automation, script and scene callers pass the ids Home Assistant's
|
|
205
205
|
reference graph already confirmed reference the queried entity: their
|
|
206
206
|
match status is settled without reading the body, so under budget
|
|
207
207
|
pressure the budget belongs to the ids that are NOT in the set, which
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/_graph.py
RENAMED
|
@@ -357,10 +357,17 @@ async def fetch_related_buckets(client: Any, entity_id: str) -> GraphResult | No
|
|
|
357
357
|
# Score assigned to a reference-graph hit. In the default exact mode every
|
|
358
358
|
# surviving match scores exactly 100 (``_score_deep_match`` takes the max of
|
|
359
359
|
# two 0-or-100 signals against a threshold of 100), so a graph hit sorts
|
|
360
|
-
# indistinguishably from a body hit.
|
|
361
|
-
#
|
|
362
|
-
# is
|
|
363
|
-
#
|
|
360
|
+
# indistinguishably from a body hit.
|
|
361
|
+
#
|
|
362
|
+
# Fuzzy mode is not symmetric, and no value here makes it so without breaking
|
|
363
|
+
# the tie above: the 100 cap belongs to the config-body score
|
|
364
|
+
# (``_search_in_dict``), while the NAME score from ``_calculate_entity_score``
|
|
365
|
+
# is not capped at 100 — a name echoing the queried entity's words can pass
|
|
366
|
+
# 100 on its own. So with ``exact_match=False`` a graph-ONLY hit
|
|
367
|
+
# (``_merge_graph_hits`` leaves an already-scored record's score alone) can sort
|
|
368
|
+
# below a match that merely resembles the query, and land on a later page under
|
|
369
|
+
# a small ``limit``. It is still counted in ``total_matches`` unless visibility
|
|
370
|
+
# enforcement scrubs it.
|
|
364
371
|
_GRAPH_HIT_SCORE = 100
|
|
365
372
|
|
|
366
373
|
|
|
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.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/MANIFEST.sha256
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/VENDORED
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/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.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/client.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/connection.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/exceptions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/frames.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/headers.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/http11.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/imports.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/auth.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/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.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/http.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/legacy/server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/protocol.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/proxy.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/py.typed
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/streams.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/client.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/messages.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/router.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/sync/utils.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/client.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/messages.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/router.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/trio/utils.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/typing.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/_vendor/websockets/utils.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/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.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/client/supervisor_client.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/client/websocket_listener.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/capture.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/content.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/paths.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/dashboard_screenshot/provision.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/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.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/AGENTS.md
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/CLAUDE.md
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/resources/skills-vendor/LICENSE
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/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
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_advanced.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_backups.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_fs.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_theme.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_handlers_tools.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_locale_policy.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/_persistence.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/README.md
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/cs.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/de.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/en.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/eo.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/es.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/fr.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/it.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/ko.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/nl.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/pl.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/ru.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/sv.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/settings_ui/locales/tlh.json
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/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.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/best_practice_checker.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/best_practice_result.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/best_practice_variables.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_config_entries.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_config_reads.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_registries.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/component_registry_lookup.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_flow_form.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_flow_menu.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_flow_walker.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_identity.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_reconfigure.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/config_entry_reload_watch.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/integration_reconfigure.py
RENAMED
|
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.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/reference_validator.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/renamed_tool_middleware.py
RENAMED
|
File without changes
|
{ha_mcp_dev-8.3.0.dev2440 → ha_mcp_dev-8.3.0.dev2444}/src/ha_mcp/tools/smart_search/__init__.py
RENAMED
|
File without changes
|