Избранное
braincore getbraincore.com
Local-first когнитивная память для AI coding agents. Attention, граф решений, право сказать я не знаю.
- Go 1.25
- SQLite
- MCP
- tree-sitter
- internal git
- pluggable LLM
Проблема
total-agent-memory — Python-сервис. Для исследовательского стека ОК, для бинаря, который хочется отдать друзьям — ужас. braincore — та же идея на Go: 21 MB stripped, pure Go, zero CGO, один артефакт.
Что внутри
- Memory pillars — episodic, skills, intents, workflow, reflection.
- Cognitive bridge — associations, аналогии (Dempster-Shafer fusion), противоречия, temporal queries.
- Code-graph — Go AST + tree-sitter + regex universal parser для 13+ языков.
- Agent runtime sandbox — read-only adapter и safe side-effect execution pipeline: агент сначала «сухим» прогоном проверяет эффекты, потом коммитит.
- Long-horizon goals — отдельный слой памяти для долгоживущих целей, а не только короткоживущих эпизодов.
- Pluggable LLM — None / Ollama / Anthropic / OpenAI / Groq / Gemini / DeepSeek / OpenRouter с auto-routing, переключение через конфиг.
Хранилище
Internal git versioning над JSON-снапшотами — source of truth. SQLite + FTS5 — derived speed-cache. braincore checkout HEAD~3 и видишь во что агент верил три сессии назад, без рассинхрона.
Ключевые механизмы
- Activation spreading —
concepts.Spread(seeds)ходит по unified graph (code edges + triples + decision-code refs) с настраиваемым decay, hops, threshold и per-relation весами. - Self-correcting facts —
kg_invalidate_fact+ auto valid_from/valid_to позволяют агенту менять мнение без потери истории. - Cross-project analogies —
analogize(query, exclude_project)через Jaccard + Trigram + FTS rank + triples overlap, fusion по Dempster-Shafer, возвращает belief-weighted результаты. - Self-improvement loops — повторяющиеся паттерны ошибок (≥3 occurrences) авто-промоутятся в behavioural rules.
- Self-update —
braincore updateс signed manifest и update feed, atomic rename, ed25519 verification.
Статус и цифры
Private beta, dogfooded daily. Бенч-baseline: R@5 = 0.95, p95 = 0.58 ms. Real-world milestone — 125 462 записи мигрированы из старого Python-стека в единую ~/.braincore/memory.db, 130+ проектов в shared store.
Уроки
- Бинарь, который кладётся в
~/bin, убирает 95 % трения для adoption. - Pure Go освобождает — каждый поход в CGO в итоге ловил меня позже.
- Память — не state. State — то, что у агента перед глазами. Память — то, о чём он знает что у него есть.