Files
deepseek-harness/docs/event-producer-consumer.md
ZiyaZhang 57195d1934 refactor(experimental): drop experimental from the card package names
The four packages keep their directories under packages/experimental and
are registered as experimental name exceptions:

- @deepseek-ai/dsh-action-cards
- @deepseek-ai/dsh-client-ui-action-cards
- @deepseek-ai/dsh-creation-recommendations
- @deepseek-ai/dsh-client-ui-creation-recommendations

Loader row ids, plugin record names, message source kinds, the Remote
service name and locale namespaces are unchanged. Generated catalogs are
regenerated, and the page card Web fixture records the renamed bundle in
the skill's plugin catalog.
2026-10-22 20:48:18 -07:00

27 KiB

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:199 agent-loop (events.dispatch) -
agent-preset/selected emit packages/preset/agent-preset-registry/src/types.ts:66 agent-preset-registry (emit) cua, remotes
agent/assistant-stream emit packages/core/agent/src/runtime-types.ts:399 agent-loop (emit) headless, session-controller
agent/created serial packages/core/agent/src/runtime-types.ts:290 agent (serial) agent-team, browser-use-runtime, claude-code-mods, creation-recommendations, cua, file-reference-local, goal, goal-round-driver, hooks-claude-code, hooks-codex, loader-smoke, permission-presets, session-controller, tool-agent-team, tool-subagent
agent/disposed emit packages/core/agent/src/runtime-types.ts:299 agent (events.dispatch) action-cards, agent-loop, claude-code-mods, creation-recommendations, file-reference-local, goal-round-driver, session-controller, subagent, tool-agent-team, tool-subagent
agent/error emit packages/core/agent/src/runtime-types.ts:429 agent-loop (emit) acp, deepseek-account, goal-round-driver, headless, server, session-controller, session-telemetry, subagent
agent/inbox/claimed emit packages/core/agent/src/runtime-types.ts:328 agent-loop (emit) acp, goal-round-driver, subagent, tool-jobs, user-questions
agent/inbox/discarded emit packages/core/agent/src/runtime-types.ts:336 agent-loop (emit) goal-round-driver, subagent, user-questions
agent/inbox/inserted emit packages/core/agent/src/runtime-types.ts:317 agent-loop (emit) goal-round-driver, subagent, tool-jobs
agent/pre-step waterfall packages/core/agent/src/runtime-types.ts:350 agent-loop (waterfall) action-cards, agent, agent-instructions, claude-code-mods, compaction-basic, goal-round-driver, hooks-claude-code, hooks-codex, plan-mode, repeat-tool-reminder, session-checkpoint-policy, session-controller, session-reference, time-context, tmux-context, tool-skill
agent/request-error waterfall packages/core/agent/src/runtime-types.ts:389 agent-loop (waterfall) compaction-basic, compaction-image-offload, llm-retry
agent/status emit packages/core/agent/src/runtime-types.ts:309 agent-loop (emit) acp, agent-team, compaction-basic, goal-round-driver, server, session-controller
agent/turn-stopping serial packages/core/agent/src/runtime-types.ts:417 agent-loop (serial) hooks-claude-code, hooks-codex, workspace-changes
api-session/activity emit packages/api/session-controller/src/types.ts:600 session-controller (emit) remotes
api-session/added emit packages/api/session-controller/src/types.ts:580 session-controller (emit) remotes
api-session/error emit packages/api/session-controller/src/types.ts:607 session-controller (emit) remotes
api-session/removed emit packages/api/session-controller/src/types.ts:586 session-controller (emit) remotes
api-session/status emit packages/api/session-controller/src/types.ts:593 session-controller (emit) remotes
app-boot/config-reload emit packages/boot/app-boot/src/index.ts:53 app-boot (emit) settings
approval/request waterfall packages/interaction/user-approval/src/types.ts:87 user-approval (waterfall) acp, remotes, server
authorization/settled emit packages/credentials/authorization/src/index.ts:57 authorization (events.dispatch) -
commands/change emit packages/interaction/commands/src/types.ts:89 commands (events.dispatch) remotes
compaction/summary-error waterfall packages/compaction/compaction/src/index.ts:106 compaction-basic (waterfall) compaction-image-offload
connection/request waterfall packages/client/connection/src/index.ts:71 connection (waterfall) -
cordis/dynamic-package emit packages/extensions/cordis-host-runner/src/types.ts:383 cordis-host-runner (emit) remotes
cordis/dynamic-retract emit packages/extensions/cordis-host-runner/src/types.ts:389 cordis-host-runner (emit) remotes
cordis/inspect-query emit packages/extensions/cordis-host-runner/src/types.ts:395 cordis-host-runner (emit) remotes
cordis/inspect-query-resolved emit packages/extensions/cordis-host-runner/src/types.ts:401 cordis-host-runner (emit) remotes
cordis/request-run emit packages/extensions/cordis-host-runner/src/types.ts:371 cordis-host-runner (emit) remotes
cordis/request-run-resolved emit packages/extensions/cordis-host-runner/src/types.ts:377 cordis-host-runner (emit) remotes
credentials/record-updated emit packages/credentials/credentials/src/types.ts:99 credentials (events.dispatch) authorization, deepseek-account-platform, remotes
credentials/reference-updated emit packages/credentials/credentials/src/types.ts:87 credentials (events.dispatch) remotes
deepseek-account/model-sign-in-required emit packages/credentials/deepseek-account/src/types.ts:97 deepseek-account (emit) remotes
deepseek-account/session-expired emit packages/credentials/deepseek-account/src/types.ts:93 deepseek-account-platform (emit) account-controller, remotes
deepseek-account/signed-out emit packages/credentials/deepseek-account/src/index.ts:12 deepseek-account-platform (emit) deepseek-account
domain/changed emit packages/storage/storage-domain/src/events.ts:46 storage-domain (emit) workspace-controller
feedback/committed parallel packages/feedback/message-feedback/src/index.ts:58 message-feedback (parallel) session-telemetry-otel
fs/edit-intent waterfall packages/fs/fs/src/index.ts:67 tool-fs (waterfall), tool-str-replace-editor (waterfall) fs-observation-policy, workspace-changes
fs/observed emit packages/fs/fs/src/index.ts:77 tool-fs (emit), tool-str-replace-editor (emit) fs-observation-policy, skill-filesystem, workspace-files
fs/write-intent waterfall packages/fs/fs/src/index.ts:59 tool-fs (waterfall), tool-str-replace-editor (waterfall) fs-observation-policy, workspace-changes
goal/activation-changed emit packages/goal/goal/src/types.ts:147 goal (emit) remotes
goal/changed emit packages/goal/goal/src/domain.ts:114 goal (emit) goal-round-driver
hmr/change emit packages/boot/hmr/src/index.ts:35 hmr (emit) -
hmr/reload emit packages/boot/hmr/src/index.ts:40 hmr (emit) -
llm/adapters-updated emit packages/llm/llm/src/types.ts:23 llm (events.dispatch) acp, remotes
llm/stream waterfall packages/llm/llm/src/index.ts:75 llm (waterfall) llm-replay, session-checkpoint-policy, session-title
permission-presets/catalog-changed emit packages/interaction/permission-presets/src/types.ts:48 permission-presets (events.dispatch) remotes
plugin-manager/changed emit packages/boot/plugin-manager/src/types.ts:394 plugin-manager (emit) remotes
plugin-manager/install-log emit packages/boot/plugin-manager/src/types.ts:400 plugin-manager (emit) remotes
plugin-manager/install-state emit packages/boot/plugin-manager/src/types.ts:407 plugin-manager (emit) remotes
plugin-manager/update-state emit packages/boot/plugin-manager/src/types.ts:414 plugin-manager (emit) remotes
plugin-market/changed emit packages/boot/plugin-market/src/types.ts:168 plugin-market (emit) remotes
schedule/changed emit packages/schedule/schedule/src/types.ts:484 schedule (emit) remotes
schedule/resolve-agent waterfall packages/schedule/schedule/src/index.ts:74 schedule (waterfall) server
session-telemetry/record waterfall packages/session/session-telemetry/src/index.ts:44 session-telemetry (waterfall) -
session/created emit packages/core/session/src/index.ts:56 session (events.dispatch) schedule, server, session-controller, session-projection, session-projection-cache, session-telemetry
session/disposed emit packages/core/session/src/index.ts:65 session (events.dispatch) agent-loop, agent-team, file-upload, session-controller, session-persistence-jsonl, session-projection-cache, session-telemetry, session-title, workspace-changes
session/event emit packages/core/session/src/index.ts:76 session (events.dispatch) acp, agent-instructions, agent-loop, agent-preset-registry, agent-team, claude-code-mods, compaction-basic, file-reference-local, file-upload, goal, goal-round-driver, headless, loader-smoke, product-analytics, ptc-runtime-node, server, session-controller, session-persistence-jsonl, session-projection, session-projection-cache, session-telemetry, session-telemetry-otel, session-title, subagent, token-meter, tool-executor-ptc, tool-jobs, user-questions, workspace-changes
session/flush parallel packages/core/session/src/index.ts:84 session (events.dispatch) session-persistence-jsonl, session-telemetry
settings/document-updated emit packages/settings/settings/src/types.ts:75 settings (emit) remotes
skills/change emit packages/skill/skill/src/index.ts:296 skill (events.dispatch) -
subagent/end emit packages/subagent/subagent/src/index.ts:166 subagent (events.dispatch) hooks-claude-code, server
subagent/provider-added emit packages/subagent/subagent/src/index.ts:142 subagent (emit) tool-subagent
subagent/provider-removed emit packages/subagent/subagent/src/index.ts:148 subagent (events.dispatch) tool-subagent
subagent/start emit packages/subagent/subagent/src/index.ts:158 subagent (events.dispatch) hooks-claude-code
system-prompt/assemble waterfall packages/core/system-prompt/src/index.ts:31 system-prompt (waterfall) browser-use-runtime, working-directory
system-prompt/change emit packages/core/system-prompt/src/index.ts:37 system-prompt (emit) -
tools/change emit packages/core/tools/src/events.ts:56 agent-preset-registry (emit), tools (emit) browser-use-runtime, tool-subagent
tools/execute waterfall packages/core/tools/src/events.ts:29 tools (waterfall) browser-use-runtime, browser-use-stagehand-native, claude-code-mods, computer-use-cua-driver-native, session-checkpoint-policy, timeout-policy
tools/post-execute waterfall packages/core/tools/src/events.ts:41 tools (waterfall) claude-code-mods, hooks-claude-code, hooks-codex, repeat-tool-reminder, spill-policy, tool-fs-search
tools/pre-execute waterfall packages/core/tools/src/events.ts:18 tools (waterfall) auto-review, hooks-claude-code, hooks-codex, tool-jobs, workspace-changes
tools/ptc-dispatch-log waterfall packages/core/tool-executor-ptc/src/runtime-types.ts:46 tool-executor-ptc (waterfall) spill-policy
tools/result emit packages/core/tools/src/events.ts:49 tools (events.dispatch) action-cards, agent-instructions, claude-code-mods, subagent, tool-present
user-questions/request waterfall packages/interaction/user-questions/src/types.ts:174 user-questions (waterfall) remotes, server
webserver/index-inject emit packages/host/webserver/src/index.ts:44 webserver (emit) connection, inspector, modules, remote-access, shortcuts, ui-sidebar-documentpreview, ui-theme
workflow/agent-end emit packages/workflow/workflow/src/index.ts:79 workflow (events.dispatch) tool-workflow
workflow/agent-start emit packages/workflow/workflow/src/index.ts:68 workflow (events.dispatch) tool-workflow
workflow/end emit packages/workflow/workflow/src/index.ts:89 workflow (events.dispatch) -
workflow/log emit packages/workflow/workflow/src/index.ts:58 workflow (events.dispatch) tool-workflow
workflow/phase emit packages/workflow/workflow/src/index.ts:51 workflow (events.dispatch) tool-workflow
workflow/start emit packages/workflow/workflow/src/index.ts:43 workflow (events.dispatch) -
workspace/session-activity waterfall packages/workspace/workspace/src/index.ts:129 workspace (waterfall) agent, jobs, schedule, subagent
workspace/session-stop parallel packages/workspace/workspace/src/index.ts:147 workspace (parallel) agent, jobs, schedule, subagent

Non-harness or undeclared event strings seen in package source

Event string Dispatchers Listeners
agent/request agent-loop (waterfall) compaction-basic
internal/config - llm-pi-ai
internal/dispatch - terminal-bash
internal/plugin - computer-use-cua-driver-native, inspector, loader, lsp-stdio, mcp-client, modules
internal/service - gateway
internal/status - agent, inspector, translator, web
internal/update - app-boot
loader/volatile-update - cua, llm-deepseek, llm-deepseek-api-key, llm-pi-ai, plugin-market, product-analytics, speech-to-text
slots/changed ui-renderer (emit) -

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