Commit Graph

14 Commits

Author SHA1 Message Date
Asklv
a7b3d67ecb chore(agent): document Tavily-first behavior for web_search
Signed-off-by: Asklv <boironic@gmail.com>
2026-02-18 19:16:00 +08:00
Bin Meng
22886cf0f2 chore: avoid hardcoding file paths via MIMI_SPIFFS_BASE
Use MIMI_SPIFFS_BASE to centralize file path definitions, making the
base path configurable instead of hardcoded.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2026-02-26 11:37:34 +08:00
crispyberry
c06f706ffd chore: remove dead code and fix unsafe patterns
- Remove unused context_build_messages() (superseded by direct cJSON in agent_loop)
- Remove unused llm_chat() and its helper extract_text_* functions (superseded by llm_chat_tools)
- Remove ota_manager.c from build (never called)
- Remove config_screen.c stub from build (no-op module)
- Remove unused PWR_KEY_State, Button_GPIO_Get_Level; drop config_screen dependency from button_driver
- Fix incorrect type cast in tool_get_time.c (char[64] cast to char**)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 17:11:15 +08:00
Bo
5d92917a0b feat: update mimi tips in tg.
Signed-off-by: Bo <boironic@gmail.com>
2026-02-18 17:16:00 +08:00
Bo
cba7444b26 fix: fix telegram sent error in cron task.
Signed-off-by: Bo <boironic@gmail.com>
2026-02-18 17:16:00 +08:00
crispyberry
31a88b53c0 feat: add skills system with weather, daily-briefing, and skill-creator
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 01:06:16 +08:00
crispyberry
ebff0ccb04 feat: add heartbeat service for periodic task checking
Adds a heartbeat timer that reads /spiffs/config/HEARTBEAT.md every 30
minutes and sends a prompt to the agent if actionable tasks are found.
Skips empty lines, headers, and completed checkboxes. Includes a
heartbeat_trigger CLI command for manual testing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 01:23:13 +08:00
crispyberry
dbab65bd47 feat: add cron scheduled task service with tool_use integration
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 01:02:33 +08:00
crispyberry
1242119bb8 feat: strengthen system prompt memory guidance for proactive persistence
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:43:13 +08:00
crispyberry
43ded65713 feat: randomize working indicator phrase before each API call
Move working indicator into ReAct loop so it fires before every
llm_chat_tools call (including tool-use iterations), and randomly
select from 5 cute phrases using esp_random().

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 18:36:51 +08:00
crispyberry
31b15aa1f9 feat: add file tools (read/write/edit/list_dir) for agent memory writes
Enable the agent to persist memories by adding 4 SPIFFS file tools
(read_file, write_file, edit_file, list_dir) with path validation,
and update the system prompt with memory guidelines pointing to
/spiffs/memory/MEMORY.md and daily notes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 17:54:52 +08:00
crispyberry
0ed0febcd0 feat: add working indicator and get_current_time to system prompt
Send "mimi😗is working..." to user when processing starts.
List get_current_time in system prompt available tools so the agent
knows to call it for time/date queries. Remove auto time fetch from
system prompt builder — agent calls the tool on demand.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 15:54:23 +08:00
crispyberry
0e1da79b74 feat: add ReAct agent loop and build-time config (mimi_secrets.h)
Rewrite agent_loop.c with ReAct tool use loop: LLM call → tool
execution → repeat until end_turn (max 10 iterations). Add tool
guidance to system prompt. Add set_search_key CLI command.

Add mimi_secrets.h for build-time credentials with highest priority
over NVS/CLI values. All modules (wifi, telegram, llm, proxy,
web_search) check build-time secrets first, fall back to NVS.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 00:37:43 +08:00
crispyberry
0c517b734f feat: add agent loop and context builder
Agent loop runs on Core 1: pops inbound messages, builds system
prompt from bootstrap files + memory, calls Claude API, saves
session, pushes response to outbound queue. PSRAM-allocated buffers.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 18:55:38 +08:00