From e9ec301af96e680a661e6316777c0d0c38e3b134 Mon Sep 17 00:00:00 2001 From: Chili Palmer Date: Fri, 1 May 2026 18:41:31 +0200 Subject: [PATCH] feat: alignment on mcp agent config --- .vscode/settings.json | 3 ++- ALIGNMENT.md | 2 +- specs/mcp.allium | 17 +++++++++++++---- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index c046bca..2b6f9f1 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -4,6 +4,7 @@ "allium": true, "command": true, "printf": true, - "git ls-tree": true + "git ls-tree": true, + "/opt/homebrew/bin/allium": true } } \ No newline at end of file diff --git a/ALIGNMENT.md b/ALIGNMENT.md index 7b84843..acf4b75 100644 --- a/ALIGNMENT.md +++ b/ALIGNMENT.md @@ -33,7 +33,7 @@ Goal: align bDS2 with old bDS behavior. Use the Allium specs as the contract onl - Spec: missing the old resources. - Action: add these resources to `specs/mcp.allium`, implement them, and test JSON/blob/error responses. -## P1: MCP Agent Config Surface +## P1: MCP Agent Config Surface (done) - Old bDS: agent config install/remove is a settings UI / IPC action, not an MCP tool. - bDS2 now: implemented as settings UI action. diff --git a/specs/mcp.allium b/specs/mcp.allium index a51f022..fb4169d 100644 --- a/specs/mcp.allium +++ b/specs/mcp.allium @@ -93,8 +93,6 @@ surface McpAutomationSurface { McpToolInvoked("propose_post_metadata", params) AcceptProposalRequested(proposal) DiscardProposalRequested(proposal) - InstallAgentConfigRequested(agent_kind) - UninstallAgentConfigRequested(agent_kind) } invariant LocalhostOnlyHttp { @@ -442,14 +440,25 @@ surface McpAgentKindSurface { agent_kind.kind } +surface McpSettingsSurface { + provides: + SettingsMCPAgentToggled(agent_kind) + + @guidance + -- Agent configuration install/remove is exposed by the settings UI, + -- not by the MCP automation surface. +} + rule InstallAgentConfig { - when: InstallAgentConfigRequested(agent_kind) + when: SettingsMCPAgentToggled(agent_kind) + requires: not AgentConfigInstalled(agent_kind) -- Writes stdio MCP server config into the agent's config file ensures: AgentConfigInstalled(agent_kind) } rule UninstallAgentConfig { - when: UninstallAgentConfigRequested(agent_kind) + when: SettingsMCPAgentToggled(agent_kind) + requires: AgentConfigInstalled(agent_kind) ensures: AgentConfigRemoved(agent_kind) }