Files
deepseek-harness/packages/interaction
Chinesezjc b462d5fd69 Merge remote-tracking branch 'origin/master' into feat/web-message-feedback-ui
Adapt to two contract changes master introduced:

- The generated Remote face now wraps every business result in
  RemoteResult, folding carrier failures into an ok:false branch instead
  of rejecting. The controller reads that envelope at its three call
  sites and maps a carrier failure onto the same settled shape the
  controls already render; three specs cover the new branch.
- Client packages split their tsconfig into host and client halves, and
  the host aggregate now compiles any test not named *.client.spec.*.
  Rename this package's specs to the client convention and drop the
  ../connection project reference, which pointed at a solution file that
  no longer carries the client sources.

Keep master's mount loop with its rollback-on-failure in api-remotes and
add messageFeedbackRemote to it.
2026-08-12 10:43:23 +08:00
..
2026-08-11 22:52:39 +08:00
2026-08-11 22:52:39 +08:00
2026-08-11 22:52:39 +08:00
2026-08-11 22:52:39 +08:00

interaction/ — the human-collaboration plane

English | 中文

The services and plugins through which a human collaborates with a running agent — questions, approvals, permission presets, commands. These are product packages: real interfaces a person drives.

Package Role ctx key
commands/ Registers and dispatches human commands for interactive adapters. ctx.commands
user-approval/ Coordinates one-shot approval decisions. ctx.approval
permission/ Presents and persists user-facing permission presets. ctx.permission
user-interaction/ Defines the provider-neutral human question/answer seam. ctx.userInteraction
tool-ask-user/ Exposes human questions to the model. (registers on ctx.tools)

These packages integrate through existing agent and session contracts rather than changing the loop. Interactive applications provide the concrete command, approval, and question adapters; automation uses acp/, and runnable demo bundles live under examples/. The product dsh CLI composes these packages directly.

The subsystem references: approval.md, permission.md, user-interaction.md, and commands.md. The automation-only ACP transport is acp/, the SDK's JSON-RPC server half is sdk/server, and the shared bin boot glue is boot/.