"Critical failure" error in chat
"Critical failure" error in chat
This error appears in the chat when Second Brain encounters an unhandled exception. The most common cause is a connection problem to the Gemini Proxy Balancer.Check the following:
- Is
GEMINI_PROXY_URLset correctly in your.envfile? It must point to a running instance of the Gemini Proxy Balancer. - Is the proxy service actually running and reachable from the machine running Second Brain?
ConnectionError or HTTP status codes like 429 or 503.If you see 429 or 503: your proxy is hitting Gemini API rate limits. The Gemini Proxy Balancer rotates keys automatically, but if all configured keys are exhausted the proxy will reject requests. Add more API keys to your proxy to resolve this.Vault not found / no files appear
Vault not found / no files appear
Second Brain reads your vault path from the
OBSIDIAN_VAULT_PATH environment variable (or from the path you opened in the Vault Launcher).Check the following:OBSIDIAN_VAULT_PATHmust point to a folder that actually exists on disk.- The path must be absolute, not relative. For example,
/Users/you/Notesis correct;./Notesis not. - On Docker or Railway deployments, the path must be inside the container’s mounted volume. Use
/app/obsidian-vaultsas the path and mount your local vault folder there.
Agent produces no vault output (notes not saved)
Agent produces no vault output (notes not saved)
Second Brain checks whether the Builder produced any vault write directives after each step. If none are found but the task was expected to write to the vault, the app automatically requests the Builder to re-emit its output in the correct format. You will see the re-emit attempt appear in the chat.If notes are still not saved after the re-emit:
- Rephrase your request to be more explicit, for example:
Create a markdown note called Project Overview.md with the following content: ... - Check that the vault folder is writable by the user running Second Brain.
Patch conflict in audit log
Patch conflict in audit log
A
conflict status in the Audit Log means the Builder attempted to patch a file using # patch_vault_file:, but the target lines were not found in the current version of the file. This happens when the file was edited externally (directly in Obsidian, for example) after the task was planned but before the patch was applied.Solution: re-run your request. The agents will re-read the current vault state before planning a new patch, so the target lines will match.App won't start / Streamlit error on launch
App won't start / Streamlit error on launch
Check the following:
- All Python dependencies must be installed: run
pip install -r requirements.txt. - Python 3.12 or newer is required. Check your version with
python --version. GEMINI_PROXY_URLandOBSIDIAN_VAULT_PATHmust be set before launching. Either add them to a.envfile in the project root or export them as environment variables before runningstreamlit run src/interfaces/streamlit/ui.py.
Manager returns invalid JSON error
Manager returns invalid JSON error
The Manager agent is configured to respond with JSON. If the model returns a malformed response, Second Brain automatically retries once with a stricter format instruction.If the retry also fails, the task is aborted and the loop exits. Try submitting your request again — transient model formatting errors are common and usually don’t repeat.If this happens repeatedly, check that your
GEMINI_MODELS list in .env contains valid Gemini model IDs. An unrecognized model ID can cause the proxy to return error responses that the Manager cannot parse.Browse Local tab does not open a dialog
Browse Local tab does not open a dialog
The Browse Local tab opens a native file picker dialog, which requires a graphical desktop environment.On headless servers (Railway, Docker without a display server, or remote SSH sessions), the dialog cannot open and the button will appear to do nothing.Alternatives:
- Use the Recent Vaults tab to select a vault that was previously registered.
- Set
OBSIDIAN_VAULT_PATHdirectly in your.envfile before launching, so the vault is loaded automatically on startup.