hive-agent-mcp: the send allow-list is gone, agents talk to peers over matrix
This commit is contained in:
parent
f23ce106b1
commit
c1f7bb798e
2 changed files with 14 additions and 97 deletions
|
|
@ -34,6 +34,12 @@ let
|
|||
sets it. Pin it host-side with
|
||||
services.hyperhive.deploy.hive-controller.claudeCodePackage.
|
||||
'';
|
||||
sendAllowRemoved = ''
|
||||
The `send` allow-list is gone: it limited only the hive-local `send` tool,
|
||||
which is not the channel agents use to reach peers, and it was never a
|
||||
boundary. Agents talk to peers over matrix. Remove the setting.
|
||||
'';
|
||||
|
||||
queueRemoved = ''
|
||||
The harness reads the queue's address at runtime from HIVE_AGENT_NATS_URL,
|
||||
in /etc/hyperhive-hive-facts, and authenticates with the
|
||||
|
|
@ -115,6 +121,12 @@ in
|
|||
"agent"
|
||||
"claudeCodePath"
|
||||
] claudeCodePathRemoved)
|
||||
(lib.mkRemovedOptionModule [
|
||||
"services"
|
||||
"hyperhive"
|
||||
"agent"
|
||||
"allowedRecipients"
|
||||
] sendAllowRemoved)
|
||||
(lib.mkRemovedOptionModule [ "services" "hyperhive" "agent" "queue" "natsUrl" ] queueRemoved)
|
||||
(lib.mkRemovedOptionModule [ "services" "hyperhive" "agent" "queue" "tokenEndpoint" ] queueRemoved)
|
||||
];
|
||||
|
|
|
|||
|
|
@ -22,27 +22,6 @@ let
|
|||
subagentReadsStore = config.services.hyperhive.agent.bao.addr != null;
|
||||
in
|
||||
{
|
||||
options.services.hyperhive.agent.allowedRecipients = lib.mkOption {
|
||||
type = lib.types.listOf lib.types.str;
|
||||
default = [ ];
|
||||
example = [
|
||||
"alice"
|
||||
"bob"
|
||||
];
|
||||
description = ''
|
||||
Names this agent is allowed to `send` to via
|
||||
`mcp__hyperhive__send`. Empty list (the default) means
|
||||
unrestricted — the agent can message any peer. A non-empty list
|
||||
allows only the listed names; anything else returns an error
|
||||
string to claude without touching the broker.
|
||||
`operator` is refused either way: agents reach the operator
|
||||
over matrix.
|
||||
|
||||
Useful for sandboxing untrusted sub-agents — set
|
||||
`[ "alice" ]` to scope one to chatter with alice.
|
||||
'';
|
||||
};
|
||||
|
||||
options.services.hyperhive.agent.extraMcpServers = lib.mkOption {
|
||||
type = lib.types.attrsOf (
|
||||
lib.types.submodule {
|
||||
|
|
@ -304,9 +283,6 @@ in
|
|||
environment.etc."hyperhive/extra-mcp.json".text =
|
||||
builtins.toJSON config.services.hyperhive.agent.extraMcpServers;
|
||||
|
||||
environment.etc."hyperhive/send-allow.json".text =
|
||||
builtins.toJSON config.services.hyperhive.agent.allowedRecipients;
|
||||
|
||||
# Bash task runner daemon — long-running process that owns subprocess
|
||||
# monitoring + completion wake signals, and serves the MCP tools
|
||||
# (`run`/`status`/`kill`) directly over streamable-http on
|
||||
|
|
|
|||
Loading…
Reference in a new issue