Pi Agent
K-Dense-AI/scientific-agent-skills
Builds with and operates Pi, the minimal terminal coding harness.
Installation and configuration skill for Agent Brain document search system.
$ npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install SpillwaveSolutions/agent-brain configuring-agent-brain --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/SpillwaveSolutions/agent-brain.git skills-src && mkdir -p .claude/skills && cp -r skills-src/agent-brain-plugin/skills/configuring-agent-brain .claude/skills/configuring-agent-brain && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "configuring-agent-brain" agent skill from https://github.com/SpillwaveSolutions/agent-brain/tree/main/agent-brain-plugin/skills/configuring-agent-brain into .claude/skills/configuring-agent-brain/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configuring-agent-brain", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/SpillwaveSolutions/agent-brain/tree/main/agent-brain-plugin/skills/configuring-agent-brainType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install SpillwaveSolutions/agent-brain configuring-agent-brain --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/SpillwaveSolutions/agent-brain.git skills-src && mkdir -p .agents/skills && cp -r skills-src/agent-brain-plugin/skills/configuring-agent-brain .agents/skills/configuring-agent-brain && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "configuring-agent-brain" agent skill from https://github.com/SpillwaveSolutions/agent-brain/tree/main/agent-brain-plugin/skills/configuring-agent-brain into .agents/skills/configuring-agent-brain/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configuring-agent-brain", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install SpillwaveSolutions/agent-brain configuring-agent-brain --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/SpillwaveSolutions/agent-brain.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/agent-brain-plugin/skills/configuring-agent-brain .cursor/skills/configuring-agent-brain && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "configuring-agent-brain" agent skill from https://github.com/SpillwaveSolutions/agent-brain/tree/main/agent-brain-plugin/skills/configuring-agent-brain into .cursor/skills/configuring-agent-brain/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configuring-agent-brain", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/SpillwaveSolutions/agent-brain.git --path agent-brain-plugin/skills/configuring-agent-brain--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install SpillwaveSolutions/agent-brain configuring-agent-brain --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/SpillwaveSolutions/agent-brain.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/agent-brain-plugin/skills/configuring-agent-brain .gemini/skills/configuring-agent-brain && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "configuring-agent-brain" agent skill from https://github.com/SpillwaveSolutions/agent-brain/tree/main/agent-brain-plugin/skills/configuring-agent-brain into .gemini/skills/configuring-agent-brain/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configuring-agent-brain", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install SpillwaveSolutions/agent-brain configuring-agent-brainInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/SpillwaveSolutions/agent-brain.git skills-src && mkdir -p .github/skills && cp -r skills-src/agent-brain-plugin/skills/configuring-agent-brain .github/skills/configuring-agent-brain && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "configuring-agent-brain" agent skill from https://github.com/SpillwaveSolutions/agent-brain/tree/main/agent-brain-plugin/skills/configuring-agent-brain into .github/skills/configuring-agent-brain/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configuring-agent-brain", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install SpillwaveSolutions/agent-brain configuring-agent-brain --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/SpillwaveSolutions/agent-brain.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/agent-brain-plugin/skills/configuring-agent-brain .opencode/skills/configuring-agent-brain && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "configuring-agent-brain" agent skill from https://github.com/SpillwaveSolutions/agent-brain/tree/main/agent-brain-plugin/skills/configuring-agent-brain into .opencode/skills/configuring-agent-brain/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "configuring-agent-brain", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
configuring-agent-brainInstallation and configuration skill for Agent Brain document search system.
Configuring Agent Brain is an agent skill from SpillwaveSolutions/agent-brain. Installation and configuration skill for Agent Brain document search system. Use when asked to "install agent brain", "setup agent brain", "configure agent brain", "setting up document search", "installing agent-brain packages", "configuring API keys", "initializing project for search", "troubleshooting agent brain", "pip install agent-brain", "agent brain not working", "agent brain setup error", "configure embeddings provider", "setup ollama for agent brain", "agent brain environment variables", "install agent…
Its SKILL.md is about 7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files (for example `references/configuration-guide.md`, `references/installation-guide.md` and `references/mcp-setup-guide.md`).
It sits in AI & LLM Engineering, covering Embeddings, LLM inference and serving and MCP servers. It works with Model Context Protocol and Ollama. The repository describes itself as: Local-first RAG memory for AI agents: hybrid + GraphRAG search, MCP server with OAuth 2.1, plugin for Claude Code / OpenCode / Codex. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 8339623. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pipollamapythoncurlbrewpipxuvjqFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.openai.comAlso links to:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
OPENAI_API_KEYANTHROPIC_API_KEYGOOGLE_API_KEYCOHERE_API_KEYXAI_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Configuring Agent Brain loads about 7k tokens when it runs, and up to ~21k if it reads all its reference files. Until then it costs about 185 tokens; SKILL.md has 2,160 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
Add the same values to your `.env` if you prefer file-based config.# DO NOT use sudo with pipsudo pip install agent-brain-rag # Wrong - creates permission issuesSet variables in shell or `.env` file:allowed-tools: Bash, ReadAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from SpillwaveSolutions/agent-brain at commit 8339623, republished under its MIT licence (© SpillwaveSolutions). 2,160 words, ~7,008 tokens.
.claude/skills/configuring-agent-brain/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Installation and configuration for Agent Brain document search with pluggable providers.
Agent Brain supports multiple AI coding runtimes from a single canonical plugin source:
| Runtime | Install Command |
|---|---|
| Claude Code | agent-brain install-agent --agent claude |
| OpenCode | agent-brain install-agent --agent opencode |
| Codex (+ AGENTS.md) | agent-brain install-agent --agent codex |
| Cursor | agent-brain install-agent --agent cursor |
| Grok Build | agent-brain install-agent --agent grok |
| Any skill runtime | agent-brain install-agent --agent skill-runtime --dir <path> |
All runtimes share the same .agent-brain/ data directory for indexes, configuration, and server state. The install-agent command converts the canonical plugin format into each runtime's native format automatically.
Use --global for user-level installation, or --dry-run to preview files before writing.
# 1. Install packages
pip install agent-brain-rag agent-brain-cli
# 2. Install and start Ollama
brew install ollama # macOS
ollama serve &
ollama pull nomic-embed-text
ollama pull llama3.2
# 3. Configure for Ollama
export EMBEDDING_PROVIDER=ollama
export EMBEDDING_MODEL=nomic-embed-text
export SUMMARIZATION_PROVIDER=ollama
export SUMMARIZATION_MODEL=llama3.2
# 4. Initialize and start
agent-brain init
agent-brain start
agent-brain status# 1. Install packages
pip install agent-brain-rag agent-brain-cli
# 2. Configure API keys
export OPENAI_API_KEY="sk-proj-..." # For embeddings
export ANTHROPIC_API_KEY="sk-ant-..." # For summarization (optional)
# 3. Initialize and start
agent-brain init
agent-brain start
agent-brain statusValidation: After each step, verify success before proceeding to the next.
The canonical entry point for a complete guided setup is /agent-brain-setup. It asks all configuration questions interactively before running any CLI commands, then writes a comprehensive config.yaml.
The wizard asks the following questions in sequence:
| Step | Question | Config Keys Set |
|---|---|---|
| 2 | Embedding Provider | embedding.provider, embedding.model, optionally embedding.base_url, embedding.api_key or embedding.api_key_env |
| 3 | Summarization Provider | summarization.provider, summarization.model, optionally summarization.base_url, summarization.api_key or summarization.api_key_env |
| 4 | Storage Backend | storage.backend (chroma or postgres) |
| 5 | GraphRAG | graphrag.enabled, graphrag.store_type, graphrag.use_code_metadata |
| 6 | Default Query Mode | Written as YAML comment: # query.default_mode |
| Option | Provider Key | Model | Notes |
|---|---|---|---|
| Ollama (FREE, local) | ollama | nomic-embed-text | Requires Ollama running locally |
| OpenAI | openai | text-embedding-3-large | Requires OPENAI_API_KEY |
| Cohere | cohere | embed-multilingual-v3.0 | Requires COHERE_API_KEY, multi-language support |
| Google Gemini | gemini | text-embedding-004 | Requires GOOGLE_API_KEY |
| Custom | (user-specified) | (user-specified) | Specify provider, model, and base_url |
| Option | Provider Key | Model | Notes |
|---|---|---|---|
| Ollama (FREE, local) | ollama | llama3.2 | Requires Ollama running locally |
| Ollama + Mistral (FREE, local) | ollama | mistral-small3.2 | Better summarization quality |
| Anthropic | anthropic | claude-haiku-4-5-20251001 | Requires ANTHROPIC_API_KEY |
| OpenAI | openai | gpt-4o-mini | Requires OPENAI_API_KEY |
| Google Gemini | gemini | gemini-2.0-flash | Requires GOOGLE_API_KEY |
| Grok (xAI) | grok | grok-3-mini-fast | Requires XAI_API_KEY |
After answering all questions, the wizard writes a comprehensive config.yaml covering:
embedding.* — provider, model, api_key or api_key_env, optional base_urlsummarization.* — provider, model, api_key or api_key_env, optional base_urlstorage.* — backend selection and (if PostgreSQL) connection settingsgraphrag.* — enabled flag, store_type, use_code_metadata# query.default_mode as a YAML comment (informational)The file is chmod 600 automatically. A security warning is shown: never commit config.yaml to git.
PostgreSQL + BM25: When storage.backend: "postgres" is selected, the
disk-based BM25 index is replaced by PostgreSQL's built-in full-text search
(tsvector + websearch_to_tsquery). The --mode bm25 command works
identically from the user's perspective. Language is configurable via
storage.postgres.language (default: "english").
/agent-brain-config handles provider-specific details when called standalone (without the full wizard). It includes storage backend selection, indexing exclude patterns, and Ollama status checks.
python --versionRecommended installer: use pipx (isolated global) or uv to install the CLI —
pipx install agent-brain-clioruv tool install agent-brain-cli. The barepipcommands below work everywhere and are kept for simplicity, but pipx/uv avoid dependency clashes. See Installation Guide for the full comparison.
pip install agent-brain-rag agent-brain-cliVerify installation succeeded:
agent-brain --versionExpected: Version number displayed (e.g., 10.3.0 or later)
pip install "agent-brain-rag[graphrag]" agent-brain-cli
# Kuzu backend (optional):
pip install "agent-brain-rag[graphrag-kuzu]" agent-brain-cliexport ENABLE_GRAPH_INDEX=true # Master switch (default: false)
export GRAPH_STORE_TYPE=simple # or kuzu
export GRAPH_INDEX_PATH=./graph_index
export GRAPH_USE_CODE_METADATA=true # Extract from AST metadata
export GRAPH_USE_LLM_EXTRACTION=true # Use LLM extractor when available
export GRAPH_MAX_TRIPLETS_PER_CHUNK=10 # Triplet cap per chunk
export GRAPH_TRAVERSAL_DEPTH=2 # Default traversal depth
export GRAPH_EXTRACTION_MODEL=claude-haiku-4-5Add the same values to your .env if you prefer file-based config.
python -m venv .venv
source .venv/bin/activate # macOS/Linux
pip install agent-brain-rag agent-brain-cli| Problem | Solution |
|---|---|
pip not found | Run python -m ensurepip |
| Permission denied | Use pip install --user or virtual env |
| Module not found after install | Restart terminal or activate venv |
| Wrong Python version | Use python3.10 -m pip install |
Counter-example - Wrong approach:
# DO NOT use sudo with pip
sudo pip install agent-brain-rag # Wrong - creates permission issuesCorrect approach:
pip install --user agent-brain-rag # Correct - user installation
# OR use virtual environmentAgent Brain ships an MCP (Model Context Protocol) server that exposes the running instance to MCP-aware clients — Claude Desktop, Claude Code, Cursor, Windsurf, the Claude Agent SDK, and LangChain DeepAgents.
pip install agent-brain-ag-mcpPyPI name vs. command: the package publishes as
agent-brain-ag-mcp(renamed in v10.1.2 — the original name hit PyPI's typosquatting filter), but the installed console script is stillagent-brain-mcpand the import path is stillagent_brain_mcp.
install-agent can register the MCP server for you while installing the plugin —
no hand-editing of .mcp.json:
# Install the plugin AND register the agent-brain MCP server for Claude Code
agent-brain install-agent --agent claude --with-mcp
# ...or for OpenCode (writes the project-root opencode.json)
agent-brain install-agent --agent opencode --with-mcp
# ...or for Codex (writes ~/.codex/config.toml, TOML [mcp_servers.agent-brain])
agent-brain install-agent --agent codex --with-mcp
# ...or for Cursor (writes .cursor/mcp.json)
agent-brain install-agent --agent cursor --with-mcp
# ...or for Grok Build (writes .mcp.json — Grok loads Claude plugins)
agent-brain install-agent --agent grok --with-mcp
# Preview without writing anything
agent-brain install-agent --agent claude --with-mcp --dry-run
# Register with client-side OAuth enabled (for a remote, OAuth-protected server)
agent-brain install-agent --agent claude --with-mcp --mcp-auth oauthWhat --with-mcp does:
agent-brain entry into the runtime's MCP config, preserving any other
MCP servers and keys — Claude Code's .mcp.json / ~/.claude.json (mcpServers), OpenCode's
project-root opencode.json / ~/.config/opencode/opencode.json (mcp), Codex's
$CODEX_HOME/config.toml (default ~/.codex/config.toml, [mcp_servers.agent-brain] TOML),
Cursor's .cursor/mcp.json / ~/.cursor/mcp.json, or Grok Build's Claude path.AGENT_BRAIN_STATE_DIR to the project's absolute .agent-brain path so the
server is discoverable regardless of the client's working directory.unchanged when the entry already matches.| Flag | Values | Default | Purpose |
|---|---|---|---|
--with-mcp | — | off | Register the MCP server during install |
--mcp-backend | auto/uds/http | auto | How the MCP server reaches agent-brain-serve |
--mcp-auth | none/oauth | none | Write AGENT_BRAIN_MCP_AUTH=oauth for remote OAuth servers |
Auto-registration targets Claude Code, OpenCode, Codex, Cursor, and Grok Build. For other MCP hosts, register manually with the JSON block below (the flag will print a note and skip). Codex has no project-level MCP config, so both scopes write the single user-level
config.toml. Conforming Agent Plugins 1.0 clients also pick upagent-brain-plugin/mcp.jsonautomatically.
Add the server to your client's MCP config (Claude Desktop / Cursor / Windsurf use the
same mcpServers shape):
{
"mcpServers": {
"agent-brain": {
"command": "agent-brain-mcp",
"args": ["--backend", "auto"],
"env": { "AGENT_BRAIN_STATE_DIR": "/abs/path/.agent-brain" }
}
}
}--backend {auto,uds,http} selects how the MCP server reaches agent-brain-serve
(auto prefers the Unix domain socket, falls back to HTTP). This is orthogonal to
the MCP listen transport.agent-brain-mcp --transport http --host 127.0.0.1 --port 8765
(loopback only — public binds are rejected).For a local/loopback server you need no auth — leave the defaults. To run Agent Brain remotely (CI box, shared dev server, hosted), the MCP server supports OAuth 2.1 on the Streamable HTTP transport. Auth is off by default; opt in with env vars:
| Variable | Side | Values | Notes |
|---|---|---|---|
AGENT_BRAIN_AUTH | server | none (default) / basic / oauth | Server-side auth mode |
AGENT_BRAIN_OAUTH_RESOURCE | server | absolute URI (scheme, no fragment) | Required only when AGENT_BRAIN_AUTH=oauth (RFC 8707 resource id) |
AGENT_BRAIN_MCP_AUTH | client | unset (off) / oauth | Opts the MCP client into the OAuth dance |
The client side persists tokens at <state_dir>/mcp-oauth-tokens.json (chmod 0o600) and
refreshes silently. install-agent --with-mcp --mcp-auth oauth writes the client toggle for
you. Per-tool scopes (agent-brain:read|index|admin|subscribe) enforce least privilege, with
default-deny on the mutating tools.
# stdio server starts and exposes tools/resources/prompts
agent-brain-mcp --help
# Or drive it from the CLI's mcp transport
agent-brain --transport mcp resources listThe current surface is 16 tools, 5 corpus:// resources, and 6 prompts. See the MCP
package README, docs/MCP_USER_GUIDE.md, and this skill's
MCP Setup Guide for the full reference.
Agent Brain supports pluggable providers with two configuration methods.
Create a config.yaml file in one of these locations:
.agent-brain/config.yaml~/.agent-brain/config.yaml~/.config/agent-brain/config.yaml./config.yaml or ./agent-brain.yaml# ~/.agent-brain/config.yaml
server:
url: "http://127.0.0.1:8000"
port: 8000
project:
state_dir: null # null = use default (.agent-brain)
embedding:
provider: "openai"
model: "text-embedding-3-large"
api_key: "sk-proj-..." # Direct key, OR use api_key_env
# api_key_env: "OPENAI_API_KEY" # Read from env var
summarization:
provider: "anthropic"
model: "claude-haiku-4-5-20251001"
api_key: "sk-ant-..." # Direct key, OR use api_key_env
# api_key_env: "ANTHROPIC_API_KEY"Config file search order: AGENT_BRAIN_CONFIG env → current dir → project dir → user home
Security: If storing API keys in config file:
chmod 600 ~/.agent-brain/config.yaml.gitignore: config.yamlSet variables in shell or .env file:
export EMBEDDING_PROVIDER=openai
export EMBEDDING_MODEL=text-embedding-3-large
export SUMMARIZATION_PROVIDER=anthropic
export SUMMARIZATION_MODEL=claude-haiku-4-5-20251001
export OPENAI_API_KEY="sk-proj-..."
export ANTHROPIC_API_KEY="sk-ant-..."Precedence order: CLI options → environment variables → config file → defaults
Best for privacy, air-gapped environments:
Config file (~/.agent-brain/config.yaml):
embedding:
provider: "ollama"
model: "nomic-embed-text"
base_url: "http://localhost:11434/v1"
summarization:
provider: "ollama"
model: "llama3.2"
base_url: "http://localhost:11434/v1"Or environment variables:
export EMBEDDING_PROVIDER=ollama
export EMBEDDING_MODEL=nomic-embed-text
export SUMMARIZATION_PROVIDER=ollama
export SUMMARIZATION_MODEL=llama3.2Prerequisite: Ollama must be installed and running with models pulled.
Config file:
embedding:
provider: "openai"
model: "text-embedding-3-large"
api_key: "sk-proj-..."
summarization:
provider: "anthropic"
model: "claude-haiku-4-5-20251001"
api_key: "sk-ant-..."Or environment variables:
export OPENAI_API_KEY="sk-proj-..."
export ANTHROPIC_API_KEY="sk-ant-..."embedding:
provider: "openai"
model: "text-embedding-3-large"
api_key: "sk-proj-..."
summarization:
provider: "ollama"
model: "llama3.2"GraphRAG enables graph-based entity-relationship extraction for advanced query modes.
YAML config keys (config.yaml):
graphrag:
enabled: false # Master switch (default: false)
store_type: "simple" # "simple" (in-memory) or "kuzu" (persistent disk)
use_code_metadata: true # Extract entities from AST metadata (imports, classes)
langextract_provider: openai # Optional override — see below
langextract_model: gpt-4o-mini # Optional override — see belowCorresponding environment variables:
| Env Var | Config Key | Default | Description |
|---|---|---|---|
ENABLE_GRAPH_INDEX | graphrag.enabled | false | Master switch |
GRAPH_STORE_TYPE | graphrag.store_type | simple | simple or kuzu |
GRAPH_USE_CODE_METADATA | graphrag.use_code_metadata | true | AST metadata extraction |
GRAPH_LANGEXTRACT_PROVIDER | graphrag.langextract_provider | (reuses summarization) | Override the provider used for doc-chunk extraction |
GRAPH_LANGEXTRACT_MODEL | graphrag.langextract_model | (reuses summarization) | Override the model used for doc-chunk extraction |
Anthropic / Claude summarization users: langextract's provider registry does
not recognise Claude model ids. If summarization.provider: anthropic is set
and no langextract override is given, Agent Brain auto-routes langextract to
openai/gpt-4o-mini (you'll see an INFO log). Set langextract_provider /
langextract_model explicitly to use a different model — Agent Brain validates
the choice at startup and raises a clear ConfigurationError if the model is
not registered with langextract.
Note: GraphRAG requires the --include-code flag during indexing to extract code structure:
agent-brain index ./src --include-codeFor Kuzu (persistent), install the optional extra first:
pip install "agent-brain-rag[graphrag-kuzu]"Agent Brain supports the following query modes, selectable per request with --mode:
| Mode | Description | Requirements |
|---|---|---|
hybrid | Vector similarity + BM25 keyword (recommended default) | None |
semantic | Pure vector similarity search | None |
bm25 | Keyword-only search (fast, no embedding needed) | None |
graph | Entity relationship graph traversal | GraphRAG + ChromaDB backend |
multi | Fuses vector + BM25 + graph with RRF | GraphRAG + ChromaDB backend |
Note: graph and multi modes are not available with PostgreSQL backend.
GraphRAG uses an in-memory/Kuzu graph store that is separate from the vector
store — it currently integrates only with ChromaDB.
Per-request override:
agent-brain query "authentication flow" --mode hybrid
agent-brain query "class relationships" --mode graph # GraphRAG + ChromaDB required
agent-brain query "how do services work" --mode multi # GraphRAG + ChromaDB requiredNote: There is no global query.default_mode config key yet. Mode is per-request only. The setup wizard writes the selected default mode as a YAML comment for documentation purposes.
agent-brain verifyCounter-example - Common mistake:
# DO NOT put keys in shell command history
OPENAI_API_KEY="sk-proj-abc123" agent-brain start # Wrong - key in historyCorrect approaches:
# Use config file (keys are in file, not command line)
agent-brain start
# Or use environment from shell profile
export OPENAI_API_KEY="sk-proj-..." # In ~/.bashrc
agent-brain startNavigate to the project root and run:
agent-brain initVerify initialization succeeded:
ls .agent-brain/config.jsonExpected: File exists
agent-brain startVerify server started:
agent-brain statusExpected output:
Server Status: healthy
Port: 49321
Documents: 0
Mode: projectagent-brain index ./docsVerify indexing succeeded:
agent-brain statusExpected: Documents count > 0
agent-brain query "test query" --mode hybridExpected: Search results or "No results" (not an error)
Run each command and verify expected output:
agent-brain --version shows version number (10.3.0+)echo ${OPENAI_API_KEY:+SET} shows "SET" (if using OpenAI)ls .agent-brain/config.json file existsagent-brain status shows "healthy"agent-brain status shows document count > 0agent-brain query "test" returns results or "no matches"agent-brain folders list shows indexed foldersagent-brain types list shows file type presetsagent-brain jobs shows job queue (empty or with history)echo ${ENABLE_GRAPH_INDEX} shows "true"agent-brain status --json | jq '.graph_index' shows graph index infoagent-brain query "class relationships" --mode graph returns results or graceful erroragent-brain query "how it works" --mode multi returns fused resultsagent-brain verifyThis runs all checks and reports any issues.
After indexing documents, verify the pipeline is working:
# Monitor indexing job
agent-brain jobs --watch
# Check job completed successfully
agent-brain jobs <job_id>
# Verify incremental indexing works
agent-brain index ./docs # Should show eviction summary with unchanged files
# Validate injection scripts before use
agent-brain inject ./docs --script enrich.py --dry-runThis skill focuses on installation and configuration. Do NOT use for:
using-agent-brain skill insteadusing-agent-brain skill insteadusing-agent-brain skill insteadusing-agent-brain skill insteadScope boundary: Once Agent Brain is installed, configured, initialized, and verified healthy, switch to the using-agent-brain skill for search operations.
pip install --force-reinstall agent-brain-rag agent-brain-cli# Test OpenAI key
curl -s https://api.openai.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY" | head -c 100Expected: JSON response (not error)
# Check for stale state
rm -f .agent-brain/runtime.json
rm -f .agent-brain/lock.json
agent-brain start# Verify Ollama is running
curl http://localhost:11434/api/tagsExpected: JSON with model list
agent-brain status # Check document countIf count is 0, index documents:
agent-brain index ./docs| Variable | Required | Default | Description |
|---|---|---|---|
AGENT_BRAIN_CONFIG | No | - | Path to config.yaml file |
AGENT_BRAIN_URL | No | http://127.0.0.1:8000 | Server URL for CLI |
AGENT_BRAIN_STATE_DIR | No | .agent-brain | State directory path |
EMBEDDING_PROVIDER | No | openai | Provider: openai, cohere, ollama |
EMBEDDING_MODEL | No | text-embedding-3-large | Model name |
SUMMARIZATION_PROVIDER | No | anthropic | Provider: anthropic, openai, gemini, grok, ollama |
SUMMARIZATION_MODEL | No | claude-haiku-4-5-20251001 | Model name |
OPENAI_API_KEY | Conditional | - | Required if using OpenAI |
ANTHROPIC_API_KEY | Conditional | - | Required if using Anthropic |
GOOGLE_API_KEY | Conditional | - | Required if using Gemini |
XAI_API_KEY | Conditional | - | Required if using Grok |
COHERE_API_KEY | Conditional | - | Required if using Cohere |
EMBEDDING_CACHE_MAX_MEM_ENTRIES | No | 1000 | Max in-memory LRU entries (~12 MB at 3072 dims per 1000 entries) |
EMBEDDING_CACHE_MAX_DISK_MB | No | 500 | Max disk size for the SQLite embedding cache |
Note: Environment variables override config file values. Config file values override defaults.
The embedding cache is automatic — no setup required. Embeddings are cached on first compute and reused on subsequent reindexes of unchanged content, significantly reducing OpenAI API costs when using file watching or frequent reindexing.
The two cache env vars allow tuning for specific environments:
EMBEDDING_CACHE_MAX_MEM_ENTRIES (e.g., 5000) to keep more embeddings
in the fast in-memory tier and reduce SQLite lookupsEMBEDDING_CACHE_MAX_MEM_ENTRIES (e.g., 200) to
limit RAM usage; the disk cache still provides cost savings even with a small memory tierEMBEDDING_CACHE_MAX_DISK_MB (e.g., 100) to cap the SQLite
cache database size; oldest entries are evicted when the limit is reachedThe disk cache uses SQLite with WAL mode for safe concurrent access during indexing operations.
The query cache is automatic — no setup required. Identical queries within the TTL window return instantly without hitting storage.
graph and multi modes bypass the cache — each call reaches storage
for fresh results.QUERY_CACHE_TTL — cache TTL in seconds (default: 300, i.e., 5 minutes)QUERY_CACHE_MAX_SIZE — max cached query results (default: 256)| Guide | Description |
|---|---|
| Configuration Guide | Config file format and locations |
| Installation Guide | Detailed installation options |
| Provider Configuration | All provider settings |
| MCP Setup Guide | MCP server install, registration, OAuth, per-runtime config |
| Troubleshooting Guide | Extended issue resolution |
© SpillwaveSolutions, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (references) in agent-brain-plugin/skills/configuring-agent-brain of SpillwaveSolutions/agent-brain.
Open the folder on GitHubat commit 8339623
Configuring Agent Brain next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Configuring Agent Brain this skillSpillwaveSolutions/agent-brain | 120 | — | ~7k | Automated safety check: Notes | MIT | |
| Pi AgentK-Dense-AI/scientific-agent-skills | 48k | 1 repos | ~2.1k | Automated safety check: Pass | MIT | |
| Agent Frameworkjihadkhawaja/Egroo | 178 | — | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| Cookbook Aimldatabricks-solutions/databricks-apps-cookbook | 183 | — | ~1.7k | Automated safety check: Pass | Custom licence | |
| Ollama MCP Tool for NanoClawnanocoai/nanoclaw | 31k | 1 repos | ~3k | Automated safety check: Notes | MIT | |
| Facturasgustavoeenriquez/MakerAi | 212 | — | ~127 | Automated safety check: Pass | MIT |
K-Dense-AI/scientific-agent-skills
Builds with and operates Pi, the minimal terminal coding harness.
jihadkhawaja/Egroo
Build, extend, and debug AI agents in Egroo using the Microsoft Agent Framework (C .NET).
databricks-solutions/databricks-apps-cookbook
Invoke ML models, run vector search, and connect to MCP servers from Databricks Apps.
nanocoai/nanoclaw
Adds an MCP server so the NanoClaw container agent can send prompts to local Ollama models, with optional tools to manage the model library.
gustavoeenriquez/MakerAi
Úsalo cuando el usuario pida redactar una factura, una cuenta de cobro o una nota de cobro.
artokun/comfyui-mcp
Run the ComfyUI agent locally for FREE with no subscription, no API key, and fully offline, using our gemma4 models fine-tuned on the comfyui-mcp tool suite via Ollama.
SpillwaveSolutions/agent-brain
Archive completed milestone and prepare for next version. An agent skill from SpillwaveSolutions/agent-brain.
SpillwaveSolutions/agent-brain
Modern Python coaching covering language foundations through advanced production patterns.
SpillwaveSolutions/agent-brain
Systematic debugging with persistent state across context resets
SpillwaveSolutions/agent-brain
Review and promote backlog items to active milestone. An agent skill from SpillwaveSolutions/agent-brain.
SpillwaveSolutions/agent-brain
Manage persistent context threads for cross-session work. An agent skill from SpillwaveSolutions/agent-brain.
SpillwaveSolutions/agent-brain
Capture a forward-looking idea with trigger conditions — surfaces automatically at the right milestone
Works with
Categories
Installation and configuration skill for Agent Brain document search system. Configuring Agent Brain is an agent skill from SpillwaveSolutions/agent-brain. Installation and configuration skill for Agent Brain document search system.
Configuring Agent Brain fits situations like: asked to install agent brain; setup agent brain; configure agent brain; setting up document search.
Run `npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a claude-code`. Or copy the skill folder (agent-brain-plugin/skills/configuring-agent-brain in SpillwaveSolutions/agent-brain) into .claude/skills/configuring-agent-brain in your project. Claude Code loads it when a task matches its description.
Run `npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a codex`. Or copy the skill folder (agent-brain-plugin/skills/configuring-agent-brain in SpillwaveSolutions/agent-brain) into .agents/skills/configuring-agent-brain in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add SpillwaveSolutions/agent-brain --skill configuring-agent-brain -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/configuring-agent-brain, .gemini/skills/configuring-agent-brain, .github/skills/configuring-agent-brain and .opencode/skills/configuring-agent-brain in your project.
Going by SKILL.md and its folder, Configuring Agent Brain needs the command-line tools its instructions call (pip, ollama, python, curl, brew and pipx) and credentials named OPENAI_API_KEY, ANTHROPIC_API_KEY, GOOGLE_API_KEY and COHERE_API_KEY. Our summary lists: Python 3; A credential in OPENAI_API_KEY; A credential in ANTHROPIC_API_KEY. Its frontmatter pre-approves these tools: Bash, Read.
SKILL.md names 2 domains. In commands or code: api.openai.com; the agent is likely to contact it when it follows the instructions. As links in the text: github.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file; runs commands with sudo; pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Configuring Agent Brain is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 7k tokens (SKILL.md is roughly 28k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 14k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Configuring Agent Brain: Pi Agent (K-Dense-AI/scientific-agent-skills, 48k stars), Agent Framework (jihadkhawaja/Egroo, 178 stars), Cookbook Aiml (databricks-solutions/databricks-apps-cookbook, 183 stars) and Ollama MCP Tool for NanoClaw (nanocoai/nanoclaw, 31k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
SpillwaveSolutions (a GitHub organization) maintains it in SpillwaveSolutions/agent-brain, which has 120 GitHub stars. The repository holds 55 skills in this directory. The repository was last updated on September 19, 2026.
Source: SpillwaveSolutions/agent-brain on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.