Community Framework: CAST — production multi-agent framework built on Claude Code hooks + feature requests from real usage
What is CAST?
CAST (Claude Agent Specialist Team) is an open-source multi-agent framework built entirely on Claude Code's hook system, agent SDK, and skills architecture. It's been in production for several months with 17 agents, 8 skills, 262 BATS tests, a SQLite observability backend, a React dashboard, and a TUI dashboard — distributed as a 7-repo ecosystem across 6 Homebrew taps. Now at v4.2.
GitHub: https://github.com/ek33450505/claude-agent-team
Sharing this as a community framework example and because building it surfaced concrete feature gaps worth flagging.
---
What CAST demonstrates is possible
- Hook-driven quality gates: code-reviewer approval required before every commit via
PreToolUse - Event sourcing:
cast_emit_event→cast.db→ queryable React dashboard (sessions, token spend by agent, hook health) - Semantic agent routing with wave-based parallel dispatch and fan-out summaries
- TUI dashboard (
cast-dash): a Textual-based 4-panel terminal UI with live agent/session monitoring — driven entirely bycast.dband hook events, no external telemetry brew install castvia Homebrew tap — package manager distribution for a Claude Code framework
---
Feature requests from real usage
1. async: true should be documented as a first-class pattern for telemetry hooks
CAST wires 19 hooks. All were synchronous until we discovered async: true. Every cast_emit_event DB write was blocking Claude's execution on every tool call. The docs mention async but don't surface it as the obvious default for logging/telemetry hooks. A "hook performance patterns" doc section would help.
2. if: field should be in the main hooks quickstart
CAST's security guard was firing on every ls. The if: field (v2.1.85) eliminates process spawning for irrelevant calls — this is a significant performance win that most hook-heavy users won't discover until they notice slowdowns.
3. isolation: worktree in agent frontmatter vs body text
CAST documents isolation: worktree as a pattern in agent body text, instructing callers to set it. The frontmatter declaration is the authoritative way but it's easy to confuse the two. A clear doc callout that isolation: worktree in frontmatter is automatically applied (vs it being advisory in body text) would prevent this.
4. effort frontmatter — needs a recommended tiering guide
CAST selects sonnet vs haiku per agent but doesn't set effort. Without guidance, every agent defaults to session-level effort — lightweight agents (commit, review) overpay for thinking tokens, deep agents (security, planner) are underpowered. A recommended tiering (lightweight/medium/deep) in the agent docs would be immediately useful.
5. Plugin marketplace / distribution path for community frameworks
CAST is structured exactly like a plugin (agents + skills + hooks + MCP config). The Plugins system would let it be distributed without Homebrew. Is there a process for community framework submissions to the plugin registry?
---
Happy to answer questions or share more details about the architecture. The cast.db observability schema and hook configuration are fully open-source if useful as reference for docs or examples.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗