Files
deepseek-harness/packages/extensions
pku-xht 3f610869b6 Merge commit '05380955d3d59a536c6c4f12def7c1586daaa613' into auto-review-per-call
# Conflicts:
#	docs/subsystems/session-projection.i18n.yaml
#	docs/subsystems/session-projection.md
#	docs/subsystems/session-projection.zh.md
#	packages/client/ui-conversation/tests/input-bar.client.spec.tsx
#	packages/client/ui-permission-presets/README.i18n.yaml
#	packages/client/ui-permission-presets/README.md
#	packages/client/ui-permission-presets/README.zh.md
#	packages/client/ui-permission-presets/tests/browser-plugin.client.spec.ts
#	packages/client/ui-tool/README.i18n.yaml
#	packages/client/ui-tool/README.md
#	packages/client/ui-tool/README.zh.md
#	packages/client/ui-tool/src/client/tool/components/ToolRow.tsx
#	packages/client/ui-tool/src/client/tool/toolviews/bash-sample.tsx
#	packages/client/ui-tool/tests/tool-row.client.spec.tsx
#	packages/extensions/tool-cordis/src/api-catalog.ts
#	packages/session/session-projection/README.i18n.yaml
#	packages/session/session-projection/README.md
#	packages/session/session-projection/README.zh.md
#	packages/session/session-projection/src/index.ts
#	packages/session/session-projection/tests/registry.spec.ts
2026-08-31 22:07:28 +08:00
..
2026-08-30 21:19:29 +08:00

description, kind
description kind
The extensions group map: model-facing tools and dual-half runners for defining, running, and removing dynamic Cordis packages, for users and maintainers navigating the group. package-group

packages/extensions

English | 中文

Summary

The extensions group lets a running agent modify the runtime it runs inside: the model can inspect the plugins and services loaded in the current DSH process, define a dynamic Cordis package (with a host half, a browser half, or both), run it, stop it, and remove it, and a browser panel operates every definition. Packages evolve by plugin: a plugin holds immutable package versions and can run or update between them. Definitions live only in process memory, so a DSH restart clears them and nothing here writes repository files or configuration. Four packages form the subsystem: the model-facing tools plus the host runner, and the browser runner plus the browser UI.

Table of Contents


Packages

Package Role ctx key
tool-cordis Seven model-facing tools: inspect the live runtime, define, run, stop, and remove dynamic packages registers on ctx.tools
cordis-host-runner Host half: definition registry, sandboxed host-half lifecycle, and the inspect registry browser queries answer provides ctx.dynamicCordisRunner and ctx.cordisInspect
cordis-client-runner Browser half: evaluates a browser-half source into a live plugin and answers run requests client face; provides browser ctx.dynamicCordisRunner
ui-cordis Browser surfaces: the frame-wide panel, lifecycle tool cards, and the @pluginId input source client face; registers slots


Dev Note

Working context for maintainers — click to expand

The two browser-half packages live in this group rather than under packages/client/ because they are halves of this subsystem's dual-half packages; the client face compiles them through the client program, while the host program references only the host runner.