Files
deepseek-harness/packages/lsp
imccyu 8c1e8d9890 build(release): publish the dsh family publicly
Every release member now declares publishConfig.access: public, so the scope no
longer mixes levels: the 221 packages/*/* and apps/* manifests join the vendored
framework and the native packages.

check-workspace-constraints drops the per-sequence expectation and holds every
release member to public, which is what stops a member from drifting back.

Access is a property of the package, not of a version: the dsh packages already
published as restricted become world-readable at their next publication.
2026-08-13 18:49:32 +08:00
..

lsp/ - LSP capability family

English | 中文

The language-server capability seam: an LSP Service Definition, a generic stdio provider, and the model-facing lsp tool. All product packages.

Package Role ctx key
lsp/ Service Definition (provider registry by branded id + extension mapping, per-query selection, vocabulary, LspError) ctx.lsp
lsp-stdio/ Generic multi-server stdio backend over ctx.fs and ctx.subprocess (JSON-RPC, transient-open queries) (registers providers on ctx.lsp)
tool-lsp/ Model-facing lsp tool (four operations, one-based UTF-16 cursor coordinates) (registers on ctx.tools)

The Service Definition lives at lsp/lsp/. The seam exposes exactly four semantic operations — goToDefinition, findReferences, goToImplementation, hover — and no generic JSON-RPC escape hatch, so a provider swap does not change how the model asks for navigation and no protocol payload or unreviewed mutation reaches the model contract. Providers register capabilities, not tools; tool-lsp is the only owner of the model-facing name, schema, prompt guidance, and presentation.

See the LSP capability seam Agent Note for the design rationale, including why documents open transiently per query, why the stdio host consumes the shared filesystem/subprocess execution world, and why extension ownership is exclusive within one runtime.

The subsystem reference — operations, coordinates, requests/results, LspError — is docs/subsystems/lsp.md; design rationale in the LSP capability seam Agent Note.