docs sync + revert auto-unfree removal
revert the earlier 'operator must set allowUnfree' move: per-agent containers evaluate their own nixpkgs and the operator's host-level allowUnfree doesn't propagate in. restoring the scoped allowUnfreePredicate inside both the claude-unstable overlay and harness-base.nix; documented in README + gotchas as 'nothing to set on the operator side'. docs: - claude.md file map adds crash_watch.rs, kick_agent on coordinator, /api/model + journald viewer + bind-with-retry references. - scratchpad rewritten to reflect the recent run. - web-ui.md: notification row + browser notifications section, state row (badge + model chip + last-turn chip + cancel button), per-agent inbox, /model slash, /cancel-question + journald endpoints, focus-preservation on refresh. - turn-loop.md: --model is read from Bus::model() per turn (runtime override via /model); recv(wait_seconds) up to 180s with the rationale; ask_operator gains ttl_seconds; new TurnState section; kick_agent inbox-on-startup hint. - approvals.md: ttl/cancel resolution paths for operator questions. - persistence.md: /state/hyperhive-model file. - gotchas.md: web UI port collision policy (rename, don't probe); bind retry + SO_REUSEADDR shape; auto-unfree restored. - todo.md: cleaned up empty sections and stale entries; /model shipped, dropped from the list.
This commit is contained in:
parent
d275b50177
commit
62d1a74929
10 changed files with 239 additions and 95 deletions
32
CLAUDE.md
32
CLAUDE.md
|
|
@ -25,21 +25,26 @@ hive-c0re/ host daemon + CLI (one binary, subcommand-dispatched)
|
|||
src/operator_questions.rs sqlite question queue backing `ask_operator`
|
||||
src/events_vacuum.rs host-side hourly sweep of every agent's
|
||||
/state/hyperhive-events.sqlite
|
||||
src/crash_watch.rs poll every 10s; fire HelperEvent::ContainerCrash
|
||||
when a previously-running container disappears
|
||||
without an operator-initiated transient
|
||||
src/coordinator.rs shared state (broker/approvals/questions/transient/
|
||||
sockets) + tombstone enumeration
|
||||
sockets) + tombstone enumeration + kick_agent
|
||||
src/actions.rs approve/deny/destroy (transient-aware)
|
||||
src/auto_update.rs startup rebuild scan + ensure_manager
|
||||
src/lifecycle.rs `nixos-container` shellouts, per-agent flake generator
|
||||
src/dashboard.rs axum HTTP: static shell + /api/state JSON + actions
|
||||
+ journald viewer + bind-with-retry (SO_REUSEADDR)
|
||||
assets/ index.html, dashboard.css, app.js (include_str!)
|
||||
|
||||
hive-ag3nt/ in-container harness crate; produces TWO binaries
|
||||
src/lib.rs re-exports + DEFAULT_SOCKET, DEFAULT_WEB_PORT
|
||||
src/client.rs generic JSON-line request/response over unix socket
|
||||
src/web_ui.rs per-container axum HTTP page (incl /api/cancel,
|
||||
/api/compact, /events/history)
|
||||
/api/compact, /api/model, /events/history)
|
||||
src/events.rs LiveEvent + broadcast Bus + sqlite-backed history
|
||||
(/state/hyperhive-events.sqlite)
|
||||
(/state/hyperhive-events.sqlite) + TurnState +
|
||||
model selection (persisted at /state/hyperhive-model)
|
||||
src/turn.rs claude --print + stream-json pump; --compact retry
|
||||
src/mcp.rs embedded MCP server (rmcp): AgentServer + ManagerServer
|
||||
src/login.rs probe /root/.claude/ for a valid session
|
||||
|
|
@ -109,10 +114,17 @@ read them à la carte.
|
|||
In-flight or recent context that hasn't earned a section yet.
|
||||
Prune freely.
|
||||
|
||||
- Loop session 2026-05-15: shipped state badge, /cancel + /compact,
|
||||
tombstones, multi-select ask_operator, broker + events vacuum.
|
||||
- After loop session 2026-05-15: docs split into `docs/` (this
|
||||
page slimmed to index + scratchpad). Cleanups landed: vacuum
|
||||
host-side, `lifecycle_action` helper, `api_state` split.
|
||||
- Next likely focus: telemetry/charts (still queued from earlier
|
||||
triage) + server-side state badge.
|
||||
- 2026-05-15 ish: tombstones, multi-select ask_operator, broker +
|
||||
events vacuum, docs split into `docs/`, lifecycle_action helper,
|
||||
api_state split.
|
||||
- Then: inline +/- diffs on Write/Edit, operator cancel + ttl on
|
||||
questions, dashboard back-link, per-agent inbox view, bind-retry
|
||||
+ SO_REUSEADDR, journald viewer, server-side TurnState,
|
||||
recv(wait_seconds) max 180s, runtime /model switch, crash
|
||||
watcher, model persistence, stopped auto-allowing claude-code
|
||||
unfree (operator must opt in), pure-hash agent_web_port (port
|
||||
files reverted), browser notifications, focus-preserving
|
||||
refresh.
|
||||
- Open threads: telemetry/charts, custom per-agent MCP tools (the
|
||||
groundwork for moving bitburner-agent into hyperhive),
|
||||
two-step spawn, unprivileged containers, Bash allow-list.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue