- Implemented log rotation module with configurable size and age-based log management
- Added utility functions to parse log file sizes and retention durations
- Created methods for identifying, filtering, and cleaning up old log files
- Integrated log rotation initialization in the main application entry point
- Added periodic checks for log file size and age-based cleanup
- Implemented centralized logging utility using Winston with daily log rotation
- Added logging middleware for request and error tracking
- Extended .env.example with logging configuration options
- Updated app configuration to support flexible logging settings
- Replaced console.log with structured logging in main application entry point
- Created logging middleware to capture request details and response times
- Refactored main application entry point to use centralized configuration
- Created modular route structure with separate files for different API endpoints
- Introduced app.config.ts for centralized environment variable management
- Moved tools and route logic into dedicated files
- Simplified index.ts and improved overall project organization
- Added comprehensive type definitions for tools and API interactions
- Created detailed getting started guide with installation and configuration instructions
- Added main documentation README with structured table of contents
- Developed troubleshooting guide with common issues, debugging tips, and FAQ
- Included development guide with project structure, setup, and contribution guidelines
- Added tools documentation with overview of available management tools
- Improved SSE statistics endpoint with comprehensive error handling and structured response
- Refined Home Assistant type exports in interfaces
- Updated SSE manager to provide more detailed subscription statistics
- Added timestamp and success status to SSE stats endpoint
- Introduced .env.development configuration file with detailed model and processor settings
- Simplified SSE statistics retrieval in routes
- Extended Home Assistant configuration with additional connection parameters
- Implemented comprehensive Home Assistant instance methods for services, states, and events
- Cleaned up and type-refined Home Assistant interfaces
- Improved WebSocket event handling and type conversion
- Implemented a new HomeAssistantInstance class with comprehensive WebSocket handling
- Added robust authentication and message management for Home Assistant connections
- Created type-safe interfaces for states, services, and event subscriptions
- Updated import paths and simplified configuration loading
- Improved error handling and connection management for Home Assistant interactions
- Implemented comprehensive API routes for MCP schema, device execution, and control
- Created Home Assistant entity and event interfaces with detailed type definitions
- Added tools for listing and controlling Home Assistant devices
- Introduced SSE (Server-Sent Events) subscription and management endpoints
- Implemented flexible device control with support for multiple domains and parameters
- Added detailed .env.example with extensive configuration options
- Created centralized configuration module with type-safe environment variable loading
- Implemented configuration validation and default value handling
- Added support for different environment modes (development, production, test)
- Introduced interfaces for robust type definitions across the project
- Implemented middleware for request validation, security, and input sanitization
- Removed extensive Home Assistant Analyzer CLI section
- Condensed API Reference to point to external documentation files
- Simplified development commands section
- Kept core sections like OpenAI Integration and Troubleshooting
- Improved overall readability by reducing technical depth in README
- Completely restructured API.md with a more modular and detailed approach
- Added comprehensive schema documentation for MCP endpoint
- Expanded sections on device control, add-on management, and core functions
- Included WebSocket event handling and real-time update mechanisms
- Enhanced error handling and rate limiting documentation
- Added example usage sections with curl and JavaScript demonstrations
- Improved overall readability and technical depth of API reference
- Deleted Jest configuration file (jest.config.js)
- Removed Jest setup files for CommonJS and ES modules
- Added .mypy_cache/ to .gitignore for Python type checking cache
- Added new schema definitions for Home Assistant management tools
- Included automation configuration management
- Added support for add-on, package, scene, and notification controls
- Integrated history retrieval for entity data
- Appended HACS documentation reference
- Implemented comprehensive Home Assistant system analysis tool
- Added multi-model support for OpenAI and DeepSeek language models
- Created detailed system, performance, security, and automation analysis capabilities
- Enhanced README with in-depth documentation of CLI features and usage
- Integrated advanced XML-based response parsing and intelligent insights generation
- Implemented flexible analysis modes: standard, custom prompt, and automation optimization
- Added comprehensive model configuration and selection mechanism
- Implemented dynamic model handling for OpenAI and DeepSeek providers
- Enhanced error handling and retry logic for API interactions
- Expanded system analysis with more detailed XML-based response parsing
- Updated configuration loading with improved model selection and validation
- Added colored logging and more informative console output
- Integrated new test suite for API endpoints
- Updated Jest configuration to handle .mts and .mjs file extensions
- Improved Jest resolver to better support ESM modules and @digital-alchemy packages
- Added comprehensive test coverage for AI router, Home Assistant integration, and WebSocket client
- Expanded test scenarios for error handling, event subscriptions, and service interactions
- Corrected package name from `jango-blockchained/homeassistant-mcp` to `homeassistant-mcp`
- Added `@types/supertest` and `supertest` for testing
- Updated package manager specification to Yarn 1.22.22
- Implemented comprehensive AI-driven system analysis using OpenAI's GPT-4
- Created interactive CLI tool for Home Assistant device and system insights
- Added support for standard and custom prompt-based analysis
- Integrated MCP server data collection with intelligent AI processing
- Updated package.json with new OpenAI and XML dependencies
- Enhanced README with detailed OpenAI integration documentation
- Implemented `/mcp/execute` endpoint for tool execution
- Added token-based authentication using HASS_TOKEN
- Supports dynamic tool selection and parameter passing
- Includes comprehensive error handling for unauthorized access and tool not found scenarios
- Provides flexible execution workflow with detailed response handling
- Implemented `/mcp` endpoint to expose server capabilities
- Created `src/mcp/schema.ts` with comprehensive tool and resource definitions
- Updated README.md with MCP Schema documentation
- Modified security middleware to allow unauthenticated access to schema endpoint
- Included detailed tool descriptions for list_devices, control, and event subscription
- Created Dockerfile for containerized deployment
- Added .dockerignore to optimize Docker build context
- Updated README with comprehensive Docker setup instructions
- Implemented new server endpoints:
* Health check endpoint
* Device listing
* Device control
* SSE event subscription
- Enhanced security middleware with request validation and input sanitization
- Added error handling and token-based authentication for new endpoints
- Added Express server with security middleware
- Implemented dynamic tool registration and API endpoint generation
- Enhanced logging with structured initialization messages
- Created centralized tools tracking for automatic endpoint discovery
- Added explicit Express server startup alongside MCP server
- Improved initialization logging with detailed endpoint information
- Created detailed test suite for Home Assistant WebSocket client
- Implemented tests for WebSocket connection, authentication, and error handling
- Added comprehensive test coverage for HassInstanceImpl API methods
- Mocked WebSocket and fetch to simulate various connection scenarios
- Covered authentication, state retrieval, service calls, and environment configuration
- Improved test infrastructure for Home Assistant integration
- Refactored and simplified Context Manager test cases
- Updated test scenarios for resource management, relationships, and event subscriptions
- Improved test readability and reduced test complexity
- Configured Jest to collect and report code coverage
- Added coverage thresholds and reporting options
- Refactored Jest configuration for improved ESM and TypeScript support
- Updated `jest.setup.ts` with comprehensive test environment configuration
- Enhanced mocking for WebSocket, console, and external dependencies
- Adjusted package.json dependencies and scripts
- Updated tsconfig.json with decorator and test exclusion settings
- Improved test coverage configuration and reporting
- Simplified test file structure and mocking strategies
- Created comprehensive SSE API documentation in `docs/SSE_API.md`
- Updated README.md with new features section highlighting SSE capabilities
- Added `.cursornotes` file for SSE subscription flow
- Provided detailed examples and usage guidelines for SSE integration
- Documented event types, authentication, and best practices for real-time updates
- Implemented comprehensive SSE manager with advanced client management
- Added dynamic event subscription and broadcasting capabilities
- Created robust rate limiting and client connection tracking
- Enhanced Home Assistant event handling with new SSE endpoints
- Updated package.json with UUID dependency for client identification
- Expanded test coverage for SSE and WebSocket event handling
- Improved type definitions for Home Assistant events and entities
- Created detailed API documentation for Home Assistant Model Context Protocol (MCP)
- Documented authentication, rate limiting, and security best practices
- Included comprehensive endpoint descriptions for:
* Natural Language Processing
* Device Control
* History
* Scenes
* Automations
* Add-ons
* Package Management
- Added WebSocket event handling and connection examples
- Provided error handling and response format guidelines
- Completely rewrote HassWebSocketClient with enhanced event handling and connection management
- Added environment-specific configuration support for Home Assistant connection
- Implemented robust WebSocket connection, authentication, and event subscription methods
- Created more flexible HassInstance interface with improved type definitions
- Added support for dynamic environment configuration and error handling
- Completely rewrote HassInstance class with fetch-based API methods
- Updated Home Assistant schemas to be more precise and flexible
- Removed deprecated test environment configuration file
- Enhanced WebSocket client implementation
- Improved test coverage for Home Assistant API and schema validation
- Simplified type definitions and error handling
- Created detailed test suite for Home Assistant schema validation
- Implemented schemas for entities, services, events, configurations, automations, and device controls
- Added robust validation for complex Home Assistant data structures
- Enhanced type safety and validation for Home Assistant-related interfaces
- Expanded schema definitions to support multiple use cases and edge scenarios
- Created detailed test suite for Home Assistant API interactions
- Implemented tests for API connection, state management, service calls, and event handling
- Added robust error handling and edge case scenarios for HASS API integration
- Mocked fetch and WebSocket to simulate various API response conditions
- Covered authentication, state retrieval, service invocation, and event subscription scenarios
- Introduced detailed test suites for security middleware components
- Added robust test coverage for token encryption, decryption, and validation
- Implemented comprehensive tests for input sanitization and error handling
- Created test scenarios for rate limiting and security header configurations
- Enhanced test infrastructure for security-related modules with edge case handling
- Introduced comprehensive NLP processing modules for intent classification, entity extraction, and context analysis
- Created AI router with rate-limited endpoints for command interpretation and execution
- Added prompt templates for different AI models with configurable system and user prompts
- Implemented robust type definitions for AI-related interfaces and schemas
- Enhanced security and error handling in AI processing pipeline
- Created `.env.test.example` with test environment variables
- Updated `jest.config.cjs` to simplify configuration and improve test setup
- Added `jest.setup.ts` to load and configure test environment variables
- Updated test files to use dynamic test environment configuration
- Enhanced README.md with additional configuration details for testing
- Updated test suite with more robust mocking for WebSocket and security modules
- Expanded test coverage for performance monitoring and optimization utilities
- Added detailed type definitions for WebSocket and test response interfaces
- Improved error handling and type safety in test scenarios
- Updated package dependencies to include WebSocket and security-related libraries
- Introduced WebSocket client for real-time Home Assistant event streaming
- Created context management system for tracking resource relationships and state
- Implemented performance monitoring and optimization utilities
- Added security middleware with token validation, rate limiting, and input sanitization
- Extended tool registry with enhanced tool registration and execution capabilities
- Expanded test coverage for new modules and added comprehensive test scenarios
- Improved type safety and added robust error handling across new modules