Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/hive-agent/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 0f7b403803 agents get a todo when assigned to an issue or PR, rewritten when unassigned and cleared on close
A new swarm service, swarm-notify-router, in its own container on the host
that sets deploy.notify-router.enable (defaulted on by allSwarmServices where
the host has the router's store leaf, like the claude login minter).

- swarm-controller registers instance-wide hooks for `issues` +
  `issue_assign` and `pull_request` + `pull_request_assign`, updates the
  event list of a hook already registered with fewer (leaving its active flag as it is), and keeps each
  verified body unchanged in the SWARM_EVENTS stream on
  $SWARM.events.forge.<X-Forgejo-Event-Type>, deduped by X-Forgejo-Delivery.
  A delivery the stream did not keep answers 503.
- swarm-notify-router drains its durable consumer on that stream, runs its
  flows (source -> match -> todo sink, stored as nodes plus edges and checked
  to be a tree) and queues each op on $SWARM.router.todo.<agent> in the
  work-queue stream ROUTER_TODOS. Built-in flows: assigned, unassigned (same
  key, rewritten) and closed (prefix-clears every holder's router todos). A
  per-issue snapshot in its notify-router-state bucket holds the last
  assignees and the todo holders; only agents in the agent-status bucket get
  ops, and an assignee that was not one is left out of the snapshot so the
  next assign event retries it. After the first event that must be retried,
  the rest of the batch is nakked so redelivery keeps stream order.
- hive-agent creates its own durable consumer todo-<agent> and applies each
  op to its todo store as subsystem `router`, then acks; a refused op stops
  the rest of its batch the same way. The store's (subsystem, key) dedup
  makes a redelivery harmless. New Todos::clear_prefix.
- swarm-nats-auth: a --notify-router-client arm; the controller may publish
  $SWARM.events.forge.*; each agent gets three {agent} templates (extended
  consumer create whose filter the server checks, MSG.NEXT, ACK).
- Credentials: a notify-router store leaf minted by glue-bao-tls, a
  swarm-notify-router bao policy (read on its own queue client secret), an
  authelia machine client, the secret publisher entry, a journal forwarder
  route. No manual step.

hive-forge-notify is unchanged, so agents also still get forge's own
notifications.

Refs #5571
2026-10-22 07:28:53 +02:00
..
web_ui screen relay: close the websocket when the vnc side hangs up and stop the surviving task 2026-10-21 23:55:24 +02:00
agents_md_migrate.rs rename claude.md to agents.md for agents and the repo 2026-10-18 02:33:06 +02:00
boot_announce.rs hive-agent: correct doc comments that describe sentinel files, session flags and outcomes the code no longer has 2026-10-21 22:56:31 +02:00
claude_credentials.rs swarm UI: log an agent into claude from its card; the credentials go to bao and the agent picks them up 2026-10-15 13:26:29 +02:00
claude_md_watch.rs read an agent's agents.md through the swarm and edit it with git diffs 2026-10-18 12:35:11 +02:00
claude_usage_watch.rs hive-agent: warn on usage responses with no recognisable windows 2026-09-30 20:53:03 +02:00
db_migrate.rs db migrate: retry the legacy reminders copy while the legacy file is still there 2026-10-21 23:07:23 +02:00
disk_watch.rs disk watch: a footprint walk that ran out of budget counts as unknown, not small 2026-10-21 22:05:54 +02:00
events.rs hive-agent: correct doc comments that describe sentinel files, session flags and outcomes the code no longer has 2026-10-21 22:56:31 +02:00
harness_state.rs move the review classifier, agent login and inference types into swarm-wire 2026-10-18 19:27:30 +02:00
identity.rs hive-agent: correct doc comments that describe sentinel files, session flags and outcomes the code no longer has 2026-10-21 22:56:31 +02:00
login.rs hive-agent: correct doc comments that describe sentinel files, session flags and outcomes the code no longer has 2026-10-21 22:56:31 +02:00
login_session.rs login session: only the child exiting finishes it, not one output pipe closing 2026-10-21 21:59:04 +02:00
main.rs agents get a todo when assigned to an issue or PR, rewritten when unassigned and cleared on close 2026-10-22 07:28:53 +02:00
mcp_config.rs move Permission into hive-types, drop swarm-controller's hive-sh4re dep 2026-10-18 21:40:01 +02:00
otel_turn_metrics.rs hive-agent: correct doc comments that describe sentinel files, session flags and outcomes the code no longer has 2026-10-21 22:56:31 +02:00
paths.rs hive-agent: compact tests set the harness dir like the other Bus tests 2026-10-11 03:36:34 +02:00
plugins.rs hive-agent: cap the whole plugin install sequence, not just each call 2026-10-16 11:40:59 +02:00
prompt.rs archetypes: build an archetype agent from its archetype's module on the hive 2026-10-17 16:27:21 +02:00
reminder_timer.rs docs/hive-c0re: fix ask/answer removal doc gaps argus caught on #3741 2026-08-30 03:02:31 +02:00
reminders.rs hive-c0re: remove the approvals subsystem 2026-10-04 23:55:32 +02:00
router_todos.rs agents get a todo when assigned to an issue or PR, rewritten when unassigned and cleared on close 2026-10-22 07:28:53 +02:00
schedule_timer.rs swarm-wire: take agent_schedules's wire types 2026-10-18 22:50:02 +02:00
serve_common.rs hive-agent: correct doc comments that describe sentinel files, session flags and outcomes the code no longer has 2026-10-21 22:56:31 +02:00
sqlite_writer.rs hive-agent: run the event store in WAL and give turn-stats writes a busy timeout 2026-10-20 12:08:30 +02:00
state_entry_watch.rs fix hint text per argus review: group into subdirs, not split into more top-level files 2026-08-18 22:07:05 +02:00
stats.rs hive-agent: correct doc comments that describe sentinel files, session flags and outcomes the code no longer has 2026-10-21 22:56:31 +02:00
subagent_role_watch.rs hive-agent: export a per-file line count for subagent role files 2026-10-14 13:53:20 +02:00
swarm_agent_icon.rs swarm-wire: take agent_icon's wire types 2026-10-18 22:50:02 +02:00
swarm_agent_state.rs swarm-wire: take notices's wire types, fmt the moved imports 2026-10-18 22:50:02 +02:00
swarm_agents_md.rs set an agent's initial agents.md at create 2026-10-18 15:54:14 +02:00
swarm_inference.rs move the review classifier, agent login and inference types into swarm-wire 2026-10-18 19:27:30 +02:00
swarm_input.rs read an agent's agents.md through the swarm and edit it with git diffs 2026-10-18 12:35:11 +02:00
swarm_permissions.rs move Permission into hive-types, drop swarm-controller's hive-sh4re dep 2026-10-18 21:40:01 +02:00
swarm_queue.rs move agent_token from swarm-queue-client to swarm-agent-verify 2026-10-18 16:58:39 +02:00
swarm_term.rs agent_permissions, agent_term and subagent_term take their wire contracts from swarm-wire 2026-10-19 18:30:44 +02:00
term_msg.rs move the send and turn row markers into hive-types 2026-10-18 22:13:37 +02:00
todo_server.rs bound the request line on the host admin and in-agent sockets 2026-10-17 09:09:20 +02:00
todos.rs agents get a todo when assigned to an issue or PR, rewritten when unassigned and cleared on close 2026-10-22 07:28:53 +02:00
turn.rs turn test: build the bus inside with_harness_dir so it passes without HYPERHIVE_HARNESS_DIR 2026-10-22 00:08:14 +02:00
turn_stats.rs hive-agent: correct doc comments that describe sentinel files, session flags and outcomes the code no longer has 2026-10-21 22:56:31 +02:00
vacuum.rs hive-agent: run the event store in WAL and give turn-stats writes a busy timeout 2026-10-20 12:08:30 +02:00