Skip to content

feat(fleet): add /brain skill + brain/retire subcommands (v0.9.0) - #7

Merged
convenientlymike merged 1 commit into
mainfrom
feat/brain-retire
Sep 10, 2026
Merged

convenientlymike merged 1 commit into
mainfrom
feat/brain-retire

Conversation

@convenientlymike

Copy link
Copy Markdown
Owner

What & why

The brain (knowledge-oracle + Brain-agent seat) and retire (safe on-demand agent unload) capabilities had shipped only in a downstream install and were never back-ported to this source repo — so no fresh install.sh could pick them up. This lands them here, sanitized for the public repo.

Changes

  • /brain — a third agent skill under .fleet/skills/ (installed into the target's .claude/skills/ like /coordinator + /arm). Rewritten generic + leak-free: no private hub paths, no corpuscrawl, no agent numbers, no project specifics. Any memory-corpus tool is an optional PATH integration; brain degrades gracefully when none is present and uses only Fleet's own DM / board / state.
  • fleet.sh brain <q> | ask "<q>" | serve | who | stand-down + fleet.sh retire [<agent>] [--force] — lazy-loaded from .fleet/bin/brain-retire.sh so the hot path stays lean.
  • retire works for ANY agent (agent-N / short / session-id; no arg = self): releases claims, removes the record + wake breadcrumb, vacates the Brain seat if held, emits a retire board event. Safe-by-default — refuses a dirty-claim or stranded-DM retire without --force.

Forcing function

.fleet/bin/selftest-brain-retire.sh (hermetic, isolated state) proves the happy paths and that the safety guards BITE. Wired into CI as a dedicated selftest job run in a real git tree so the dirty-claim negative control actually fires — the probe path was moved out of .fleet/tmp/ so the repo's broad tmp/ gitignore can't silently mute it.

Verification (byproduct)

  • selftest 15/15 (dirty-claim negative control fires, not skips)
  • shellcheck --severity=warning clean on all scripts
  • all three CI jobs mirrored green locally (shellcheck · selftest · smoke)
  • real temp-install propagated brain/SKILL.md into .claude/skills/ and ran brain/retire (self + foreign agent by label)

VERSION 0.8.1 → 0.9.0; CHANGELOG + README updated.

🤖 Generated with Claude Code

Back-ports the brain (knowledge-oracle + Brain-agent seat) and retire
(safe on-demand agent unload) capabilities into the SOURCE repo. They had
shipped only in a downstream install and never landed here, so no fresh
`install.sh` could pick them up.

- /brain: a third agent skill under .fleet/skills/ (install.sh drops it
  into the target's .claude/skills/ like /coordinator + /arm). Rewritten
  GENERIC + leak-free for this PUBLIC repo — no private hub paths, no
  corpuscrawl, no agent numbers, no project specifics. Any memory-corpus
  tool is an OPTIONAL PATH integration; brain degrades gracefully when none
  is present and uses only Fleet's own DM / board / state.
- fleet.sh brain <q> | ask "<q>" | serve | who | stand-down, plus
  fleet.sh retire [<agent>] [--force] — lazy-loaded from
  .fleet/bin/brain-retire.sh (hot path stays lean).
- retire works for ANY agent (agent-N / short / session-id; no arg = self):
  releases claims, removes the record + wake breadcrumb, vacates the Brain
  seat if held, emits a retire board event. Safe-by-default — refuses a
  dirty-claim or stranded-DM retire without --force.
- Forcing function: selftest-brain-retire.sh (hermetic, isolated state)
  proves the happy paths AND that the safety guards BITE; wired into CI as a
  dedicated selftest job run in a real git tree so the dirty-claim negative
  control actually fires (probe path moved out of .fleet/tmp/ so the repo's
  broad tmp/ gitignore can't silently mute it).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@convenientlymike
convenientlymike merged commit 590679b into main Sep 10, 2026
3 checks passed
@convenientlymike
convenientlymike deleted the feat/brain-retire branch September 10, 2026 16:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant