Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Zone-based Firewall Policies to Unifi docs #37606

Closed
wants to merge 106 commits into from

Conversation

Samywamy10
Copy link

@Samywamy10 Samywamy10 commented Feb 21, 2025

Proposed change

Type of change

  • Spelling, grammar or other readability improvements (current branch).
  • Adjusted missing or incorrect information in the current documentation (current branch).
  • Added documentation for a new integration I'm adding to Home Assistant (next branch).
  • Added documentation for a new feature I'm adding to Home Assistant (next branch).
  • Removed stale or deprecated documentation.

Additional information

  • Link to parent pull request in the codebase: Unifi zone based rules core#138974
  • Link to parent pull request in the Brands repository:
  • This PR fixes or closes issue: fixes #

Checklist

  • This PR uses the correct branch, based on one of the following:
    • I made a change to the existing documentation and used the current branch.
    • I made a change that is related to an upcoming version of Home Assistant and used the next branch.
  • The documentation follows the Home Assistant documentation standards.

Summary by CodeRabbit

  • New Features

    • Updated patch release details with a new version number and release date.
    • Enhanced user interface elements, including refined button styling.
    • Added new social media redirects for more convenient community access.
  • Documentation

    • Expanded and clarified guidance across many integrations, covering voice control, automation, scheduling, and troubleshooting.
    • New sections and examples in blog posts outline upcoming feature chapters and updates.

These improvements aim to provide a clearer user experience and better support through enriched documentation and interface enhancements.

dependabot bot and others added 30 commits February 6, 2025 08:05
…e-assistant#37322)

Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) from 0.5.11801 to 0.5.11805.
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…37321)

Bumps [parser](https://github.com/whitequark/parser) from 3.3.7.0 to 3.3.7.1.
- [Changelog](https://github.com/whitequark/parser/blob/master/CHANGELOG.md)
- [Commits](whitequark/parser@v3.3.7.0...v3.3.7.1)

---
updated-dependencies:
- dependency-name: parser
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…t#37324)

* When downloading from backup page, backup is decrypted

* Update source/_includes/common-tasks/backups.md

Co-authored-by: Franck Nijhof <[email protected]>

---------

Co-authored-by: Franck Nijhof <[email protected]>
* Storing emergency kit: clarify steps

* Apply parallelism
* Update energy.markdown

* Update energy.markdown

* Typo

---------

Co-authored-by: Franck Nijhof <[email protected]>
* Add IRK instructions for android

* Update source/_integrations/private_ble_device.markdown

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Tiny tweaks

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Franck Nijhof <[email protected]>
* Update squeezebox.markdown

Adds specific examples for entering call_method in the Visual Editor with working parameter syntax, as well as showing the properly formed YAML generated.

Squeezebox increment / decrement parameters require a preceding plus or minus, which will be dropped by the Visual Editor if not double-quoted.

* Update squeezebox.markdown

Correct missing closing pipes in tables per Code Rabbit suggestion.
* Update troubleshooting.markdown

Added media source fix for no TTS in YAML config.

* Update troubleshooting.markdown

streamlined media source text and added refence for default config. added local network header for more consistent style.
…37341)

Bumps [ruby-lsp](https://github.com/Shopify/ruby-lsp) from 0.23.8 to 0.23.9.
- [Release notes](https://github.com/Shopify/ruby-lsp/releases)
- [Commits](Shopify/ruby-lsp@v0.23.8...v0.23.9)

---
updated-dependencies:
- dependency-name: ruby-lsp
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Clarify hardware needs for flexit_bacnet

* Fix typo

* Tiny tweaks

---------

Co-authored-by: Franck Nijhof <[email protected]>
* Update onedrive.markdown

* Improve readability of OneDrive integration documentation
…ssistant#37371)

* Add info about multiple targets

* Blank line before the list

---------

Co-authored-by: John Suarez <[email protected]>
…e-assistant#37389)

Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) from 0.5.11805 to 0.5.11813.
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…otify integration (home-assistant#37381)

* Add documentation and examples for message_thread_id data attribute

* Remove trailing colon in headers

* tiny tweak

---------

Co-authored-by: c0ffeeca7 <[email protected]>
* Improve Bring! integration documentation

* bad gateway, custom polling

* add social login howto

* tiny style tweak

---------

Co-authored-by: c0ffeeca7 <[email protected]>
* Improve flick_electric documentation

* Fix grammar

* Remove scale for now

* tiny tweak

* remove redundant fields in configuration_basic block

* add abbreviation tooltip

---------

Co-authored-by: c0ffeeca7 <[email protected]>
* Update notification texts in Bring

* tiny tweak

* revert tweak

---------

Co-authored-by: c0ffeeca7 <[email protected]>
@home-assistant home-assistant bot added has-parent This PR has a parent PR in a other repo next This PR goes into the next branch labels Feb 21, 2025
Copy link

netlify bot commented Feb 21, 2025

Deploy Preview for home-assistant-docs ready!

Name Link
🔨 Latest commit 5b59f47
🔍 Latest deploy log https://app.netlify.com/sites/home-assistant-docs/deploys/67b87623cc218d0008ee616f
😎 Deploy Preview https://deploy-preview-37606--home-assistant-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

Copy link
Contributor

coderabbitai bot commented Feb 21, 2025

📝 Walkthrough

Walkthrough

The pull request comprises a broad range of updates across configuration files, styling assets, and documentation. Dependency versions in the Gemfile have been upgraded, and the release information in the configuration has been updated. New CSS styling has been introduced. Numerous markdown files have been revised to clarify integration instructions, update action signatures, expand configuration examples, and enhance troubleshooting guidance. Additionally, new distributor entries, security advisories, blog posts, and redirect rules have been added. Overall, the changes improve documentation clarity and update configuration details without modifying underlying functionality.

Changes

File(s) Change Summary
Gemfile Updated gem versions: sass-embedded (1.83.4 → 1.85.0), rubocop (1.71.2 → 1.72.2), ruby-lsp (0.23.8 → 0.23.11), nokogiri (1.18.2 → 1.18.3).
_config.yml Updated release details: current_patch_version incremented (0 → 4) and date_released revised (2025-02-05 → 2025-02-14).
sass/.../_landingpage.scss Added a new CSS class .button with display: inline-block; and padding: 8px 24px;.
source/_dashboards/(conditional, energy, statistics-graph).md Adjusted documentation links and texts; added "Using Multiple Collections" section; updated collection_key descriptions.
source/_data/products.yml Added a new distributor entry for "Home Assistant Yellow" (Smart Guys – Australia).
source/_docs/(automation/templating, blueprint/selectors, configuration/packages).md Introduced new template variable trigger.alias, added an example for merging triggers, and improved phrasing in package configuration guidance.
source/_includes/(common-tasks/backups.md, custom/buy-dialog.html, installation/operating_system.md, site/footer.html) Updated backup decryption explanation; removed locale/country code handling in buy-dialog; clarified Ubuntu Desktop instructions; reorganized social links and added Bluesky link.
source/_integrations/... Multiple integration docs updated: action signature changes (e.g. from call-service to perform-action), new sections (e.g. for events in Bang & Olufsen, removal instructions for Home Connect), configuration clarifications, device support updates, spelling corrections, and expanded examples across various integrations.
source/_posts/... Added new blog entries: extra "Year of Voice" chapters, new patch release details for 2025.2, and a post on "Speech-to-Phrase".
source/_redirects Added new redirect entries for /mastodon and /bluesky.
source/changelogs/... Updated release notes URLs and aggregated fixes: bug fixes, library updates, authentication changes, and configuration improvements for Home Assistant Core 2025.1 and 2025.2 releases.
source/dashboards/(badges, cards).md Revised text to clarify visibility conditions for cards and badges, including updated link references.
source/installation/raspberrypi.md Revised troubleshooting instructions by removing a reference to Raspberry Pi Imager and adding guidance for using an alternative imaging tool (Balena Etcher).
source/more-info/backup-emergency-kit.md Expanded explanation regarding encryption key management for backup restoration.
source/security/index.md Added a new security advisory for an SSL validation issue (CVE-2025-25305, fixed in Home Assistant Core 2024.1.6).
source/voice_control/... Overhauled voice control documentation: removed the "Questions" section; updated introductory and getting started texts; added new troubleshooting sections; expanded details on local speech-to-text and text-to-speech options.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR. (Beta)
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai or @coderabbitai title anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🧹 Nitpick comments (50)
source/_integrations/season.markdown (1)

34-34: Enhance readability by inserting a missing comma.

The sentence "Meteorological gives seasons based on months so in the Northern Hemisphere spring starts on 1 March." can benefit from a comma after the word "months" to clarify the causal relationship. Consider updating the sentence to:
"Meteorological gives seasons based on months, so in the Northern Hemisphere spring starts on 1 March."
This small change improves readability and adheres to standard punctuation practices.

-Meteorological gives seasons based on months so in the Northern Hemisphere spring starts on 1 March.
+Meteorological gives seasons based on months, so in the Northern Hemisphere spring starts on 1 March.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~34-~34: Possible missing comma found.
Context: ...t day and equinoxes. So in the Northern Hemisphere spring starts on 20 March. Meteorologic...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~34-~34: A comma might be missing here.
Context: .... Meteorological gives seasons based on months so in the Northern Hemisphere spring st...

(AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA)

source/_integrations/qbus.markdown (1)

37-38: Enhance Clarity in the Supported Devices List

The updated device entries now clearly state the model range along with a color designation:

  • CTD01E to CTD03E (CTD 3.0): main controllers (yellow).
  • CTD10 to CTDMax (CTD 3.5): main controllers (black).

This change improves device identification and aids user understanding. Please verify that this naming convention is consistent with related documentation and other integration files. If there’s a standard format for product lists across the docs, consider aligning this entry accordingly.

source/_integrations/amcrest.markdown (1)

392-402: Update Amcrest PTZ Actions for Zooming:
For the magnify icon, the tap_action now calls perform-action to trigger a zoom_in via service_data, while the hold_action uses data to invoke the zoom_out. Although both actions correctly use perform_action: amcrest.ptz_control, note the difference in key naming between zoom_in (service_data) and zoom_out (data). Please verify if this divergence is intentional; if not, consider unifying the key for consistency.

Gemfile (1)

13-15: Reorder gems alphabetically within their sections.

For better maintainability and consistency:

-  gem 'sass-embedded', '1.85.0'
-  gem 'rubocop', '1.72.2'
+  gem 'rubocop', '1.72.2'
+  gem 'sass-embedded', '1.85.0'
   gem 'ruby-lsp', '0.23.11'

-gem 'sinatra', '4.1.1'
 gem 'nokogiri', '1.18.3'
+gem 'sinatra', '4.1.1'

Also applies to: 27-27

🧰 Tools
🪛 RuboCop (1.69.1)

[convention] 14-14: Gems should be sorted in an alphabetical order within their section of the Gemfile. Gem rubocop should appear before sass-embedded.

(Bundler/OrderedGems)

source/_integrations/electric_kiwi.markdown (1)

27-28: Nitpick: Remove extra blank line.
There are two consecutive blank lines after the note block. To adhere to markdown style guidelines (MD012), please remove one of the blank lines.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

28-28: Multiple consecutive blank lines
Expected: 1; Actual: 2

(MD012, no-multiple-blanks)

source/more-info/backup-emergency-kit.markdown (2)

26-28: Nitpick: Consider rephrasing “in the meantime”.
The phrase “if you have changed the encryption key in the meantime” might be wordy. Consider a more concise alternative such as “if you have changed the encryption key.”

🧰 Tools
🪛 LanguageTool

[style] ~27-~27: ‘in the meantime’ might be wordy. Consider a shorter alternative.
Context: ... if you have changed the encryption key in the meantime, you still need the old key that matche...

(EN_WORDINESS_PREMIUM_IN_THE_MEANTIME)


43-43: Nitpick: Insert missing comma for clarity.
In the sentence “If you still have access to your Home Assistant instance you can download the encryption key again from the backup settings,” adding a comma after “instance” would improve readability.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~43-~43: Possible missing comma found.
Context: ...till have access to your Home Assistant instance you can download the encryption key aga...

(AI_HYDRA_LEO_MISSING_COMMA)

source/_integrations/flexit_bacnet.markdown (1)

102-105: Nitpick: Clarify phrasing in the Data updates section.
The templated text "{% term polling polls %}" produces a redundant verb. Consider revising to a clearer phrasing such as:
  "The integration polls data from the Flexit device every 60 seconds by default."

🧰 Tools
🪛 LanguageTool

[grammar] ~104-~104: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...# Data updates The integration {% term polling polls %} data from the Flexit device every 60...

(REPEATED_VERBS)

source/_integrations/private_ble_device.markdown (1)

51-51: Nitpick: Fix punctuation spacing.
In the instruction on line 51, please remove the extra space before the comma:
  “Disable and re-enable Bluetooth on the phone, then re-pair the secondary device.”

source/_integrations/flick_electric.markdown (2)

21-32: New Credential Configuration Block
The added {% configuration_basic %} block clearly documents the required credentials (Username, Password, Client ID, Client Secret, and Account). This additional clarity will help users understand what information is required for setup.


104-104: Refine Wording in Data Updates Section
The text “The integration will {% term polling poll %} the Flick Electric API every 5 minutes…” may contain a redundant verb. Consider rephrasing to something like “The integration polls the Flick Electric API every 5 minutes…” to improve clarity and avoid repetition.

🧰 Tools
🪛 LanguageTool

[grammar] ~104-~104: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...a updates The integration will {% term polling poll %} the Flick Electric API every 5 minut...

(REPEATED_VERBS)

source/_docs/configuration/packages.markdown (1)

6-6: Clarify Package Description
The updated sentence now emphasizes that packages can bundle “multiple integrations, or parts of integrations.” To further improve clarity, consider inserting a comma after “integrations” before “or parts of integrations” to match the fluidity expected in the documentation.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~6-~6: Possible missing comma found.
Context: ...lude multiple integrations, or parts of integrations using any of the !include directives ...

(AI_HYDRA_LEO_MISSING_COMMA)

source/_integrations/onedrive.markdown (1)

68-77: Address Markdown Formatting Warnings
Static analysis suggests that there are multiple consecutive blank lines and trailing spaces (e.g., around lines 68 and 77). Cleaning these up will improve consistency and adhere to markdownlint standards.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

68-68: Multiple consecutive blank lines
Expected: 1; Actual: 2

(MD012, no-multiple-blanks)


75-75: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


77-77: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)

source/_integrations/shopping_list.markdown (2)

111-117: Additional Actions for Shopping List Events
The new bullet list detailing actions (clear, sorted, reorder, update_list) adds useful information for triggering automations on broader list changes. Consider reviewing the punctuation for each bullet item (as per the static analysis hints) to maintain consistent style.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~113-~113: Loose punctuation mark.
Context: ...any of the following actions: - clear: A completed item was cleared from the l...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~114-~114: Loose punctuation mark.
Context: ...em was cleared from the list. - sorted: The items in the list were sorted by na...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~115-~115: Loose punctuation mark.
Context: ...he list were sorted by name. - reorder: An item has been reordered in the list....

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~116-~116: Loose punctuation mark.
Context: ...n reordered in the list. - update_list: All items have been updated. In these ...

(UNLIKELY_OPENING_PUNCTUATION)


118-118: Ensure Proper File Termination
Static analysis indicates that the file should end with a single newline character. Please adjust the file accordingly if it does not meet this requirement.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

118-118: Files should end with a single newline character
null

(MD047, single-trailing-newline)

source/_integrations/schedule.markdown (1)

47-48: Additional Data Explanation: The section titled “Adding additional data” concisely explains that attributes like brightness and color_temp will be available when a block is active. Consider including a brief note on the behavior when this field is omitted for extra clarity.

source/_includes/custom/buy-dialog.html (1)

114-130: Simplified Focus Function: The refactored focusDistributors function now bases the default tab solely on the timezone-derived region. Removing the locale and country code logic simplifies the code significantly. Please verify that using the timezone's region meets all targeting requirements.

source/voice_control/voice_remote_local_assistant.markdown (3)

39-48: Detail Speech-to-Phrase Engine
The explanation for Speech-to-Phrase is informative—it highlights fast transcription and the current limitations on command support. Please double-check for any minor formatting irregularities (e.g., extra spaces or potential duplicate wording as flagged by markdownlint) to ensure consistency.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

39-39: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)


40-40: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


45-45: Unordered list indentation
Expected: 2; Actual: 3

(MD007, ul-indent)

🪛 LanguageTool

[duplication] ~39-~39: Possible typo: you repeated a word.
Context: ...eech-to-Phrase** and Whisper. #### Speech-to-Phrase [Speech-to-Phrase](https://github.com/OHF-voice/speech-to...

(ENGLISH_WORD_REPEAT_RULE)


73-80: Clarify Supervisor Add-on Installation Instructions
In the "Installing a local Assist pipeline" section, the instructions for installing supervisor add-ons repeat references to Speech-to-Phrase and Whisper. Please review these lines for unintended duplication and adjust if necessary.

🧰 Tools
🪛 LanguageTool

[duplication] ~73-~73: Possible typo: you repeated a word.
Context: ...of your choice, either {% my supervisor_addon addon="core_speech-to-phrase" title="**Speech...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~73-~73: Possible typo: you repeated a word.
Context: ...ech-to-Phrase**" %} or {% my supervisor_addon addon="core_whisper" title="Whisper" %}. ...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~74-~74: Possible typo: you repeated a word.
Context: ...er**" %}. - Install {% my supervisor_addon addon="core_piper" title="Piper" %} for t...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...of your choice (either {% my supervisor_addon addon="core_speech-to-phrase" title="**Speech...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...ech-to-Phrase**" %} or {% my supervisor_addon addon="core_whisper" title="Whisper" %}) ...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...text-to-speech engine ({% my supervisor_addon addon="core_piper" title="Piper" %}). 2....

(ENGLISH_WORD_REPEAT_RULE)


1-126: Markdown Formatting Consistency
There are several markdownlint hints regarding heading spacing, unordered list indentation, and trailing spaces. Although these are minor issues, addressing them would further polish the document’s presentation and adhere to best practices.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

16-16: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


20-20: Multiple consecutive blank lines
Expected: 1; Actual: 2

(MD012, no-multiple-blanks)


23-23: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


28-28: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


39-39: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)


40-40: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


45-45: Unordered list indentation
Expected: 2; Actual: 3

(MD007, ul-indent)


54-54: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


55-55: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


55-55: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


56-56: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


58-58: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


122-122: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)

🪛 LanguageTool

[style] ~29-~29: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...grated.  - For running all together, it needs to have the Home Assistant Operating Syste...

(REP_NEED_TO_VB)


[duplication] ~39-~39: Possible typo: you repeated a word.
Context: ...eech-to-Phrase** and Whisper. #### Speech-to-Phrase [Speech-to-Phrase](https://github.com/OHF-voice/speech-to...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~73-~73: Possible typo: you repeated a word.
Context: ...of your choice, either {% my supervisor_addon addon="core_speech-to-phrase" title="**Speech...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~73-~73: Possible typo: you repeated a word.
Context: ...ech-to-Phrase**" %} or {% my supervisor_addon addon="core_whisper" title="Whisper" %}. ...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~74-~74: Possible typo: you repeated a word.
Context: ...er**" %}. - Install {% my supervisor_addon addon="core_piper" title="Piper" %} for t...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...of your choice (either {% my supervisor_addon addon="core_speech-to-phrase" title="**Speech...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...ech-to-Phrase**" %} or {% my supervisor_addon addon="core_whisper" title="Whisper" %}) ...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...text-to-speech engine ({% my supervisor_addon addon="core_piper" title="Piper" %}). 2....

(ENGLISH_WORD_REPEAT_RULE)


[grammar] ~82-~82: This sentence should probably be started with a verb instead of the noun ‘Setup’. If not, consider inserting a comma for better clarity.
Context: ..."core_piper" title="Piper" %}). 2. Setup your assistant. - Go to {% my voice...

(SENT_START_NN_DT)


[uncategorized] ~103-~103: A comma may be missing after the conjunctive/linking adverb ‘Otherwise’.
Context: ...e_devices/#exposing-your-devices). - Otherwise you won't be able to control them by vo...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[duplication] ~112-~112: Possible typo: you repeated a word.
Context: ...d-on itself. Go to the {% my supervisor_addon addon="core_whisper" title="Whisper" %} o...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~112-~112: Possible typo: you repeated a word.
Context: ...Whisper" %} or the {% my supervisor_addon addon="core_piper" title="Piper" %} add-o...

(ENGLISH_WORD_REPEAT_RULE)

source/dashboards/cards.markdown (1)

91-93: Fix Markdown Link Formatting for Visibility Conditions.
The instruction on line 91 reads:

select **Add condition**./dashboards/conditional/#conditions-options

This does not render as a proper hyperlink. Consider reformatting it as:

- select **Add condition**./dashboards/conditional/#conditions-options
+ select **Add condition** ([conditions options](#conditions-options))

This will ensure the link is clickable and clear for the user.

source/_dashboards/energy.markdown (2)

237-252: New "Using Multiple Collections" Section: Refine Phraseology

The new section is clear and provides valuable instructions for using multiple collections. However, the sentence on line 239

"All energy cards support use of collection_key option."

could be rephrased for clarity. Consider changing it to:

"All energy cards support the collection_key option."

This minor refinement will improve readability and aligns with best practices for clear documentation.

🧰 Tools
🪛 LanguageTool

[grammar] ~244-~244: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...rt use of collection_key option. ### Examples Example view with multiple collections: ```yam...

(REPEATED_VERBS)


237-252: Markdown Structure: Consider Adding Surrounding Blank Lines

Some markdown style guidelines recommend that headings be surrounded by blank lines. Please check that there is an empty line before and after the new headings (e.g. "## Using Multiple Collections" and "### Examples") to improve readability.

🧰 Tools
🪛 LanguageTool

[grammar] ~244-~244: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...rt use of collection_key option. ### Examples Example view with multiple collections: ```yam...

(REPEATED_VERBS)

source/voice_control/troubleshooting.markdown (1)

95-107: New Troubleshooting Sections: Validate Markdown Spacing

The newly added sections "### Local Network Settings" and "### Missing Media Source" enhance the troubleshooting guidance. To ensure full compliance with markdown guidelines (e.g. MD022: headins surrounded by blank lines), please verify that there are blank lines immediately before each heading.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

95-95: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)


103-103: Lists should be surrounded by blank lines
null

(MD032, blanks-around-lists)


104-104: Unordered list indentation
Expected: 0; Actual: 2

(MD007, ul-indent)


104-104: Lists should be surrounded by blank lines
null

(MD032, blanks-around-lists)


107-107: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)

source/_integrations/bring.markdown (2)

29-36: Introduction and "About Bring!" Section: Verify Heading Punctuation

The introduction clearly explains the purpose of the Bring! integration, and the "## About Bring!" section provides a concise overview. Note that the heading "Bring!" (and "About Bring!") contains an exclamation mark. Some markdown style guidelines (e.g. MD026) suggest avoiding trailing punctuation in headings. Consider removing the exclamation mark if strict adherence to these guidelines is desired.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

31-31: Trailing punctuation in heading
Punctuation: '!'

(MD026, no-trailing-punctuation)


204-217: Overall Bring! Documentation: Consistency and Style Considerations

Ensure that blank lines are consistently applied around headings and that any bare URLs (if present, e.g. in blueprint import sections) are formatted according to documentation style guidelines. This helps maintain a polished look throughout the docs.

🧰 Tools
🪛 LanguageTool

[formatting] ~206-~206: These punctuation marks differ from each other. Use only one if you are ending a sentence.
Context: ...net connection to communicate with Bring!. If you encounter issues, verify that yo...

(DOUBLE_PUNCTUATION_PREMIUM)


[style] ~206-~206: Using many exclamation marks might seem excessive (in this case: 37 exclamation marks for a text that’s 8154 characters long)
Context: ...ction is stable. Additionally, the Bring! service itself may experience downtime,...

(EN_EXCESSIVE_EXCLAMATION)

source/security/index.markdown (1)

62-64: Formatting of Past Advisories: Consistency Check

While the new advisory is well formatted, please verify that its styling (e.g. blank lines and spacing) is consistent with the rest of the past advisories section.

source/_posts/2025-02-13-voice-chapter-9-speech-to-phrase.markdown (6)

110-110: Remove Trailing Punctuation from Heading
The heading on line 110 ends with an exclamation mark. For a cleaner style and to comply with markdown best practices, please remove the trailing punctuation. For example:

-## Home Assistant phones home: analog phones are back!
+## Home Assistant phones home: analog phones are back
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

110-110: Trailing punctuation in heading
Punctuation: '!'

(MD026, no-trailing-punctuation)


132-132: Eliminate Excess Trailing Punctuation in Heading
Similarly, the heading on line 132 has a trailing exclamation mark. Removing it will align the heading with documentation style guidelines. For instance:

-## 🫵 Help us bring choice to voice!
+## 🫵 Help us bring choice to voice
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

132-132: Trailing punctuation in heading
Punctuation: '!'

(MD026, no-trailing-punctuation)


46-46: Insert Missing Comma After Introductory Phrase
In the sentence starting on line 46, the word "Really" begins a new sentence without a pause. Adding a comma improves the readability:

-Really any commands that can accept random words (wildcards) will not work.
+Really, any commands that can accept random words (wildcards) will not work.
🧰 Tools
🪛 LanguageTool

[formatting] ~46-~46: Insert a comma after “Really,”.
Context: ...oadcasts are not usable out of the box. Really any commands that can accept random wor...

(INTRODUCTORY_PHRASE_MISSING_COMMA)


95-95: Add Comma for Direct Address
On line 95, consider inserting a comma after "Thanks" to properly address the recipient. For example:

-Thanks Allen!
+Thanks, Allen!
🧰 Tools
🪛 LanguageTool

[formatting] ~95-~95: Insert a comma after ‘Thanks’.
Context: ...t home will be ready to be integrated. Thanks Allen! ## Expanding Voice Capabilities...

(SENT_START_THANKS_COMMA)


107-107: Improve Comma Usage for Introductory Transition
At line 107, the sentence "Also since the user needs to pick up the horn to receive the call, you will know if your notification was received" would benefit from a comma after "Also" to clearly set off the introductory adverb:

-Also since the user needs to pick up the horn to receive the call...
+Also, since the user needs to pick up the horn to receive the call...
🧰 Tools
🪛 LanguageTool

[uncategorized] ~107-~107: Possible missing comma found.
Context: ...ure to 19 degrees" Previously Assist could only tell you the temperat...

(AI_HYDRA_LEO_MISSING_COMMA)


118-118: Clarify Sentence Structure with Appropriate Punctuation
Consider revising the sentence around line 118 by inserting a comma to improve clarity. For example, if the intent is to pause after mentioning the new option, a comma could be added after "opening sentence":

-You can provide the opening sentence and via a new "extra system prompt" option, provide extra context to the LLM to interpret the response from the user.
+You can provide the opening sentence, and via a new "extra system prompt" option, provide extra context to the LLM to interpret the response from the user.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~118-~118: Possible missing comma found.
Context: ...l. You can provide the opening sentence and via a new "extra system prompt" option,...

(AI_HYDRA_LEO_MISSING_COMMA)

source/voice_control/index.markdown (1)

22-25: Quick Start Guidance Enhancement
The additional text explaining that the simplest way to try out Assist is via the companion app—and highlighting the location of the Assist icon—provides an effective quick start for users. Consider varying the phrasing slightly to avoid repetition of "the simplest way" in consecutive sentences.

source/_integrations/google_assistant.markdown (2)

136-136: Remove Trailing Spaces
Please remove any trailing spaces detected on this line to comply with markdownlint guidelines.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

136-136: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


87-87: Preposition Correction in UI Instruction
In the step instructing users to "select the + Add button on the bottom right corner," consider changing "on the bottom right corner" to "in the bottom right corner" to match common usage.

🧰 Tools
🪛 LanguageTool

[grammar] ~87-~87: The usual preposition to use with “corner” is “in”, not “on”. Did you mean “in the bottom right corner”?
Context: ...he bottom and select the + Add button on the bottom right corner. 3. In the Choose a device scre...

(ON_IN_THE_CORNER)

source/_integrations/matter.markdown (2)

421-424: "Commission using the Companion app" Button Clarification
The explanation that the Commission using the Companion app button exists only in the Home Assistant Companion App—and not in the browser—is very helpful. Consider a brief review for punctuation (for example, a comma after introductory phrases) to further polish the text.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~421-~421: Possible missing comma found.
Context: ...g to commission using Android, I get an error "Matter is unavailable" Refer to the s...

(AI_HYDRA_LEO_MISSING_COMMA)


429-429: Remove Redundant Verb in Templating
The sentence "You are trying to {% term commissioning commission %} a Matter device using an Android phone" contains a duplicated verb. Removing the extra "commission" (to simply use {% term commissioning %}) will make the instruction clearer.

🧰 Tools
🪛 LanguageTool

[grammar] ~429-~429: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...#### Symptom You are trying to {% term commissioning commission %} a Matter device using an Android pho...

(REPEATED_VERBS)

source/_posts/2025-02-05-release-20252.markdown (1)

481-548: Detailed Patch Releases Section Addition
The newly added “## Patch releases” section with detailed bullet lists and change descriptions for each patch release provides great transparency for users. In particular, the format clearly shows bug fixes and enhancements with contributor references.
• Please double-check that version numbers, dates, and pull request links are kept in sync with any related upstream changes.
• As a minor nitpick, consider whether a comma after the day (e.g. “February 7,”) would improve clarity if that is the style used elsewhere in the docs.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

521-521: Link and image reference definitions should be needed
Unused link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)

source/_docs/blueprint/selectors.markdown (1)

1543-1558: Example – Merging Existing Triggers
The newly introduced “Example – Merging with existing triggers” section nicely clarifies how to merge a customizable trigger with default ones using the - triggers syntax. The accompanying YAML snippet is very helpful.
• However, it appears that the snippet under the selector: key (with trigger: immediately following) does not show an example value or proper indentation. Please verify that the example YAML is valid and, if possible, consider adding a placeholder value or additional indentation to improve clarity.

source/_integrations/zha.markdown (1)

540-548: Markdown Formatting – Link and List References
There are several markdownlint warnings (e.g. duplicate link reference definitions and missing blank lines around lists) noted by static analysis. Although these issues do not affect functionality, addressing them will improve clarity, consistency, and adherence to documentation style guidelines. Consider a cleanup pass to fix duplicate links (e.g. multiple definitions for “@allenporter”, “#137448”, etc.) and ensure lists are properly surrounded by blank lines.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

540-540: Lists should be surrounded by blank lines
null

(MD032, blanks-around-lists)


541-541: Unordered list indentation
Expected: 0; Actual: 2

(MD007, ul-indent)


541-541: Lists should be surrounded by blank lines
null

(MD032, blanks-around-lists)


542-542: Unordered list indentation
Expected: 0; Actual: 2

(MD007, ul-indent)

source/_integrations/telegram_bot.markdown (2)

29-43: New Data Attribute Addition: message_thread_id
The documentation now includes the message_thread_id attribute in the actions table for sending messages. This is a useful enhancement for targeting messages to specific topics or threads. Verify that the description aligns with the Telegram Bot API’s expectations and that it’s consistently used across all actions where applicable.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

43-43: Table pipe style
Expected: leading_and_trailing; Actual: leading_only; Missing trailing pipe

(MD055, table-pipe-style)


614-624: New Example: Send Message to a Topic within a Group
This newly added YAML example demonstrates how to use the message_thread_id parameter when sending a message to a specific thread. To improve clarity, consider replacing the literal value 123 with a placeholder like <THREAD_ID> so that readers understand they need to substitute their actual thread identifier.

source/_integrations/zwave_js.markdown (1)

1006-1019: New Section: Identification via Z-Wave
This section introduces an innovative feature where other Z-Wave devices can trigger an identification notification in Home Assistant via an Indicator Set command. The code block—with its tilde markings indicating variable bytes—is a creative way to show which parts of the command can vary. To further improve user understanding, consider adding a brief note (either inline or as a tooltip) to explain that the underlined bytes (marked with ~) are placeholders and can be altered to suit specific needs.

source/changelogs/core-2025.2.markdown (3)

1361-1422: Release 2025.2.1 – Consistency and Clarity in Change Entries

The new changes for Release 2025.2.1 (February 7) are very comprehensive and list many fixes and updates. Please double-check that:

  • Each bullet item consistently uses the same formatting (for example, a hyphen “-” followed by a space).
  • All PR references and author mentions are correct and follow your style guidelines.
  • If the list grows longer over time, consider grouping related items or adding a brief summary header for easier digestibility.
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

1395-1395: Link and image reference definitions should be needed
Unused link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1531-1571: Release 2025.2.3 – Detailed Update Review

This section is very detailed and covers a wide range of changes (from dependency updates to fixes and feature adjustments). The bullet items are well presented, but you might consider:

  • Verifying every PR reference for accuracy.
  • Possibly highlighting the most impactful changes (for example, the updates that affect end–user behavior or integration stability) so that readers can quickly grasp the major improvements.
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

1553-1553: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1556-1556: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1559-1559: Link and image reference definitions should be needed
Unused link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


1510-1613: Author Reference Duplication Check

There are multiple duplicate definitions for author link references (such as “@allenporter”, “@andrewsayre”, “@bdraco”, “@bieniu”, “@cdce8p”, etc.). Defining each unique reference just once would improve clarity and reduce redundancy. Please review these duplicates and remove any extra copies.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

1510-1510: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


1511-1511: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@andrewsayre"

(MD053, link-image-reference-definitions)


1514-1514: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bdraco"

(MD053, link-image-reference-definitions)


1515-1515: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bieniu"

(MD053, link-image-reference-definitions)


1517-1517: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@cdce8p"

(MD053, link-image-reference-definitions)


1520-1520: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1521-1521: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1526-1526: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@thecode"

(MD053, link-image-reference-definitions)


1527-1527: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@tr4nt0r"

(MD053, link-image-reference-definitions)


1529-1529: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@zweckj"

(MD053, link-image-reference-definitions)


1553-1553: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1556-1556: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1559-1559: Link and image reference definitions should be needed
Unused link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


1572-1572: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


1573-1573: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bdraco"

(MD053, link-image-reference-definitions)


1576-1576: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1577-1577: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1593-1593: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1594-1594: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1595-1595: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


1597-1597: Link and image reference definitions should be needed
Unused link or image reference definition: "#138408"

(MD053, link-image-reference-definitions)


1605-1605: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@TheJulianJES"

(MD053, link-image-reference-definitions)


1606-1606: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bramkragten"

(MD053, link-image-reference-definitions)


1607-1607: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1608-1608: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1609-1609: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@ludeeus"

(MD053, link-image-reference-definitions)


1610-1610: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@mib1185"

(MD053, link-image-reference-definitions)


1611-1611: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@sdb9696"

(MD053, link-image-reference-definitions)


1613-1613: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@thecode"

(MD053, link-image-reference-definitions)

source/_integrations/history.markdown (1)

47-47: Documentation Clarity: Hyphenate Compound Adjectives

The added sentence uses phrases such as "long term statistics table" and "long term statistics data." Consider updating these to "long-term statistics table" and "long-term statistics data" for clarity and to conform with common compound adjective style guidelines.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~47-~47: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...eds 10 days, the data is taken from the long term statistics table. The long term statist...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[uncategorized] ~47-~47: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...rom the long term statistics table. The long term statistics data is sampled and averaged...

(EN_COMPOUND_ADJECTIVE_INTERNAL)

source/_posts/2022-12-20-year-of-voice.markdown (1)

26-28: Markdown List Indentation

The newly added bullet list items for Chapters 7, 8, and 9 are indented, which triggers markdownlint MD007. It’s recommended to remove any unintended leading spaces so that list items start at the left margin.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

26-26: Unordered list indentation
Expected: 0; Actual: 1

(MD007, ul-indent)


27-27: Unordered list indentation
Expected: 0; Actual: 1

(MD007, ul-indent)


28-28: Unordered list indentation
Expected: 0; Actual: 1

(MD007, ul-indent)

source/_integrations/html5.markdown (1)

32-32: Language Consistency: Use Preferred American English Variant

In the bullet item regarding proxy usage, consider replacing "afterwards" with "afterward" to align with American English preferences.

🧰 Tools
🪛 LanguageTool

[locale-violation] ~32-~32: In American English, ‘afterward’ is the preferred variant. ‘Afterwards’ is more commonly used in British English and other dialects.
Context: ...ush notifications. It can be re-enabled afterwards. - If you don't run Hass.io: `pywebpush...

(AFTERWARDS_US)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 769c2e9 and 5b59f47.

⛔ Files ignored due to path filters (8)
  • Gemfile.lock is excluded by !**/*.lock
  • source/images/blog/2025-02-voice-chapter-9/art.jpg is excluded by !**/*.jpg
  • source/images/blog/2025-02-voice-chapter-9/green-pe.png is excluded by !**/*.png
  • source/images/blog/2025-02-voice-chapter-9/shared-history.png is excluded by !**/*.png
  • source/images/blog/2025-02-voice-chapter-9/stp-logo.jpg is excluded by !**/*.jpg
  • source/images/dashboards/history_graph.png is excluded by !**/*.png
  • source/images/dashboards/history_graph_lines.png is excluded by !**/*.png
  • source/images/integrations/onedrive/onedrive-app-registration.png is excluded by !**/*.png
📒 Files selected for processing (76)
  • Gemfile (2 hunks)
  • _config.yml (1 hunks)
  • sass/homeassistant/pages/_landingpage.scss (1 hunks)
  • source/_dashboards/conditional.markdown (2 hunks)
  • source/_dashboards/energy.markdown (1 hunks)
  • source/_dashboards/statistics-graph.markdown (1 hunks)
  • source/_data/products.yml (1 hunks)
  • source/_docs/automation/templating.markdown (1 hunks)
  • source/_docs/blueprint/selectors.markdown (1 hunks)
  • source/_docs/configuration/packages.markdown (1 hunks)
  • source/_includes/common-tasks/backups.md (1 hunks)
  • source/_includes/custom/buy-dialog.html (1 hunks)
  • source/_includes/installation/operating_system.md (1 hunks)
  • source/_includes/site/footer.html (1 hunks)
  • source/_integrations/amcrest.markdown (9 hunks)
  • source/_integrations/androidtv_remote.markdown (1 hunks)
  • source/_integrations/bang_olufsen.markdown (2 hunks)
  • source/_integrations/bluetooth.markdown (1 hunks)
  • source/_integrations/bring.markdown (3 hunks)
  • source/_integrations/denonavr.markdown (1 hunks)
  • source/_integrations/electric_kiwi.markdown (1 hunks)
  • source/_integrations/flexit_bacnet.markdown (3 hunks)
  • source/_integrations/flick_electric.markdown (1 hunks)
  • source/_integrations/foscam.markdown (8 hunks)
  • source/_integrations/generic.markdown (1 hunks)
  • source/_integrations/google_assistant.markdown (4 hunks)
  • source/_integrations/govee_ble.markdown (1 hunks)
  • source/_integrations/gstreamer.markdown (2 hunks)
  • source/_integrations/history.markdown (1 hunks)
  • source/_integrations/home_connect.markdown (1 hunks)
  • source/_integrations/html5.markdown (1 hunks)
  • source/_integrations/hue.markdown (1 hunks)
  • source/_integrations/influxdb.markdown (2 hunks)
  • source/_integrations/integration.markdown (1 hunks)
  • source/_integrations/intent_script.markdown (1 hunks)
  • source/_integrations/islamic_prayer_times.markdown (2 hunks)
  • source/_integrations/light.mqtt.markdown (1 hunks)
  • source/_integrations/matter.markdown (3 hunks)
  • source/_integrations/media_player.markdown (0 hunks)
  • source/_integrations/motioneye.markdown (1 hunks)
  • source/_integrations/mqtt.markdown (0 hunks)
  • source/_integrations/onedrive.markdown (4 hunks)
  • source/_integrations/openai_conversation.markdown (1 hunks)
  • source/_integrations/private_ble_device.markdown (1 hunks)
  • source/_integrations/qbus.markdown (1 hunks)
  • source/_integrations/reolink.markdown (4 hunks)
  • source/_integrations/schedule.markdown (2 hunks)
  • source/_integrations/season.markdown (1 hunks)
  • source/_integrations/shelly.markdown (1 hunks)
  • source/_integrations/shopping_list.markdown (2 hunks)
  • source/_integrations/slack.markdown (2 hunks)
  • source/_integrations/squeezebox.markdown (1 hunks)
  • source/_integrations/switcher_kis.markdown (1 hunks)
  • source/_integrations/telegram.markdown (2 hunks)
  • source/_integrations/telegram_bot.markdown (3 hunks)
  • source/_integrations/tesla_fleet.markdown (4 hunks)
  • source/_integrations/todo.markdown (2 hunks)
  • source/_integrations/unifi.markdown (1 hunks)
  • source/_integrations/wyoming.markdown (1 hunks)
  • source/_integrations/zha.markdown (13 hunks)
  • source/_integrations/zwave_js.markdown (1 hunks)
  • source/_posts/2022-12-20-year-of-voice.markdown (1 hunks)
  • source/_posts/2025-02-05-release-20252.markdown (3 hunks)
  • source/_posts/2025-02-13-voice-chapter-9-speech-to-phrase.markdown (1 hunks)
  • source/_redirects (1 hunks)
  • source/changelogs/core-2025.1.markdown (1 hunks)
  • source/changelogs/core-2025.2.markdown (1 hunks)
  • source/dashboards/badges.markdown (1 hunks)
  • source/dashboards/cards.markdown (3 hunks)
  • source/installation/raspberrypi.markdown (1 hunks)
  • source/more-info/backup-emergency-kit.markdown (2 hunks)
  • source/security/index.markdown (1 hunks)
  • source/voice_control/builtin_sentences.markdown (0 hunks)
  • source/voice_control/index.markdown (1 hunks)
  • source/voice_control/troubleshooting.markdown (2 hunks)
  • source/voice_control/voice_remote_local_assistant.markdown (4 hunks)
💤 Files with no reviewable changes (3)
  • source/_integrations/media_player.markdown
  • source/voice_control/builtin_sentences.markdown
  • source/_integrations/mqtt.markdown
✅ Files skipped from review due to trivial changes (9)
  • source/_integrations/integration.markdown
  • source/_integrations/hue.markdown
  • source/_integrations/islamic_prayer_times.markdown
  • source/_integrations/influxdb.markdown
  • source/_integrations/shelly.markdown
  • source/_integrations/gstreamer.markdown
  • source/_integrations/reolink.markdown
  • source/_integrations/light.mqtt.markdown
  • source/changelogs/core-2025.1.markdown
🧰 Additional context used
📓 Path-based instructions (6)
`*/**(html|markdown|md)`: - For instructional content in doc...

*/**(html|markdown|md): - For instructional content in documentation, use a direct and authoritative tone. Avoid expressions of politeness such as 'may' or 'please', and ensure the goal of the instruction is fronted.

  • Apply the Microsoft Style Guide to ensure documentation maintains clarity and conciseness.
  • In step-by-step instructions, front the location phrase in the instructional sentence.
  • In step-by-step instructions, front the 'goal' in the instructional sentence.
  • In step-by-step instructions, if in doubt what to front, front the 'goal' before the location phrase in the instructional sentence.
  • do not hyphenate terms like 'top-right' or 'bottom-left' with 'corner'
  • source/_redirects
`*/**(html|markdown|md)`: - Use bold to mark UI strings. - I...

*/**(html|markdown|md): - Use bold to mark UI strings.

  • If "" are used to mark UI strings, replace them by bold.
  • source/_redirects
`*/**(html|markdown|md)`: - Be brief in your replies and don...

*/**(html|markdown|md): - Be brief in your replies and don't add fluff like "thank you for..." and "Please let me know if"

  • source/_redirects
`*/**(html|markdown|md)`: - Use sentence-style capitalizatio...

*/**(html|markdown|md): - Use sentence-style capitalization also in headings.

  • source/_redirects
`*/**(html|markdown|md)`: do not comment on HTML used for ic...

*/**(html|markdown|md): do not comment on HTML used for icons

  • source/_redirects
`*/**(html|markdown|md)`: Avoid flagging inline HTML for emb...

*/**(html|markdown|md): Avoid flagging inline HTML for embedding videos in future reviews for this repository.

  • source/_redirects
🪛 LanguageTool
source/_docs/configuration/packages.markdown

[uncategorized] ~6-~6: Possible missing comma found.
Context: ...lude multiple integrations, or parts of integrations using any of the !include directives ...

(AI_HYDRA_LEO_MISSING_COMMA)

source/more-info/backup-emergency-kit.markdown

[style] ~27-~27: ‘in the meantime’ might be wordy. Consider a shorter alternative.
Context: ... if you have changed the encryption key in the meantime, you still need the old key that matche...

(EN_WORDINESS_PREMIUM_IN_THE_MEANTIME)


[uncategorized] ~43-~43: Possible missing comma found.
Context: ...till have access to your Home Assistant instance you can download the encryption key aga...

(AI_HYDRA_LEO_MISSING_COMMA)


[style] ~46-~46: Unless you want to emphasize “not”, use “cannot” which is more common.
Context: ...ed the encryption key**: Home Assistant can not decrypt it on the fly. You need the enc...

(CAN_NOT_PREMIUM)

source/_integrations/shopping_list.markdown

[uncategorized] ~113-~113: Loose punctuation mark.
Context: ...any of the following actions: - clear: A completed item was cleared from the l...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~114-~114: Loose punctuation mark.
Context: ...em was cleared from the list. - sorted: The items in the list were sorted by na...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~115-~115: Loose punctuation mark.
Context: ...he list were sorted by name. - reorder: An item has been reordered in the list....

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~116-~116: Loose punctuation mark.
Context: ...n reordered in the list. - update_list: All items have been updated. In these ...

(UNLIKELY_OPENING_PUNCTUATION)

source/_integrations/flexit_bacnet.markdown

[grammar] ~104-~104: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...# Data updates The integration {% term polling polls %} data from the Flexit device every 60...

(REPEATED_VERBS)

source/_integrations/matter.markdown

[uncategorized] ~421-~421: Possible missing comma found.
Context: ...g to commission using Android, I get an error "Matter is unavailable" Refer to the s...

(AI_HYDRA_LEO_MISSING_COMMA)


[grammar] ~429-~429: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...#### Symptom You are trying to {% term commissioning commission %} a Matter device using an Android pho...

(REPEATED_VERBS)

source/_integrations/google_assistant.markdown

[grammar] ~87-~87: The usual preposition to use with “corner” is “in”, not “on”. Did you mean “in the bottom right corner”?
Context: ...he bottom and select the + Add button on the bottom right corner. 3. In the Choose a device scre...

(ON_IN_THE_CORNER)


[style] ~110-~110: As a shorter alternative for ‘able to’, consider using “can now”.
Context: ... account. ### Utilize device sync You are now able to support active reporting of state to Go...

(BE_ABLE_TO)

source/_posts/2025-02-13-voice-chapter-9-speech-to-phrase.markdown

[typographical] ~30-~30: It seems that a comma is missing.
Context: ...program introduced in 1997. To run this software you needed at least a 133 MHz Pentium p...

(IN_ORDER_TO_VB_COMMA)


[formatting] ~46-~46: Insert a comma after “Really,”.
Context: ...oadcasts are not usable out of the box. Really any commands that can accept random wor...

(INTRODUCTORY_PHRASE_MISSING_COMMA)


[formatting] ~95-~95: Insert a comma after ‘Thanks’.
Context: ...t home will be ready to be integrated. Thanks Allen! ## Expanding Voice Capabilities...

(SENT_START_THANKS_COMMA)


[uncategorized] ~107-~107: Possible missing comma found.
Context: ...ure to 19 degrees" Previously Assist could only tell you the temperat...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~114-~114: Possible missing comma found.
Context: ...in the living room, but not the office. Also since the user needs to pick up the hor...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~118-~118: Possible missing comma found.
Context: ...l. You can provide the opening sentence and via a new "extra system prompt" option,...

(AI_HYDRA_LEO_MISSING_COMMA)

source/_integrations/flick_electric.markdown

[grammar] ~104-~104: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...a updates The integration will {% term polling poll %} the Flick Electric API every 5 minut...

(REPEATED_VERBS)


[style] ~122-~122: As a shorter alternative for ‘able to’, consider using “can not”.
Context: ...egration. If your account is active but is not able to be selected, check with Flick Electric ...

(BE_ABLE_TO)


[style] ~122-~122: Avoid the passive voice after ‘to be able to’.
Context: ...ur account is active but is not able to be selected, check with Flick Electric to ensure th...

(ABLE_TO_PASSIVE)

source/_integrations/bring.markdown

[formatting] ~206-~206: These punctuation marks differ from each other. Use only one if you are ending a sentence.
Context: ...net connection to communicate with Bring!. If you encounter issues, verify that yo...

(DOUBLE_PUNCTUATION_PREMIUM)


[style] ~206-~206: Using many exclamation marks might seem excessive (in this case: 37 exclamation marks for a text that’s 8154 characters long)
Context: ...ction is stable. Additionally, the Bring! service itself may experience downtime,...

(EN_EXCESSIVE_EXCLAMATION)

source/_dashboards/energy.markdown

[grammar] ~244-~244: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...rt use of collection_key option. ### Examples Example view with multiple collections: ```yam...

(REPEATED_VERBS)

source/voice_control/voice_remote_local_assistant.markdown

[duplication] ~39-~39: Possible typo: you repeated a word.
Context: ...eech-to-Phrase** and Whisper. #### Speech-to-Phrase [Speech-to-Phrase](https://github.com/OHF-voice/speech-to...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~73-~73: Possible typo: you repeated a word.
Context: ...of your choice, either {% my supervisor_addon addon="core_speech-to-phrase" title="**Speech...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~73-~73: Possible typo: you repeated a word.
Context: ...ech-to-Phrase**" %} or {% my supervisor_addon addon="core_whisper" title="Whisper" %}. ...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~74-~74: Possible typo: you repeated a word.
Context: ...er**" %}. - Install {% my supervisor_addon addon="core_piper" title="Piper" %} for t...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...of your choice (either {% my supervisor_addon addon="core_speech-to-phrase" title="**Speech...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...ech-to-Phrase**" %} or {% my supervisor_addon addon="core_whisper" title="Whisper" %}) ...

(ENGLISH_WORD_REPEAT_RULE)


[duplication] ~80-~80: Possible typo: you repeated a word.
Context: ...text-to-speech engine ({% my supervisor_addon addon="core_piper" title="Piper" %}). 2....

(ENGLISH_WORD_REPEAT_RULE)

source/_posts/2025-02-05-release-20252.markdown

[uncategorized] ~75-~75: Commas set off the year in a month-day-year date.
Context: ...eases](#patch-releases) - 2025.2.1 - February 7 - [2025.2.2 - ...

(MISSING_COMMA_BETWEEN_DAY_AND_YEAR)


[uncategorized] ~76-~76: Commas set off the year in a month-day-year date.
Context: ...](#202521---february-7) - 2025.2.2 - February 10 - [2025.2.3 -...

(MISSING_COMMA_BETWEEN_DAY_AND_YEAR)


[uncategorized] ~77-~77: Commas set off the year in a month-day-year date.
Context: ...(#202522---february-10) - 2025.2.3 - February 12 - [2025.2.4 -...

(MISSING_COMMA_BETWEEN_DAY_AND_YEAR)


[duplication] ~665-~665: Possible typo: you repeated a word.
Context: ... [#138023]) - Refresh nest access token before before building subscriber Credentials ([@alle...

(ENGLISH_WORD_REPEAT_RULE)

source/_integrations/history.markdown

[uncategorized] ~47-~47: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...eds 10 days, the data is taken from the long term statistics table. The long term statist...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[uncategorized] ~47-~47: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...rom the long term statistics table. The long term statistics data is sampled and averaged...

(EN_COMPOUND_ADJECTIVE_INTERNAL)

source/_integrations/html5.markdown

[locale-violation] ~32-~32: In American English, ‘afterward’ is the preferred variant. ‘Afterwards’ is more commonly used in British English and other dialects.
Context: ...ush notifications. It can be re-enabled afterwards. - If you don't run Hass.io: `pywebpush...

(AFTERWARDS_US)

source/_integrations/season.markdown

[uncategorized] ~34-~34: Possible missing comma found.
Context: ...t day and equinoxes. So in the Northern Hemisphere spring starts on 20 March. Meteorologic...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~34-~34: A comma might be missing here.
Context: .... Meteorological gives seasons based on months so in the Northern Hemisphere spring st...

(AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA)

🪛 markdownlint-cli2 (0.17.2)
source/voice_control/troubleshooting.markdown

95-95: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)


107-107: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)

source/_integrations/shopping_list.markdown

118-118: Files should end with a single newline character
null

(MD047, single-trailing-newline)

source/_docs/automation/templating.markdown

28-28: Table pipe style
Expected: leading_and_trailing; Actual: leading_only; Missing trailing pipe

(MD055, table-pipe-style)

source/_integrations/google_assistant.markdown

136-136: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)

source/_posts/2025-02-13-voice-chapter-9-speech-to-phrase.markdown

102-102: Heading levels should only increment by one level at a time
Expected: h3; Actual: h4

(MD001, heading-increment)


110-110: Trailing punctuation in heading
Punctuation: '!'

(MD026, no-trailing-punctuation)


132-132: Trailing punctuation in heading
Punctuation: '!'

(MD026, no-trailing-punctuation)

source/_integrations/bring.markdown

31-31: Trailing punctuation in heading
Punctuation: '!'

(MD026, no-trailing-punctuation)


92-92: Multiple consecutive blank lines
Expected: 1; Actual: 2

(MD012, no-multiple-blanks)


146-146: Bare URL used
null

(MD034, no-bare-urls)

source/voice_control/voice_remote_local_assistant.markdown

39-39: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)


40-40: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


45-45: Unordered list indentation
Expected: 2; Actual: 3

(MD007, ul-indent)


54-54: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


55-55: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


55-55: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


56-56: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


58-58: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)

source/_integrations/electric_kiwi.markdown

28-28: Multiple consecutive blank lines
Expected: 1; Actual: 2

(MD012, no-multiple-blanks)

source/_integrations/zha.markdown

230-230: Lists should be surrounded by blank lines
null

(MD032, blanks-around-lists)


540-540: Lists should be surrounded by blank lines
null

(MD032, blanks-around-lists)


541-541: Unordered list indentation
Expected: 0; Actual: 2

(MD007, ul-indent)


541-541: Lists should be surrounded by blank lines
null

(MD032, blanks-around-lists)


542-542: Unordered list indentation
Expected: 0; Actual: 2

(MD007, ul-indent)

source/_posts/2025-02-05-release-20252.markdown

521-521: Link and image reference definitions should be needed
Unused link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


551-551: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


560-560: Link and image reference definitions should be needed
Unused link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


561-561: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@gjohansson-ST"

(MD053, link-image-reference-definitions)


566-566: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@starkillerOG"

(MD053, link-image-reference-definitions)


570-570: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@zweckj"

(MD053, link-image-reference-definitions)


605-605: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


607-607: Link and image reference definitions should be needed
Unused link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


636-636: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


637-637: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@andrewsayre"

(MD053, link-image-reference-definitions)


640-640: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bdraco"

(MD053, link-image-reference-definitions)


641-641: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bieniu"

(MD053, link-image-reference-definitions)


643-643: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@cdce8p"

(MD053, link-image-reference-definitions)


646-646: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


647-647: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


652-652: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@thecode"

(MD053, link-image-reference-definitions)


653-653: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@tr4nt0r"

(MD053, link-image-reference-definitions)


654-654: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@tronikos"

(MD053, link-image-reference-definitions)


655-655: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@zweckj"

(MD053, link-image-reference-definitions)


679-679: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


682-682: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


685-685: Link and image reference definitions should be needed
Unused link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


698-698: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


699-699: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bdraco"

(MD053, link-image-reference-definitions)


702-702: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


703-703: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


719-719: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


720-720: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


721-721: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


723-723: Link and image reference definitions should be needed
Unused link or image reference definition: "#138408"

(MD053, link-image-reference-definitions)


731-731: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@TheJulianJES"

(MD053, link-image-reference-definitions)


732-732: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bramkragten"

(MD053, link-image-reference-definitions)


733-733: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


734-734: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


735-735: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@ludeeus"

(MD053, link-image-reference-definitions)


736-736: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@mib1185"

(MD053, link-image-reference-definitions)


737-737: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@sdb9696"

(MD053, link-image-reference-definitions)


739-739: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@thecode"

(MD053, link-image-reference-definitions)


852-852: Multiple consecutive blank lines
Expected: 1; Actual: 2

(MD012, no-multiple-blanks)


857-857: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@jbouwh"

(MD053, link-image-reference-definitions)

source/_integrations/onedrive.markdown

68-68: Multiple consecutive blank lines
Expected: 1; Actual: 2

(MD012, no-multiple-blanks)


75-75: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


77-77: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)

source/changelogs/core-2025.2.markdown

1395-1395: Link and image reference definitions should be needed
Unused link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1479-1479: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1481-1481: Link and image reference definitions should be needed
Unused link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1510-1510: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


1511-1511: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@andrewsayre"

(MD053, link-image-reference-definitions)


1514-1514: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bdraco"

(MD053, link-image-reference-definitions)


1515-1515: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bieniu"

(MD053, link-image-reference-definitions)


1517-1517: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@cdce8p"

(MD053, link-image-reference-definitions)


1520-1520: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1521-1521: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1526-1526: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@thecode"

(MD053, link-image-reference-definitions)


1527-1527: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@tr4nt0r"

(MD053, link-image-reference-definitions)


1529-1529: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@zweckj"

(MD053, link-image-reference-definitions)


1553-1553: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1556-1556: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1559-1559: Link and image reference definitions should be needed
Unused link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


1572-1572: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


1573-1573: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bdraco"

(MD053, link-image-reference-definitions)


1576-1576: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1577-1577: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1593-1593: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1594-1594: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1595-1595: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


1597-1597: Link and image reference definitions should be needed
Unused link or image reference definition: "#138408"

(MD053, link-image-reference-definitions)


1605-1605: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@TheJulianJES"

(MD053, link-image-reference-definitions)


1606-1606: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bramkragten"

(MD053, link-image-reference-definitions)


1607-1607: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1608-1608: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1609-1609: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@ludeeus"

(MD053, link-image-reference-definitions)


1610-1610: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@mib1185"

(MD053, link-image-reference-definitions)


1611-1611: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@sdb9696"

(MD053, link-image-reference-definitions)


1613-1613: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@thecode"

(MD053, link-image-reference-definitions)

source/_posts/2022-12-20-year-of-voice.markdown

26-26: Unordered list indentation
Expected: 0; Actual: 1

(MD007, ul-indent)


27-27: Unordered list indentation
Expected: 0; Actual: 1

(MD007, ul-indent)


28-28: Unordered list indentation
Expected: 0; Actual: 1

(MD007, ul-indent)

🪛 RuboCop (1.69.1)
Gemfile

[convention] 14-14: Gems should be sorted in an alphabetical order within their section of the Gemfile. Gem rubocop should appear before sass-embedded.

(Bundler/OrderedGems)


[convention] 27-27: Gems should be sorted in an alphabetical order within their section of the Gemfile. Gem nokogiri should appear before sinatra.

(Bundler/OrderedGems)

🔇 Additional comments (102)
source/_integrations/bluetooth.markdown (1)

285-286: Update Shelly Device Specification

The changes correctly update the device reference from "Shelly v2 device with firmware 12.0 or later" to "Shelly Gen2+ device" for both Bluetooth advertisement listening and bundling. This update improves clarity regarding the supported device model. Please verify that these changes are consistent with any related documentation for the Shelly integration.

source/_integrations/foscam.markdown (8)

76-82: Update PTZ Action for Upward Movement:
The tap_action block for the upward movement now correctly uses the new perform-action invocation with perform_action: foscam.ptz. This change improves consistency with the updated action handling mechanism.


89-95: Update PTZ Action for Downward Movement:
The downward movement action now properly replaces the old call-service approach with perform-action while correctly defining the target and data payload.


102-108: Update PTZ Action for Left Movement:
The tap_action modification for a leftward command employs perform-action with perform_action: foscam.ptz, ensuring alignment with the new action model.


115-121: Update PTZ Action for Right Movement:
The right movement control has been updated to the new syntax. The use of perform-action with perform_action: foscam.ptz is correctly implemented.


128-134: Update PTZ Action for Top-Left Movement:
The configuration for top-left movement now leverages perform-action with an appropriate target and data payload. This ensures consistent behavior across all PTZ commands.


141-147: Update PTZ Action for Top-Right Movement:
This segment correctly employs the new action pattern, using perform-action with perform_action: foscam.ptz for the top-right movement.


154-160: Update PTZ Action for Bottom-Left Movement:
The bottom-left control is now updated to use the standardized perform-action method. The inclusion of a target and the movement directive is accurate.


167-173: Update PTZ Action for Bottom-Right Movement:
The tap_action for the bottom-right movement has been revised to the new syntax. The usage of perform-action with perform_action: foscam.ptz is correctly formatted.

source/_integrations/motioneye.markdown (4)

302-308: Update MotionEye Action for Left Direction:
The left directional control now uses perform-action with perform_action: motioneye.action along with the correct data payload. This update is concise and consistent with the new action handling method.


310-315: Update MotionEye Action for Right Direction:
The right movement action block is updated to the new format. The usage of perform-action and inclusion of the data payload (with action: right) ensure that the action is clearly defined.


317-323: Update MotionEye Action for Upward Movement:
The tap_action block for upward movement now properly leverages perform-action with perform_action: motioneye.action. The consecutive structure is correct and self-explanatory.


325-331: Update MotionEye Action for Downward Movement:
The downward movement action is similarly updated. The revised structure using perform-action effectively replaces the older method and is consistent across all directional controls.

source/_integrations/amcrest.markdown (8)

294-299: Update Amcrest PTZ Action for Upward Movement:
The tap_action block for the upward command now uses perform-action with perform_action: amcrest.ptz_control. The service_data section remains intact as intended, ensuring that the upward movement is handled correctly.


307-311: Update Amcrest PTZ Action for Downward Movement:
This block correctly adopts the new action approach with perform-action and perform_action: amcrest.ptz_control while retaining the service_data structure for downward motion.


319-323: Update Amcrest PTZ Action for Left Movement:
The left movement control is updated to use the new perform-action style, ensuring that the control command for left movement is consistent with the updated integration conventions.


332-336: Update Amcrest PTZ Action for Right Movement:
The tap_action for the right directional command employs perform-action with perform_action: amcrest.ptz_control accurately and maintains the proper parameter setup.


344-348: Update Amcrest PTZ Action for Top-Left Movement:
The updated block for top-left movement now uses perform-action and specifies perform_action: amcrest.ptz_control correctly. This ensures clarity and consistency in the PTZ controls.


356-360: Update Amcrest PTZ Action for Top-Right Movement:
This segment applies the revised action invocation for the top-right movement. The parameters under service_data are correctly maintained.


368-372: Update Amcrest PTZ Action for Bottom-Left Movement:
The bottom-left movement command now reflects the new perform-action pattern with all required parameters under service_data preserved.


380-384: Update Amcrest PTZ Action for Bottom-Right Movement:
The block for bottom-right movement is updated to the new action style. It uses perform-action with perform_action: amcrest.ptz_control effectively, ensuring consistency.

source/_redirects (1)

12-13: LGTM! New social media redirects added.

The new redirects for Mastodon and Bluesky follow the established pattern and point to official Home Assistant social media accounts.

Gemfile (1)

13-15: LGTM! Dependency versions updated.

All updates are minor version bumps that likely include bug fixes and improvements.

Also applies to: 27-27

🧰 Tools
🪛 RuboCop (1.69.1)

[convention] 14-14: Gems should be sorted in an alphabetical order within their section of the Gemfile. Gem rubocop should appear before sass-embedded.

(Bundler/OrderedGems)

source/_integrations/govee_ble.markdown (1)

34-34: LGTM! Added important device requirement information.

The addition of "(Active scans required)" for the H5074 device helps users understand the device's requirements upfront.

source/_integrations/wyoming.markdown (1)

29-29: LGTM! Added Speech-to-Phrase voice service.

The new service is properly documented with the correct supervisor add-on badge, following the established format.

source/_integrations/electric_kiwi.markdown (1)

29-33: LGTM: New sections added for supported functionality and use cases.
The “Supported functionality,” “Use cases,” and “Example automations” sections are clear and well-structured.

source/more-info/backup-emergency-kit.markdown (1)

11-17: LGTM: Backup emergency kit updates are clear and informative.
The expanded explanation regarding encryption key handling and backup restoration is helpful for users.

🧰 Tools
🪛 LanguageTool

[style] ~11-~11: Consider shortening this phrase to just ‘whether’, unless you mean ‘regardless of whether’.
Context: ...ining-backup-locations), you can choose whether or not to encrypt the backup. The backup emerg...

(WHETHER)

source/_integrations/intent_script.markdown (2)

108-108: Verify: Impact of punctuation removal in intent phrase.
The removal of the question mark from the intent phrase
  "How many meetings do I have today"
may affect natural language understanding. Please verify that this change is intentional with respect to how intents are processed.


11-107: LGTM: Overall Intent Script documentation is well-structured.
The remainder of the document remains clear, with comprehensive configuration and usage examples.

🧰 Tools
🪛 LanguageTool

[typographical] ~33-~33: It appears that a comma is missing.
Context: ...an intent! ``` {% endraw %} Inside an intent we can define these variables: {% conf...

(DURING_THAT_TIME_COMMA)

source/_integrations/flexit_bacnet.markdown (2)

26-27: LGTM: Updated prerequisites and configuration instructions.
The added details regarding the Ethernet port requirement and BACnet communication add valuable clarity.


37-44: LGTM: Configuration template is well-defined.
Including the configuration block with descriptions for the IP address and Device ID enhances the user guidance considerably.

source/_integrations/private_ble_device.markdown (2)

43-46: LGTM: New Windows/Android section is comprehensive.
The instructions for obtaining the IRK from rooted Android devices are clear, detailed, and well integrated into the documentation.


47-58: LGTM: Wireshark instructions are clear and detailed.
The step-by-step guidance on capturing the IRK with Wireshark is well explained and should be helpful for users.

source/_integrations/flick_electric.markdown (1)

34-42: Enhanced Note on Client Credentials
The updated note block further clarifies that most users can leave the Client ID/Secret blank and provides guidance on obtaining new credentials if needed. Please ensure that the MITM proxy recommendation is in line with current security and privacy best practices.

source/_dashboards/statistics-graph.markdown (1)

95-99: Improved Collection Key Documentation
The updated description for the collection_key field—now referencing the energy documentation—provides valuable additional context for users managing multiple date selection cards. This change improves usability without altering the underlying functionality.

source/_integrations/onedrive.markdown (4)

2-3: Update Branding in Title and Description
Changing the title to “Microsoft OneDrive” and updating the description to clarify that the integration is for backups clearly aligns with current branding and purpose.


19-20: Revised Integration Introduction
The new introductory sentence explicitly mentioning “Microsoft OneDrive” provides users with direct context and useful links, enhancing the user experience.


27-28: Clear Note on Backup Folder Naming
The important note now explains that, due to a Microsoft API issue, the application folder may appear as Graph instead of “Home Assistant.” This clear guidance helps set the correct expectation for users. Verify that this explanation is consistent with other related documentation sections.


57-59: Useful Tip on Azure Credential Requirements
The added tip regarding the need for an active Azure tenant when configuring custom credentials is a valuable hint. It informs users of prerequisites that might otherwise be overlooked.

source/_integrations/shopping_list.markdown (1)

83-90: Expanded Event Payload Documentation
The updated data payload table now includes the remove action and clearly documents the structure of the event data for shopping_list_updated. This enhancement ensures that users have complete information about possible event actions.

source/_integrations/schedule.markdown (5)

15-15: Clear Introduction to Schedule Behavior: The introductory paragraph now clearly explains that a schedule consists of time blocks with explicit active/inactive phases. This added detail enhances user understanding.


19-28: Detailed Configuration Block: The added configuration block for basic properties (Name, Icon, Schedule blocks) is well structured and informative. It provides users with concise instructions on what each field controls.


30-31: Improved Editing Guidance: The note indicating that users can press a schedule block to edit its details is a simple yet effective enhancement to the documentation’s usability.


32-45: Comprehensive Time Block Settings: The new configuration segment for “Start,” “End,” and “Additional data” is clear and precise. It aligns well with the overall schedule schema and will help users configure time blocks accurately.


51-54: Well-Formatted YAML Example: The YAML snippet for additional data is clear and correctly formatted. It serves as a practical example for users configuring attributes.

source/_integrations/generic.markdown (1)

62-66: Updated Weather Graph Example: Changing the heading to "Weather graph from USA National Weather Service" and updating the still image URL to a GIF makes the example current and relevant. Verify that the provided URL is valid and the image loads properly in production.

source/installation/raspberrypi.markdown (1)

35-35: Enhanced Troubleshooting Guidance: The newly added troubleshooting note for when Raspberry Pi Imager is unsupported is a valuable addition. Recommending Balena Etcher improves the user experience by providing a clear alternative.

source/_dashboards/conditional.markdown (2)

9-10: Updated Related Documentation Link: Updating the link to point to “showing-or-hiding-a-card-or-badge-conditionally” ensures that the documentation accurately reflects the enhanced visibility settings applicable to both cards and badges.


20-20: Enhanced Conditional Card Description: The revised description now clearly communicates that visibility can be set directly using the Visibility tab on each card type. This added detail should help users understand the expanded capabilities of conditional settings.

source/_includes/site/footer.html (3)

88-88: Ensure Consistent Layout for Social Icons
The newly added <br /> tag after the GitHub link appears intended to standardize spacing between social icon groups. Please verify that this spacing meets the design requirements.


95-100: Verify New "Bluesky" Social Link
The new "Bluesky" link has been added with proper attributes and icon. Please double-check that the URL (https://bsky.app/profile/home-assistant.io) is correct and that its styling is consistent with the other social links.


107-107: Review Break Tag Placement
The <br /> tag at line 107 provides visual separation before the next icon group. Confirm that its placement aligns with the overall footer layout.

_config.yml (1)

111-112: Validate Version and Release Date Updates
The updates to current_patch_version (set to 4) and date_released (set to 2025-02-14) accurately reflect the new patch release. Please ensure that related changelogs and release notes are updated accordingly.

source/_integrations/switcher_kis.markdown (1)

61-62: Enhance Prerequisites Clarity
The additional line instructing users to connect their devices via the Switcher app before discovery significantly improves clarity. This extra guidance should help users complete setup more smoothly.

source/_integrations/squeezebox.markdown (1)

99-141: Improve Clarity of Parameter Formatting Instructions
The expanded explanation for specifying additional parameters in the Visual Editor—including the detailed examples with YAML snippets—greatly enhances the documentation. This clear guidance should help users avoid formatting errors. Please ensure the examples match what the Visual Editor expects.

source/voice_control/voice_remote_local_assistant.markdown (4)

33-34: Clarify Local Voice Options
The statement that “There are speech-to-text and text-to-speech options that run entirely local. No data is sent to external servers for processing.” sets clear expectations for privacy and data handling.


35-38: Add Speech-to-text Engines Section
Introducing the "Speech-to-text engines" section with a concise overview of available options (Speech-to-Phrase and Whisper) is a great improvement. This helps users quickly understand their choices.


49-60: Comprehensive Whisper Engine Description
The Whisper section clearly outlines its open-ended nature and performance differences across hardware. This comparative detail aids users in choosing the right engine for their setup.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

54-54: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


55-55: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


55-55: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


56-56: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


58-58: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)


116-122: Introduce Additional Resource Section
The new "Learning more about Speech-to-Phrase" section—with its resource link and embedded video—adds valuable context for users seeking further information. This enriches the documentation and encourages exploration of additional resources.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

122-122: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)

source/_integrations/todo.markdown (1)

83-89: Clarify Attribute Description in Action todo.add_item.
The table now clearly explains that the item attribute represents the "name/summary" of the to-do item, which improves clarity for users.

source/_integrations/openai_conversation.markdown (2)

121-123: Verify Updated YAML Trigger & Prompt Formatting.
The modifications to use a singular trigger and the adjustment of the prompt string (removal of an extraneous quotation mark) enhance clarity. Please verify that these changes work seamlessly in your automation configuration.


135-137: Confirm Prompt Interpolation.
The updated prompt line (e.g. on line 136) appears correctly formatted. Ensure that the template interpolation (e.g. {{ states("weather.home") }}) does not introduce parsing issues in the UI.

source/_integrations/denonavr.markdown (1)

67-69: New Supported Device Added.
The inclusion of “Denon AVR-E300” in the list of supported devices expands integration compatibility. Confirm that the referenced model’s specifications align with its documented features.

source/dashboards/cards.markdown (1)

56-57: Enhancement: Conditional Visibility Step Added.
Adding the step to define conditions for card visibility provides clearer guidance for end users. The instruction is now more comprehensive and aligns with related documentation on badges.

source/_integrations/home_connect.markdown (1)

100-108: New Section: Removing the Integration.
The newly added “Removing the integration” section clearly outlines the standard removal process, including a reference to the included remove_device_service.md file and directions to delete the Home Connect application. This additional guidance is clear and valuable for users.

source/_integrations/unifi.markdown (1)

162-165: Addition of Zone-Based Firewall Policies Section: Looks Consistent

The new "### Control Zone-Based Firewall Policies" section is well integrated with the existing documentation. It follows the established pattern (similar to Traffic Rules and Policy-Based Routing sections) and clearly explains that the switches are identified by the icon.

source/_integrations/bring.markdown (6)

37-43: "How you can use this integration" Section: Clear and Actionable

The bullet list effectively communicates the features offered (notifications, list updates, voice control, geofencing). The content is clear and actionable.


44-54: Prerequisites Section: Comprehensive and User-Friendly

The "## Prerequisites" section is detailed regarding authentication requirements. The instructions are user friendly and include both mobile and web instructions.


57-65: Configuration Parameters Block: Consistent Formatting

The "### Configuration parameters" block, with its YAML example, is well formatted. No issues detected here.


78-90: Sensors and Actions Sections: Accurate and Informative

The descriptions in the Sensors and Notifications sections clearly describe what each sensor does and what to expect from notifications. The markdown table formats and the note are well structured.


138-147: Automations Section: Clear Blueprint Integration

The "## Automations" section, along with its detailed YAML configuration example, is presented clearly. The embedded blueprint import adds extra value.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

146-146: Bare URL used
null

(MD034, no-bare-urls)


195-203: Data Updates and Known Limitations: Informative Details

The new sections covering data updates, known limitations, and troubleshooting provide comprehensive guidance on integration behavior and potential issues. The information is clearly laid out and helpful for end users.

source/security/index.markdown (1)

65-71: New Security Advisory Entry: Clear and Detailed

The newly added advisory for "2025-02-18: SSL validation for outgoing requests in core and used libs not correct" is detailed and provides all the necessary information (severity, advisory link, CVE, discoverer, and fix information). This is a valuable addition that keeps users well informed about security matters.

source/_integrations/slack.markdown (1)

125-144: Multi-Target Messaging Example Looks Great
The new YAML example demonstrating how to send messages to multiple targets (channels and/or users) is clear and well documented. The example’s structure and inline comments effectively illustrate the supported formats.

source/dashboards/badges.markdown (1)

30-31: Clarify Visibility Conditions for Badges
The updated instructions now clearly indicate that visibility settings apply to both cards and badges. This added context helps users understand that the [available conditions] are shared with the conditional card.

source/_posts/2025-02-13-voice-chapter-9-speech-to-phrase.markdown (2)

1-9: Comprehensive New Blog Post Addition
The new "Speech-to-Phrase" post is a well-crafted and detailed addition that clearly explains the tool’s functionality, performance benefits, and limitations. The use of images, video embeds, and concrete examples makes the post highly informative.


102-102: Verify Heading Level Consistency
Static analysis indicates that at line 102 a heading is incrementing by more than one level (expected h3 but found h4). Please review the heading hierarchy to ensure that headings progress incrementally for improved accessibility and consistent structure.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

102-102: Heading levels should only increment by one level at a time
Expected: h3; Actual: h4

(MD001, heading-increment)

source/_integrations/telegram.markdown (1)

447-459: New message_thread_id Option is Well Documented
The addition of the message_thread_id parameter in the extra data attributes section is clear and useful. The documentation and configuration block properly describe its purpose and usage. Please verify that this type (integer) is consistent with Telegram’s API expectations.

source/_includes/common-tasks/backups.md (1)

102-103: Enhanced Decryption Explanation Added
The newly added lines clearly explain that when you download a backup from Home Assistant, it is decrypted on the fly so you can immediately view its contents using your preferred archive tool. This clarification helps users understand how backup security is handled across all backup locations, including Home Assistant Cloud.

source/voice_control/index.markdown (1)

33-43: New "Getting Started" Section
The introduction of the "Getting Started" section adds a well-structured, step-by-step guide for setting up voice assistant hardware. Including direct links to detailed guides for both local processing and Home Assistant Cloud options makes the documentation much more user-friendly and accessible.

source/_data/products.yml (1)

178-183: New Distributor Entry for Home Assistant Yellow
A new distributor entry for "Smart Guys" in Australia has been added for Home Assistant Yellow. The entry is correctly formatted and consistent with other distributor listings. Please verify that the URL (https://smartguys.com.au/product/home-assistant-yellow-smart-hub/) accurately reflects the intended product landing page and aligns with your naming conventions across products.

source/_integrations/androidtv_remote.markdown (1)

572-572: Additional Troubleshooting for Nvidia Shield Devices
The newly added troubleshooting step advising users to disable specific wake button options under Remotes & accessories on their Nvidia Shield device is clear and actionable, addressing a known issue with turning on the device.

source/_integrations/google_assistant.markdown (5)

66-67: Clarified Navigation Steps
The instruction now explicitly directs users to click the hamburger {% icon "mdi:hamburger-menu" %} menu on the top left to access APIs and Services. This clarification is helpful for users navigating the Google Developer Console.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

67-67: Link fragments should be valid
null

(MD051, link-fragments)


81-82: HomeGraph API Enablement Clarification
The added directive to use the top middle search bar to find and select the HomeGraph API simplifies the process and makes this step more discoverable for users.


98-105: Updated "Allow Other Users" Instructions
The revised steps for granting access to household users through the Google Developer Console provide a clear and concise workflow. This update will help ensure that additional users can be granted control over Home Assistant devices without confusion.


108-112: Device Sync Section Update
The new "Utilize device sync" section clearly explains the benefits of active state reporting and device synchronization with Google Home. This addition is a valuable update for users looking to improve the responsiveness of their integration.

🧰 Tools
🪛 LanguageTool

[style] ~110-~110: As a shorter alternative for ‘able to’, consider using “can now”.
Context: ... account. ### Utilize device sync You are now able to support active reporting of state to Go...

(BE_ABLE_TO)


134-152: Enhanced Local Fulfillment Setup Instructions
The expanded set of instructions for enabling local fulfillment—including uploading the JavaScript files for both Node and Chrome, enabling support for local queries, and adding an mDNS scan configuration—is comprehensive and easy to follow. These updates should help users achieve faster response times from their Google Assistant devices.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

136-136: Trailing spaces
Expected: 0 or 2; Actual: 1

(MD009, no-trailing-spaces)

source/_integrations/bang_olufsen.markdown (2)

56-56: Updated Device Creation Description
The description now clarifies that each added physical device creates a single device with a media_player entity and—if available—event entities. This update enhances clarity and ensures that users understand the structure of the integration.


74-90: Addition of the "Events" Section
The new "Events" section comprehensively lists the event entities and describes the various press actions supported. This addition improves the documentation by centralizing information on events. Please verify that the terminology and formatting remain consistent with similar integration documents.

source/_integrations/tesla_fleet.markdown (2)

49-50: New Hosting Option Added
The addition of MyTeslamate.com as a hosting option in the prerequisites list provides users with an additional free alternative. Please double-check that this URL is current and aligns with the integration’s overall setup instructions.


127-128: Access Token Placeholder Clarification
The JSON response snippet now clearly uses "ACCESS_TOKEN" as the placeholder. Ensure that all subsequent instructions refer to this placeholder consistently for clarity.

source/_includes/installation/operating_system.md (1)

111-111: Clarified Ubuntu Instructions
Updating the instructions to specifically reference the Ubuntu Desktop instructions removes ambiguity for users creating a live USB. This change directs users to the correct procedure for writing an Ubuntu Desktop ISO onto a USB device.

sass/homeassistant/pages/_landingpage.scss (1)

191-195: New CSS Class for Buttons
The introduction of the new .button class within .section-inner-content is a good design improvement. The chosen properties—display: inline-block; and padding: 8px 24px;—should provide a consistent and clear styling for button elements.

source/_integrations/matter.markdown (4)

147-156: Enhanced Mobile Requirements for Commissioning
The updated prerequisites for commissioning—specifying a minimum Android version of 8.1 (with version 12 or higher recommended) and iOS 16 or higher—are clear and will help set the proper expectations for users. This added detail is especially useful for troubleshooting compatibility issues.


445-450: Border Router Error Troubleshooting
The troubleshooting segment for the error "this device requires a border router" is well laid out, with the cause and practical remedies clearly described. Please ensure the steps remain current with any changes in supported devices.


463-468: OTA Update Error Explanation
The section detailing the OTA update error ("Target node did not process the update file") provides a clear explanation of the limitations with Apple Thread border routers and suggests an effective workaround. This precise guidance is very useful for users encountering update issues.


482-500: General Commissioning Troubleshooting Advice
The advice provided for resolving common commissioning issues—such as verifying network topology, ensuring multicast traffic flows correctly, and keeping the network setup simple—is comprehensive. This step-by-step guidance will greatly assist users in resolving connectivity and commissioning problems.

source/_posts/2025-02-05-release-20252.markdown (1)

74-78: New “Patch releases” TOC addition and link anchors
The new bullet‐point for “Patch releases” and its subsections (2025.2.1 through 2025.2.4) is a clear and useful addition. Please verify that the link anchors (e.g. #patch-releases, #202521---february-7) exactly match the header IDs in the document.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~75-~75: Commas set off the year in a month-day-year date.
Context: ...eases](#patch-releases) - 2025.2.1 - February 7 - [2025.2.2 - ...

(MISSING_COMMA_BETWEEN_DAY_AND_YEAR)


[uncategorized] ~76-~76: Commas set off the year in a month-day-year date.
Context: ...](#202521---february-7) - 2025.2.2 - February 10 - [2025.2.3 -...

(MISSING_COMMA_BETWEEN_DAY_AND_YEAR)


[uncategorized] ~77-~77: Commas set off the year in a month-day-year date.
Context: ...(#202522---february-10) - 2025.2.3 - February 12 - [2025.2.4 -...

(MISSING_COMMA_BETWEEN_DAY_AND_YEAR)

source/_integrations/zha.markdown (2)

96-100: Update to Home Assistant Yellow reference
The change from referencing a generic “Home Assistant Connect ZBT-1” adapter to explicitly mentioning
Home Assistant Yellow with integrated MGM210P radio, which is based on the EFR32MG21”
provides more precise hardware information. Please verify that the MGM210P reference is correct and that this information aligns with recently published hardware documentation.


145-149: New “Configuration requirements” section
The added header and note—“Be sure to connect a compatible radio module and restart Home Assistant before proceeding with configuration.”—improves clarity on prerequisites before configuring ZHA. This extra emphasis will help prevent setup issues.

source/changelogs/core-2025.2.markdown (2)

1446-1476: Release 2025.2.2 – Clarity of Update Descriptions

The Release 2025.2.2 section (February 10) is clear and the updates (such as the LaCrosse View endpoint and various dependency bumps) are noted well. It would be useful to verify that the version bumps, especially for libraries like ohmepy and onedrive_personal_sdk, are in agreement with the upstream release notes. Consider a quick review of the language for technical clarity.


1582-1592: Release 2025.2.4 – Final Update Section Review

The release notes for February 14 (Release 2025.2.4) are concise and indicate several version bumps and configuration updates (including the frontend update). Please double-check that all dependency updates and changes (such as the bump for python-kasa and ZHA update for Tuya TRV issues) are documented in related integration documentation.

@@ -25,6 +25,7 @@ Triggers from all platforms will include the following data.

| Template variable | Data |
| ---- | ---- |
| `trigger.alias` | Alias of the trigger.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Ensure Consistent Table Pipe Style
The added table row for trigger.alias is missing a trailing pipe. To adhere to the markdown guidelines, please update the row as follows:

-| `trigger.alias` | Alias of the trigger.
+| `trigger.alias` | Alias of the trigger. |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
| `trigger.alias` | Alias of the trigger.
| `trigger.alias` | Alias of the trigger. |
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

28-28: Table pipe style
Expected: leading_and_trailing; Actual: leading_only; Missing trailing pipe

(MD055, table-pipe-style)

Comment on lines +227 to +235
To see OTA updates for a device, it must support OTA updates and firmware images for the device must be publicly provided by the manufacturer. ZHA currently only includes OTA providers for a few manufacturers that provide these updates publicly.

**Included manufacturers:**
- IKEA
- Inovelli
- Ledvacnce/OSRAM
- SALUS/Computime
- Sonoff/iTead
- Third Reality
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

⚠️ Potential issue

OTA Update Manufacturers Block – Typo and Clarity Check
The new block listing the manufacturers for which OTA updates are enabled is very informative. One point to check: the manufacturer name “Ledvacnce/OSRAM” appears on line 231. It is likely that “Ledvance/OSRAM” is intended. Please review the spelling and correct it if needed.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

230-230: Lists should be surrounded by blank lines
null

(MD032, blanks-around-lists)

Comment on lines +1395 to +1614
[@bieniu]: https://github.com/bieniu
[@bramkragten]: https://github.com/bramkragten
[@cdce8p]: https://github.com/cdce8p
[@dan-r]: https://github.com/dan-r
[@dknowles2]: https://github.com/dknowles2
[@emontnemery]: https://github.com/emontnemery
[@frenck]: https://github.com/frenck
[@jpbede]: https://github.com/jpbede
[@mib1185]: https://github.com/mib1185
[@natekspencer]: https://github.com/natekspencer
[@patman15]: https://github.com/patman15
[@thecode]: https://github.com/thecode
[@tr4nt0r]: https://github.com/tr4nt0r
[@tronikos]: https://github.com/tronikos
[@zweckj]: https://github.com/zweckj

## Release 2025.2.3 - February 12

- Bump hass-nabucasa from 0.88.1 to 0.89.0 ([@ludeeus] - [#137321])
- Move cloud backup upload/download handlers to lib ([@ludeeus] - [#137416])
- Handle non-retryable errors when uploading cloud backup ([@ludeeus] - [#137517])
- Add missing thermostat state EMERGENCY_HEAT to econet ([@jdanders] - [#137623])
- Fix broken issue creation in econet ([@jdanders] - [#137773])
- Fix version extraction for APsystems ([@alfwro13] - [#138023])
- Refresh nest access token before before building subscriber Credentials ([@allenporter] - [#138259])
- Fix BackupManager.async_delete_backup ([@emontnemery] - [#138286])
- Fix next authentication token error handling ([@allenporter] - [#138299])
- Bump pyenphase to 1.25.1 ([@catsmanac] - [#138327])
- Bump sentry-sdk to 1.45.1 ([@edenhaus] - [#138349])
- Bump zeroconf to 0.144.1 ([@bdraco] - [#138353])
- Bump cryptography to 44.0.1 ([@edenhaus] - [#138371])
- Fix tplink iot strip sensor refresh ([@sdb9696] - [#138375])
- Bump deebot-client to 12.1.0 ([@edenhaus] - [#138382])
- Bump hass-nabucasa from 0.89.0 to 0.90.0 ([@emontnemery] - [#138387])
- Update cloud backup agent to use calculate_b64md5 from lib ([@emontnemery] - [#138391])

[#137321]: https://github.com/home-assistant/core/pull/137321
[#137416]: https://github.com/home-assistant/core/pull/137416
[#137448]: https://github.com/home-assistant/core/pull/137448
[#137517]: https://github.com/home-assistant/core/pull/137517
[#137623]: https://github.com/home-assistant/core/pull/137623
[#137688]: https://github.com/home-assistant/core/pull/137688
[#137773]: https://github.com/home-assistant/core/pull/137773
[#138023]: https://github.com/home-assistant/core/pull/138023
[#138231]: https://github.com/home-assistant/core/pull/138231
[#138259]: https://github.com/home-assistant/core/pull/138259
[#138286]: https://github.com/home-assistant/core/pull/138286
[#138299]: https://github.com/home-assistant/core/pull/138299
[#138327]: https://github.com/home-assistant/core/pull/138327
[#138349]: https://github.com/home-assistant/core/pull/138349
[#138353]: https://github.com/home-assistant/core/pull/138353
[#138371]: https://github.com/home-assistant/core/pull/138371
[#138375]: https://github.com/home-assistant/core/pull/138375
[#138382]: https://github.com/home-assistant/core/pull/138382
[#138387]: https://github.com/home-assistant/core/pull/138387
[#138391]: https://github.com/home-assistant/core/pull/138391
[@alfwro13]: https://github.com/alfwro13
[@allenporter]: https://github.com/allenporter
[@bdraco]: https://github.com/bdraco
[@catsmanac]: https://github.com/catsmanac
[@edenhaus]: https://github.com/edenhaus
[@emontnemery]: https://github.com/emontnemery
[@frenck]: https://github.com/frenck
[@jdanders]: https://github.com/jdanders
[@ludeeus]: https://github.com/ludeeus
[@sdb9696]: https://github.com/sdb9696

## Release 2025.2.4 - February 14

- Bump python-kasa to 0.10.2 ([@sdb9696] - [#138381])
- Bump hass-nabucasa from 0.90.0 to 0.91.0 ([@ludeeus] - [#138441])
- Bump aiowebostv to 0.6.2 ([@thecode] - [#138488])
- Bump ZHA to 0.0.49 to fix Tuya TRV issues ([@TheJulianJES] - [#138492])
- Bump pyseventeentrack to 1.0.2 ([@shaiu] - [#138506])
- Bump hass-nabucasa from 0.91.0 to 0.92.0 ([@emontnemery] - [#138510])
- Bump py-synologydsm-api to 2.6.3 ([@mib1185] - [#138516])
- Update frontend to 20250214.0 ([@bramkragten] - [#138521])

[#137448]: https://github.com/home-assistant/core/pull/137448
[#137688]: https://github.com/home-assistant/core/pull/137688
[#138231]: https://github.com/home-assistant/core/pull/138231
[#138381]: https://github.com/home-assistant/core/pull/138381
[#138408]: https://github.com/home-assistant/core/pull/138408
[#138441]: https://github.com/home-assistant/core/pull/138441
[#138488]: https://github.com/home-assistant/core/pull/138488
[#138492]: https://github.com/home-assistant/core/pull/138492
[#138506]: https://github.com/home-assistant/core/pull/138506
[#138510]: https://github.com/home-assistant/core/pull/138510
[#138516]: https://github.com/home-assistant/core/pull/138516
[#138521]: https://github.com/home-assistant/core/pull/138521
[@TheJulianJES]: https://github.com/TheJulianJES
[@bramkragten]: https://github.com/bramkragten
[@emontnemery]: https://github.com/emontnemery
[@frenck]: https://github.com/frenck
[@ludeeus]: https://github.com/ludeeus
[@mib1185]: https://github.com/mib1185
[@sdb9696]: https://github.com/sdb9696
[@shaiu]: https://github.com/shaiu
[@thecode]: https://github.com/thecode

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Duplicate and Unused Link Reference Definitions

Several static analysis warnings indicate duplicate or unused link/image reference definitions (for example, multiple definitions of “[#137448]”, “[#137688]”, and unused references like “[#138408]”). These references clutter the file and can make maintenance harder. Consider consolidating duplicate definitions and removing any that are not actually referenced in the changelog text.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

1395-1395: Link and image reference definitions should be needed
Unused link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1479-1479: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1481-1481: Link and image reference definitions should be needed
Unused link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1510-1510: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


1511-1511: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@andrewsayre"

(MD053, link-image-reference-definitions)


1514-1514: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bdraco"

(MD053, link-image-reference-definitions)


1515-1515: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bieniu"

(MD053, link-image-reference-definitions)


1517-1517: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@cdce8p"

(MD053, link-image-reference-definitions)


1520-1520: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1521-1521: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1526-1526: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@thecode"

(MD053, link-image-reference-definitions)


1527-1527: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@tr4nt0r"

(MD053, link-image-reference-definitions)


1529-1529: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@zweckj"

(MD053, link-image-reference-definitions)


1553-1553: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1556-1556: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1559-1559: Link and image reference definitions should be needed
Unused link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


1572-1572: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@allenporter"

(MD053, link-image-reference-definitions)


1573-1573: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bdraco"

(MD053, link-image-reference-definitions)


1576-1576: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1577-1577: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1593-1593: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137448"

(MD053, link-image-reference-definitions)


1594-1594: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#137688"

(MD053, link-image-reference-definitions)


1595-1595: Link and image reference definitions should be needed
Duplicate link or image reference definition: "#138231"

(MD053, link-image-reference-definitions)


1597-1597: Link and image reference definitions should be needed
Unused link or image reference definition: "#138408"

(MD053, link-image-reference-definitions)


1605-1605: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@TheJulianJES"

(MD053, link-image-reference-definitions)


1606-1606: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@bramkragten"

(MD053, link-image-reference-definitions)


1607-1607: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@emontnemery"

(MD053, link-image-reference-definitions)


1608-1608: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@frenck"

(MD053, link-image-reference-definitions)


1609-1609: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@ludeeus"

(MD053, link-image-reference-definitions)


1610-1610: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@mib1185"

(MD053, link-image-reference-definitions)


1611-1611: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@sdb9696"

(MD053, link-image-reference-definitions)


1613-1613: Link and image reference definitions should be needed
Duplicate link or image reference definition: "@thecode"

(MD053, link-image-reference-definitions)

@@ -23,6 +23,10 @@ _**TL;DR**: It is our goal for 2023 to let users control Home Assistant in their
- [Year of the Voice - Chapter 4](/blog/2023/10/12/year-of-the-voice-chapter-4-wakewords/) (October 12, 2023)
- [Year of the Voice - Chapter 5](/blog/2023/12/13/year-of-the-voice-chapter-5/) (December 13, 2023)
- [Voice - Chapter 6](/blog/2024/02/21/voice-chapter-6/) (February 21, 2024)
- [Voice - Chapter 7](/blog/2024/06/26/voice-chapter-7/) (June 26, 2024)
- [Voice - Chapter 8](/blog/2024/12/19/voice-chapter-8-assist-in-the-home/) (December 19, 2024)
- [Voice - Chapter 9](/blog/2025/02/13/voice-chapter-9-speech-to-phrase/) (February 13, 2024)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Date Inconsistency in Chapter 9 Entry

The "Voice - Chapter 9" entry displays the date as "February 13, 2024" while the URL indicates 2025. Please verify and update the displayed date to ensure consistency.

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

28-28: Unordered list indentation
Expected: 0; Actual: 1

(MD007, ul-indent)

@Samywamy10 Samywamy10 closed this Feb 21, 2025
@github-actions github-actions bot locked and limited conversation to collaborators Feb 22, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
has-parent This PR has a parent PR in a other repo next This PR goes into the next branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.