ADR-048: Agents

Date: 2026-10-04 Status: Proposed

QNTX hosts agents for use by ROOT.

"an agent is itself"

The host agent

"the ROOT host agent is QNTX as ROOT would talk to it."

"It is the ROOT agent, one persistent session agent that is QNTX itself as expressed to ROOT."

"we cant just have any ai be the ROOT agent"

"ROOT is ROOT"

"i want to be able to do anything"

"anything that can talk to the ROOT agent can say anything to it"

"make sure --permission-mode is configurable in the Claude Element"

The loop

The loop is Claude Code's, not the node's: "accepted." The node hosts the process. It starts it, resumes it and stops it.

First uses

First: ROOT talks to QNTX

As ROOT, I open the node and say something to it. It answers as the node, and when I ask it to do something it does it itself: a sigil, or a command on the box. Each turn is attested by the ROOT agent's own DID, and tomorrow it is the same session, readable as a transcript.

"for development purposes SUPER will be allowed temporarily, but SUPER needs to be removed before the work get's merged."

"remove SUPER"

Its reach line names ROOT and nobody else.

Its git

"another thing i want it to have is its own git user so it can develop and create branches and so on."

"QNTX has a lot of github related functionality that we arent properly utilizing"

"I want to get into a position where i can use the Claude Element to prepare PR's againt QNTX"

Not there: the App reads contents and cannot write them, and where the agent runs has none of what building QNTX takes.

Not done

For the first story. It ends in something that can be checked.

  1. The box upgraded.

The node does not see the model traffic of an agent Claude Code runs.

"for a later phase we make sure it always runs with ground"

Ground's last release is behind its main, so Ground on the box takes a Ground release.

"Upgrading the box is in scope"