Description
The CLI config wizard generates a graphrag: section in .agent-brain/config.yaml, but the server never reads it. As a result, users who configure GraphRAG via config.yaml (as documented) will find that graph indexing remains disabled with no warning or error.
Steps to Reproduce
-
Run agent-brain init or manually add a graphrag: section to .agent-brain/config.yaml: ```yaml graphrag:
enabled: true
store_type: simple
use_code_metadata: true
Start the server: agent-brain start --path .
Index a folder with code files.
Check graph status: GET /health/status
Expected Behavior
The server should read graphrag.enabled: true from config.yaml and enable graph indexing accordingly, consistent with how embedding: and summarization: sections are read from the same file.
Actual Behavior
graph_index.enabled is false in the health status response. The graphrag: section in config.yaml is completely ignored.
To enable graph indexing, users must set the environment variable manually:
ENABLE_GRAPH_INDEX=true agent-brain start --path .
or add it to a .env file in the project root — none of which is documented clearly.
Root Cause
provider_config.py reads config.yaml only for embedding: and summarization: keys. There is no code anywhere in agent_brain_server that reads the graphrag: section.
ENABLE_GRAPH_INDEX and related settings (GRAPH_INDEX_PATH, GRAPH_STORE_TYPE, etc.) are pydantic Settings fields that can only be set via environment variables or .env files — not via config.yaml.
Additional Issue
GRAPH_INDEX_PATH defaults to ./graph_index (relative to the server's working directory at startup) and is not overridden to the project state directory in start.py, unlike CHROMA_PERSIST_DIR and BM25_INDEX_PATH. This means graph data is persisted to an unpredictable location depending on where the server was launched from.
Workaround
Add to .env in the project root:
Code snippet
ENABLE_GRAPH_INDEX=true
GRAPH_INDEX_PATH=/absolute/path/to/project/.agent-brain/data/graph_index
Environment
agent-brain-cli version: 9.4.1
Python: 3.12.3
OS: Ubuntu (Linux 6.8.0)
Install method: pipx
Description
The CLI config wizard generates a
graphrag:section in.agent-brain/config.yaml, but the server never reads it. As a result, users who configure GraphRAG viaconfig.yaml(as documented) will find that graph indexing remains disabled with no warning or error.Steps to Reproduce
Run
agent-brain initor manually add agraphrag:section to.agent-brain/config.yaml: ```yaml graphrag:enabled: true
store_type: simple
use_code_metadata: true
Start the server: agent-brain start --path .
Index a folder with code files.
Check graph status: GET /health/status
Expected Behavior
The server should read graphrag.enabled: true from config.yaml and enable graph indexing accordingly, consistent with how embedding: and summarization: sections are read from the same file.
Actual Behavior
graph_index.enabled is false in the health status response. The graphrag: section in config.yaml is completely ignored.
To enable graph indexing, users must set the environment variable manually:
ENABLE_GRAPH_INDEX=true agent-brain start --path .
or add it to a .env file in the project root — none of which is documented clearly.
Root Cause
provider_config.py reads config.yaml only for embedding: and summarization: keys. There is no code anywhere in agent_brain_server that reads the graphrag: section.
ENABLE_GRAPH_INDEX and related settings (GRAPH_INDEX_PATH, GRAPH_STORE_TYPE, etc.) are pydantic Settings fields that can only be set via environment variables or .env files — not via config.yaml.
Additional Issue
GRAPH_INDEX_PATH defaults to ./graph_index (relative to the server's working directory at startup) and is not overridden to the project state directory in start.py, unlike CHROMA_PERSIST_DIR and BM25_INDEX_PATH. This means graph data is persisted to an unpredictable location depending on where the server was launched from.
Workaround
Add to .env in the project root:
Code snippet
ENABLE_GRAPH_INDEX=true
GRAPH_INDEX_PATH=/absolute/path/to/project/.agent-brain/data/graph_index
Environment