供快速掌握現況與後續可做項目;可隨開發更新。
- 定位:對話外殼(Web)+ 記憶系統(背版 + archival),Go 實作,預設為小模型(約 4B)設計。
- 優先級:① 上網檢索 ② 寫文檔/紀錄討論。
| 項目 | 說明 |
|---|---|
| 背版 | SOUL.md、MEMORY.md 載入與注入;靈魂置於 prompt 最前 |
| 四池一魂 | 短期(200)→濃縮 50 進長期;長期(100)→濃縮 5 進核心;核心(20)→濃縮 1 進靈魂;靈魂 SOUL.md 融合重寫;答覆注入 當前1+靈魂1+核心2+長期3+短期5 |
| 近期對話上下文 | 最近 10 輪「使用者→助手」一併送入模型,避免雞同鴨講 |
| 網搜 | Brave / Tavily、關鍵字萃取、結果注入;上網開關(每則都搜) |
| 讀檔 | 「讀/讀取 路徑」、路徑不鎖工作區、~ 與引號支援 |
| 讀檔格式 | PDF、.txt、.md、.docx、.xlsx、.odt、.ods(單檔約 28000 字上限) |
| 讀取網頁 | 訊息含 URL +「讀取網頁」等關鍵字或幾乎只有網址時,抓取頁面正文並注入附檔內容 |
| 寫檔 | 「寫/寫入 路徑 內容」、限工作區內、自動建目錄 |
| 設定 | .env、chatmery.tuning(可調模型、記憶條數、提煉門檻等) |
| 聊天後端 | 預設 Ollama;可設 CHATMERY_PROVIDER=openai 或 gemini + 對應 API key 改用雲端 API(按量計費、可省 context) |
| Web 殼 | cmd/chatmery-web:GET /chatmery/、POST /chatmery/api/chat(SSE)、GET api/model,web/ 靜態檔,CHATMERY_WEB_PORT(預設 1721) |
- 奇點專案:
/home/tanger/Projects/singularity_world(Go + web/ 靜態檔、WebSocket、port 1721 → https://sw.ygggt.com) - Chatmery Web 路徑:
sw.ygggt.com/chatmery— 同域下掛 Chatmery 的 Web 殼(Go 提供 API + 單頁,手機可用),為之後接回奇點的第一步靠攏。 - 接回方式(擇一):① Reverse proxy 將
/chatmery轉發至 Chatmery 獨立 process;② 奇點 main 掛http.Handle("/chatmery/", chatmeryHandler),Chatmery 以 library 或子服務提供 handler。 - 架構對齊:與奇點相同 — Go 後端 + 靜態前端(embed 或 web/),無 Node/React;Chatmery 提供
POST /chatmery/api/chat(SSE 串流)與GET /chatmery/(單頁)。
| 項目 | 說明 |
|---|---|
| 讀圖 | 圖片(.jpg、.png 等)目前不支援;可選:OCR(如 Tesseract)或視覺模型(Ollama 多模態/外部 API) |
| 搜尋後端 | 已支援 Brave、Tavily(需 API key)。DuckDuckGo 未實作,可選擴充(通常需 scraper) |
| 記憶服務化 | internal/memory 可抽出為獨立 HTTP API,供遊戲或 OpenClaw 呼叫 |
| 路徑 | 職責 |
|---|---|
cmd/chatmery-web |
Web 殼:/chatmery 靜態檔、/chatmery/api/chat(SSE),同 config/memory/llm/search |
web/ |
Chatmery Web UI:index.html、style.css、main.js(沿用奇點配色與 viewport,手機可用) |
internal/config |
環境變數與路徑(WORKSPACE、搜尋、embed 等) |
internal/memory |
背版、四池(tiers:short_term / long_term / core / current)、靈魂 SOUL.md、關鍵字檢索 |
internal/search |
關鍵字萃取、Brave / Tavily API |
internal/llm |
聊天 Provider 抽象(Ollama / OpenAI 相容 / Gemini)、ChatStream、Generate |
internal/embedding |
向量 embed Web API(OpenAI 相容 / Gemini);實作 memory.Embedder |
internal/ollama |
Ollama API 實作、本機 embedding |
internal/document |
讀檔擷取(PDF、txt、md、docx、xlsx、odt、ods) |
- 記憶階層—四池一魂提案(現行記憶架構)
- 記憶模式—設計對齊
- 記憶流程—概念定稿
- 對話記憶與背版—設計
- 對話記憶與背版—實作步驟與檔案流程
- 對話記憶系統—彙整與探討
- 網上常見的記憶機制—彙整
- 對話殼—OpenClaw 讀寫本地檔案與文檔
專案進度 — 可隨開發更新此檔