feat(install): close the MCP config↔binary install gap#18
Merged
Conversation
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
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The gap
agent-surface installwires each host's MCP config to point at~/.local/bin/synapse-bridgeand~/.local/bin/grimoire-server, but onlymcps/synapse/install.sh/mcps/grimoire/install.shactually build + link those binaries. A user who ran justagent-surface installgot 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:grimoireremain for installing just one.installprints the wired set + theinstall:mcpsnext step, so a freshly wired config never silently points at a missing binary.Deliberately not done: making the zero-dep compiler shell out to
npm ci/launchctlfromagent-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
--destprints:MCP servers wired into host configs: grimoire, synapse→npm run install:mcps.build --target alldist tree is byte-identical with vs without the change (the edit touches onlyinstall(), package scripts, and docs — never the emit path).npm run check+npm testgreen.doctorcontinues to report the binary-linkage + index-freshness health that this hint points operators toward.by mass-energy equivalence