deepseek-harness/docs
Tianyi Cui 7cc7b9cf7f feat(subagent): enrich subagent/start + subagent/end lifecycle events (observe-only)
A hooks bridge translating SubagentStart/SubagentStop needs to know WHICH kind of
subagent ran and WHAT it produced — Claude Code's hooks carry subagent_type and the
child's final message. Enrich the existing lifecycle emits to match, observe-only:

- agentType: an optional caller-supplied subagent-kind label (CC's subagent_type),
  added to SubagentStartRequest and carried VERBATIM onto both subagent/start
  (SubagentRunInfo) and subagent/end (SubagentRunEndInfo). The seam never interprets
  it. dsh-tool-subagent threads it from a new optional Config.agentType, so a
  deployment exposing multiple subagent kinds (one tool load per kind) labels each.
- lastAssistantMessage: the child's final output (SubagentResult.output), added to
  SubagentRunEndInfo on the settle path so an observer sees what the subagent
  produced without holding the run. Absent on the reject path (no result produced).

Strictly observe-only: both events stay plain emits (subagent/end fires from a
detached .then and awaits no listener). A control-flow subagent/end (awaited
waterfall returning a decision) would need the emit→waterfall reshape, awaiting
listeners before settling, and a provider resume capability — deferred to the
background/steering redesign (FIXME(subagent-continuation) anchors it). RFC:
implemented/feature/2026-06-30-subagent-observe-enrich.md.
2026-06-30 21:29:08 +08:00
..
cookbook fix(events): address Codex review — protect post-execute result, purge stale tools/execute refs 2026-06-30 20:25:30 +08:00
cordis-catalog feat(subagent): enrich subagent/start + subagent/end lifecycle events (observe-only) 2026-06-30 21:29:08 +08:00
core-data-structures feat(subagent): enrich subagent/start + subagent/end lifecycle events (observe-only) 2026-06-30 21:29:08 +08:00
postmortem Fix doc cross-links for the hierarchy; add package-path + shape gates 2026-06-20 23:12:14 +08:00
rfc feat(subagent): enrich subagent/start + subagent/end lifecycle events (observe-only) 2026-06-30 21:29:08 +08:00
AGENTS.md docs(rfc): classify RFCs by kind via path-encoded subdirectories 2026-06-20 22:29:45 +08:00
architecture.md feat(events): interception seams — the typed-Decision surface for hooks 2026-06-30 17:11:18 +08:00
development.md docs: sync development CI gate docs 2026-06-22 12:54:11 +08:00
module-graph.md feat(tool-todo): add the model-facing todo_write tool 2026-06-29 10:30:52 +08:00