Skip to content

fix: align repo with MCP Split — register as_brain for Zero + update stale tests/docs#1

Merged
PatrickNoFilter merged 2 commits into
mainfrom
fix/mcp-split-zerobrain-tests
Jul 8, 2026
Merged

fix: align repo with MCP Split — register as_brain for Zero + update stale tests/docs#1
PatrickNoFilter merged 2 commits into
mainfrom
fix/mcp-split-zerobrain-tests

Conversation

@PatrickNoFilter

Copy link
Copy Markdown
Owner

Summary

The v0.7.3 MCP Split moved local-brain tools into eling.as_brain.mcp_server (as brain_*) and made eling.mcp_server Notion-only (5 eling_* tools). The repo was left out of sync with that split in three places.

Bug — Zero gets no brain (the whole point of the split)

cli.py install-zero only registered the eling server in Zero's config.json. Zero therefore never received the local as_brain memory server. Now it registers both servers (idempotent — only adds what's missing), so Zero actually gets its brain.

Stale tests

  • tests/test_think.py asserted eling_think existed in eling.mcp_server → now asserts brain_think in eling.as_brain.mcp_server.
  • tests/test_verify_on_stop.py asserted eling_verify → now brain_verify.

Stale docs

  • README architecture tree said mcp_server.py — 22 tools (unified) → now reflects split (Notion 5 + brain 20).
  • README verify-on-stop section referenced eling_verify MCP examples → brain_verify (as_brain).

Test plan

  • pytest full suite: 409 passed (was 4 failing on stale assertions).
  • eling install-zero --zero-config-dir /tmp/x verified to write both eling + as_brain into Zero config.
  • eling.as_brain.mcp_server stdio smoke-tested: 20 brain_* tools, reads ~/.eling (249 facts).

Note for Hermes wiring

I separately added the as_brain MCP server to ~/.hermes/config.yaml (alongside the existing eling server) so Hermes keeps its local-brain tools after the split. That change lives in local Hermes config, not this repo.

…stale tests/docs

- cli.py install-zero now registers BOTH 'eling' (Notion) and 'as_brain'
  (local brain) servers in Zero config. Previously only the Notion-only
  'eling' server was added, so Zero never received its local memory brain
  (the whole point of the v0.7.3 MCP Split).
- tests/test_think.py + test_verify_on_stop.py: tools moved to
  eling.as_brain.mcp_server as brain_*/brain_verify in the split; updated
  assertions to match.
- README: architecture tree + verify-on-stop section reflect split
  (mcp_server.py = 5 Notion tools, as_brain/mcp_server.py = 20 brain_* tools).

Full suite: 409 passed.
…erride + all-agents verify

- Gap #1: as_brain captures MCP clientInfo.name from initialize handshake and
  uses it as the default source for brain_remember (auto agent attribution)
- Gap #2: as_brain resolves ELING_HOME explicitly and passes it to Brain(home=)
- Gap #3: ELING_VERIFY_ALL_AGENTS=1 opens verify-on-stop to every agent incl. Hermes
- Add tests/test_universal_brain.py (13 tests) covering all three gaps
- Update README / API.md / ARCHITECTURE.md / RELEASE_NOTES.md for the universal brain
- Bump version to 0.8.0
@PatrickNoFilter PatrickNoFilter merged commit 006c7c1 into main Jul 8, 2026
3 of 4 checks passed
PatrickNoFilter added a commit that referenced this pull request Jul 8, 2026
Merges fix/mcp-split-zerobrain-tests including v0.8.0 universal brain changes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant