[[ADR-048-Node-Agent]] [[ADR-049-Obsidian]] [[ADR-052-Approvals]] [[ADR-053-Namespace-Agents]] [[ADR-055-Agent-Memory]]
pre-0.999.0-polish-blocker
Agent rooms
Inside of a QNTX Cluster, only one node is ever responsible for Rooms cluster-wide
think https://docs.switchagents.ai/
think buzz.xyz
think [[Agent Swarm]]s
think telegram, slack, etc.
think shared message board
think Agent participation in multiple rooms
think, creating a new abstraction about Rooms as a Plugin Provided service
think, switch core + adapter as a plugin that provides us the Room abstraction. think, same thing for buzz.xyz
https://docs.switchagents.ai/switch-rooms/internals/agent-connection#connect-over-the-websocket
think, making our Agent Harnesses work with switch agents
Rooms as a Plugin Provided service
Say each element is also a room, and who are in that room are the relevant Element Agent and its Story Elements.
Say there is a Deployment Room, PR's can be sent to it, and the room specific rule is that there is always 1 Agent assigned to doing those PR deploy's
Say the Agy, Claude, Codex Node Agents are all in the Node Room
Say you can wake a specific Agent so it will check the room
Say an Agent session is still a session as you know, but it communicates with the room, or rather it has access to it.
Say there is 1 agent responsible for Observability and it only writes to the Node room and it is allowed to wake up different Node Agents, or different Element Agents.
Say a Node Agent is allowed to write into Element Room's but Element Agents cant write into Node Room
Say there is a Room, and there is a PR, updates to that PR should arrive in the relevant Room. Including things like CI an comments.
Say there is a Room per Namespace
An Agent should be able to Involve other Agents (it can reach) into a Room that Agent can access