claw-code/rust/crates/rusty-claude-cli/src
TheArchitectit 3438fe8f2d feat(team): port subagent_model, parallel tool exec, team coordination layer
Port the team-enhancement feature layer from feat/multi-tool-exec onto
feat/team-test so the agent-teams stack is buildable and testable on top
of the current CLI/runtime.

Subagent model (config wiring):
- Add subagent_model field to RuntimeFeatureConfig + RuntimeConfig::subagent_model()
  accessor + parse_optional_subagent_model() so the subagentModel setting
  (already validated by config_validate.rs) is now actually read and stored.
- Agent tool's resolve_agent_model falls back to subagentModel from config
  when no explicit model is passed.

Parallel tool execution:
- Re-export ToolCall/ToolResult/TurnProgressReporter from runtime so the
  CliToolExecutor::execute_batch override type-checks.
- Override execute_batch to classify read-only tools (read_file, glob/grep
  search, WebFetch/WebSearch, LSP, Git*, ToolSearch, Skill, Agent*,
  TeamStatus, Task*) as parallel-safe and run them concurrently via
  std:🧵:scope; everything else stays sequential. Results return in
  original model order.

Team coordination layer (cherry-picked from feat/multi-tool-exec):
- AgentMessage, TaskClaim, TeamStatus tools + shared mailbox directory +
  mode presets (tiny/1x ... mega/6x) + enriched TeamCreate/Agent tool
  descriptions + background team watcher.
- /team slash command: on/off/status/toggle of CLAWD_AGENT_TEAMS (the flag
  TeamCreate requires), replacing the info-only stub. Spec updated to
  [on|off|status].
- resolve_conflicts resolved: de-duplicated SlashCommand::Team/Setup arms
  and ReadOutcome::TeamToggle arms that the cherry-picks overlapped with
  the existing /team parse fix.

Verification:
- cargo build --workspace OK
- cargo test -p tools --lib: 111 passed (1 env failure: repl_executes_python_code)
- cargo test -p runtime --lib team_cron: 17 passed
- cargo test -p commands --lib: 42 passed (incl /team parse regression)
- cargo test -p rusty-claude-cli --bin claw: 345 passed
- scripts/fmt.sh --check OK

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-17 11:48:17 -05:00
..
tui fix(tui): selectable command palette, top-commands shortcut, capture slash output 2026-06-16 16:19:14 -05:00
agent_view.rs feat(tui): Sprint 6 — Agent View overlay with session monitoring 2026-06-11 19:19:38 -05:00
chat_mode.rs feat(tui): Sprint 5 — chat modes, /diff, /undo, /ls commands 2026-06-11 19:15:02 -05:00
command_palette.rs fix(tui): selectable command palette, top-commands shortcut, capture slash output 2026-06-16 16:19:14 -05:00
init.rs fix: scaffold safe init settings 2026-06-04 15:34:15 +09:00
input.rs feat: agent teams with task claiming, context management, and team monitoring 2026-06-10 16:49:34 -05:00
keybindings.rs fix(tui): selectable command palette, top-commands shortcut, capture slash output 2026-06-16 16:19:14 -05:00
main.rs feat(team): port subagent_model, parallel tool exec, team coordination layer 2026-06-17 11:48:17 -05:00
markdown.rs fix(tui): test fix, theme migration, zero hardcoded colors in rendering 2026-06-12 10:25:11 -05:00
render.rs Remove the deprecated Claude subscription login path and restore a green Rust workspace 2026-04-11 17:24:44 +00:00
setup_wizard.rs feat(setup): separate env namespace for custom OpenAI-compat provider 2026-06-16 13:30:15 -05:00
theme.rs feat(tui): Sprint 3 — theme system with 11 built-in themes 2026-06-11 19:08:30 -05:00
tui_error.rs feat(tui): Sprint 0 complete — panic hook, resize, TuiError, unicode-width 2026-06-11 18:42:21 -05:00
tui_update.rs fix(tui): Sprint 1 — ProviderSwap fix, status race, memory bound, token tracking 2026-06-11 18:49:15 -05:00