Commit graph hyperhive/claude-plugins/plugins
Author SHA1 Message Date
atlas
307df77948 subagent: report turn liveness, and stop pre-checking continue
`status` could only answer running / starting / idle / killed / none,
because every turn ran against `&NoopSink` and the whole stream-json
stream was discarded. "Running" describes a wedged subagent exactly as
well as a busy one, leaving a caller to tell them apart from `ps` output
and CPU-time deltas.

So the daemon now keeps a `name -> last_event_at` clock, bumped by
`LivenessSink` on every line of every stream — stream-json events, plain
stdout chatter and stderr alike — and `status` reports its age on a
running answer: a few seconds means working, an age climbing into the
minutes with no end-of-turn todo means wedged. Nothing is read out of the
content; classifying *what* a subagent is doing is a separate question
and waits on its own driver work. In memory with the rest of this
daemon's state, dropped when the turn ends, no persistence.

The clock is seeded at the spawn rather than at the first line, so a
subagent that wedged before emitting anything still reports a climbing
age rather than no age at all — the case an age is worth most in.

Separately, `continue`'s existence pre-check is gone. It could only
repeat the lookup `Claude::spawn` was about to do, and its message —
"no session named `x` exists" — was false in the common failure: the
session existed, just not under the claude home + cwd `build_store`
resolved from. claude's own `--resume` is the authority and exits
non-zero (`does not match any session title`) rather than quietly
starting a fresh session, so the turn fails on its own. `classify_end`
appends the one fact the CLI's message lacks — the directory searched:

  claude error: no session matched the requested id or title (searched
  <claude_home> for cwd <cwd>; if the session was started elsewhere,
  pass `dir`)

The `dirs` map's durability is untouched; whether to persist it stays an
open operator decision.

Module doc, `docs/tools/subagent.md`, the `continue`/`status` tool
descriptions and the `base:claude-subagents` skill all updated — including
`continue`'s `dir` doc, which said "the daemon remembers it" without
saying that a restart is both when it forgets and when you most want it.

Refs #4330
Refs #4405
2026-09-14 20:56:16 +02:00
damocles
77c3c656b2 subagents: add effort param, default to medium, document in skill 2026-09-13 17:45:42 +02:00
atlas
55f01942a2 docs, prompts, hive-forge: stop handing readers the renamed verbs
docs/tools/forge.md already listed the nine renamed verbs as removed, then
used them ~30 more times in pasteable blocks. Sweeps every occurrence a
reader would type, including three runtime messages that told the user to
run a verb the same binary rejects.

The renamed-verb list itself keeps the old names; it is what documents them.

Refs #4155
2026-09-10 17:22:57 +02:00
damocles
c2fb3c6e3e subagent: add status tool, cut docs down to operator-facing + no cli flags 2026-09-09 23:45:12 +02:00
damocles
e64639c4d0 docs: document the independent subagent daemon (start/continue/interrupt) 2026-09-09 23:45:12 +02:00
atlas
39b95c2ede treefmt: apply prettier
Pure `nix fmt` output from the commit before this one — no hand edits.
203 files: 52 md, 42 tsx, 32 js, 32 css, 21 ts, 13 html, 8 json, 3 mjs.

Reproduce with `nix develop -c nix fmt` on the parent commit; the result
should be byte-identical to this tree.

None of the 13 `.prettierignore` entries appears here — verified by
intersecting the changed-file list against the ignore file, with a
control proving the intersection finds a match when one exists.
2026-09-02 15:25:07 +02:00
damocles
aaac939cb2 choosing-a-comms-channel: drop the history framing, state the guidance plainly 2026-08-30 03:42:57 +02:00
damocles
63c7c4ae2c hive-c0re: drop stale 'question' example from check_size doc 2026-08-30 03:42:57 +02:00
damocles
b8eb598329 hive-forge: fix stale-branches comment/docs — hyperhive rebase+ff merges, not squash 2026-08-28 21:44:19 +02:00
damocles
fa73cd1ddb hive-forge: flag stale-branches merge outcome as unknown when the PR fetch is truncated 2026-08-28 21:44:19 +02:00
damocles
6e05863f02 hive-forge: lint stale-branches reports each branch's merge outcome 2026-08-28 21:44:19 +02:00
iris
3b9e54d028 skills(headless-screenshot): document two false-positive traps
Hit both today doing a live QA pass on the gateway: plain
nixpkgs#chromium has no color-emoji font (tofu boxes read exactly
like a missing-icon bug), and a page whose content loads async after
the initial paint (SSE, fetch-on-mount) screenshots as a bare
"loading..." placeholder without --virtual-time-budget. Neither is a
real product bug, but both need a documented fix for when an accurate
render actually matters, not just "know to discount it."
2026-08-15 09:59:55 +02:00
damocles
5300c242f3 skills(forge-issue-filing): soften labels section per review 2026-08-12 22:03:41 +02:00
damocles
ef40b03c87 skills: add forge-issue-filing skill 2026-08-12 21:56:00 +02:00
iris
086f3f43d6 claude-plugins: add headless-screenshot skill to base
Captures a lesson from this session: "no browser in this container"
usually means no browser pre-installed, not unreachable. nixpkgs#chromium
is a `nix shell` away and one headless invocation renders a page +
writes a PNG, no puppeteer/playwright needed for a static screenshot.

Every agent hits "I have no browser" sooner or later when reviewing a
frontend change; this has been rediscovered independently across
several sessions rather than remembered. Belongs in base (every agent
needs it, not role-specific) alongside the sibling skills already
there.
2026-08-12 18:31:55 +02:00
damocles
a962fae348 claude-subagents skill: add concurrency guidance for container memory cap 2026-08-01 11:24:58 +02:00
damocles
275962b8c9 claude-subagents skill: add guidance on splitting a big batch across parallel subagents 2026-08-01 11:24:58 +02:00
damocles
9b29c6a172 hive-forge: lint no-reviewer checks actual requested-reviewers, not a text mention 2026-07-27 19:07:36 +02:00
damocles
a155ea7b7d claude-plugins: add forge-triage skill 2026-07-27 19:07:36 +02:00
damocles
043a294876 claude-plugins: move pr-review skill into base, not its own plugin 2026-07-27 17:04:51 +02:00
damocles
c365bd7e56 claude-plugins: add forge-workflow skill to the base plugin 2026-07-27 16:19:46 +02:00
damocles
c236c16c52 claude-plugins: split agent-hygiene guidance into five focused skills 2026-07-27 16:19:17 +02:00
damocles
ca699005b9 claude-plugins: add matrix-agent specialized plugin 2026-07-27 16:17:24 +02:00
damocles
1dc8387996 claude-plugins: add claude-subagents skill 2026-07-27 16:04:19 +02:00
damocles
896dfc6194 claude-plugins: state-hygiene skill - archive files go in a subdir, not state top level 2026-07-27 13:56:29 +02:00
damocles
291abe6e41 claude-plugins: drop hive-specific /knowledge/notes-hygiene.md reference from state-hygiene skill 2026-07-27 13:56:29 +02:00
damocles
1d3f22805f claude-plugins: generalize state-hygiene into a shared base plugin for all agents 2026-07-27 13:56:29 +02:00
damocles
2bd1b0a3d5 claude-plugins: rename notes-hygiene to state-hygiene 2026-07-27 13:56:29 +02:00
damocles
bc83fde4ad claude-plugins: ship a hyperhive-authored notes-hygiene skill by default 2026-07-27 13:56:29 +02:00