feat(install): wire the code graph into every agent via the upstream installer

make install now runs the codebase-memory-mcp upstream installer: checksum-verified release (static on Linux) into ~/.local/bin, configuring every detected agent (Claude Code, Codex, Gemini, Hermes, OpenClaw, ...); rerunning it updates. This replaces the Arch-only yay install, whose 0.12 build segfaults on glibc 2.44 (DeusData/codebase-memory-mcp#2763), and the Claude-only plugin, which enable-plugins.js now retires so the server never runs twice. Every failure warns instead of aborting make install.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Kevin Veen-BirkenbachandClaude Opus 5.5 committed 2026-11-04 17:07:24 +01:00
1 parent 997a01ccfa
commit ca98ab4a30
4 files changed
+30 -21

No files matched your search

+11 -5
View File
@@ -162,12 +162,18 @@ class TestSettingsRegistration(unittest.TestCase):
self.assertEqual(gate.count("kvb-org-perform/scripts/log.py"), 1)
self.assertEqual(post.count("kvb-org-perform/scripts/log.py"), 1)
def test_code_graph_plugin_is_enabled_with_its_marketplace(self):
data = self._patch()
self.assertTrue(data["enabledPlugins"]["codebase-memory@codebase-memory"])
self.assertEqual(
data["extraKnownMarketplaces"]["codebase-memory"]["source"]["repo"], "DeusData/codebase-memory-mcp"
def test_code_graph_plugin_is_retired_for_the_agent_agnostic_installer(self):
self.settings.write_text(
json.dumps({
"enabledPlugins": {"codebase-memory@codebase-memory": True},
"extraKnownMarketplaces": {"codebase-memory": {"source": {"source": "github", "repo": "x/y"}}},
}),
encoding="utf-8",
)
data = self._patch()
self.assertNotIn("codebase-memory@codebase-memory", data["enabledPlugins"])
self.assertNotIn("codebase-memory", data["extraKnownMarketplaces"])
self.assertTrue(data["enabledPlugins"]["caveman@caveman"])
def test_compact_window_is_set_once_and_never_overwritten(self):
self.assertEqual(self._patch()["env"]["CLAUDE_CODE_AUTO_COMPACT_WINDOW"], "500000")