feat: add memory store and session manager
MEMORY.md for long-term memory, daily YYYY-MM-DD.md notes. JSONL session files per chat_id with ring buffer history (max 20 messages). All persisted on SPIFFS. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
31
main/memory/memory_store.h
Normal file
31
main/memory/memory_store.h
Normal file
@@ -0,0 +1,31 @@
|
||||
#pragma once
|
||||
|
||||
#include "esp_err.h"
|
||||
#include <stddef.h>
|
||||
|
||||
/**
|
||||
* Initialize memory store. Ensures SPIFFS directories exist.
|
||||
*/
|
||||
esp_err_t memory_store_init(void);
|
||||
|
||||
/**
|
||||
* Read long-term memory (MEMORY.md) into buffer.
|
||||
* @return ESP_OK on success, ESP_ERR_NOT_FOUND if file missing
|
||||
*/
|
||||
esp_err_t memory_read_long_term(char *buf, size_t size);
|
||||
|
||||
/**
|
||||
* Write content to long-term memory (MEMORY.md).
|
||||
*/
|
||||
esp_err_t memory_write_long_term(const char *content);
|
||||
|
||||
/**
|
||||
* Append a note to today's daily memory file (YYYY-MM-DD.md).
|
||||
*/
|
||||
esp_err_t memory_append_today(const char *note);
|
||||
|
||||
/**
|
||||
* Read recent daily memories (last N days) into buffer.
|
||||
* @param days Number of days to look back (default 3)
|
||||
*/
|
||||
esp_err_t memory_read_recent(char *buf, size_t size, int days);
|
||||
Reference in New Issue
Block a user