Skip to content

Releases: cronus42/homeassistant-ollama-agent

Release v1.1.4

Choose a tag to compare

@cronus42 cronus42 released this 31 Dec 05:05

Changelog

All notable changes to this project will be documented in this file.

[Unreleased]

Added

  • Qwen Tool Call Support: Added support for Qwen2.5-coder's XML-based tool calling format
    • New parser function extracts tool calls from <tool_call> XML tags
    • Automatically converts Qwen format to standard tool_calls format
    • Added detection logic prioritizing Qwen format after standard format
    • Enhanced logging for Qwen tool call processing

Fixed

  • Qwen2.5-coder Compatibility: Qwen models now properly execute tool calls instead of outputting them as text
    • Resolves issue where tool calls appeared as JSON in conversation responses
    • Tool calls wrapped in XML tags are now parsed and executed correctly

[1.1.0] - 2025-12-29

Fixed

  • Gemma3 Think Block Issue: Fixed issue where Gemma3 model responses were showing raw blocks instead of user-facing text
    • Enhanced filter function to handle unclosed tags
    • Added debug logging to track filtering operations
    • Implemented fallback responses when filtering results in empty text
    • System prompt now explicitly instructs models not to use tags

Added

  • Smart fallback response generation when model output is filtered to empty
  • Automatic action summaries (e.g., "Done! I've turned off light.desk_lamp")
  • Enhanced debug logging for response processing pipeline
  • Raw response logging before filtering (debug level)

Changed

  • System prompt updated with explicit "Response Format" section
  • Prohibits use of tags in model instructions
  • More natural confirmation examples in system prompt

[1.0.0] - 2024-01-XX

Added

  • Initial release with Ollama conversation agent
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Standard Ollama tool calling format
  • Gemma3-tools format compatibility
  • Dynamic entity exposure
  • Conversation history (10 messages)
  • UI-based configuration flow

Release v1.1.3

Choose a tag to compare

@cronus42 cronus42 released this 31 Dec 04:31

Changelog

All notable changes to this project will be documented in this file.

[Unreleased]

Added

  • Qwen Tool Call Support: Added support for Qwen2.5-coder's XML-based tool calling format
    • New parser function extracts tool calls from <tool_call> XML tags
    • Automatically converts Qwen format to standard tool_calls format
    • Added detection logic prioritizing Qwen format after standard format
    • Enhanced logging for Qwen tool call processing

Fixed

  • Qwen2.5-coder Compatibility: Qwen models now properly execute tool calls instead of outputting them as text
    • Resolves issue where tool calls appeared as JSON in conversation responses
    • Tool calls wrapped in XML tags are now parsed and executed correctly

[1.1.0] - 2025-12-29

Fixed

  • Gemma3 Think Block Issue: Fixed issue where Gemma3 model responses were showing raw blocks instead of user-facing text
    • Enhanced filter function to handle unclosed tags
    • Added debug logging to track filtering operations
    • Implemented fallback responses when filtering results in empty text
    • System prompt now explicitly instructs models not to use tags

Added

  • Smart fallback response generation when model output is filtered to empty
  • Automatic action summaries (e.g., "Done! I've turned off light.desk_lamp")
  • Enhanced debug logging for response processing pipeline
  • Raw response logging before filtering (debug level)

Changed

  • System prompt updated with explicit "Response Format" section
  • Prohibits use of tags in model instructions
  • More natural confirmation examples in system prompt

[1.0.0] - 2024-01-XX

Added

  • Initial release with Ollama conversation agent
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Standard Ollama tool calling format
  • Gemma3-tools format compatibility
  • Dynamic entity exposure
  • Conversation history (10 messages)
  • UI-based configuration flow

Release v1.1.2

Choose a tag to compare

@cronus42 cronus42 released this 31 Dec 04:19

Changelog

All notable changes to this project will be documented in this file.

[1.1.0] - 2025-12-29

Fixed

  • Gemma3 Think Block Issue: Fixed issue where Gemma3 model responses were showing raw <think> blocks instead of user-facing text
    • Enhanced _filter_think_blocks() to handle unclosed <think> tags
    • Added debug logging to track filtering operations
    • Implemented fallback responses when filtering results in empty text
    • System prompt now explicitly instructs models not to use <think> tags

Added

  • Smart fallback response generation when model output is filtered to empty
  • Automatic action summaries (e.g., "Done! I've turned off light.desk_lamp")
  • Enhanced debug logging for response processing pipeline
  • Raw response logging before filtering (debug level)

Changed

  • System prompt updated with explicit "Response Format" section
  • Prohibits use of <think> tags in model instructions
  • More natural confirmation examples in system prompt

[1.0.0] - 2024-01-XX

Added

  • Initial release with Ollama conversation agent
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Standard Ollama tool calling format
  • Gemma3-tools format compatibility
  • Dynamic entity exposure
  • Conversation history (10 messages)
  • UI-based configuration flow

Release v1.1.1

Choose a tag to compare

@cronus42 cronus42 released this 29 Dec 21:48

Changelog

All notable changes to this project will be documented in this file.

[1.1.0] - 2025-12-29

Fixed

  • Gemma3 Think Block Issue: Fixed issue where Gemma3 model responses were showing raw <think> blocks instead of user-facing text
    • Enhanced _filter_think_blocks() to handle unclosed <think> tags
    • Added debug logging to track filtering operations
    • Implemented fallback responses when filtering results in empty text
    • System prompt now explicitly instructs models not to use <think> tags

Added

  • Smart fallback response generation when model output is filtered to empty
  • Automatic action summaries (e.g., "Done! I've turned off light.desk_lamp")
  • Enhanced debug logging for response processing pipeline
  • Raw response logging before filtering (debug level)

Changed

  • System prompt updated with explicit "Response Format" section
  • Prohibits use of <think> tags in model instructions
  • More natural confirmation examples in system prompt

[1.0.0] - 2024-01-XX

Added

  • Initial release with Ollama conversation agent
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Standard Ollama tool calling format
  • Gemma3-tools format compatibility
  • Dynamic entity exposure
  • Conversation history (10 messages)
  • UI-based configuration flow

v1.1.0 - Gemma3 Think Block Fix

Choose a tag to compare

@cronus42 cronus42 released this 29 Dec 20:57

Ollama Conversation Agent v1.1.0

🎯 Overview

This release fixes a critical issue where the Gemma3 model was outputting raw <think> blocks instead of user-facing responses when controlling devices.

🐛 Bug Fixes

Gemma3 Think Block Issue

Problem: When using Gemma3, device control responses showed internal reasoning blocks like:

<think> Alright, the user just turned off the desk lamp. Let me make sure I followed all the instructions...

Solution: Implemented comprehensive filtering and fallback mechanisms:

  • Enhanced regex patterns to handle both complete and unclosed <think> tags
  • Added intelligent fallback response generation when filtering results in empty text
  • Updated system prompt to explicitly prohibit <think> tags in model outputs
  • Added comprehensive debug logging for troubleshooting

✨ New Features

  • Smart Fallback Responses: When model outputs only reasoning, automatically generates natural confirmations (e.g., "Done! I've turned off light.desk_lamp.")
  • Enhanced Debug Logging: Track response filtering operations and model behavior
  • Improved System Prompt: Clearer instructions for models on response formatting

🔧 Technical Changes

Modified Files

  • conversation.py: Enhanced _filter_think_blocks() function with dual regex patterns and fallback logic
  • manifest.json: Version bump to 1.1.0
  • CHANGELOG.md: Comprehensive changelog with all changes

New Files

  • FIX_SUMMARY.md: Technical details of the fix implementation
  • TESTING.md: Deployment and testing guide

📦 Installation

Method 1: HACS (Recommended)

  1. Open HACS in Home Assistant
  2. Go to Integrations
  3. Search for "Ollama Conversation"
  4. Click Update (if already installed) or Install

Method 2: Manual Installation

  1. Download ollama-conversation-v1.1.0.zip
  2. Extract to your Home Assistant custom_components directory:
    unzip ollama-conversation-v1.1.0.zip -d /config/custom_components/
  3. Restart Home Assistant

Method 3: Direct Copy

cd /path/to/homeassistant-ollama-agent
scp -r custom_components/ollama_conversation your-ha-server:/config/custom_components/

🧪 Testing

After installation, test with these commands:

  1. Light Control: "Turn off the desk lamp"
  2. Climate Control: "Set the bedroom to 72 degrees"
  3. Brightness: "Turn on the kitchen light to 50%"

Expected Results:

  • ✅ No <think> tags visible to users
  • ✅ Natural, concise confirmations
  • ✅ Proper device control execution

🐞 Debug Mode

To enable detailed logging, add to configuration.yaml:

logger:
  default: info
  logs:
    custom_components.ollama_conversation: debug

🔗 Links

📋 Full Changelog

See CHANGELOG.md for complete details.

🙏 Credits

Developed by goose (Block's AI agent) as part of the open-source Goose project.


Compatibility: Home Assistant 2024.x or later, Ollama with function-calling support
Supported Models: Gemma3, function-gemma, and other Ollama models with tool calling

Release v1.0.6

Choose a tag to compare

@cronus42 cronus42 released this 27 Dec 18:39

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[1.0.1] - 2025-12-27

Fixed

  • Bug #1: Fixed 500 Internal Server Error when conversing with assistant
    • Added better error handling and logging in chat API calls
    • Increased timeout from 30s to 60s for tool-heavy conversations
    • Added detailed debug logging to diagnose API issues
    • Fixed response parsing to handle edge cases
  • Bug #2: Fixed "This assistant cannot control your home" warning
    • Added supported_features property returning ConversationEntityFeature.CONTROL
    • Integration now properly declares device control capabilities to Home Assistant

Changed

  • Improved error messages with more descriptive information
  • Added async_set_speech() call to properly set response text in intent
  • Enhanced tool argument parsing to handle both dict and string formats
  • Better exception handling with user-friendly error messages

Improved

  • More comprehensive logging throughout the integration
  • Better JSON parsing error handling
  • Response status validation before parsing

[1.0.0] - 2025-12-26

Added

  • Initial release of Ollama Conversation integration
  • Full Ollama API support with tool/function calling
  • UI-based configuration flow
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Conversation history management (last 10 messages)
  • Configurable parameters (temperature, context_window, top_p, top_k)
  • Comprehensive error handling
  • Model selection dropdown
  • Connection validation
  • Unit tests and functional tests
  • Complete documentation

Features

  • Local AI processing via Ollama
  • Natural language device control
  • Multi-turn conversation support
  • Tool execution with result feedback
  • Home Assistant service integration
  • HACS compatibility

Documentation

  • Detailed README with usage examples
  • Implementation summary
  • Troubleshooting guide
  • Architecture documentation
  • API endpoint documentation

Release v1.0.5

Choose a tag to compare

@cronus42 cronus42 released this 27 Dec 18:21

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[1.0.1] - 2025-12-27

Fixed

  • Bug #1: Fixed 500 Internal Server Error when conversing with assistant
    • Added better error handling and logging in chat API calls
    • Increased timeout from 30s to 60s for tool-heavy conversations
    • Added detailed debug logging to diagnose API issues
    • Fixed response parsing to handle edge cases
  • Bug #2: Fixed "This assistant cannot control your home" warning
    • Added supported_features property returning ConversationEntityFeature.CONTROL
    • Integration now properly declares device control capabilities to Home Assistant

Changed

  • Improved error messages with more descriptive information
  • Added async_set_speech() call to properly set response text in intent
  • Enhanced tool argument parsing to handle both dict and string formats
  • Better exception handling with user-friendly error messages

Improved

  • More comprehensive logging throughout the integration
  • Better JSON parsing error handling
  • Response status validation before parsing

[1.0.0] - 2025-12-26

Added

  • Initial release of Ollama Conversation integration
  • Full Ollama API support with tool/function calling
  • UI-based configuration flow
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Conversation history management (last 10 messages)
  • Configurable parameters (temperature, context_window, top_p, top_k)
  • Comprehensive error handling
  • Model selection dropdown
  • Connection validation
  • Unit tests and functional tests
  • Complete documentation

Features

  • Local AI processing via Ollama
  • Natural language device control
  • Multi-turn conversation support
  • Tool execution with result feedback
  • Home Assistant service integration
  • HACS compatibility

Documentation

  • Detailed README with usage examples
  • Implementation summary
  • Troubleshooting guide
  • Architecture documentation
  • API endpoint documentation

Release v1.0.4

Choose a tag to compare

@cronus42 cronus42 released this 27 Dec 18:07

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[1.0.1] - 2025-12-27

Fixed

  • Bug #1: Fixed 500 Internal Server Error when conversing with assistant
    • Added better error handling and logging in chat API calls
    • Increased timeout from 30s to 60s for tool-heavy conversations
    • Added detailed debug logging to diagnose API issues
    • Fixed response parsing to handle edge cases
  • Bug #2: Fixed "This assistant cannot control your home" warning
    • Added supported_features property returning ConversationEntityFeature.CONTROL
    • Integration now properly declares device control capabilities to Home Assistant

Changed

  • Improved error messages with more descriptive information
  • Added async_set_speech() call to properly set response text in intent
  • Enhanced tool argument parsing to handle both dict and string formats
  • Better exception handling with user-friendly error messages

Improved

  • More comprehensive logging throughout the integration
  • Better JSON parsing error handling
  • Response status validation before parsing

[1.0.0] - 2025-12-26

Added

  • Initial release of Ollama Conversation integration
  • Full Ollama API support with tool/function calling
  • UI-based configuration flow
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Conversation history management (last 10 messages)
  • Configurable parameters (temperature, context_window, top_p, top_k)
  • Comprehensive error handling
  • Model selection dropdown
  • Connection validation
  • Unit tests and functional tests
  • Complete documentation

Features

  • Local AI processing via Ollama
  • Natural language device control
  • Multi-turn conversation support
  • Tool execution with result feedback
  • Home Assistant service integration
  • HACS compatibility

Documentation

  • Detailed README with usage examples
  • Implementation summary
  • Troubleshooting guide
  • Architecture documentation
  • API endpoint documentation

Release v1.0.3

Choose a tag to compare

@cronus42 cronus42 released this 27 Dec 17:28

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[1.0.1] - 2025-12-27

Fixed

  • Bug #1: Fixed 500 Internal Server Error when conversing with assistant
    • Added better error handling and logging in chat API calls
    • Increased timeout from 30s to 60s for tool-heavy conversations
    • Added detailed debug logging to diagnose API issues
    • Fixed response parsing to handle edge cases
  • Bug #2: Fixed "This assistant cannot control your home" warning
    • Added supported_features property returning ConversationEntityFeature.CONTROL
    • Integration now properly declares device control capabilities to Home Assistant

Changed

  • Improved error messages with more descriptive information
  • Added async_set_speech() call to properly set response text in intent
  • Enhanced tool argument parsing to handle both dict and string formats
  • Better exception handling with user-friendly error messages

Improved

  • More comprehensive logging throughout the integration
  • Better JSON parsing error handling
  • Response status validation before parsing

[1.0.0] - 2025-12-26

Added

  • Initial release of Ollama Conversation integration
  • Full Ollama API support with tool/function calling
  • UI-based configuration flow
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Conversation history management (last 10 messages)
  • Configurable parameters (temperature, context_window, top_p, top_k)
  • Comprehensive error handling
  • Model selection dropdown
  • Connection validation
  • Unit tests and functional tests
  • Complete documentation

Features

  • Local AI processing via Ollama
  • Natural language device control
  • Multi-turn conversation support
  • Tool execution with result feedback
  • Home Assistant service integration
  • HACS compatibility

Documentation

  • Detailed README with usage examples
  • Implementation summary
  • Troubleshooting guide
  • Architecture documentation
  • API endpoint documentation

Release v1.0.2

Choose a tag to compare

@cronus42 cronus42 released this 27 Dec 05:15

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[1.0.1] - 2025-12-27

Fixed

  • Bug #1: Fixed 500 Internal Server Error when conversing with assistant
    • Added better error handling and logging in chat API calls
    • Increased timeout from 30s to 60s for tool-heavy conversations
    • Added detailed debug logging to diagnose API issues
    • Fixed response parsing to handle edge cases
  • Bug #2: Fixed "This assistant cannot control your home" warning
    • Added supported_features property returning ConversationEntityFeature.CONTROL
    • Integration now properly declares device control capabilities to Home Assistant

Changed

  • Improved error messages with more descriptive information
  • Added async_set_speech() call to properly set response text in intent
  • Enhanced tool argument parsing to handle both dict and string formats
  • Better exception handling with user-friendly error messages

Improved

  • More comprehensive logging throughout the integration
  • Better JSON parsing error handling
  • Response status validation before parsing

[1.0.0] - 2025-12-26

Added

  • Initial release of Ollama Conversation integration
  • Full Ollama API support with tool/function calling
  • UI-based configuration flow
  • Support for light control (on/off, brightness)
  • Support for climate control (temperature setting)
  • Conversation history management (last 10 messages)
  • Configurable parameters (temperature, context_window, top_p, top_k)
  • Comprehensive error handling
  • Model selection dropdown
  • Connection validation
  • Unit tests and functional tests
  • Complete documentation

Features

  • Local AI processing via Ollama
  • Natural language device control
  • Multi-turn conversation support
  • Tool execution with result feedback
  • Home Assistant service integration
  • HACS compatibility

Documentation

  • Detailed README with usage examples
  • Implementation summary
  • Troubleshooting guide
  • Architecture documentation
  • API endpoint documentation