deepseek-harness/packages
Chinesezjc 8a60b5f005 feat(code-runtime-python): make the TypedDict wire mirror an executable gate
Address the two standing review suggestions in this layer rather than deferring
them to PR #4:

- Extend tests/protocol-mirror.e2e.ts to read each py/protocol.py TypedDict's
  required/optional key set and assert it against the wire field names
  src/protocol.ts declares (global included, via functional TypedDict). The
  round-12 class of drift — a renamed/dropped field, or one side making a field
  optional the other requires — now fails a test instead of relying on review.
  Field types remain review-guarded (no mechanical TS/Python equivalent).
- Drop the forward references to PR #4's internal mechanisms from this layer's
  prose: the "256 MiB frame ceiling" figure and the "(index.ts)" fd-3 pinning
  citation become an abstract "host-side inbound frame-size cap" so the JSDoc,
  spec, README, and Agent Note describe only what this layer owns.

Update both README sides and the Agent Note (both languages) to state the
mirror is now executable, and re-record their i18n pairings.
2026-08-07 13:27:54 +08:00
..
acp refactor(agent): unify agent-scoped event signatures as payload objects 2026-08-06 12:13:14 +08:00
bash Merge latest master into Codex subagent provider 2026-08-06 21:26:31 +08:00
bundle Merge remote-tracking branch 'origin/master' into feat/todo-multi-in-progress 2026-08-07 11:27:24 +08:00
client Merge pull request #1735 from deepseek-harness/worktree/provider-credential-lifecycle 2026-08-07 13:27:18 +08:00
code-runtime feat(code-runtime-python): make the TypedDict wire mirror an executable gate 2026-08-07 13:27:54 +08:00
compact Merge remote-tracking branch 'github/master' into feat/agent-event-payload 2026-08-06 13:26:04 +08:00
context test(workspace-context): align source form metadata 2026-08-06 20:21:15 +08:00
cordis fix: address review round four 2026-08-07 00:05:43 +08:00
core Merge pull request #1080 from deepseek-harness/feat/py-types-code-mode 2026-08-07 13:14:41 +08:00
credentials fix: retire leftovers of the removed $DSH_HOME/config.yaml personal overlay 2026-08-06 17:28:58 +08:00
examples Merge remote-tracking branch 'github/master' into feat/agent-event-payload 2026-08-06 13:26:04 +08:00
experimental docs(i18n): proofread active Chinese documentation 2026-08-04 17:36:14 +08:00
fs Merge latest master into Codex subagent provider 2026-08-06 21:26:31 +08:00
goal Merge remote-tracking branch 'github/master' into feat/agent-event-payload 2026-08-06 13:26:04 +08:00
guard Merge remote-tracking branch 'github/master' into feat/agent-event-payload 2026-08-06 13:26:04 +08:00
hooks refactor(agent): unify agent-scoped event signatures as payload objects 2026-08-06 12:13:14 +08:00
host fix: address review round next 2026-08-07 10:17:35 +08:00
llm Merge branch 'master' into worktree/provider-credential-lifecycle 2026-08-07 11:28:22 +08:00
lsp docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
mcp docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
plan Merge remote-tracking branch 'github/master' into feat/agent-event-payload 2026-08-06 13:26:04 +08:00
pty refactor(agent): publish agent/inbox/claimed from Inbox.claim 2026-08-05 21:36:51 +08:00
sandbox docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
sdk docs(todo): state the catalog's policy branch and drop the sidecar census 2026-08-06 12:17:10 +08:00
session-persistence refactor(agent): unify agent-scoped event signatures as payload objects 2026-08-06 12:13:14 +08:00
session-projection Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-05 20:43:30 +08:00
session-query test(session-query): pin the persisted-corruption wrapping branch 2026-08-07 00:05:42 +08:00
session-title Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-05 20:43:30 +08:00
settings Merge remote-tracking branch 'origin/master' into claude/web-llm-pi-ai-config-385e24 2026-08-06 10:47:36 +08:00
skill Merge remote-tracking branch 'github/master' into feat/agent-event-payload 2026-08-06 13:26:04 +08:00
spill docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
storage docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
subagent fix: address review round next 2026-08-07 10:17:35 +08:00
subprocess Merge retargeted parent into Claude Code subagent provider 2026-08-06 21:38:47 +08:00
support Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-05 20:43:30 +08:00
tasks Merge remote-tracking branch 'origin/worktree/context-source-cards' into worktree/context-forms-remaining 2026-08-06 11:49:03 +08:00
telemetry refactor(agent): unify agent-scoped event signatures as payload objects 2026-08-06 12:13:14 +08:00
timeout docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
todo Merge remote-tracking branch 'origin/master' into feat/todo-multi-in-progress 2026-08-07 11:27:24 +08:00
typert Merge remote-tracking branch 'origin/master' into feat/profile-plugin-management 2026-08-06 06:55:42 +08:00
ui Merge remote-tracking branch 'origin/master' into feat/profile-plugin-management 2026-08-06 20:03:22 +08:00
util docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
web docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
workflow docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
workspace docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
AGENTS.md
CLAUDE.md
README.i18n.yaml feat(bundle): ship dsh-base, dsh-web-app, and dsh-headless profile bundles 2026-08-06 04:40:11 +08:00
README.md feat(bundle): ship dsh-base, dsh-web-app, and dsh-headless profile bundles 2026-08-06 04:40:11 +08:00
README.zh.md feat(bundle): ship dsh-base, dsh-web-app, and dsh-headless profile bundles 2026-08-06 04:40:11 +08:00

Packages

English | 中文

Packages use the @deepseek-ai/dsh-* scope. Each is a Cordis Service subclass or function plugin; contributions use ctx.effect(), ctx.on(), or ctx.waterfall(). Authoring rules: package and root.

Hierarchy

Packages live at packages/<group>/<pkg>/; groups are containers, while names remain @deepseek-ai/dsh-<pkg>. Each group README is the canonical package/ctx-key map.

Group Role Release expectation
core/ Product API spine: sessions, prompts, tools, agent services, and the concrete loop Product — stable surface
typert/ Type graph generation, artifact loading, and runtime registry Product — stable surface
goal/ Persisted same-session goal state and lifecycle Product — stable surface
llm/ LLM capability family: the abstract service + provider adapters Product — stable surface
subprocess/ Subprocess capability family: spawn seam + local process-tree implementation Product — stable surface
bash/ Bash capability family: executor seam, local impl, model-facing tool Product — stable surface
pty/ Persistent PTY capability family: owner-scoped sessions, local implementation, and model-facing tools Product — stable surface
code-runtime/ Code-execution capability family: the runtime seam for model-written programs + a worker-thread backend Product — stable surface
sandbox/ Process-confinement seam; bwrap/Landlock/Seatbelt backends Product — stable surface
fs/ Filesystem capability family: seam, local impl, model-facing file tools, bash-backed discovery tools Product — stable surface
lsp/ LSP capability family: seam, generic stdio provider, and the lsp tool Product — stable surface
skill/ Skill capability family: the provider registry, local provider, and model-facing catalog/loader Product — stable surface
compact/ Compaction capability family: the abstract seam + a basic backend (tool deferred) Product — stable surface
context/ Model-visible request context, including workspace instructions and time context Product — stable surface
subagent/ Subagent capability family: the provider-registry seam and the model-facing delegation tool Product — stable surface
tasks/ Generic background-task runtime and model-facing task_* control tools Product — stable surface
workflow/ Workflow capability family: the script-engine seam, worker-thread engine, and model-facing workflow and fresh-agent ralph tools Product — stable surface
web/ Web capability family: seam, search/fetch provider impls, and the model-facing web tools Product — stable surface
spill/ Spill capability family: storage seam, local impl, tool-result spill policy Product — stable surface
todo/ The model-facing todo_write tool Product — stable surface
plan/ Plan collaboration state with a direct entry command and reviewed exit Product — stable surface
timeout/ Tool-call tools/execute deadline enforcement Product — stable surface
guard/ Loop-hygiene advisory repeat-call reminders Product — stable surface
bundle/ Installable dsh --profile patch layers Product — stable surface
cordis/ Cordis runtime integration: self-inspection, temporary Plugins, restricted repository Plugin loading Product — stable surface
hooks/ Hook bridges + the shared Claude Code / Codex wire-protocol library Product — stable surface
session-persistence/ Persistence seam + JSONL/SQLite backends Product — stable surface
session-projection/ Projection seam: domain fold units serve whole values Product — stable surface
session-query/ Session retrieval family: logical corpus, bounded reads, lineage, event relationships, semantic filtering, and SQLite full-text search Product — stable surface
session-title/ Log-backed session titles: fallback service and opt-in LLM providers Product — stable surface
settings/ User-settings seam + file-backed provider Product — stable surface
credentials/ Credential-reference seam + env-over-.env provider Product — stable surface
telemetry/ Session reporting: capture/redact seam, OTel backend Product — stable surface
storage/ Non-session storage hub + backends + domain form Product — stable surface
workspace/ Workspace entity Product — stable surface
sdk/ Project SDK tooling Product — stable surface
acp/ Automation-only Agent Client Protocol server Product — stable surface
ui/ JSON-RPC integration, approval/interaction seams, ask-user tool Product — stable surface
host/ Web-GUI host half: API gateway + HTTP route server Product — stable surface
client/ Web-GUI browser half: shell, wire, object services, slots, ui-* plugins Product — stable surface
experimental/ Prototypes and internal plugins Unreleased
examples/ Demo bundles (agent-spine + CLI/ACP/JSON-RPC bins) leaves load Support — example infra
support/ Support infrastructure (testkits, invariants, replay, Loader smokes) Support — lower compatibility expectations
util/ Low-level zero-dependency utilities shared across groups (Branded<B>, Harness home/path helpers, timeout, retention) Support — small, stable, harness-dep-free

New packages join existing groups; new groups update their README and this table.

Dependencies

The dependency graph is generated: docs/module-graph.md (pnpm run gen-module-graph, freshness-gated in CI).

Extension plugins depend on interfaces, never the concrete loop. dsh-agent-loop is swappable; UI, hook, and tool plugins use dsh-agent. Composition bundles, including dsh-agent-spine-demo, may depend on spine plugins. Capabilities split into interface / implementation / consumer packages; see capability seams.

Package READMEs cover purpose, APIs, extension points, and Model Experience unless on the model-agnostic omission allowlist. They also carry ## Known Limitations and Deferred Work or use its allowlist.