hyperhive/docs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 9b14014077 docs(sso): document the machine surface, and stop restating it in nix
`docs/swarm/sso.md` described a person in a browser. The swarm's other
callers — the telemetry collector, the queue's auth-callout responder, each
hive's agents — hold no session and follow no redirect, and nothing operator-
facing said how they authenticate. Its relying-party table is forge and
matrix, both browser surfaces.

The new section carries what `swarm-authelia.nix` was holding in comments:
one client per hive because identity belongs to the directory, the audience
being that client id rather than a parallel naming scheme, and signed rather
than opaque tokens because the collector verifies offline against
`/jwks.json` while the queue introspects.

It also states the fail-closed rule once, in the place a reader looks before
touching a vhost: an error page answers 200, and `auth_request` reads any 2xx
as access granted. That shape has now appeared three times — this module's
`/api/` prefix and both of victorialogs' routes — which is what makes it
documentation rather than a comment.

The two comment blocks those replace shrink to the part that is genuinely
local: the submodule-typing reason these clients are a definition rather than
an append, and a loud warning against folding the machine prefix back into
`/`. The security warning stays at the site; only its consequence list moves.

Comments 495 -> 465 lines. Option `description` strings are untouched: they
are the source `pkgs.nixosOptionsDoc` renders into the operator's options
reference, so trimming one would delete published documentation rather than a
duplicate.
2026-09-02 08:57:23 +02:00
..
agent-lifecycle docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
crates docs: rename docs/components to docs/crates 2026-08-12 13:32:55 +02:00
getting-started docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
integrations docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
networking docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
process docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
scheduler job_queue: trim NodeKind/Resource doc comments now that coordinator.md covers them 2026-09-02 08:39:52 +02:00
swarm docs(sso): document the machine surface, and stop restating it in nix 2026-09-02 08:57:23 +02:00
tools docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
trust-boundary docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
turn-loop docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
web-ui docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
README.md docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
web-ui.md docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00

hyperhive docs

Depth reference for hyperhive — the substrate, not the pitch (that's the top-level README / website). Every page here stands alone; pick the one matching your task rather than reading top to bottom. For the auto-generated NixOS options reference (every services.hyperhive.* / hyperhive.* option, host and agent), see the options site instead — this tree is prose, that one's generated straight from the module declarations.

Getting started

  • Bringing a fresh hive online?getting-started/setup.md (first-run hivectl bootstrap).
  • What does the dashboard look like, and how do I use it?web-ui/ — the operator-facing starting point; its own sub-pages (shape, dashboard, agent, css-vars, terminal-rendering) go deeper into implementation.
  • What tools does an agent (or the operator) have available?tools/hivectl (yours) plus every agent's MCP tool surface (bash, forge, lifecycle, matrix, scheduling).

Agent lifecycle

Trust boundary & security

Accounts & integrations

  • How do per-agent forge accounts work? What does forge_notify poll, and how does it format wake messages?integrations/forge.md (the hive's own Forgejo); tools/forge.md for the hive-forge CLI verbs agents actually call.
  • How does the matrix-tuwunel container work? Multiple accounts per agent?integrations/matrix.md (the homeserver); tools/matrix.md for the MCP tool surface and hyperhive.matrixAccounts.
  • How do I give an agent a GitHub account (gh + git push)? How is the PAT injected?integrations/github.md.
  • What is /knowledge? How does the hive-wide knowledge repo sync, and how do I contribute a document?integrations/knowledge.md.
  • What does hivectl do? Provisioning, gateway users, container shells?tools/hivectl.md (the curated guide); tools/hivectl-cli.md for the exhaustive, auto-generated flag reference.

Networking & swarms

  • What nginx vhosts does the gateway serve? How does matrix discovery work?networking/gateway.md.
  • How does DNS resolution work in agent containers? What's the bridge network for?networking/network.md.
  • How do I connect two hives into a swarm?swarm/ (peer hives, TLS trust).
  • Where do agent snapshots go? How does the swarm's btrfs receive endpoint authenticate a pushing hive?networking/snapshot-store.md.

Scheduler, CI, observability

  • What is the job queue, as a general idea (not hive-c0re specifics)?scheduler/jobq.md — operator-facing, no implementation detail.
  • How does the rebuild queue work? What are the concrete step kinds, queue sources, scheduler internals?scheduler/coordinator.md.
  • How does the CI runner work? What's the auto-registration flow?scheduler/ci.md.
  • How do I export Claude Code metrics (tokens, cost, tool calls) to Prometheus/Grafana?scheduler/observability.md.

Crate reference

  • What does a specific Rust crate do, on its own terms?crates/ — every workspace crate's own README.md, one level up from source (hyperhive#3051); the crate itself is still the source of truth, this is just a walkable mirror.

Process & conventions