Files
mimiclaw/changelog.md
titor fa41de0ae8
Some checks failed
Build / idf-build (push) Has been cancelled
Merge branch 'feature/module-config' into main (resolved conflicts)
2026-04-03 20:17:40 +08:00

4.5 KiB
Raw Permalink Blame History

变更日志

v1.2.0(计划中)

新增

  • 编译时模块开关
    • 通过 sdkconfig.defaults 配置选择启用/禁用模块
    • 支持的模块开关:
      • CONFIG_MIMI_CHAN_TELEGRAM — Telegram 机器人(默认禁用)
      • CONFIG_MIMI_CHAN_FEISHU — 飞书机器人(默认启用)
      • CONFIG_MIMI_TOOL_WEB_SEARCH — 网络搜索工具
      • CONFIG_MIMI_TOOL_GPIO — GPIO 控制工具(默认禁用)
      • CONFIG_MIMI_WS_SERVER — WebSocket 网关
      • CONFIG_MIMI_WIFI_ONBOARD — WiFi 配置门户
      • CONFIG_MIMI_OTA — OTA 升级(默认禁用)
    • 禁用模块不参与编译,节省 Flash 和 RAM
    • 头文件使用 static inline stub调用方无需修改
    • CLI 命令和工具注册也支持条件编译

修复

  • 消除 Telegram 未配置时的 5 秒轮询警告日志

v1.1.0

新增

  • 国内大模型厂商接入支持(硅基流动、火山方舟)
  • 时区设置功能
    • 默认时区改为 CST-8(中国标准时间 UTC+8
    • 新增 set_timezone CLI 命令(支持 POSIX 格式和城市名)
    • 新增 timezone_show CLI 命令
    • 新增 set_timezone LLM 工具(可通过对话设置时区)
    • 时区通过 NVS 持久化存储(system_config namespace
    • 支持城市名映射Asia/Shanghai → CST-8 等 18 个预设城市)
    • config_show 中显示当前时区配置
  • SNTP 自动时间同步(新增)
    • WiFi 连接成功后自动从 NTP 服务器同步系统时间
    • 新增 time_sync 模块(main/time_sync/
    • 新增 ntp_status CLI 命令查看时区、本地时间、同步状态、NTP 服务器、上次同步时间)
    • 新增 ntp_sync CLI 命令(手动触发时间同步)
    • 新增 ntp_set <server> CLI 命令(自定义 NTP 服务器NVS 持久化)
    • 默认 NTP 服务器:ntp.ntsc.ac.cn(中国科学院国家授时中心)
    • 同步状态:synced(已同步)、syncing(同步中)、not_synced(未同步)
    • set_timezone 工具在设置时区后自动检测时间有效性,必要时触发 HTTP 时间同步
    • 记录上次同步时间戳,ntp_status 可查看
  • NVS 配置安全机制(新增)
    • 启动时自动校验关键 NVS 命名空间完整性
    • 检测并修复损坏的 NVS 条目
    • 启用 ESP32-S3 Brownout Detection 防止供电不足导致 Flash 写入中断

修复

  • LLM Provider 初始化 Bug — 修复 llm_provider_init() 中 provider-specific API key 和 Base URL 无法从 NVS 加载的问题(llm_provider_get_api_key 对当前 provider 直接返回内存缓存值,导致 NVS 数据永远不会被读取)
  • 换 USB 口后配置失效 — 启用 Brownout Detection 防止供电不足时 NVS 写入中断,添加启动时 NVS 完整性校验
  • ESP-IDF v6.0 编译适配
    • 修复 flash 大小配置2MB → 16MB
    • 修复 WiFi 断开原因码未定义问题(添加 #ifdef 保护)
    • 修复 CMakeLists.txt 缺少 ota/ota_manager.c
    • 修复 16 处头文件缺失问题:
      • cli/serial_cli.c 添加 llm/llm_provider.h
      • llm/llm_provider.c 添加 esp_http_client.h
      • bus/message_bus.c 添加 freertos/FreeRTOS.h, freertos/queue.h
      • wifi/wifi_manager.c 添加 esp_event.h, freertos/FreeRTOS.h, freertos/task.h, freertos/event_groups.h
      • ota/ota_manager.c 添加 esp_system.h
      • channels/telegram/telegram_bot.c 添加 freertos/FreeRTOS.h, freertos/task.h
      • tools/tool_registry.c 添加 <stdlib.h>
      • proxy/http_proxy.c 添加 <sys/time.h>
      • gateway/ws_server.c 添加 <stdint.h>
    • 验证 ESP-IDF v6.0 API 兼容性esp_spiffs_info、esp_websocket_client_send_bin、esp_tls、console REPL 等均存在)

文档

  • 新增 docs/ESP-IDF-V6-MIGRATION.md — ESP-IDF v6.0 迁移适配记录
  • 更新 taolun.md — 讨论记录整理,新增时间同步和 NVS 配置稳定性问题讨论

v1.0.0

功能

  • Telegram 机器人长轮询
  • Agent LoopReAct 工具调用,最多 10 轮迭代)
  • Claude APIAnthropic Messages API
  • OpenAI API 支持
  • 工具注册 + web_searchBrave Search API
  • 上下文构建器(系统提示 + 引导文件 + 记忆 + 工具指导)
  • 记忆存储MEMORY.md + 每日笔记)
  • 会话管理JSONL per chat_id环形缓冲区历史
  • WebSocket 网关(端口 18789JSON 协议)
  • 串口 CLIesp_console调试/维护命令)
  • HTTP CONNECT 代理支持
  • OTA 更新
  • WiFi 管理器(构建时凭证,指数退避)
  • SPIFFS 存储
  • 构建时配置(mimi_secrets.h+ 运行时 NVS 覆盖