Skip to content

feat(install): close the MCP config↔binary install gap#18

Merged
Lyther merged 1 commit into
mainfrom
feat/mcp-install-gap
Jul 5, 2026
Merged

feat(install): close the MCP config↔binary install gap#18
Lyther merged 1 commit into
mainfrom
feat/mcp-install-gap

Conversation

@Lyther

@Lyther Lyther commented Jul 2, 2026

Copy link
Copy Markdown
Owner

The gap

agent-surface install wires each host's MCP config to point at ~/.local/bin/synapse-bridge and ~/.local/bin/grimoire-server, but only mcps/synapse/install.sh / mcps/grimoire/install.sh actually build + link those binaries. A user who ran just agent-surface install got 17 host configs pointing at binaries that may not exist — with no single command and no hint bridging the two layers.

Fix (config layer ↔ binary layer)

  • npm run install:mcps — one command that builds + links both first-party MCP binaries (install:synapse && install:grimoire; Synapse also deploys its sidecar service). install:synapse / install:grimoire remain for installing just one.
  • Install-time hint — after a live install that wired MCP servers, install prints the wired set + the install:mcps next step, so a freshly wired config never silently points at a missing binary.
  • README — the Quick start and First-party MCP sections now show the two-step flow (wire config + link binary) as one documented path.

Deliberately not done: making the zero-dep compiler shell out to npm ci / launchctl from agent-surface install. That would break its "only writes files it owns" boundary and pull network + platform-specific service management into a pure renderer. The orchestration lives in npm scripts + a hint instead.

Verification

  • Live install to a temp --dest prints: MCP servers wired into host configs: grimoire, synapsenpm run install:mcps.
  • Emit-neutral: build --target all dist tree is byte-identical with vs without the change (the edit touches only install(), package scripts, and docs — never the emit path).
  • npm run check + npm test green.

doctor continues to report the binary-linkage + index-freshness health that this hint points operators toward.

by mass-energy equivalence

agent-surface install wires host MCP configs to point at ~/.local/bin/synapse-bridge
and grimoire-server, but only mcps/*/install.sh build+link those binaries — a fresh
'agent-surface install' left configs pointing at missing bins with no single command
or hint. Add:

- npm run install:mcps — one command that builds+links both first-party MCP binaries
  (chains install:synapse + install:grimoire; synapse also deploys its sidecar).
- an install-time next-step hint: after a live install that wires MCP servers, print
  the wired set + the install:mcps command, so a config never silently points at a
  missing binary. Boundary-preserving — the zero-dep compiler still never shells out.
- README: show the two-step flow (config wiring + binary link) as one documented path.

Emit-neutral (dist byte-identical with/without the change); check + test green.

by mass-energy equivalence
@Lyther
Lyther merged commit 9f50848 into main Jul 5, 2026
2 checks passed
@Lyther
Lyther deleted the feat/mcp-install-gap branch July 5, 2026 10:21
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