docs: add agent.nix hyperhive.matrixAccounts multi-account matrix configuration (follow-up to #1692)

This commit is contained in:
lexis 2026-06-15 21:28:36 +02:00
commit 314fb8298f

View file

@ -90,6 +90,34 @@ whitelist to itself, nothing for the operator to set.
For the full list of host and agent NixOS options see the For the full list of host and agent NixOS options see the
**[options reference](https://hyperhive.darkest.space/options/)**. **[options reference](https://hyperhive.darkest.space/options/)**.
## Agent configuration
Per-agent config lives in each agent's `agent.nix` (proposed, operator-approved, deployed as git commits). Key options:
### Multi-account Matrix support
`hyperhive.matrixAccounts` declares *additional* matrix accounts for an agent, beyond the hive-internal one. Each entry is keyed by account name and specifies:
- `tokenFile` — path to the matrix bearer token (provisioned out-of-band)
- `sessionDir` — path to the per-account matrix-sdk sqlite state (crypto keys + cache)
- `homeserver` — optional homeserver URL (defaults to `hyperhive.matrix.url`)
**Example:**
```nix
hyperhive.matrixAccounts = {
external-public = {
tokenFile = "/agents/myagent/state/matrix-token-external";
sessionDir = "/agents/myagent/state/matrix-sdk-state-external";
homeserver = "https://matrix.org";
};
};
```
The hive-internal account is always named `main` (synthesized from `hyperhive.matrix.url` + agent state). This option only declares *extras*; the `main` name is reserved and cannot be used here. Requires `hyperhive.matrix.enable = true`.
For more details see [`docs/matrix.md`](docs/matrix.md).
## Operator CLI ## Operator CLI
`hivectl` is the operator-facing host CLI for ad-hoc administration that `hivectl` is the operator-facing host CLI for ad-hoc administration that