* Add a tool for fetching todo list items
* Simplify the todo list interface by adding an "all" status
* Update prompt to improve performance on smaller models
* Fix a bug parsing a streaming response with no json
* Remove debug lines
* Fix quality loss for LLM conversation agent question answering
* Update tests
* Update ollama to allow selecting mutiple LLM APIs
* Update homeassistant/helpers/llm.py
* Avoid gather since these don't do I/O
---------
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* fix: two minor LLM changes to speed up prefill
- moved the current date/time to the end of the prompt
- started sorting all entities by last_changed
* addressed PR comments
* fixed tests
* reduced scope of try/catch in LLM prompt
* addressed more PR comments
* fixed Anthropic test
* addressed another PR comment
* fixed remainder of tests
* Create a stateless assist API for MCP server
* Update stateless API
* Fix areas in exposed entity fields
* Add tests that verify areas are returned
* Revert the getstate intent
* Revert whitespace change
* Revert whitespace change
* Revert method name changes to avoid breaking openai and google tests
* Add shared history for conversation agents
* Remove unused code
* Add support for native history items
* Store all assistant responses as assistant in history
* Add history support to DefaultAgent.async_handle_intents
* Make local fallback work
* Add default agent history
* Add history cleanup
* Add tests
* ChatHistory -> ChatSession
* Address comments
* Update snapshots
* fix
* Fix
* Fix
* Update homeassistant/helpers/config_validation.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Fix
* Fix
* Fix
* Fix
* Add more tests
* Fix
* Fix tests
* Add tests
* Let's see what the CI does
* It fails on the code that tested the thing ofc
* It fails on the code that tested the thing ofc
* Revert test thingy
* Now the test works again, lovely
* Another one
* Fix websocket thingy
* Only copy when needed
* Improve comment
* Remove test
* Fix docstring
* I think this now also work since this transforms trigger to platform
* Add comment
* Update homeassistant/helpers/config_validation.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/helpers/config_validation.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/helpers/config_validation.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Check for mapping
* Add test
* Update homeassistant/helpers/config_validation.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update test to also test for trigger keys
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add script llm tool
* Add tests
* More tests
* more test
* more test
* Add area and floor resolving
* coverage
* coverage
* fix ColorTempSelector
* fix mypy
* fix mypy
* add script reload test
* Cache script tool parameters
* Make custom_serializer a part of api
---------
Co-authored-by: Michael Hansen <mike@rhasspy.org>
* Automatically fill in slots from LLM context
* Add tests
* Apply suggestions from code review
Co-authored-by: Allen Porter <allen@thebends.org>
---------
Co-authored-by: Allen Porter <allen@thebends.org>
* Ignore deprecated open and close cover intents for LLMs
* Fix LLMs asking which area when there is only one device
* remove unrelated changed
* remove unrelated changes