Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: TEN-framework/ten-framework
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 0.11.45
Choose a base ref
...
head repository: TEN-framework/ten-framework
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 0.11.46
Choose a head ref
  • 14 commits
  • 466 files changed
  • 9 contributors

Commits on Dec 16, 2025

  1. Feat/transcript toggle (#1885)

    * fix: support no_transcript option for demo
    
    * fix: fix manifest tye
    plutoless authored Dec 16, 2025
    Configuration menu
    Copy the full SHA
    ff2202a View commit details
    Browse the repository at this point in the history

Commits on Dec 17, 2025

  1. Configuration menu
    Copy the full SHA
    5825aa4 View commit details
    Browse the repository at this point in the history
  2. fix: improve avatar voice_end timing and deepgram reliability (#1882)

    Avatar extensions (anam, generic, heygen):
    - Replace 500ms debounce timer with tts_audio_end event handling
    - Add send_voice_end() method triggered by tts_audio_end (reason=1)
    - Remove dead code from heygen (unused queues, is_speaking timeout)
    - Fix graph routing: tts_audio_end now routes to avatar (was only thymia)
    
    Deepgram WebSocket ASR:
    - Add silence sender for EOT detection when mic muted
    - Add auto-reconnect with exponential backoff
    - Add keep-alive silence to prevent WebSocket timeout
    
    Playground:
    - Add URL param support: ?graph=name pre-selects graph on load
    
    Co-authored-by: Ubuntu <[email protected]>
    Co-authored-by: Ethan Zhang <[email protected]>
    3 people authored Dec 17, 2025
    Configuration menu
    Copy the full SHA
    fc8b2ae View commit details
    Browse the repository at this point in the history

Commits on Dec 18, 2025

  1. Configuration menu
    Copy the full SHA
    5c71b1b View commit details
    Browse the repository at this point in the history
  2. feat: add hellos graph and share code between thymia analysis modes (#…

    …1883)
    
    * feat: add hellos graph and share code between thymia analysis modes
    
    - Add flux_hellos_gpt_5_1_cartesia_anam graph for hellos-only analysis
    - Refactor thymia_analyzer to share code between hellos_only and full modes
    - Set min_speech_duration to 10s for faster demo turnaround
    
    * fix: sync rebuild_property.py with 10s min_speech_duration
    
    ---------
    
    Co-authored-by: Ubuntu <[email protected]>
    Co-authored-by: Ethan Zhang <[email protected]>
    3 people authored Dec 18, 2025
    Configuration menu
    Copy the full SHA
    01bb0b9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6f77e13 View commit details
    Browse the repository at this point in the history
  4. feat: add voice assistant example with PowerMem integration (#1865)

    * init voice-assistant-with-PowerMem
    
    * refactor: replace Memu memory store with PowerMem integration
    
    - Updated memory store implementation to use PowerMemSdkMemoryStore.
    - Simplified initialization by removing self-hosting options.
    - Enhanced logging for memory operations and error handling.
    - Updated requirements to include powermem instead of memu-py.
    
    * refactor: update voice assistant configuration for Azure integration
    
    - Replaced Deepgram ASR and ElevenLabs TTS with Azure ASR and TTS services.
    - Updated property keys and parameters to align with Azure's requirements.
    - Removed unused fields such as agent_name and user_name from configuration.
    - Simplified memorization logic by eliminating user_name parameter from memory functions.
    
    * refactor: update voice assistant to use PowerMem and enhance documentation
    
    - Added .gitignore to exclude tenapp/data/ directory.
    - Updated Dockerfile to reference the new voice assistant with PowerMem.
    - Renamed memory-related attributes in extension.py for clarity.
    - Revised README files to reflect the transition from MemU to PowerMem, including updated features and installation instructions.
    
    * feat: enhance voice assistant with personalized greetings and memory integration
    
    - Updated greeting message to reflect memory capabilities.
    - Implemented personalized greeting generation based on user memories.
    - Adjusted memorization logic to occur every five rounds instead of two.
    - Added error handling and logging for personalized greeting generation.
    
    * feat: implement personalized greeting handling in voice assistant
    
    - Added state management for greeting generation in MainControlExtension.
    - Enhanced logic to generate and log personalized greetings based on user memories.
    - Updated response handling to manage final and non-final LLM responses during greeting generation.
    - Ensured default greetings are used when personalized greetings are not available.
    
    * refactor: simplify memorization logic in voice assistant
    
    - Updated comment to clarify that memorization occurs every five rounds if enabled.
    - Removed redundant condition from the comment for better readability.
    
    * fix: improve personalized greeting handling in MainControlExtension
    
    - Ensured personalized greetings are set only if the config is available.
    - Streamlined the logic for sending TTS and transcript messages based on greeting availability.
    - Enhanced logging for cases when no personalized greeting is generated.
    
    * refactor: streamline memory retrieval methods in MainControlExtension
    
    - Removed user_id parameter from memory retrieval functions for simplification.
    - Updated calls to memory retrieval methods to align with the new signature.
    - Enhanced code clarity by reducing unnecessary parameters in related memory functions.
    
    * chore: update manifest-lock and property files for voice assistant
    
    - Updated versions and hashes for several dependencies in manifest-lock.json to the latest releases.
    - Added language parameter to Azure STT configuration in property.json for improved multilingual support.
    - Enhanced TTS configuration by specifying the default synthesis language in property.json.
    
    * refactor: comment out memory loading in MainControlExtension
    
    - Commented out the call to _load_memory_to_context() for potential debugging or future implementation considerations.
    - Maintained existing functionality while allowing for easier testing of other components.
    
    * refactor: update memory handling in MainControlExtension and PowerMemSdkMemoryStore
    
    - Removed the MemoryStore base class and its associated methods, simplifying the PowerMemSdkMemoryStore implementation.
    - Updated MainControlExtension to directly use PowerMemSdkMemoryStore for memory operations.
    - Enhanced the context message format for related memory retrieval to improve user interaction.
    - Streamlined memory retrieval logic by optimizing response handling and removing unnecessary parameters.
    
    * refactor: enhance memory handling in MainControlExtension and PowerMemSdkMemoryStore
    
    - Introduced a new method to memorize conversations in MainControlExtension, improving memory integration.
    - Renamed memory store methods for clarity, changing 'memorize' to 'add' and 'retrieve_related_clustered_categories' to 'search'.
    - Removed unused memory summary parsing methods to streamline the codebase and improve maintainability.
    
    * refactor: remove unused memory methods in MainControlExtension and update logging in PowerMemSdkMemoryStore
    
    - Commented out the memory loading method in MainControlExtension to streamline functionality.
    - Removed the call to _memorize_conversation() to enhance clarity and maintainability.
    - Updated logging in PowerMemSdkMemoryStore to reflect method name change from 'memorize' to 'add' for better understanding.
    
    * feat: enhance voice assistant with PowerMem memory management
    
    - Added comprehensive PowerMem configuration options to the main README, detailing database, LLM, and embedding settings.
    - Updated the extension README to reflect the integration of PowerMem, highlighting features like conversation memory, semantic search, and personalized greetings.
    - Included installation instructions and environment configuration guidelines for seamless setup.
    - Enhanced memory management workflow and error handling to improve user experience and functionality.
    
    * fix: update memorization frequency in voice assistant
    
    - Changed the memorization logic to save conversation to PowerMem every 2 rounds instead of 5, enhancing memory retention.
    - Updated README documentation to reflect the new memorization frequency and its implications for memory management.
    
    * feat: integrate templates for context messages and personalized greetings in voice assistant
    
    - Replaced hardcoded context message and greeting prompt with template constants for improved maintainability and readability.
    - Introduced CONTEXT_MESSAGE_WITH_MEMORY_TEMPLATE and PERSONALIZED_GREETING_TEMPLATE to streamline message formatting and enhance code clarity.
    
    * fix: refine memorization logic in MainControlExtension
    
    - Updated the memorization condition to check the difference between the current turn ID and the last memory update turn ID, ensuring conversations are memorized every two rounds when enabled.
    - Added a new attribute to track the last memory update turn ID for improved memory management.
    
    * feat: enhance memory management in voice assistant
    
    - Introduced configurable memory saving rules, allowing the assistant to save conversations based on a specified number of turns or after a period of inactivity.
    - Updated the configuration to include `memory_save_interval_turns` and `memory_idle_timeout_seconds` for improved flexibility in memory management.
    - Enhanced the README documentation to reflect these new features and their usage, ensuring users can easily configure memory settings.
    
    * refactor: improve memory store abstraction in voice assistant
    
    - Introduced a new MemoryStore base class to enhance the memory management structure.
    - Updated MainControlExtension to utilize MemoryStore instead of directly using PowerMemSdkMemoryStore.
    - Renamed parameters in memory search methods for consistency and clarity, changing 'category_query' to 'query'.
    - Revised README documentation to reflect changes in memory retrieval parameters and class structure.
    
    * feat: update personalized greeting template in voice assistant
    
    - Enhanced the PERSONALIZED_GREETING_TEMPLATE to include a condition for responding in the most commonly used language of the user's location/region if such information is available in the memory summary.
    - This change aims to improve user engagement by making greetings more contextually relevant and personalized.
    
    * feat: refine personalized greeting template in voice assistant
    
    - Updated the PERSONALIZED_GREETING_TEMPLATE to emphasize the assistant's friendly and helpful nature, enhancing user interaction.
    - This change aims to create a more engaging and contextually relevant greeting experience for users.
    
    * fix: correct typographical errors in prompt templates for voice assistant
    
    - Updated the CONTEXT_MESSAGE_WITH_MEMORY_TEMPLATE and PERSONALIZED_GREETING_TEMPLATE to fix typographical inconsistencies, ensuring proper use of apostrophes.
    - This change enhances the clarity and professionalism of the prompt strings used in the extension.
    
    * feat: add user memory management to voice assistant
    
    - Introduced `enable_user_memory` configuration option to control user-specific memory functionality.
    - Updated `MainControlExtension` to initialize the appropriate memory store based on the new configuration.
    - Added `PowerMemSdkUserMemoryStore` class for handling user-specific memory operations.
    - Revised documentation to include the new configuration parameter and its implications for memory management.
    
    * refactor: update type hinting for conversation parameter in memory store classes
    
    - Changed type hint for the `conversation` parameter from `List[dict]` to `list[dict]` in the `add` method across all memory store classes for consistency with Python's type hinting conventions.
    - This change improves code clarity and aligns with modern Python practices.
    
    * docs: enhance README documentation for voice assistant with PowerMem
    
    - Updated README files to include links to the PowerMem repository, improving accessibility to relevant resources.
    - Clarified the description of PowerMem's memory management capabilities in the context of the voice assistant, enhancing user understanding of its features.
    
    * feat: add user memory configuration options to manifest
    
    - Introduced new configuration options in the manifest.json for user memory management, including `enable_user_memory`, `memory_save_interval_turns`, and `memory_idle_timeout_seconds`.
    - These additions enhance the flexibility and control over user-specific memory functionalities in the voice assistant.
    
    * feat: implement user profile retrieval in memory store
    
    - Added a new abstract method `get_user_profile` to the MemoryStore class for fetching user profiles.
    - Implemented the `get_user_profile` method in the PowerMemSdkMemoryStore class to retrieve and format user profile information.
    - Updated the MainControlExtension to utilize the new method for accessing user memory summaries, enhancing the assistant's ability to provide personalized interactions.
    
    * fix: correct user memory initialization logic in MainControlExtension
    
    - Updated the condition for initializing the memory store in MainControlExtension to ensure that the PowerMemSdkMemoryStore is used when user memory is disabled, aligning with the intended configuration behavior.
    - This change improves the accuracy of memory management based on user settings.
    
    * chore: remove .gitignore file for voice assistant with PowerMem
    
    - Deleted the .gitignore file from the voice assistant example directory, which previously excluded the 'tenapp/data/' directory. This change simplifies the project structure by removing unnecessary files.
    
    * fix: update language configuration in voice assistant property file
    
    - Modified the language parameter in the property.json file to specify only "en-US", removing "zh-CN". This change streamlines language support for the voice assistant, ensuring it operates with a single language setting.
    
    * fix: update dependencies and configuration in voice assistant files
    
    - Downgraded versions and updated hashes for several dependencies in manifest-lock.json to ensure compatibility.
    - Changed the STT addon from "azure_asr_python" to "deepgram_asr_python" and updated its parameters in property.json for improved speech recognition.
    - Switched the TTS addon from "azure_tts_python" to "elevenlabs_tts2_python" and modified its configuration for better performance and output quality.
    
    * fix: enhance memory store initialization error handling in MainControlExtension
    
    - Added error handling during the initialization of the PowerMem memory store to log failures and allow the extension to continue without memory functionality if initialization fails.
    - Improved logging to provide detailed information about the initialization process and any exceptions encountered, enhancing debugging capabilities.
    
    * fix: update logging in PowerMemSdkUserMemoryStore for clarity
    
    - Changed log messages in the PowerMemSdkUserMemoryStore class to reflect the correct class name, enhancing clarity in log outputs.
    - This update ensures that logs accurately represent the source of memory operations, aiding in debugging and monitoring.
    
    * fix: improve logging and error handling in user profile retrieval methods
    
    - Enhanced logging in the `get_user_profile` and `get_user_profile_by_query` methods of both `PowerMemSdkMemoryStore` and `PowerMemSdkUserMemoryStore` classes to provide detailed information about the retrieval process and results.
    - Added error handling to log exceptions and tracebacks, improving the robustness of user profile retrieval and aiding in debugging efforts.
    
    * fix: simplify user profile retrieval in MainControlExtension
    
    - Removed the query parameter from the `get_user_profile` method call in MainControlExtension, allowing for a more straightforward retrieval of user memory summaries.
    - This change enhances the clarity and efficiency of the memory retrieval process.
    
    * fix: refine user profile retrieval parameters in MainControlExtension
    
    - Updated the `get_user_profile` method call in MainControlExtension to include user_id and agent_id parameters, enhancing the specificity of user memory retrieval.
    - This change improves the accuracy of the memory summary fetched for the user, ensuring personalized interactions.
    
    * fix: remove agent_id parameter from user profile retrieval in PowerMemSdkUserMemoryStore
    
    - Eliminated the agent_id parameter from the profile retrieval call in the PowerMemSdkUserMemoryStore class, streamlining the user profile fetching process.
    - This change enhances the clarity and efficiency of user memory interactions, aligning with recent updates to improve memory retrieval methods.
    
    * fix: update configuration settings in voice assistant README
    
    - Added timezone configuration for better localization support.
    - Renamed database configuration parameters for clarity and consistency.
    - Introduced OceanBase and PostgreSQL configuration settings for enhanced database integration.
    - Added optional graph store configuration to support knowledge graph functionality.
    - Improved overall documentation for better user guidance on setup and configuration.
    
    * fix: enable user memory functionality in voice assistant configuration
    
    - Updated configuration files to enable user memory and memorization features for the voice assistant.
    - Adjusted property.json and config.py files to reflect the changes, enhancing user profile management capabilities.
    - Improved README documentation to clarify the new settings and their implications for user interactions.
    
    * fix: update Dockerfile and manifest versions for voice assistant
    
    - Updated the Dockerfile to use the latest builder image version 0.7.12.
    - Changed the version specification for the ten_ai_base dependency in manifest.json files from "=0.7.22" to "0.7" to allow for more flexible version compatibility.
    
    * feat: add Docker support for voice assistant with PowerMem
    
    - Introduced a Dockerfile for building the voice assistant application.
    - Added a docker-compose.yml file to manage services, including the voice assistant and SeekDB database.
    - Created a .gitignore file to exclude data directory from version control.
    
    * feat: update configuration for voice assistant with PowerMem
    
    - Revised README files to enhance clarity on required and optional environment variables for the voice assistant.
    - Changed the default database provider from SQLite to OceanBase in configuration templates.
    - Removed unnecessary comments and default settings to streamline the configuration process.
    
    * feat: enhance README for voice assistant with Docker instructions
    
    - Added a new section in the README for Docker setup, including commands to start the container and access the application.
    - Improved clarity on the quick start process for users deploying the voice assistant.
    
    * docs: expand README for voice assistant with detailed setup instructions
    
    - Enhanced the README with a comprehensive table of contents for easier navigation.
    - Added detailed sections on prerequisites, configuration, and verification steps for both Docker and local development setups.
    - Improved clarity on required environment variables and provided examples for configuration.
    - Included troubleshooting tips and common issues to assist users in resolving potential setup problems.
    
    * feat: add Chinese documentation for voice assistant with PowerMem
    
    - Created a new README_CN.md file to provide comprehensive setup instructions and information in Chinese.
    - Updated the main README.md to include a link to the Chinese documentation for better accessibility for Chinese-speaking users.
    
    * refactor: remove Chinese README for voice assistant with PowerMem
    
    - Deleted the README_CN.md file as it is no longer needed.
    - Updated the main README.md to remove the link to the Chinese documentation, streamlining the content for English-speaking users.
    
    * docs: update README for voice assistant with PowerMem
    
    - Modified the "Quick Start" section header in the README to improve clarity by replacing the hyphen with three dashes.
    - Ensured consistency in formatting for better readability.
    
    * docs: add configuration guide for voice assistant with PowerMem
    
    - Introduced a new CONFIGURATION.md file detailing environment variables and configuration options for the voice assistant.
    - Updated README.md to include references to the new configuration guide, enhancing user support for setup and alternative providers.
    
    * chore: update configuration and documentation for voice assistant with PowerMem
    
    - Enhanced .gitignore to include .env file and data directory for better environment management.
    - Updated docker-compose.yml to reference the local .env file for environment variables.
    - Revised README.md to clarify steps for configuring environment variables and starting services, including new instructions for SeekDB container setup.
    - Adjusted Taskfile.yml to use the local .env file for dotenv configuration.
    
    * feat: update Dockerfile and requirements for voice assistant with PowerMem
    
    - Added a step in the Dockerfile to copy and install Python dependencies from requirements.txt.
    - Updated requirements.txt to specify a minimum version for the powermem package, ensuring compatibility.
    
    * docs: remove outdated environment configuration from README for voice assistant with PowerMem
    
    - Eliminated the detailed environment configuration section from README.md to streamline documentation.
    - Focused on providing a concise overview of configuration options, enhancing clarity for users.
    
    * docs: simplify service startup instructions in README for voice assistant with PowerMem
    
    - Reorganized the steps for starting services with Docker Compose to improve clarity.
    - Renumbered the steps to create a more logical flow, enhancing user experience.
    
    * feat: add .env.example file and update README for voice assistant with PowerMem
    
    - Introduced a new .env.example file containing environment variable configurations for the voice assistant.
    - Updated README.md to reflect changes in environment setup instructions, including a more streamlined process for copying the .env.example file.
    - Renumbered steps in the README to improve logical flow and clarity for users.
    
    * docs: update README to remove unnecessary environment variable URLs for voice assistant with PowerMem
    
    - Removed LLM_BASE_URL and EMBEDDING_BASE_URL from the README.md as they are no longer needed.
    - Streamlined the documentation to focus on essential configuration options, enhancing clarity for users.
    
    * docs: update .env.example and README for voice assistant with PowerMem
    
    - Added new options for LLM_PROVIDER and EMBEDDING_PROVIDER in both .env.example and README.md to include ollama, vllm, anthropic, deepseek, huggingface, and lmstudio.
    - Ensured consistency between the environment variable documentation and the actual configuration options available.
    
    * feat: enhance PowerMem integration in voice assistant example
    
    - Updated .env.example to use localhost for OCEANBASE_HOST.
    - Added PowerMem configuration options in property.json for vector store, LLM, and embedder.
    - Modified MainControlConfig to include powermem_config.
    - Updated memory store initialization to utilize PowerMem configuration.
    - Improved logging for configuration loading in extension.py.
    
    * chore: remove obsolete files and update Dockerfile for voice assistant with PowerMem
    
    - Deleted .gitignore and docker-compose.yml as they are no longer needed.
    - Updated Dockerfile to copy .env.example to .env and added seekdb as a build stage.
    - Modified Taskfile.docker.yml to include a new task for running the seekdb server in production.
    - Adjusted Taskfile.yml to reference the correct .env path.
    
    * refactor: remove .env.example and streamline README for voice assistant with PowerMem
    
    - Deleted obsolete .env.example file to simplify configuration.
    - Updated README.md to consolidate PowerMem configuration details and quick start instructions.
    - Enhanced clarity on environment variable setup and added new configuration options for memory management in the extension.
    - Improved documentation on memory functionality and user greeting generation.
    
    * docs: update README for voice assistant with PowerMem to include seekdb server setup
    
    - Added instructions to start the seekdb server as the first step in the quick start guide.
    - Renumbered subsequent steps for clarity and consistency.
    - Enhanced overall documentation for better user guidance.
    
    * docs: update README for voice assistant with PowerMem to include ROOT_PASSWORD environment variable
    
    - Added ROOT_PASSWORD environment variable to the seekdb server setup instructions for clarity.
    - Ensured consistency with previous updates to the README for better user guidance.
    
    * docs: refine README for voice assistant with PowerMem to enhance clarity on environment variables
    
    - Removed comments from the .env section for a cleaner presentation.
    - Ensured consistency in formatting for LLM and embedding provider sections.
    - Improved overall readability of the configuration instructions.
    
    * docs: remove CONFIGURATION.md for voice assistant with PowerMem
    
    - Deleted the outdated configuration guide to streamline documentation.
    - Consolidated environment variable and configuration details into the README for improved clarity and accessibility.
    
    ---------
    
    Co-authored-by: Ethan Zhang <[email protected]>
    HuXin0817 and plutoless authored Dec 18, 2025
    Configuration menu
    Copy the full SHA
    7b9f070 View commit details
    Browse the repository at this point in the history

Commits on Dec 19, 2025

  1. fix: coveralls remove container for all test jobs (#1878)

    * chore: calculate coverage in debug mode
    
    * Revert "chore: calculate coverage in debug mode"
    
    This reverts commit f68a031.
    
    * Reapply "chore: calculate coverage in debug mode"
    
    This reverts commit bc27f2c.
    
    * fix: remove container for test jobs
    
    * fix: add C++ toolchain, go builder, sanitizer support, nodejs env
    
    * fix: compiler version incompatible
    
    * Revert "fix: compiler version incompatible"
    
    This reverts commit 23f5c3f.
    
    * fix: set PATH so that clang-21 is find earlier than older versions
    
    * fix: uninstall older versions of clang
    
    * Revert "fix: set PATH so that clang-21 is find earlier than older versions"
    
    This reverts commit b66e56c.
    
    * fix: uninstall old clang first then install clang21
    
    * fix: supplement test jobs deps according to tools Dockerfile
    
    * fix: install libasan5 for all jobs and remove unecessary deps
    
    * chore: refine codes and output clang version before every test
    
    * fix: go back to clang 18 to detect __lsan_do_leak_check
    
    * Revert "fix: go back to clang 18 to detect __lsan_do_leak_check"
    
    This reverts commit d247818.
    
    * fix: upgrade libasan5 to libasan8 to match clang 21
    
    * fix: install libclang-rt-21-dev
    
    * Revert "fix: install libclang-rt-21-dev"
    
    This reverts commit 39b96e0.
    
    * fix: ten_enable_go_app_leak_check
    
    * chore: uninstall useless dep libasan8
    
    * chore: refine codes and uninstall unecessary dep clang-tool-21
    FaithfulinLOVE authored Dec 19, 2025
    Configuration menu
    Copy the full SHA
    c12353f View commit details
    Browse the repository at this point in the history
  2. docs: Update database name in README for PowerMem (#1898)

    * init voice-assistant-with-PowerMem
    
    * refactor: replace Memu memory store with PowerMem integration
    
    - Updated memory store implementation to use PowerMemSdkMemoryStore.
    - Simplified initialization by removing self-hosting options.
    - Enhanced logging for memory operations and error handling.
    - Updated requirements to include powermem instead of memu-py.
    
    * refactor: update voice assistant configuration for Azure integration
    
    - Replaced Deepgram ASR and ElevenLabs TTS with Azure ASR and TTS services.
    - Updated property keys and parameters to align with Azure's requirements.
    - Removed unused fields such as agent_name and user_name from configuration.
    - Simplified memorization logic by eliminating user_name parameter from memory functions.
    
    * refactor: update voice assistant to use PowerMem and enhance documentation
    
    - Added .gitignore to exclude tenapp/data/ directory.
    - Updated Dockerfile to reference the new voice assistant with PowerMem.
    - Renamed memory-related attributes in extension.py for clarity.
    - Revised README files to reflect the transition from MemU to PowerMem, including updated features and installation instructions.
    
    * feat: enhance voice assistant with personalized greetings and memory integration
    
    - Updated greeting message to reflect memory capabilities.
    - Implemented personalized greeting generation based on user memories.
    - Adjusted memorization logic to occur every five rounds instead of two.
    - Added error handling and logging for personalized greeting generation.
    
    * feat: implement personalized greeting handling in voice assistant
    
    - Added state management for greeting generation in MainControlExtension.
    - Enhanced logic to generate and log personalized greetings based on user memories.
    - Updated response handling to manage final and non-final LLM responses during greeting generation.
    - Ensured default greetings are used when personalized greetings are not available.
    
    * refactor: simplify memorization logic in voice assistant
    
    - Updated comment to clarify that memorization occurs every five rounds if enabled.
    - Removed redundant condition from the comment for better readability.
    
    * fix: improve personalized greeting handling in MainControlExtension
    
    - Ensured personalized greetings are set only if the config is available.
    - Streamlined the logic for sending TTS and transcript messages based on greeting availability.
    - Enhanced logging for cases when no personalized greeting is generated.
    
    * refactor: streamline memory retrieval methods in MainControlExtension
    
    - Removed user_id parameter from memory retrieval functions for simplification.
    - Updated calls to memory retrieval methods to align with the new signature.
    - Enhanced code clarity by reducing unnecessary parameters in related memory functions.
    
    * chore: update manifest-lock and property files for voice assistant
    
    - Updated versions and hashes for several dependencies in manifest-lock.json to the latest releases.
    - Added language parameter to Azure STT configuration in property.json for improved multilingual support.
    - Enhanced TTS configuration by specifying the default synthesis language in property.json.
    
    * refactor: comment out memory loading in MainControlExtension
    
    - Commented out the call to _load_memory_to_context() for potential debugging or future implementation considerations.
    - Maintained existing functionality while allowing for easier testing of other components.
    
    * refactor: update memory handling in MainControlExtension and PowerMemSdkMemoryStore
    
    - Removed the MemoryStore base class and its associated methods, simplifying the PowerMemSdkMemoryStore implementation.
    - Updated MainControlExtension to directly use PowerMemSdkMemoryStore for memory operations.
    - Enhanced the context message format for related memory retrieval to improve user interaction.
    - Streamlined memory retrieval logic by optimizing response handling and removing unnecessary parameters.
    
    * refactor: enhance memory handling in MainControlExtension and PowerMemSdkMemoryStore
    
    - Introduced a new method to memorize conversations in MainControlExtension, improving memory integration.
    - Renamed memory store methods for clarity, changing 'memorize' to 'add' and 'retrieve_related_clustered_categories' to 'search'.
    - Removed unused memory summary parsing methods to streamline the codebase and improve maintainability.
    
    * refactor: remove unused memory methods in MainControlExtension and update logging in PowerMemSdkMemoryStore
    
    - Commented out the memory loading method in MainControlExtension to streamline functionality.
    - Removed the call to _memorize_conversation() to enhance clarity and maintainability.
    - Updated logging in PowerMemSdkMemoryStore to reflect method name change from 'memorize' to 'add' for better understanding.
    
    * feat: enhance voice assistant with PowerMem memory management
    
    - Added comprehensive PowerMem configuration options to the main README, detailing database, LLM, and embedding settings.
    - Updated the extension README to reflect the integration of PowerMem, highlighting features like conversation memory, semantic search, and personalized greetings.
    - Included installation instructions and environment configuration guidelines for seamless setup.
    - Enhanced memory management workflow and error handling to improve user experience and functionality.
    
    * fix: update memorization frequency in voice assistant
    
    - Changed the memorization logic to save conversation to PowerMem every 2 rounds instead of 5, enhancing memory retention.
    - Updated README documentation to reflect the new memorization frequency and its implications for memory management.
    
    * feat: integrate templates for context messages and personalized greetings in voice assistant
    
    - Replaced hardcoded context message and greeting prompt with template constants for improved maintainability and readability.
    - Introduced CONTEXT_MESSAGE_WITH_MEMORY_TEMPLATE and PERSONALIZED_GREETING_TEMPLATE to streamline message formatting and enhance code clarity.
    
    * fix: refine memorization logic in MainControlExtension
    
    - Updated the memorization condition to check the difference between the current turn ID and the last memory update turn ID, ensuring conversations are memorized every two rounds when enabled.
    - Added a new attribute to track the last memory update turn ID for improved memory management.
    
    * feat: enhance memory management in voice assistant
    
    - Introduced configurable memory saving rules, allowing the assistant to save conversations based on a specified number of turns or after a period of inactivity.
    - Updated the configuration to include `memory_save_interval_turns` and `memory_idle_timeout_seconds` for improved flexibility in memory management.
    - Enhanced the README documentation to reflect these new features and their usage, ensuring users can easily configure memory settings.
    
    * refactor: improve memory store abstraction in voice assistant
    
    - Introduced a new MemoryStore base class to enhance the memory management structure.
    - Updated MainControlExtension to utilize MemoryStore instead of directly using PowerMemSdkMemoryStore.
    - Renamed parameters in memory search methods for consistency and clarity, changing 'category_query' to 'query'.
    - Revised README documentation to reflect changes in memory retrieval parameters and class structure.
    
    * feat: update personalized greeting template in voice assistant
    
    - Enhanced the PERSONALIZED_GREETING_TEMPLATE to include a condition for responding in the most commonly used language of the user's location/region if such information is available in the memory summary.
    - This change aims to improve user engagement by making greetings more contextually relevant and personalized.
    
    * feat: refine personalized greeting template in voice assistant
    
    - Updated the PERSONALIZED_GREETING_TEMPLATE to emphasize the assistant's friendly and helpful nature, enhancing user interaction.
    - This change aims to create a more engaging and contextually relevant greeting experience for users.
    
    * fix: correct typographical errors in prompt templates for voice assistant
    
    - Updated the CONTEXT_MESSAGE_WITH_MEMORY_TEMPLATE and PERSONALIZED_GREETING_TEMPLATE to fix typographical inconsistencies, ensuring proper use of apostrophes.
    - This change enhances the clarity and professionalism of the prompt strings used in the extension.
    
    * feat: add user memory management to voice assistant
    
    - Introduced `enable_user_memory` configuration option to control user-specific memory functionality.
    - Updated `MainControlExtension` to initialize the appropriate memory store based on the new configuration.
    - Added `PowerMemSdkUserMemoryStore` class for handling user-specific memory operations.
    - Revised documentation to include the new configuration parameter and its implications for memory management.
    
    * refactor: update type hinting for conversation parameter in memory store classes
    
    - Changed type hint for the `conversation` parameter from `List[dict]` to `list[dict]` in the `add` method across all memory store classes for consistency with Python's type hinting conventions.
    - This change improves code clarity and aligns with modern Python practices.
    
    * docs: enhance README documentation for voice assistant with PowerMem
    
    - Updated README files to include links to the PowerMem repository, improving accessibility to relevant resources.
    - Clarified the description of PowerMem's memory management capabilities in the context of the voice assistant, enhancing user understanding of its features.
    
    * feat: add user memory configuration options to manifest
    
    - Introduced new configuration options in the manifest.json for user memory management, including `enable_user_memory`, `memory_save_interval_turns`, and `memory_idle_timeout_seconds`.
    - These additions enhance the flexibility and control over user-specific memory functionalities in the voice assistant.
    
    * feat: implement user profile retrieval in memory store
    
    - Added a new abstract method `get_user_profile` to the MemoryStore class for fetching user profiles.
    - Implemented the `get_user_profile` method in the PowerMemSdkMemoryStore class to retrieve and format user profile information.
    - Updated the MainControlExtension to utilize the new method for accessing user memory summaries, enhancing the assistant's ability to provide personalized interactions.
    
    * fix: correct user memory initialization logic in MainControlExtension
    
    - Updated the condition for initializing the memory store in MainControlExtension to ensure that the PowerMemSdkMemoryStore is used when user memory is disabled, aligning with the intended configuration behavior.
    - This change improves the accuracy of memory management based on user settings.
    
    * chore: remove .gitignore file for voice assistant with PowerMem
    
    - Deleted the .gitignore file from the voice assistant example directory, which previously excluded the 'tenapp/data/' directory. This change simplifies the project structure by removing unnecessary files.
    
    * fix: update language configuration in voice assistant property file
    
    - Modified the language parameter in the property.json file to specify only "en-US", removing "zh-CN". This change streamlines language support for the voice assistant, ensuring it operates with a single language setting.
    
    * fix: update dependencies and configuration in voice assistant files
    
    - Downgraded versions and updated hashes for several dependencies in manifest-lock.json to ensure compatibility.
    - Changed the STT addon from "azure_asr_python" to "deepgram_asr_python" and updated its parameters in property.json for improved speech recognition.
    - Switched the TTS addon from "azure_tts_python" to "elevenlabs_tts2_python" and modified its configuration for better performance and output quality.
    
    * fix: enhance memory store initialization error handling in MainControlExtension
    
    - Added error handling during the initialization of the PowerMem memory store to log failures and allow the extension to continue without memory functionality if initialization fails.
    - Improved logging to provide detailed information about the initialization process and any exceptions encountered, enhancing debugging capabilities.
    
    * fix: update logging in PowerMemSdkUserMemoryStore for clarity
    
    - Changed log messages in the PowerMemSdkUserMemoryStore class to reflect the correct class name, enhancing clarity in log outputs.
    - This update ensures that logs accurately represent the source of memory operations, aiding in debugging and monitoring.
    
    * fix: improve logging and error handling in user profile retrieval methods
    
    - Enhanced logging in the `get_user_profile` and `get_user_profile_by_query` methods of both `PowerMemSdkMemoryStore` and `PowerMemSdkUserMemoryStore` classes to provide detailed information about the retrieval process and results.
    - Added error handling to log exceptions and tracebacks, improving the robustness of user profile retrieval and aiding in debugging efforts.
    
    * fix: simplify user profile retrieval in MainControlExtension
    
    - Removed the query parameter from the `get_user_profile` method call in MainControlExtension, allowing for a more straightforward retrieval of user memory summaries.
    - This change enhances the clarity and efficiency of the memory retrieval process.
    
    * fix: refine user profile retrieval parameters in MainControlExtension
    
    - Updated the `get_user_profile` method call in MainControlExtension to include user_id and agent_id parameters, enhancing the specificity of user memory retrieval.
    - This change improves the accuracy of the memory summary fetched for the user, ensuring personalized interactions.
    
    * fix: remove agent_id parameter from user profile retrieval in PowerMemSdkUserMemoryStore
    
    - Eliminated the agent_id parameter from the profile retrieval call in the PowerMemSdkUserMemoryStore class, streamlining the user profile fetching process.
    - This change enhances the clarity and efficiency of user memory interactions, aligning with recent updates to improve memory retrieval methods.
    
    * fix: update configuration settings in voice assistant README
    
    - Added timezone configuration for better localization support.
    - Renamed database configuration parameters for clarity and consistency.
    - Introduced OceanBase and PostgreSQL configuration settings for enhanced database integration.
    - Added optional graph store configuration to support knowledge graph functionality.
    - Improved overall documentation for better user guidance on setup and configuration.
    
    * fix: enable user memory functionality in voice assistant configuration
    
    - Updated configuration files to enable user memory and memorization features for the voice assistant.
    - Adjusted property.json and config.py files to reflect the changes, enhancing user profile management capabilities.
    - Improved README documentation to clarify the new settings and their implications for user interactions.
    
    * fix: update Dockerfile and manifest versions for voice assistant
    
    - Updated the Dockerfile to use the latest builder image version 0.7.12.
    - Changed the version specification for the ten_ai_base dependency in manifest.json files from "=0.7.22" to "0.7" to allow for more flexible version compatibility.
    
    * feat: add Docker support for voice assistant with PowerMem
    
    - Introduced a Dockerfile for building the voice assistant application.
    - Added a docker-compose.yml file to manage services, including the voice assistant and SeekDB database.
    - Created a .gitignore file to exclude data directory from version control.
    
    * feat: update configuration for voice assistant with PowerMem
    
    - Revised README files to enhance clarity on required and optional environment variables for the voice assistant.
    - Changed the default database provider from SQLite to OceanBase in configuration templates.
    - Removed unnecessary comments and default settings to streamline the configuration process.
    
    * feat: enhance README for voice assistant with Docker instructions
    
    - Added a new section in the README for Docker setup, including commands to start the container and access the application.
    - Improved clarity on the quick start process for users deploying the voice assistant.
    
    * docs: expand README for voice assistant with detailed setup instructions
    
    - Enhanced the README with a comprehensive table of contents for easier navigation.
    - Added detailed sections on prerequisites, configuration, and verification steps for both Docker and local development setups.
    - Improved clarity on required environment variables and provided examples for configuration.
    - Included troubleshooting tips and common issues to assist users in resolving potential setup problems.
    
    * feat: add Chinese documentation for voice assistant with PowerMem
    
    - Created a new README_CN.md file to provide comprehensive setup instructions and information in Chinese.
    - Updated the main README.md to include a link to the Chinese documentation for better accessibility for Chinese-speaking users.
    
    * refactor: remove Chinese README for voice assistant with PowerMem
    
    - Deleted the README_CN.md file as it is no longer needed.
    - Updated the main README.md to remove the link to the Chinese documentation, streamlining the content for English-speaking users.
    
    * docs: update README for voice assistant with PowerMem
    
    - Modified the "Quick Start" section header in the README to improve clarity by replacing the hyphen with three dashes.
    - Ensured consistency in formatting for better readability.
    
    * docs: add configuration guide for voice assistant with PowerMem
    
    - Introduced a new CONFIGURATION.md file detailing environment variables and configuration options for the voice assistant.
    - Updated README.md to include references to the new configuration guide, enhancing user support for setup and alternative providers.
    
    * chore: update configuration and documentation for voice assistant with PowerMem
    
    - Enhanced .gitignore to include .env file and data directory for better environment management.
    - Updated docker-compose.yml to reference the local .env file for environment variables.
    - Revised README.md to clarify steps for configuring environment variables and starting services, including new instructions for SeekDB container setup.
    - Adjusted Taskfile.yml to use the local .env file for dotenv configuration.
    
    * feat: update Dockerfile and requirements for voice assistant with PowerMem
    
    - Added a step in the Dockerfile to copy and install Python dependencies from requirements.txt.
    - Updated requirements.txt to specify a minimum version for the powermem package, ensuring compatibility.
    
    * docs: remove outdated environment configuration from README for voice assistant with PowerMem
    
    - Eliminated the detailed environment configuration section from README.md to streamline documentation.
    - Focused on providing a concise overview of configuration options, enhancing clarity for users.
    
    * docs: simplify service startup instructions in README for voice assistant with PowerMem
    
    - Reorganized the steps for starting services with Docker Compose to improve clarity.
    - Renumbered the steps to create a more logical flow, enhancing user experience.
    
    * feat: add .env.example file and update README for voice assistant with PowerMem
    
    - Introduced a new .env.example file containing environment variable configurations for the voice assistant.
    - Updated README.md to reflect changes in environment setup instructions, including a more streamlined process for copying the .env.example file.
    - Renumbered steps in the README to improve logical flow and clarity for users.
    
    * docs: update README to remove unnecessary environment variable URLs for voice assistant with PowerMem
    
    - Removed LLM_BASE_URL and EMBEDDING_BASE_URL from the README.md as they are no longer needed.
    - Streamlined the documentation to focus on essential configuration options, enhancing clarity for users.
    
    * docs: update .env.example and README for voice assistant with PowerMem
    
    - Added new options for LLM_PROVIDER and EMBEDDING_PROVIDER in both .env.example and README.md to include ollama, vllm, anthropic, deepseek, huggingface, and lmstudio.
    - Ensured consistency between the environment variable documentation and the actual configuration options available.
    
    * feat: enhance PowerMem integration in voice assistant example
    
    - Updated .env.example to use localhost for OCEANBASE_HOST.
    - Added PowerMem configuration options in property.json for vector store, LLM, and embedder.
    - Modified MainControlConfig to include powermem_config.
    - Updated memory store initialization to utilize PowerMem configuration.
    - Improved logging for configuration loading in extension.py.
    
    * chore: remove obsolete files and update Dockerfile for voice assistant with PowerMem
    
    - Deleted .gitignore and docker-compose.yml as they are no longer needed.
    - Updated Dockerfile to copy .env.example to .env and added seekdb as a build stage.
    - Modified Taskfile.docker.yml to include a new task for running the seekdb server in production.
    - Adjusted Taskfile.yml to reference the correct .env path.
    
    * refactor: remove .env.example and streamline README for voice assistant with PowerMem
    
    - Deleted obsolete .env.example file to simplify configuration.
    - Updated README.md to consolidate PowerMem configuration details and quick start instructions.
    - Enhanced clarity on environment variable setup and added new configuration options for memory management in the extension.
    - Improved documentation on memory functionality and user greeting generation.
    
    * docs: update README for voice assistant with PowerMem to include seekdb server setup
    
    - Added instructions to start the seekdb server as the first step in the quick start guide.
    - Renumbered subsequent steps for clarity and consistency.
    - Enhanced overall documentation for better user guidance.
    
    * docs: update README for voice assistant with PowerMem to include ROOT_PASSWORD environment variable
    
    - Added ROOT_PASSWORD environment variable to the seekdb server setup instructions for clarity.
    - Ensured consistency with previous updates to the README for better user guidance.
    
    * docs: refine README for voice assistant with PowerMem to enhance clarity on environment variables
    
    - Removed comments from the .env section for a cleaner presentation.
    - Ensured consistency in formatting for LLM and embedding provider sections.
    - Improved overall readability of the configuration instructions.
    
    * docs: remove CONFIGURATION.md for voice assistant with PowerMem
    
    - Deleted the outdated configuration guide to streamline documentation.
    - Consolidated environment variable and configuration details into the README for improved clarity and accessibility.
    
    * docs: Update database name in README for PowerMem
    
    ---------
    
    Co-authored-by: Ethan Zhang <[email protected]>
    HuXin0817 and plutoless authored Dec 19, 2025
    Configuration menu
    Copy the full SHA
    a012120 View commit details
    Browse the repository at this point in the history
  3. fix: correct audio start_ms handling (#1901)

    * fix: calculate start time for ASR transcript
    
    * fix: version update for sarvam asr
    nitin4real authored Dec 19, 2025
    Configuration menu
    Copy the full SHA
    cd90ec2 View commit details
    Browse the repository at this point in the history

Commits on Dec 21, 2025

  1. feat: support tman install --locked & support tracing tman (#1888)

    * feat: support tman install --locked
    
    * feat: add more test cases
    
    * fix: refine code
    
    * fix: revert changes
    
    * feat: support tracing in tman
    
    * feat: add more tracing point in tman
    
    * chore: add more debug info
    
    * chore: add more debug info
    
    * fix: refine codes
    
    * fix: move stack size setting from runtime to build time
    
    ---------
    
    Co-authored-by: Hu Yueh-Wei <[email protected]>
    sunxilin and halajohn authored Dec 21, 2025
    Configuration menu
    Copy the full SHA
    d511a91 View commit details
    Browse the repository at this point in the history
  2. feat: support opentelemetry (#1862)

    * feat: support opentelemetry
    
    * fix: refine code
    
    * feat: add metrics for lifecycle timecost
    
    * fix: refine code
    
    * fix: add metric for cmd processing time cost
    
    * fix: refine code
    
    * fix: refine code
    
    * fix: refine code
    
    * feat: add telemetry deployment configs
    
    * fix: refine code
    
    * fix: refine code
    
    * fix: refine codes
    
    * fix: refine codes
    
    * fix: refine codes
    
    * fix: merge host and port to endpoint in prometheus config
    
    * fix: refine code
    
    * fix: refine code
    
    ---------
    
    Co-authored-by: Hu Yueh-Wei <[email protected]>
    sunxilin and halajohn authored Dec 21, 2025
    Configuration menu
    Copy the full SHA
    8706f20 View commit details
    Browse the repository at this point in the history
  3. refactor: update from_utf8_lossy to String::from_utf8_lossy in PtyMes…

    …sage formatting (#1902)
    
    - Replaced the deprecated `from_utf8_lossy` function with `String::from_utf8_lossy` for improved clarity and consistency in the `PtyMessage` display implementation.
    - This change enhances code readability and aligns with current Rust best practices.
    halajohn authored Dec 21, 2025
    Configuration menu
    Copy the full SHA
    bf699ef View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    90942eb View commit details
    Browse the repository at this point in the history
Loading