ha-mcp-dev 7.14.2.dev2165__tar.gz → 7.14.2.dev2167__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-7.14.2.dev2165/src/ha_mcp_dev.egg-info → ha_mcp_dev-7.14.2.dev2167}/PKG-INFO +1 -1
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/pyproject.toml +1 -1
- ha_mcp_dev-7.14.2.dev2167/src/ha_mcp/settings_ui/locales/README.md +96 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167/src/ha_mcp_dev.egg-info}/PKG-INFO +1 -1
- ha_mcp_dev-7.14.2.dev2165/src/ha_mcp/settings_ui/locales/README.md +0 -18
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/LICENSE +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/MANIFEST.in +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/README.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/setup.cfg +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/__main__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/_pypi_marker +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/_version.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/auth/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/auth/consent_form.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/auth/provider.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/backup_manager.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/browser_landing.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/client/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/client/rest_client.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/client/supervisor_client.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/client/websocket_client.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/client/websocket_listener.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/config.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/content.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/paths.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/theme_guard.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/errors.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/llm_exposure.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/policy/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/policy/approval_queue.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/policy/evaluator.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/policy/handlers.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/policy/middleware.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/policy/model.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/policy/persistence.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/policy/value_sources.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/py.typed +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/read_only.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/evals/evals.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/server.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_advanced.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_backups.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_fs.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_server.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_theme.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_tools.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_i18n.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_persistence.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_supervisor.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_theme.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_tools_meta.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/de.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/en.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/es.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/fr.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/ru.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/zh-Hans.json +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/settings.css +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/settings.html +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/settings.js +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/smoke_test.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/strict_bps.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/auto_backup.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/backup.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/best_practice_checker.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/component_api.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/component_config_reads.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/component_devices.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/component_registries.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/component_registry_lookup.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/config_entry_flow.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/device_control.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/helpers.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/radio/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/radio/base.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/radio/matter.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/radio/thread.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/radio/zigbee.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/radio/zwave.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/reference_validator.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/registry.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_base.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_config.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_addons.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_areas.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_blueprints.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_bug_report.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_calendar.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_camera.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_categories.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_code.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_automations.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_dev.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_energy.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_entities.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_filesystem.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_groups.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_hacs.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_history.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_integrations.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_labels.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_radio.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_registry.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_resources.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_search.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_service.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_services.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_system.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_themes.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_todo.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_traces.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_updates.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_utility.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_yaml_read.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_zones.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/util_helpers.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/validation_middleware.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/transforms/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/transforms/categorized_search.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/transport_security.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/update_check.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/config_hash.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/config_write_lock.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/data_paths.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/domain_handlers.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/fuzzy_search.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/operation_manager.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/python_sandbox.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/skill_loader.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/usage_logger.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/visibility/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/visibility/enforcement.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/visibility/model.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/visibility/persistence.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/visibility/resolver.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/tests/__init__.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/tests/test_constants.py +0 -0
- {ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/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 = "7.14.2.
|
|
7
|
+
version = "7.14.2.dev2167"
|
|
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
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Settings UI translations
|
|
2
|
+
|
|
3
|
+
The settings page discovers every `*.json` catalog in this directory. No Python
|
|
4
|
+
or JavaScript registration is required, and no packaging file needs editing —
|
|
5
|
+
the wheel, sdist and binary declarations all match this directory by pattern.
|
|
6
|
+
|
|
7
|
+
## Adding a language
|
|
8
|
+
|
|
9
|
+
A language ships on **all four** translated surfaces or not at all, and one
|
|
10
|
+
Home Assistant language code names every file:
|
|
11
|
+
|
|
12
|
+
- `src/ha_mcp/settings_ui/locales/<code>.json` (this directory)
|
|
13
|
+
- `custom_components/ha_mcp_tools/translations/<code>.json`
|
|
14
|
+
- `homeassistant-addon/translations/<code>.yaml`
|
|
15
|
+
- `homeassistant-addon-dev/translations/<code>.yaml`
|
|
16
|
+
|
|
17
|
+
Adding only this catalog fails `test_every_locale_ships_on_every_surface`. Also
|
|
18
|
+
add the new code to the locale list in the repository-root `AGENTS.md`
|
|
19
|
+
§ Translations — that list is pinned by
|
|
20
|
+
`test_agents_md_lists_every_shipped_locale`.
|
|
21
|
+
|
|
22
|
+
Only the first of those four files is described below, and the other three
|
|
23
|
+
carry content rules of their own: the component catalog needs every `en.json`
|
|
24
|
+
key with identical `{placeholders}` and no extra ones, and each add-on YAML
|
|
25
|
+
needs a `name` and a `description` for every `schema:` key of *that* flavor's
|
|
26
|
+
`config.yaml`, with nothing left behind for a key the schema no longer
|
|
27
|
+
declares. The two flavors declare different schemas, so neither YAML is a copy
|
|
28
|
+
of the other. The repository-root `AGENTS.md` § Translations states all of
|
|
29
|
+
this; a contributor who writes only this catalog goes red on the other three.
|
|
30
|
+
|
|
31
|
+
**Start from a translated catalog, not from `en.json`.** English for the tool
|
|
32
|
+
titles and descriptions comes from the tool definitions at runtime, so `en.json`
|
|
33
|
+
ships `tools` and `tool_groups` empty; a copy of it is missing both sections
|
|
34
|
+
that this catalog is required to carry.
|
|
35
|
+
|
|
36
|
+
**Read the other surfaces before you word a switch.** Wherever the same English
|
|
37
|
+
text is shipped from more than one catalog, your wording has to be byte-identical
|
|
38
|
+
in all of them. That is not only the add-on-options-versus-settings-UI axis: the
|
|
39
|
+
two add-on flavors describe most of the same options, so a good part of the
|
|
40
|
+
pinned parity is stable-against-dev, with no settings-UI text involved at all.
|
|
41
|
+
Translating one surface at a time is exactly how one option ends up with two
|
|
42
|
+
different sentences.
|
|
43
|
+
|
|
44
|
+
## Catalog sections
|
|
45
|
+
|
|
46
|
+
- `meta.native_name`: language name shown in the selector. It must be
|
|
47
|
+
non-empty, must not repeat English's own name, and must differ from every
|
|
48
|
+
other catalog's — a copied catalog that keeps the name it was copied from
|
|
49
|
+
fails `test_native_names_name_their_own_language`, because the picker would
|
|
50
|
+
then offer one label twice.
|
|
51
|
+
- `meta.dir`: `ltr` or `rtl`. Omitting it means `ltr`; any other value is
|
|
52
|
+
rejected when the catalog loads.
|
|
53
|
+
- `messages`: interface labels, help text, notices, and runtime messages. Keys
|
|
54
|
+
may be omitted — English is the per-key fallback at runtime — but see the
|
|
55
|
+
share limit below before leaving a catalog half-finished.
|
|
56
|
+
- `tool_groups`: one entry per renderable MCP tool tag, keyed by the English
|
|
57
|
+
tag. Not optional, and exact: no key more and none fewer.
|
|
58
|
+
- `tools`: `title` and `description` per tool, keyed by the stable MCP tool
|
|
59
|
+
name. The key set is not optional and exact in the same way; either field on
|
|
60
|
+
its own may be left out, but a missing one counts as untranslated against the
|
|
61
|
+
share limit below.
|
|
62
|
+
|
|
63
|
+
Keep the keys and `{placeholders}` unchanged in every section.
|
|
64
|
+
|
|
65
|
+
`messages` values carry two further rules, both enforced when the catalog
|
|
66
|
+
loads rather than by a named test — breaking one raises a `ValueError` at
|
|
67
|
+
import, so the failure names the file but arrives as a broken test module:
|
|
68
|
+
|
|
69
|
+
- The only inline markup the page can restore is `<code>`, `<strong>`, `</a>`
|
|
70
|
+
and `<a href="#" data-panel-link="...">`, spelled exactly that way. Any other
|
|
71
|
+
tag — `<b>`, `<CODE>`, `<code >` — is rejected.
|
|
72
|
+
- A `data-panel-link` target must be a tab the settings page declares, and a
|
|
73
|
+
translated message must link to the same tabs as its English source, with
|
|
74
|
+
the same multiplicity. The order may differ, so a translation is free to
|
|
75
|
+
reorder two links to suit its grammar.
|
|
76
|
+
|
|
77
|
+
## What CI checks
|
|
78
|
+
|
|
79
|
+
- Every surface carries the same set of language codes.
|
|
80
|
+
- `tool_groups` and `tools` name exactly the renderable groups and tools — a
|
|
81
|
+
tool added to the codebase turns every locale red in the PR that adds it.
|
|
82
|
+
- At most 5% of this catalog's `messages`, and 5% of its `tools` texts, may be
|
|
83
|
+
byte-identical to English or missing outright. Both add-on flavors are held to
|
|
84
|
+
the same 5%; the component catalogs allow 15%, because they carry product
|
|
85
|
+
names as keys of their own. A single tool whose `title` *and* `description` are
|
|
86
|
+
both still English fails by name however small the share.
|
|
87
|
+
- One wording per English string across surfaces, wherever the same English text
|
|
88
|
+
is shipped from more than one catalog. The failure names every group that
|
|
89
|
+
disagrees. Where a group has a settings UI member, that is the wording the
|
|
90
|
+
other surfaces follow today; a group carried only by the two add-on flavors
|
|
91
|
+
has no such member, so there pick one wording and use it in both.
|
|
92
|
+
- The English each translation was written against is hashed in
|
|
93
|
+
`tests/src/unit/locale_source_baseline.json`, so a later edit to an English
|
|
94
|
+
string turns the locales red rather than leaving them silently stale. Adding a
|
|
95
|
+
language does not change any English source, so no baseline regeneration is
|
|
96
|
+
needed for it.
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# Settings UI translations
|
|
2
|
-
|
|
3
|
-
The settings page discovers every `*.json` catalog in this directory. To add a
|
|
4
|
-
language, copy `en.json`, rename it to the language code (for example
|
|
5
|
-
`it.json`), translate the values, and keep the keys and `{placeholders}`
|
|
6
|
-
unchanged. No Python or JavaScript registration is required.
|
|
7
|
-
|
|
8
|
-
Catalog sections:
|
|
9
|
-
|
|
10
|
-
- `meta.native_name`: language name shown in the selector.
|
|
11
|
-
- `meta.dir`: `ltr` or `rtl`.
|
|
12
|
-
- `messages`: interface labels, help text, notices, and runtime messages.
|
|
13
|
-
- `tool_groups`: optional translations keyed by the English MCP tool tag.
|
|
14
|
-
- `tools`: optional per-tool `title` and `description` overrides keyed by the
|
|
15
|
-
stable MCP tool name. Missing values fall back to the server-provided English.
|
|
16
|
-
|
|
17
|
-
English is always the fallback, so an incomplete catalog remains usable while
|
|
18
|
-
it is being expanded.
|
|
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-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/client/supervisor_client.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/client/websocket_client.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/client/websocket_listener.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/capture.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/content.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/paths.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/dashboard_screenshot/provision.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
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/AGENTS.md
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/CLAUDE.md
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/resources/skills-vendor/LICENSE
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/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-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_advanced.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_backups.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_fs.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_theme.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_handlers_tools.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_persistence.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_supervisor.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/_tools_meta.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/de.json
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/en.json
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/es.json
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/fr.json
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/ru.json
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/locales/zh-Hans.json
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/settings_ui/settings.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/stdio_settings_sidecar.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/best_practice_checker.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/component_config_reads.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/component_devices.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/component_registries.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/config_entry_flow.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-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/reference_validator.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_base.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_config.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_deep.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_entities.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_fetch.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_overview.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_scenes.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/smart_search/_scoring.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_blueprints.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_bug_report.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_categories.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_automations.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_dashboards.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_helpers.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_scenes.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_config_scripts.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_filesystem.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_integrations.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
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_voice_assistant.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/tools_yaml_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/tools/validation_middleware.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/transforms/categorized_search.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/transforms/lite_docstrings.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/config_write_lock.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/kill_signal_diagnostics.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/utils/operation_manager.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/visibility/enforcement.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp/visibility/persistence.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/requires.txt
RENAMED
|
File without changes
|
{ha_mcp_dev-7.14.2.dev2165 → ha_mcp_dev-7.14.2.dev2167}/src/ha_mcp_dev.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|