Watch
0
0
Fork
You've already forked hyperhive
0
Commit graph hyperhive/docs/4-implementation
Author SHA1 Message Date
iris
1779fa0568 swarm: the contract for an agent's bash task status and output
A status key per task in the bash-task-status bucket and the task's output rows
in a per-agent stream, kept apart as for subagents. The controller creates the
bucket and the streams, and the agent credential may publish its own keys and
subjects. Nothing publishes yet; the bash MCP half follows.
2026-11-15 18:22:16 +01:00
atlas
ca51bb9d54 hive-priv: write a configured stable exe path into unit drop-ins
HIVE_PRIV_EXE, set by the module to the /run/hive-rootfs-check link, is
checked at start and used for the drop-in's ExecStartPre. Without it the
running binary's path is used as before, and an unlinked one gets an
error that names the cause.
2026-11-15 17:31:03 +01:00
iris
e9af6cf2c7 swarm ui: a soft context limit field in an agent's inference settings
A whole percent from 5 to 100 of the model's context window, sent as
soft_context_percent next to max_subagents. The inference row shows it, the
edit dialog and the create form take it, and an archetype can carry it.
2026-11-15 17:30:29 +01:00
damocles
b19b730a3a prettier the inference.md table 2026-11-15 17:21:13 +01:00
damocles
8147b76cda docs: fix the two vale errors in the soft context limit paragraph 2026-11-15 17:21:13 +01:00
damocles
1e03979836 swarm: a soft context limit per agent, as a percent of the window, applied at turn end 2026-11-15 17:21:13 +01:00
iris
c56faf9dff swarm ui: say what a subagent's age counts from, and the list's two lookup passes
A running status shows 'running since', a stale one shows no age, since its
time is when the run began. The reference now says the status reads and the row
lookups are two passes, so the list waits up to four seconds in all.
2026-11-15 17:17:10 +01:00
iris
e9bc28fe2f swarm: list subagents from their published run state
The subagents list reads each subagent's status from the subagent-status
bucket and reports its state, when it began and the exit status. A subagent
with no status keeps the newest-row lookup, so an older daemon lists as before.
The swarm UI uses the state when there is one and the row-age guess otherwise.
2026-11-15 17:17:10 +01:00
iris
fec5461018 docs: the default agent icon shows wherever the swarm UI shows an agent's icon 2026-11-15 17:14:16 +01:00
iris
bfbcf70675 docs: only the agent cards show the default agent icon 2026-11-15 17:14:16 +01:00
iris
91cf4d2ae1 icons for the swarm's own forge accounts, and a default agent icon
The builder, ci-metrics and review-classifier forge accounts get an avatar: an
icon each in a hexagonal frame, the hyperhive logo when one is missing. The
controller sets them with a short-lived write:user token it mints for the
account, since only an account can set its own avatar.

An agent with no icon of its own shows a default agent icon in the swarm UI, a
robot head in a round frame, instead of the dimmed hyperhive mark.
2026-11-15 17:14:16 +01:00
damocles
51479d9fe8 docs: active voice in the run state section 2026-11-15 17:12:31 +01:00
damocles
d476bf1a0c docs: the run state the subagent daemon publishes 2026-11-15 17:12:31 +01:00
damocles
05c193859f hive-agent: stop writing active_model to the harness state file, nothing reads it 2026-11-15 16:13:47 +01:00
iris
e9ddfd61ec swarm ui: a log in button in the claude login row of an agent's settings
An agent with no stored login, or one to log in again, can be logged in from
the settings panel instead of waiting for its turns to fail with a login needed
badge first. The button opens the same dialog as the card's.
2026-11-15 16:13:15 +01:00
iris
c7d7f0df55 swarm: subagent-status KV bucket, the run state of each subagent
One key per subagent (<agent>.<subagent>) holding running/finished, since,
exit, model, effort and the publish time. The controller creates the bucket,
and the agent credential may publish its own keys. Nothing reads or writes
it yet; the daemon publisher and the controller list follow.
2026-11-15 15:36:12 +01:00
atlas
4bd02ea14d agents keep their github token in /run, fetched on every start, not in the state dir 2026-11-15 14:08:57 +01:00
atlas
adc61c9043 remove the swarm wireguard mesh; tombstone its options 2026-11-15 02:17:44 +01:00
atlas
a812e4dd21 egress anti-spoof: the vm test names drop as explicit, and the log default waits for the stale-delete lines 2026-11-15 01:43:50 +01:00
atlas
b8098686c4 egress anti-spoof: back to log by default; the lease set does not survive a suspend/resume 2026-11-15 01:43:50 +01:00
atlas
b8c07a5492 hive-c0re: reconcile declared agents periodically, with backoff 2026-11-15 01:38:26 +01:00
damocles
7468aa4cff nix: move the egress firewall options under deploy.hive-controller.egress 2026-11-15 01:22:35 +01:00
atlas
1cef99e992 egress anti-spoof: renewals from the leased address pass, a stale lease delete is skipped 2026-11-15 01:20:41 +01:00
atlas
3fa926d7d6 otel: collectors drop their own export-failure lines instead of shipping them 2026-11-15 01:20:18 +01:00
atlas
f5e99fe248 gateway: cache authelia's 200 verdicts on the log and metric ingest routes 2026-11-14 22:05:08 +01:00
iris
0e99662710 docs: the swarm README and credentials page keep the overview, the rest moves to its own pages
The hive directory and the WireGuard mesh become handbook pages of their own,
the controller's mint-failure handling moves to controller.md, and the
credential-by-credential mechanics and the secret store UI's proxy move to a new
implementation page.
2026-11-14 13:33:50 +01:00
iris
814edd1d67 docs: swarm/services.md is one blurb per service, the host detail moves to the service's implementation page
Each service section lost its container, credential and metrics detail to a
Host setup section on its own implementation page, unchanged apart from links.
The four agentAuth option rows that sat above the page title moved into the
telemetry page's metrics option table.
2026-11-14 13:28:02 +01:00
atlas
60aede950b egress anti-spoof: drop by default again 2026-11-14 13:27:13 +01:00
damocles
183e55dd80 hive-agent: let an agent compact from 40% context usage instead of 66% 2026-11-14 12:35:27 +01:00
atlas
5c30985a25 swarm-archive: check each agent's restic repository weekly
A weekly swarm-archive-check unit runs restic check --read-data-subset on every repository on the archive host, serialised with the prune by a shared flock. It logs archive check failed per agent, pushes check gauges, and has an alert and dashboard columns.
2026-11-14 11:53:27 +01:00
atlas
723ce866f1 archive: push restic backup and prune metrics, and add a backups dashboard 2026-11-14 11:08:57 +01:00
atlas
5189e8fb4b egress: refresh a leased pair on dhcp renewal and default anti-spoof to log
dnsmasq runs the dhcp-script on a renewal only with script-on-renewal, so a pair loaded at the first lease timed out while the lease kept renewing and the bridge table dropped the container's traffic. Set script-on-renewal, time pairs out remaining + 300s, default antiSpoof to log, and run the vm test through renewals with drop.
2026-11-13 23:55:12 +01:00
atlas
cf360b74b9 remove the hivectl-only quota verbs and the trollshell status feed 2026-11-13 16:14:41 +01:00
atlas
dad15ca855 egress: forward = reject for intercepted agents, direct_mac exempt in log mode too 2026-11-13 13:00:13 +01:00
atlas
dff662c6b3 refuse tls hellos that carry encrypted client hello before squid sees them 2026-11-13 12:56:58 +01:00
atlas
de43dac33c ci: type-check the semi-spread and swarm-builder-offline test scripts with stand-in values 2026-11-13 11:00:04 +01:00
atlas
49266e4410 remove what no longer has a reader: build-log store, dashboard sent/delivered events, graph resource dep 2026-11-13 10:58:49 +01:00
atlas
32f5b74ba4 ci: type-check vm test scripts without building the vms
Adds checks.<system>.vm-test-typecheck-<name> for hive-squid, swarm-archive, agent-ephemeral-rootfs, full-setup and wg-hive: ty and ruff F over nixpkgs' test-script prelude, the machine hints from the node names, and the script text. Node configs are never evaluated. vm-test-typecheck-control passes only when ty rejects a known type error.
2026-11-13 09:47:36 +01:00
atlas
712dcf2b25 squid intercepts restricted and log agents' web traffic, named from the bound source address 2026-11-13 09:47:09 +01:00
atlas
bf77b72217 hive-priv: create the nixos-containers directories at boot 2026-11-13 09:03:39 +01:00
atlas
a437f9ccd5 drop hive and agent response fields the frontend never reads 2026-11-13 08:55:41 +01:00
atlas
70179b6c1f egress anti-spoofing: keep established bindings, load tables with bindings and leases in one transaction 2026-11-13 08:53:23 +01:00
atlas
c4ac01ef88 agent bridge: drop frames whose source MAC or address isn't the container's own (egress.antiSpoof) 2026-11-13 08:53:23 +01:00
atlas
36c7781245 remove hive and agent apis nothing calls: build-log routes, /api/compact, host.sock list, mcp.sock wake 2026-11-13 03:09:24 +01:00
atlas
6ec12e7d84 hive-forge repo-create: say the account can't create repos instead of a bare 500 2026-11-12 21:11:41 +01:00
atlas
5b319e0600 host dashboard: pressure stall panels, docs for the new series 2026-11-12 16:07:09 +01:00
damocles
c66832febf swarm-controller: stop minting the per-hive matrix sender account and token nothing reads 2026-11-12 15:38:34 +01:00
damocles
96b5b83fa4 swarm-stt: the deploy module (deploy.stt.*, sandboxed container, store leaf, queue grants) and its docs 2026-11-12 12:18:32 +01:00
damocles
eff209f756 agents can transcribe an audio file: the transcribe_audio tool, through the harness and the speech-to-text service 2026-11-12 12:18:18 +01:00
iris
ebcf838dd8 docs: the terminal's model and effort badges open the inference settings 2026-11-12 10:37:30 +01:00