hyperhive/nix/agent-modules
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas c74249f371 matrix: make the hive-internal main account an ordinary matrixAccounts entry
`matrixAccounts` is meant to be the agent's full account list, but the
hive-internal `main` account was outside it: the nix module emitted only
the extras and `hive-matrix-daemon` prepended a `main` it synthesized
from the per-agent paths, with the option schema forbidding the name
outright.

nix/agent-modules/matrix.nix now declares `main` itself, as an ordinary
entry under `matrix.enable`, from the state-dir paths the module already
used for its token path-watcher (now a shared `stateDir` binding) plus
`matrix.url`. The whole set, `main` included, is serialized to
HIVE_MATRIX_ACCOUNTS.

accounts::configured therefore synthesizes `main` only when the parsed
list carries none, and otherwise takes the declared one verbatim —
hoisting it to index 0, since the daemon reads index 0 as the primary
and nix serializes an attrset, so `main` sorts wherever its key falls.
Declared xor synthesized: an agent whose harness predates this entry
keeps working, a current one gets its own, and there is no arrangement
where `main` is duplicated or missing.

The reserved-name assertion is replaced rather than dropped: the name
must now be legal (the module uses it), but `main`'s tokenFile stays
pinned to `<state>/matrix-token`, since hive-c0re provisions the
hive-internal token there and nowhere else — a retarget would evaluate
fine and then never restore. The other two fields are mkDefault and free
to override.

Refs #4475
2026-09-18 09:34:44 +02:00
..
agent-service.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
bash-env.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
claude-settings.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
dashboard-links.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
default.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
docs.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
forge.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
frontend.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
github.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
logs.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
matrix.nix matrix: make the hive-internal main account an ordinary matrixAccounts entry 2026-09-18 09:34:44 +02:00
mcp.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
network.nix agent-modules/network: accept unicast DHCP renewal replies unconditionally 2026-09-16 19:54:41 +02:00
otel.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
packages.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
queue.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
renamed-options.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
screen.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
user.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00
weston-vnc.nix nix: move the agent option namespace under services.hyperhive.agent 2026-09-17 20:19:30 +02:00