@marcfargas/brainiac

Persistent, searchable agent knowledge store for pi — learn, connect, recall

Package details

extension

Install @marcfargas/brainiac from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@marcfargas/brainiac
Package
@marcfargas/brainiac
Version
0.1.0
Published
Feb 21, 2026
Downloads
23/mo · 9/wk
Author
marcfargas
License
MIT
Types
extension
Size
40.5 KB
Dependencies
1 dependency · 1 peer
Pi manifest JSON
{
  "extensions": [
    "./src/index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

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