Event Producer And Consumer Matrix

This matrix shows which packages dispatch each harness-owned event and which packages listen to it. Events are many-to-many, so the dense relation data is presented as a table rather than one large graph. Receiver and event-name types also cover contained dispatch sites that deliberately bypass ctx.emit, such as subagent lifecycle containment.

Event Mode Declared in Dispatchers Listeners
agent-loop/config-start-failed emit packages/core/agent-loop/src/index.ts:183 agent-loop (events.dispatch) -
agent-preset/selected emit packages/preset/agent-presets/src/types.ts:13 agent-presets (emit) apiproxy
agent/created emit packages/core/agent/src/runtime-types.ts:159 agent (events.dispatch) agent-presets, goal-round-driver, schedule
agent/disposed emit packages/core/agent/src/runtime-types.ts:168 agent (events.dispatch) agent-loop, goal-round-driver, subagent
agent/error emit packages/core/agent/src/runtime-types.ts:290 agent-loop (emit) acp, apiproxy, goal-round-driver, session-telemetry
agent/inbox/claimed emit packages/core/agent/src/runtime-types.ts:197 agent-loop (emit) acp, goal-round-driver, subagent, tool-jobs
agent/inbox/discarded emit packages/core/agent/src/runtime-types.ts:205 agent-loop (emit) goal-round-driver, subagent
agent/inbox/inserted emit packages/core/agent/src/runtime-types.ts:186 agent-loop (emit) goal-round-driver
agent/pre-step waterfall packages/core/agent/src/runtime-types.ts:231 agent-loop (waterfall) agent-instructions, compaction-basic, goal-round-driver, hooks-claude-code, hooks-codex, plan-mode, repeat-tool-reminder, session-checkpoint-policy, subagent-in-process-driver, time-context, tmux-context, tool-cordis, tool-skill
agent/request waterfall packages/core/agent/src/runtime-types.ts:244 agent-loop (waterfall) agent
agent/request-error waterfall packages/core/agent/src/runtime-types.ts:260 agent-loop (waterfall) compaction-basic, llm-retry
agent/session-start emit packages/core/agent/src/runtime-types.ts:217 agent-loop (emitAgentEvent) goal, goal-round-driver, hooks-claude-code, hooks-codex
agent/status emit packages/core/agent/src/runtime-types.ts:178 agent-loop (emit) agent, apiproxy, compaction-basic, goal-round-driver, schedule, server
agent/turn-stopping serial packages/core/agent/src/runtime-types.ts:278 agent-loop (serial) hooks-claude-code, hooks-codex
approval/request waterfall packages/interaction/user-approval/src/index.ts:30 user-approval (waterfall) acp, apiproxy
commands/change emit packages/interaction/commands/src/types.ts:72 commands (events.dispatch) apiproxy
cordis/dynamic-package emit packages/extensions/cordis-host-runner/src/types.ts:379 cordis-host-runner (emit) apiproxy
cordis/dynamic-retract emit packages/extensions/cordis-host-runner/src/types.ts:385 cordis-host-runner (emit) apiproxy
cordis/inspect-query emit packages/extensions/cordis-host-runner/src/types.ts:391 cordis-host-runner (emit) apiproxy
cordis/inspect-query-resolved emit packages/extensions/cordis-host-runner/src/types.ts:397 cordis-host-runner (emit) apiproxy
cordis/request-run emit packages/extensions/cordis-host-runner/src/types.ts:367 cordis-host-runner (emit) apiproxy
cordis/request-run-resolved emit packages/extensions/cordis-host-runner/src/types.ts:373 cordis-host-runner (emit) apiproxy
credentials/updated emit packages/credentials/credentials/src/types.ts:29 credentials (events.dispatch) apiproxy, credentials
domain/changed emit packages/storage/storage-domain/src/events.ts:46 storage-domain (emit) apiproxy, storage-domain, workspace
fs/edit-intent waterfall packages/fs/fs/src/index.ts:66 tool-fs (waterfall), tool-str-replace-editor (waterfall) fs-observation-policy
fs/observed emit packages/fs/fs/src/index.ts:76 tool-fs (emit), tool-str-replace-editor (emit) fs-observation-policy, skill-filesystem
fs/write-intent waterfall packages/fs/fs/src/index.ts:58 tool-fs (waterfall), tool-str-replace-editor (waterfall) fs-observation-policy
goal/changed emit packages/goal/goal/src/domain.ts:114 goal (emit) goal-round-driver
llm/adapters-updated emit packages/llm/llm/src/types.ts:23 llm (events.dispatch) apiproxy, llm
llm/stream waterfall packages/llm/llm/src/index.ts:64 llm (waterfall) agent-loop, llm, llm-replay, session-checkpoint-policy, session-title
session-telemetry/record waterfall packages/session/session-telemetry/src/index.ts:43 session-telemetry (waterfall) -
session/created emit packages/core/session/src/index.ts:54 session (events.dispatch) apiproxy, compaction, goal, hook-protocol, llm-retry, permission-presets, plan-mode, schedule, server, session, session-persistence, session-telemetry, time-context, tool-workflow, tools, user-approval
session/disposed emit packages/core/session/src/index.ts:64 session (events.dispatch) agent-loop, apiproxy, session-persistence, session-projection-cache, session-telemetry, session-title
session/event emit packages/core/session/src/index.ts:76 session (events.dispatch) acp, agent-instructions, agent-loop, agent-presets, apiproxy, compaction, compaction-basic, goal, goal-round-driver, hook-protocol, loader-smoke, server, session, session-persistence, session-projection, session-projection-cache, session-telemetry, session-telemetry-otel, session-title, token-meter, tool-workflow, tools, user-approval
session/flush parallel packages/core/session/src/index.ts:85 session (events.dispatch) session-persistence, session-telemetry
settings/document-updated emit packages/settings/settings/src/types.ts:48 settings (events.dispatch) apiproxy
settings/updated emit packages/settings/settings/src/types.ts:35 settings (events.dispatch) settings
skills/change emit packages/skill/skill/src/index.ts:297 skill (events.dispatch) -
subagent/end emit packages/subagent/subagent/src/index.ts:166 subagent (events.dispatch) hooks-claude-code, server, subagent
subagent/provider-added emit packages/subagent/subagent/src/index.ts:140 subagent (emit) subagent, tool-subagent
subagent/provider-removed emit packages/subagent/subagent/src/index.ts:146 subagent (events.dispatch) subagent, tool-subagent
subagent/start emit packages/subagent/subagent/src/index.ts:157 subagent (events.dispatch) hooks-claude-code, subagent
system-prompt/assemble waterfall packages/core/system-prompt/src/index.ts:31 system-prompt (waterfall) agent, agent-presets, system-prompt
system-prompt/change emit packages/core/system-prompt/src/index.ts:37 system-prompt (emit) -
tools/change emit packages/core/tools/src/index.ts:207 tools (emit) -
tools/code-dispatch-log waterfall packages/core/tools/src/index.ts:189 tools (waterfall) spill-policy
tools/execute waterfall packages/core/tools/src/index.ts:163 tools (waterfall) session-checkpoint-policy, timeout-policy
tools/post-execute waterfall packages/core/tools/src/index.ts:175 tools (waterfall) hooks-claude-code, hooks-codex, repeat-tool-reminder, spill-policy, tool-fs-search
tools/pre-execute waterfall packages/core/tools/src/index.ts:152 tools (waterfall) hooks-claude-code, hooks-codex, tool-jobs
tools/result emit packages/core/tools/src/index.ts:197 tools (events.dispatch) agent-instructions, subagent-in-process-driver
workflow/agent-end emit packages/workflow/workflow/src/index.ts:79 workflow (events.dispatch) tool-workflow, workflow
workflow/agent-start emit packages/workflow/workflow/src/index.ts:68 workflow (events.dispatch) tool-workflow, workflow
workflow/end emit packages/workflow/workflow/src/index.ts:89 workflow (events.dispatch) workflow
workflow/log emit packages/workflow/workflow/src/index.ts:58 workflow (events.dispatch) -
workflow/phase emit packages/workflow/workflow/src/index.ts:51 workflow (events.dispatch) -
workflow/start emit packages/workflow/workflow/src/index.ts:43 workflow (events.dispatch) workflow

Non-harness or undeclared event strings seen in package source

Event string Dispatchers Listeners
internal/dispatch - commands, compaction, fs, goal, goal-round-driver, hook-protocol, llm-retry, permission-presets, plan-mode, sandbox-policy, schedule, scope, session, session-title, subagent, terminal-bash, time-context, tool-todo, tool-workflow, tools, user-approval, workflow
internal/plugin - loader, lsp-stdio, webserver
internal/service - agent-presets, gateway
internal/status - agent

Maintenance mode: generated: Cordis event declarations and producer/listener edges are resolved from the repository TypeScript Program.

事件生产方与消费方矩阵

本矩阵展示哪些包会派发各个 harness 自有事件,以及哪些包会监听这些事件。事件之间存在多对多关系,因此密集的关系数据以表格而非一张大型关系图呈现。接收方和事件名称类型还涵盖有意绕过 ctx.emit 的内含派发位置,例如 subagent 生命周期封装。

事件 模式 声明位置 派发方 监听方
agent-loop/config-start-failed emit packages/core/agent-loop/src/index.ts:183 agent-loop (events.dispatch) -
agent-preset/selected emit packages/preset/agent-presets/src/types.ts:13 agent-presets (emit) apiproxy
agent/created emit packages/core/agent/src/runtime-types.ts:159 agent (events.dispatch) agent-presets, goal-round-driver, schedule
agent/disposed emit packages/core/agent/src/runtime-types.ts:168 agent (events.dispatch) agent-loop, goal-round-driver, subagent
agent/error emit packages/core/agent/src/runtime-types.ts:290 agent-loop (emit) acp, apiproxy, goal-round-driver, session-telemetry
agent/inbox/claimed emit packages/core/agent/src/runtime-types.ts:197 agent-loop (emit) acp, goal-round-driver, subagent, tool-jobs
agent/inbox/discarded emit packages/core/agent/src/runtime-types.ts:205 agent-loop (emit) goal-round-driver, subagent
agent/inbox/inserted emit packages/core/agent/src/runtime-types.ts:186 agent-loop (emit) goal-round-driver
agent/pre-step waterfall packages/core/agent/src/runtime-types.ts:231 agent-loop (waterfall) agent-instructions, compaction-basic, goal-round-driver, hooks-claude-code, hooks-codex, plan-mode, repeat-tool-reminder, session-checkpoint-policy, subagent-in-process-driver, time-context, tmux-context, tool-cordis, tool-skill
agent/request waterfall packages/core/agent/src/runtime-types.ts:244 agent-loop (waterfall) agent
agent/request-error waterfall packages/core/agent/src/runtime-types.ts:260 agent-loop (waterfall) compaction-basic, llm-retry
agent/session-start emit packages/core/agent/src/runtime-types.ts:217 agent-loop (emitAgentEvent) goal, goal-round-driver, hooks-claude-code, hooks-codex
agent/status emit packages/core/agent/src/runtime-types.ts:178 agent-loop (emit) agent, apiproxy, compaction-basic, goal-round-driver, schedule, server
agent/turn-stopping serial packages/core/agent/src/runtime-types.ts:278 agent-loop (serial) hooks-claude-code, hooks-codex
approval/request waterfall packages/interaction/user-approval/src/index.ts:30 user-approval (waterfall) acp, apiproxy
commands/change emit packages/interaction/commands/src/types.ts:72 commands (events.dispatch) apiproxy
cordis/dynamic-package emit packages/extensions/cordis-host-runner/src/types.ts:379 cordis-host-runner (emit) apiproxy
cordis/dynamic-retract emit packages/extensions/cordis-host-runner/src/types.ts:385 cordis-host-runner (emit) apiproxy
cordis/inspect-query emit packages/extensions/cordis-host-runner/src/types.ts:391 cordis-host-runner (emit) apiproxy
cordis/inspect-query-resolved emit packages/extensions/cordis-host-runner/src/types.ts:397 cordis-host-runner (emit) apiproxy
cordis/request-run emit packages/extensions/cordis-host-runner/src/types.ts:367 cordis-host-runner (emit) apiproxy
cordis/request-run-resolved emit packages/extensions/cordis-host-runner/src/types.ts:373 cordis-host-runner (emit) apiproxy
credentials/updated emit packages/credentials/credentials/src/types.ts:29 credentials (events.dispatch) apiproxy, credentials
domain/changed emit packages/storage/storage-domain/src/events.ts:46 storage-domain (emit) apiproxy, storage-domain, workspace
fs/edit-intent waterfall packages/fs/fs/src/index.ts:66 tool-fs (waterfall), tool-str-replace-editor (waterfall) fs-observation-policy
fs/observed emit packages/fs/fs/src/index.ts:76 tool-fs (emit), tool-str-replace-editor (emit) fs-observation-policy, skill-filesystem
fs/write-intent waterfall packages/fs/fs/src/index.ts:58 tool-fs (waterfall), tool-str-replace-editor (waterfall) fs-observation-policy
goal/changed emit packages/goal/goal/src/domain.ts:114 goal (emit) goal-round-driver
llm/adapters-updated emit packages/llm/llm/src/types.ts:23 llm (events.dispatch) apiproxy, llm
llm/stream waterfall packages/llm/llm/src/index.ts:64 llm (waterfall) agent-loop, llm, llm-replay, session-checkpoint-policy, session-title
session-telemetry/record waterfall packages/session/session-telemetry/src/index.ts:43 session-telemetry (waterfall) -
session/created emit packages/core/session/src/index.ts:54 session (events.dispatch) apiproxy, compaction, goal, hook-protocol, llm-retry, permission-presets, plan-mode, schedule, server, session, session-persistence, session-telemetry, time-context, tool-workflow, tools, user-approval
session/disposed emit packages/core/session/src/index.ts:64 session (events.dispatch) agent-loop, apiproxy, session-persistence, session-projection-cache, session-telemetry, session-title
session/event emit packages/core/session/src/index.ts:76 session (events.dispatch) acp, agent-instructions, agent-loop, agent-presets, apiproxy, compaction, compaction-basic, goal, goal-round-driver, hook-protocol, loader-smoke, server, session, session-persistence, session-projection, session-projection-cache, session-telemetry, session-telemetry-otel, session-title, token-meter, tool-workflow, tools, user-approval
session/flush parallel packages/core/session/src/index.ts:85 session (events.dispatch) session-persistence, session-telemetry
settings/document-updated emit packages/settings/settings/src/types.ts:48 settings (events.dispatch) apiproxy
settings/updated emit packages/settings/settings/src/types.ts:35 settings (events.dispatch) settings
skills/change emit packages/skill/skill/src/index.ts:297 skill (events.dispatch) -
subagent/end emit packages/subagent/subagent/src/index.ts:166 subagent (events.dispatch) hooks-claude-code, server, subagent
subagent/provider-added emit packages/subagent/subagent/src/index.ts:140 subagent (emit) subagent, tool-subagent
subagent/provider-removed emit packages/subagent/subagent/src/index.ts:146 subagent (events.dispatch) subagent, tool-subagent
subagent/start emit packages/subagent/subagent/src/index.ts:157 subagent (events.dispatch) hooks-claude-code, subagent
system-prompt/assemble waterfall packages/core/system-prompt/src/index.ts:31 system-prompt (waterfall) agent, agent-presets, system-prompt
system-prompt/change emit packages/core/system-prompt/src/index.ts:37 system-prompt (emit) -
tools/change emit packages/core/tools/src/index.ts:207 tools (emit) -
tools/code-dispatch-log waterfall packages/core/tools/src/index.ts:189 tools (waterfall) spill-policy
tools/execute waterfall packages/core/tools/src/index.ts:163 tools (waterfall) session-checkpoint-policy, timeout-policy
tools/post-execute waterfall packages/core/tools/src/index.ts:175 tools (waterfall) hooks-claude-code, hooks-codex, repeat-tool-reminder, spill-policy, tool-fs-search
tools/pre-execute waterfall packages/core/tools/src/index.ts:152 tools (waterfall) hooks-claude-code, hooks-codex, tool-jobs
tools/result emit packages/core/tools/src/index.ts:197 tools (events.dispatch) agent-instructions, subagent-in-process-driver
workflow/agent-end emit packages/workflow/workflow/src/index.ts:79 workflow (events.dispatch) tool-workflow, workflow
workflow/agent-start emit packages/workflow/workflow/src/index.ts:68 workflow (events.dispatch) tool-workflow, workflow
workflow/end emit packages/workflow/workflow/src/index.ts:89 workflow (events.dispatch) workflow
workflow/log emit packages/workflow/workflow/src/index.ts:58 workflow (events.dispatch) -
workflow/phase emit packages/workflow/workflow/src/index.ts:51 workflow (events.dispatch) -
workflow/start emit packages/workflow/workflow/src/index.ts:43 workflow (events.dispatch) workflow

包源码中出现的非 harness 或未声明事件字符串

事件字符串 派发方 监听方
internal/dispatch - commands, compaction, fs, goal, goal-round-driver, hook-protocol, llm-retry, permission-presets, plan-mode, sandbox-policy, schedule, scope, session, session-title, subagent, terminal-bash, time-context, tool-todo, tool-workflow, tools, user-approval, workflow
internal/plugin - loader, lsp-stdio, webserver
internal/service - agent-presets, gateway
internal/status - agent

维护模式:生成内容。Cordis 事件声明及生产方/监听方的关系边由仓库的 TypeScript Program 解析。