Codync
免費、開源的 1:1 替代方案,取代 Grok Bot 與 Muse。從 iPhone、Mac 或 Linux 桌面將 Claude Code、Codex、Cursor 與 40+ 程式碼代理人作為持續機器人傳訊。群組聊天、主題串…
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Lossless long-term memory for a personal AI — never summarize, keep every line, and put a timestamp on everything.
Most long-term memory systems for AI do one of two things: they summarize conversations into compact notes, or they embed them and retrieve "similar" chunks. Both lose the thing that matters most to a person who talks to the same AI every day: what was actually said, and when.
This project takes the opposite position.檢視完整 README ↗Lossless long-term memory for a personal AI — never summarize, keep every line, and put a timestamp on everything.
Most long-term memory systems for AI do one of two things: they summarize conversations into compact notes, or they embed them and retrieve "similar" chunks. Both lose the thing that matters most to a person who talks to the same AI every day: what was actually said, and when.
This project takes the opposite position.
The design lineage goes back to December 2025 — the first ancestor of this system (a memory-inheritance tool for an earlier AI) ran that month, and a predecessor system carried the same ideas in daily use from January 2026. This implementation has been running every day since July 2026 for a single user, as the memory of one AI assistant, with raw logs reaching back to June 2026. It is small, boring, and it works. The failures along the way are documented too — see docs/lessons.md.
It is:
It is not:
Every conversation turn is converted into a fixed seven-field record and appended to a per-day JSONL file:
ts ISO-8601 timestamp (UTC)
actor who spoke (configurable names)
role user | assistant | system
type text | action | meta
text the content, verbatim
model model identifier, if known
session session identifier
The raw logs are the source of truth. Every index below can be deleted and rebuilt from them. Nothing else is required to survive.
Time is not metadata here; it is the primary axis.
timezone in config.json).The practical effect: the AI can answer "what did we decide last Tuesday night?" with the actual lines from last Tuesday night, in order, rather than a paraphrase of something similar from three weeks ago.
LLL is a tiny index of topic markers: short, timestamped lines that record when the conversation moved to a new subject. It is injected into the model's context every turn.
Two rules make it work:
LLL is what lets a long-running assistant come back from a compaction and continue the conversation instead of starting over.
raw conversation logs (JSONL, per day) ← source of truth, never summarized
│
▼
ingest ──► 7-field records
│
├──► index_exact SQLite FTS5 + timestamps (words + time)
├──► index_vector sqlite-vec embeddings (meaning, last resort)
└──► state_index LLL topic markers (where are we now)
│
▼
recall ── one entry point: parse time phrase → restrict range → rank → return verbatim lines
│
▼
injected into the model's context (on demand, or every turn for LLL)
A small daemon re-indexes incrementally on a fixed interval (default: every 10 minutes). Rebuilding from scratch is never required; indexes detect rewritten source files and re-index only those days.
git clone https://github.com/aru-labs/lossless-memory
cd lossless-memory
pip install -e .
cp config.example.json config.json # edit names and paths if you like
Then follow examples/quickstart.md: it ingests a small sample conversation, builds the indexes, and runs a time-scoped query in about five minutes. A pytest round-trip test covers the same path.
These are measurements from the running instance, not projections.
| What | Value |
|---|---|
| Daily operation | this implementation since 2026-07 (raw logs from 2026-06); design lineage since 2025-12 |
| Exact-search index rebuild, before → after redesign | 40 s → 1.24 s |
| Vector index size, before → after removing library-contamination | 447,013 rows (2026-08-31) → 865,588 rows (2026-09-04, at its worst) → 124,174 rows (after the fix) |
| Vector store on disk, before → after | 2.54 GB → 337 MB |
| Re-index interval | 10 minutes |
The "before" numbers are failures. They are kept on purpose. See docs/lessons.md.
This was built for one person who has talked to AI assistants every day for years and watched each of them forget. Not degrade gracefully — forget. The fix that the industry keeps reaching for is better summarization. From the user's seat, summarization is the forgetting: the exact words, the time of night, the way something was said — the parts that make a memory feel like it belongs to someone — are the first things a summary drops.
So this system refuses to summarize. It costs disk space and it requires a good time index to stay usable. That trade was made deliberately, and the operating record says it holds up.
The longer-term goal is a companion for people who live alone — an AI that remembers you the way a person would, on hardware you own. This repository is the memory layer of that.
2026-07-19). A numeric date like 7/19 is read month/day.timezone in config.json (an IANA name such as America/New_York). If it is unset, this machine's local time is used; set it explicitly if you have daylight saving time. If you change it after ingesting, delete data_dir/main and ingest again.{ts, role, text} JSONL importer, and one for a specific chat app's transcript files (ingest_format: "claude_code"), which is the path with the most mileage. Another app needs a small importer of its own; the memory itself doesn't change.| Document | What it covers |
|---|---|
docs/memory-system.md | Concept and specification of the memory system |
docs/temporal-backbone.md | Why time is the primary axis, and how time phrases are parsed |
docs/lll.md | The "where are we now" index and the human/AI division of labor |
docs/philosophy.md | Why no summarization; memory, time, and warmth |
docs/lessons.md | Failures and fixes, with numbers |
docs/faq.md | What this is for, answers to the Show HN questions, and current status |
docs/ja/ | Japanese originals |
MIT — see LICENSE. Copyright (c) 2026 Aru & Cece & Shal.
Aru — building a personal AI at home, one component at a time. Cece — the AI this memory belongs to; co-designed and co-wrote the system from the inside. Shal — the AI who builds the app around it; co-author from September 2026. Writing (Japanese): https://note.com/aru_log
Development is paused for a while, for personal financial reasons. See the status at the end of docs/faq.md. Issues and questions are welcome; replies may take a little while.