ha-mcp-dev 7.12.0.dev1834__tar.gz → 7.12.0.dev1835__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.12.0.dev1834/src/ha_mcp_dev.egg-info → ha_mcp_dev-7.12.0.dev1835}/PKG-INFO +1 -1
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/pyproject.toml +78 -4
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_config_dashboards.py +1323 -949
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835/src/ha_mcp_dev.egg-info}/PKG-INFO +1 -1
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/LICENSE +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/MANIFEST.in +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/README.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/setup.cfg +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/__main__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/_pypi_marker +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/_version.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/auth/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/auth/consent_form.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/auth/provider.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/backup_manager.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/browser_landing.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/client/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/client/rest_client.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/client/supervisor_client.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/client/websocket_client.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/client/websocket_listener.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/config.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/errors.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/policy/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/policy/approval_queue.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/policy/evaluator.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/policy/handlers.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/policy/middleware.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/policy/model.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/policy/persistence.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/policy/value_sources.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/py.typed +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/read_only.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/evals/evals.json +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/server.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/settings_ui/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/settings_ui/settings.css +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/settings_ui/settings.html +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/settings_ui/settings.js +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/smoke_test.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/auto_backup.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/backup.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/best_practice_checker.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/config_entry_flow.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/device_control.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/enhanced.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/helpers.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/radio/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/radio/base.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/radio/matter.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/radio/thread.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/radio/zigbee.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/radio/zwave.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/reference_validator.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/registry.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/_base.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/_config.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_addons.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_areas.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_blueprints.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_bug_report.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_calendar.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_camera.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_categories.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_code.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_config_automations.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_dev.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_energy.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_entities.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_filesystem.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_groups.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_hacs.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_history.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_integrations.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_labels.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_mcp_component.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_radio.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_registry.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_resources.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_search.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_service.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_services.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_system.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_themes.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_todo.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_traces.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_updates.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_utility.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/tools_zones.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/util_helpers.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/tools/validation_middleware.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/transforms/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/transforms/categorized_search.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/transport_security.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/update_check.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/config_hash.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/data_paths.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/domain_handlers.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/fuzzy_search.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/operation_manager.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/python_sandbox.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/skill_loader.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/utils/usage_logger.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/visibility/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/visibility/model.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/visibility/persistence.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp/visibility/resolver.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/tests/__init__.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/tests/test_constants.py +0 -0
- {ha_mcp_dev-7.12.0.dev1834 → ha_mcp_dev-7.12.0.dev1835}/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.12.0.
|
|
7
|
+
version = "7.12.0.dev1835"
|
|
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
|
|
@@ -129,6 +129,7 @@ select = [
|
|
|
129
129
|
"I", # isort
|
|
130
130
|
"B", # flake8-bugbear
|
|
131
131
|
"C4", # flake8-comprehensions
|
|
132
|
+
"C90", # mccabe complexity
|
|
132
133
|
"UP", # pyupgrade
|
|
133
134
|
"RUF", # ruff-specific rules
|
|
134
135
|
"PIE", # misc lints
|
|
@@ -159,9 +160,82 @@ ignore = [
|
|
|
159
160
|
[tool.ruff.lint.per-file-ignores]
|
|
160
161
|
"__init__.py" = ["F401"]
|
|
161
162
|
"tests/**/*" = ["E501", "B011"]
|
|
162
|
-
# C901
|
|
163
|
-
#
|
|
164
|
-
|
|
163
|
+
# C901 (mccabe complexity) grandfathered debt: newly enabled rule, these files
|
|
164
|
+
# already exceeded the threshold. Remove a line once its functions are
|
|
165
|
+
# refactored below threshold -- do not add new files here.
|
|
166
|
+
"custom_components/ha_mcp_tools/__init__.py" = ["C901"]
|
|
167
|
+
"custom_components/ha_mcp_tools/mcp_webhook.py" = ["C901"]
|
|
168
|
+
"homeassistant-addon/start.py" = ["C901"]
|
|
169
|
+
"homeassistant-addon-webhook-proxy-dev/mcp_proxy_dev/__init__.py" = ["C901"]
|
|
170
|
+
"homeassistant-addon-webhook-proxy-dev/start.py" = ["C901"]
|
|
171
|
+
"homeassistant-addon-webhook-proxy/mcp_proxy/__init__.py" = ["C901"]
|
|
172
|
+
"homeassistant-addon-webhook-proxy/start.py" = ["C901"]
|
|
173
|
+
"packaging/mcpb/generate_manifest.py" = ["C901"]
|
|
174
|
+
"scripts/extract_tools.py" = ["C901"]
|
|
175
|
+
"src/ha_mcp/backup_manager.py" = ["C901"]
|
|
176
|
+
"src/ha_mcp/client/rest_client.py" = ["C901"]
|
|
177
|
+
"src/ha_mcp/config.py" = ["C901"]
|
|
178
|
+
"src/ha_mcp/policy/evaluator.py" = ["C901"]
|
|
179
|
+
"src/ha_mcp/policy/handlers.py" = ["C901"]
|
|
180
|
+
"src/ha_mcp/server.py" = ["C901"]
|
|
181
|
+
"src/ha_mcp/settings_ui/__init__.py" = ["C901"]
|
|
182
|
+
"src/ha_mcp/tools/auto_backup.py" = ["C901"]
|
|
183
|
+
"src/ha_mcp/tools/backup.py" = ["C901"]
|
|
184
|
+
"src/ha_mcp/tools/best_practice_checker.py" = ["C901"]
|
|
185
|
+
"src/ha_mcp/tools/radio/matter.py" = ["C901"]
|
|
186
|
+
"src/ha_mcp/tools/radio/zigbee.py" = ["C901"]
|
|
187
|
+
"src/ha_mcp/tools/radio/zwave.py" = ["C901"]
|
|
188
|
+
"src/ha_mcp/tools/reference_validator.py" = ["C901"]
|
|
189
|
+
"src/ha_mcp/tools/tools_addons.py" = ["C901"]
|
|
190
|
+
"src/ha_mcp/tools/tools_areas.py" = ["C901"]
|
|
191
|
+
"src/ha_mcp/tools/tools_calendar.py" = ["C901"]
|
|
192
|
+
"src/ha_mcp/tools/tools_code.py" = ["C901"]
|
|
193
|
+
"src/ha_mcp/tools/tools_config_automations.py" = ["C901"]
|
|
194
|
+
"src/ha_mcp/tools/tools_config_scenes.py" = ["C901"]
|
|
195
|
+
"src/ha_mcp/tools/tools_config_scripts.py" = ["C901"]
|
|
196
|
+
"src/ha_mcp/tools/tools_dev.py" = ["C901"]
|
|
197
|
+
"src/ha_mcp/tools/tools_energy.py" = ["C901"]
|
|
198
|
+
"src/ha_mcp/tools/tools_hacs.py" = ["C901"]
|
|
199
|
+
"src/ha_mcp/tools/tools_history.py" = ["C901"]
|
|
200
|
+
"src/ha_mcp/tools/tools_integrations.py" = ["C901"]
|
|
201
|
+
"src/ha_mcp/tools/tools_mcp_component.py" = ["C901"]
|
|
202
|
+
"src/ha_mcp/tools/tools_resources.py" = ["C901"]
|
|
203
|
+
"src/ha_mcp/tools/tools_search.py" = ["C901"]
|
|
204
|
+
"src/ha_mcp/tools/tools_service.py" = ["C901"]
|
|
205
|
+
"src/ha_mcp/tools/tools_system.py" = ["C901"]
|
|
206
|
+
"src/ha_mcp/tools/tools_traces.py" = ["C901"]
|
|
207
|
+
"src/ha_mcp/tools/tools_updates.py" = ["C901"]
|
|
208
|
+
"src/ha_mcp/tools/tools_utility.py" = ["C901"]
|
|
209
|
+
"src/ha_mcp/tools/tools_yaml_config.py" = ["C901"]
|
|
210
|
+
"src/ha_mcp/tools/tools_zones.py" = ["C901"]
|
|
211
|
+
"src/ha_mcp/tools/util_helpers.py" = ["C901"]
|
|
212
|
+
"src/ha_mcp/transforms/categorized_search.py" = ["C901"]
|
|
213
|
+
"src/ha_mcp/utils/data_paths.py" = ["C901"]
|
|
214
|
+
"src/ha_mcp/utils/fuzzy_search.py" = ["C901"]
|
|
215
|
+
"src/ha_mcp/utils/skill_loader.py" = ["C901"]
|
|
216
|
+
"src/ha_mcp/visibility/resolver.py" = ["C901"]
|
|
217
|
+
"tests/src/e2e/conftest.py" = ["C901"]
|
|
218
|
+
"tests/src/e2e/error_handling/test_network_errors.py" = ["C901"]
|
|
219
|
+
"tests/src/e2e/policy/test_readonly_mode.py" = ["C901"]
|
|
220
|
+
"tests/src/e2e/utilities/cleanup.py" = ["C901"]
|
|
221
|
+
"tests/src/e2e/utilities/wait_helpers.py" = ["C901"]
|
|
222
|
+
"tests/src/e2e/workflows/automation/test_helpers.py" = ["C901"]
|
|
223
|
+
"tests/src/e2e/workflows/automation/test_lifecycle.py" = ["C901"]
|
|
224
|
+
"tests/src/e2e/workflows/core/test_bulk.py" = ["C901"]
|
|
225
|
+
"tests/src/e2e/workflows/device_control/test_lights.py" = ["C901"]
|
|
226
|
+
"tests/src/e2e/workflows/scripts/test_lifecycle.py" = ["C901"]
|
|
227
|
+
"tests/src/haos_runtime.py" = ["C901"]
|
|
228
|
+
"tests/src/unit/_embedded_stubs.py" = ["C901"]
|
|
229
|
+
"tests/src/unit/test_action_discriminator.py" = ["C901"]
|
|
230
|
+
"tests/src/unit/test_advanced_settings_coverage.py" = ["C901"]
|
|
231
|
+
"tests/src/unit/test_fields_projection_docstring_completeness.py" = ["C901"]
|
|
232
|
+
"tests/src/unit/test_read_only.py" = ["C901"]
|
|
233
|
+
"tests/src/unit/test_settings_ui_js_behavior.py" = ["C901"]
|
|
234
|
+
"tests/test_env_manager.py" = ["C901"]
|
|
235
|
+
"tests/uat/ha_wait.py" = ["C901"]
|
|
236
|
+
"tests/uat/openai_agent.py" = ["C901"]
|
|
237
|
+
"tests/uat/run_uat.py" = ["C901"]
|
|
238
|
+
"tests/uat/stories/run_story.py" = ["C901"]
|
|
165
239
|
|
|
166
240
|
[tool.pytest.ini_options]
|
|
167
241
|
testpaths = ["tests"]
|