marcfargas-brainiac

内容来源:README.md(说明文档) · 原始地址 · 查看安装指南

原始内容

Brainiac

Persistent, searchable agent knowledge store for pi.

Agents learn one fact at a time, connect ideas together, and recall relevant knowledge automatically — before every turn.

Install

pi install npm:@marcfargas/brainiac

Or add directly to ~/.pi/agent/settings.json:

{
  "packages": ["npm:@marcfargas/brainiac"]
}

Requires pi ≥ 0.50.0 and better-sqlite3 (native module — may need npm rebuild after Node version upgrades).

Tools

Tool Description
brainiac_learn Store atomic facts/learnings (single or batch with auto-connections)
brainiac_recall FTS5 full-text search with bidirectional connections
brainiac_connect Link items to each other or external resources (files, URLs, etc.)
brainiac_feedback Report relevance of search results (explicit + implicit signals)

Usage

Once installed, Brainiac tools are available in every pi session. The model can use them directly:

User: remember that Odoo hr.contract ended contracts have state='close', not just date_end < today
Model: [calls brainiac_learn] → Learned #42

User: how do I check for ended Odoo contracts?
Model: [auto-search fires, injects #42 into context automatically]
       Based on my notes: ended contracts have state='close'...

User: find everything I know about Odoo contracts
Model: [calls brainiac_recall { query: "odoo contract" }] → #42: ...

Auto-Search

The killer feature. Before each agent turn, Brainiac automatically searches for relevant knowledge based on the user's message and injects it into the agent's context.

Toggle with /brainiac on or /brainiac off.

Privacy

Items can be marked private for multi-project setups. Configure per-project in .pi/brainiac.json:

{
  "defaults": {
    "private": true,
    "tags": ["my-project"]
  },
  "readPrivate": ["my-project", "related-project"]
}

Storage

Global SQLite database at ~/.pi/brainiac/brainiac.db. Uses FTS5 for full-text search with porter stemming. Vector search ready (Phase 2).

License

MIT