Files
Richard Tang b2efa179ea
Release / Create Release (push) Waiting to run
docs: note cache fix in v0.10.4 release notes
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 21:27:24 -07:00

6.1 KiB

🐝 Hive Agent v0.10.4: Skill & Tool Library

Skills and tools move from something the framework hands down into something you curate. Every queen and every colony now has a dedicated allowlist and a UI to manage it, and the system prompt gets smaller and cache-friendlier along the way.


Highlights

v0.10.4 turns skills and tools into first-class, user-editable surfaces.

Before this release, the skill and tool catalogs were effectively framework defaults: whatever a queen could reach, every queen could reach. Now each queen has her own tool allowlist, her own skills, and a pair of library pages where you can browse, enable, disable, upload, and author them. Colonies inherit their founding queen's configuration at creation time and then drift on their own — flip a tool off for a colony without touching the queen, or the other way around.

A quiet but important second theme: the system prompt is now static across a session. Date and time — the main source of per-turn churn — are now injected at turn time instead of baked into the prompt. That keeps the prompt prefix stable so provider-side prompt caching can do its job.


🆕 What's New

Skill Library

  • Skill Library page — browse every skill by scope (queen / colony / framework preset), view SKILL.md inline, toggle per-scope enablement, upload skills as .md or .zip, and author new skills from the UI.
  • Per-scope overrides — skill enablement is recorded in ~/.hive/agents/queens/{queen_id}/skills_overrides.json and ~/.hive/colonies/{colony_name}/skills_overrides.json; framework presets stay read-only, user-authored skills live under each scope's own skills directory.
  • Skill provenance — the API and UI now distinguish framework-preset skills, queen-authored skills, and colony-authored skills, so you can tell at a glance who owns a given skill.
  • Skill authoring primitives — a shared framework.skills.authoring module validates names, parses frontmatter, and materializes skill folders for the UI upload path, the create_colony tool's inline skills, and future runtime-learned skills.
  • Preset rename — built-in skills moved from _default_skills/ to _preset_skills/ to match the new "preset vs. user" split. Existing browser/linkedin/x automation skills carry over untouched.

Tool Library

  • Tool Library page with a shared ToolsEditor component used by the queen profile and colony settings panels.
  • Per-queen tool allowlist at ~/.hive/agents/queens/{queen_id}/tools.json: null = allow all, [] = disable all, ["foo", "bar"] = only these MCP tools pass the filter.
  • Per-colony tool allowlist at ~/.hive/colonies/{colony_name}/tools.json, with the same schema, atomic writes, and independent lifecycle.
  • Configurable defaults — queens now carry a default tool/skill bundle that seeds each new colony, and the bundle itself is editable.
  • Colony inheritance — when a queen spawns a colony, the colony starts from the queen's tool and skill configuration. After spawn the two diverge freely.
  • Colony sidecartools.json lives next to metadata.json so identity/provenance (queen, created_at, workers) and tool gating evolve independently.

MCP Server Management

  • MCP Servers panel — dedicated settings UI for browsing, configuring, and enabling bundled and user MCP servers.
  • /api/mcp routes for listing built-in servers, inspecting state, and reporting errors with structured MCP error responses.
  • Tool catalog wiring — live queen sessions now surface their MCP tool catalog to the queen-tools and colony-tools endpoints, so the UI shows exactly what the running session can see.

Prompt & Runtime

  • Static system prompt — the agent loop, conversation, and provider adapters (LiteLLM, Antigravity, Codex, Mock) now build and freeze the system prompt once per session. Per-turn values that used to churn the prompt are gone.
  • Date/time injected at turn time — today's date and current time move from the system prompt into a turn-level injection path that updates cursor persistence and queen-lifecycle tooling.
  • Queen orchestrator — refreshed to pair with the static prompt model and the new tool/skill configuration layers.
  • Session manager — tightened session-creation input validation and reflection/skill edge handling; "create new session and switch branch" is now reliable.

🐛 Bug Fixes

  • No-cache middleware on /api/* — every API response now carries Cache-Control: no-store. Without this, a one-off bad response (e.g. the SPA catch-all leaking index.html for an /api/* URL before a route was registered) could get pinned in the browser's disk cache and replayed forever, since our JSON handlers don't emit ETag/Last-Modified. Hard-refresh no longer required to recover.
  • Tools & skills registration — queens and colonies no longer end up with stale or duplicated entries after reloads.
  • Session creation — invalid inputs are rejected up front with clear errors instead of surfacing later as runtime failures.
  • Skill / reflection edges — tightened handling so reflection runs no longer see half-built skill state during scope reloads.
  • Create new session + switch branch flow works end-to-end without orphaning sessions.
  • CI — broken workflow repaired.

🧪 Tests

  • test_routes_skills.py, test_skill_overrides.py, test_colony_tools.py, test_queen_tools.py, test_mcp_routes.py — coverage added for every new route group and the override store.

🚀 Upgrading from v0.10.3

No migration. Pull main at v0.10.4 and restart Hive — existing ~/.hive/ profiles, queens, colonies, and sessions keep working.

Two things to know:

  1. Preset skills directory renamed from _default_skills/ to _preset_skills/ inside the framework. If you had external scripts pointing at that path, update them. User-authored skills under ~/.hive/ are unaffected.
  2. First open of a queen or colony writes a tools.json sidecar the first time you edit its allowlist. If you don't touch the Tool Library, nothing is written and behavior matches v0.10.3 (allow all MCP tools).

Curate your queens. 🐝