Tianyi Cui f27f8f6162 Merge commit 'refs/codex-unblock/20260723/pr570-master-initial' into worktree/pr570-merge-master-20260723 1 місяць тому
..
bash a838af896e Merge refreshed schema DSL into canonical tool outputs 1 місяць тому
client 404da65595 Merge branch 'master' into worktree/web-session-titles 1 місяць тому
code-runtime 4aac1514e4 docs(code-runtime): cover captured error construction 1 місяць тому
compact 8d42d3c979 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 1 місяць тому
context c1fa985c20 Merge remote-tracking branch 'origin/master' into session-query-search 1 місяць тому
cordis f27f8f6162 Merge commit 'refs/codex-unblock/20260723/pr570-master-initial' into worktree/pr570-merge-master-20260723 1 місяць тому
core f27f8f6162 Merge commit 'refs/codex-unblock/20260723/pr570-master-initial' into worktree/pr570-merge-master-20260723 1 місяць тому
examples c688aa486c Merge remote-tracking branch 'origin/master' into worktree/remove-expose-internals 1 місяць тому
fs a838af896e Merge refreshed schema DSL into canonical tool outputs 1 місяць тому
goal 0dfd9545a6 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 1 місяць тому
guard 7d3cb39047 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 1 місяць тому
hooks a838af896e Merge refreshed schema DSL into canonical tool outputs 1 місяць тому
host 404da65595 Merge branch 'master' into worktree/web-session-titles 1 місяць тому
llm 7a09ca8cd2 Merge remote-tracking branch 'origin/master' into worktree/pr540-merge-master-20260723 1 місяць тому
lsp 54bc084e5d Merge refreshed schema DSL into canonical tool output 1 місяць тому
mcp 7d3cb39047 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 1 місяць тому
plan 5e8943fd1c fix(plan): make direct exit discoverable 1 місяць тому
pty 26bfd37da0 Merge commit 'refs/codex-unblock/20260723/master' into worktree/pty-review-fixes 1 місяць тому
sandbox 10a55d7a27 Merge remote-tracking branch 'origin/master' into codex/session-scoped-sandbox-roots 1 місяць тому
sdk 4643e0de10 test(windows): make coverage fixtures portable 1 місяць тому
session-persistence f27f8f6162 Merge commit 'refs/codex-unblock/20260723/pr570-master-initial' into worktree/pr570-merge-master-20260723 1 місяць тому
session-query 712c84f06f fix(session-query): validate before service registration 1 місяць тому
session-title f666c39379 fix(web): generate model-backed session titles 1 місяць тому
skill 54bc084e5d Merge refreshed schema DSL into canonical tool output 1 місяць тому
spill 248d7bb81e Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results 1 місяць тому
subagent 248d7bb81e Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results 1 місяць тому
support eb0cc4eb18 refactor: drop obsolete expose-internals flag 1 місяць тому
tasks b7ae34b67c test(tool-tasks): cover bounded output rendering 1 місяць тому
timeout 7d3cb39047 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 1 місяць тому
todo 7d3cb39047 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 1 місяць тому
ui c688aa486c Merge remote-tracking branch 'origin/master' into worktree/remove-expose-internals 1 місяць тому
util 53615c91e7 Merge master into worktree-windows-runtime 1 місяць тому
web 4cd5f21c08 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 1 місяць тому
workflow 7d3cb39047 Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output 1 місяць тому
AGENTS.md 62125c0dcb docs(ts): document the solution-root TypeScript project layout 1 місяць тому
CLAUDE.md 7f024a1a9d Document the codebase thoroughly and tighten type safety 3 місяців тому
README.md 0a0f19cf57 Merge remote-tracking branch 'origin/master' into session-query-search 1 місяць тому

README.md

Packages

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
goal/ Persisted same-session goal state and lifecycle Product — stable surface
llm/ LLM capability family: the abstract service + provider adapters 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/ Todo/planning family: 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 timeout policy: the tools/execute deadline enforcer Product — stable surface
guard/ Loop-hygiene guards: advisory repeat-call reminders Product — stable surface
cordis/ Self-referential runtime toolset: inspect the live runtime's plugins and services, mount/unmount model-written plugins (design) Product — stable surface
hooks/ Hook bridges + the shared Claude Code / Codex wire-protocol library Product — stable surface
session-persistence/ Persistence capability family: the seam + JSONL/SQLite backends 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, shared LLM policy, and opt-in providers Product — stable surface
sdk/ Project SDK tooling Product — stable surface
ui/ Editor/client integration surfaces: ACP bridge, JSON-RPC SDK server, user-approval/user-interaction seams, ask-user tool Product — stable surface
examples/ Demo bundles (agent-spine + TUI/one-shot CLI/ACP/JSON-RPC bins) the 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

Groups distinguish product API from support infrastructure. New packages join an existing group; a new group updates its 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.