@xuanling-rs/xuanling-dsh-tools
v0.8.1
Published
DeepSeek Harness bundle: lazily mount XuanLing through a bundle-owned wrapper around the official MCP bridge. Additive variant: built-in tools stay enabled.
Readme
xuanling-dsh-tools
English | Simplified Chinese
Additive DeepSeek Harness bundle for the complete XuanLing MCP catalog: all
43 typed tools, added next to DSH's native tools. Package
@xuanling-rs/[email protected].
What it is
Adds the full catalog under the mcp__xuanling__ prefix while keeping every
native Harness tool:
- Core (3):
system_info,path_resolve,path_relative. - Filesystem (17):
fs_stat,fs_list,fs_read_text,fs_read_bytes,fs_search,fs_glob,fs_hash,fs_mkdir,fs_write_text,fs_replace_text,fs_patch,fs_edit_preview,fs_edit,fs_edit_batch,fs_copy,fs_move,fs_remove. - Process and project (5):
process_run,process_which,project_detect,project_command,project_run. - Memory v2 (9) and Advanced (9): the full Memory lifecycle, plus artifacts, ChangeSets, pipelines, and sessions.
The server runs its default all catalog; this bundle has no smaller profile
switch.
Why use it
- Use it when you need the XuanLing filesystem family, direct processes, project detection/execution, artifacts, ChangeSets, pipelines, or sessions.
- Use
xuanling-dsh-memoryfor the smaller recommended Memory-only setup. - Use
xuanling-dsh-tools-replacefor XuanLing semantics under nativeread/write/editnames. - Install exactly one XuanLing runtime bundle per profile; see the bundle guide.
Requirements
- DSH with the shipped
weborheadlessprofile. - Node.js 22.14 or newer.
- A DSH build that provides
@deepseek-ai/dsh-mcp-clientfrom the0.2.1-rc.2capability channel. XUANLING_WORKSPACE_ROOTset to the confirmed absolute workspace in the environment that launches DSH; startup fails when it is missing.- macOS ARM64, Linux x64 with glibc 2.35+, or Windows x64 with MSVC.
Install
export XUANLING_WORKSPACE_ROOT=/absolute/path/to/project
dsh plugin --profile web add @xuanling-rs/[email protected]
dsh --profile web --dump-configKeep the variable in the environment of every process that starts DSH. Use
--profile headless for the headless profile; a custom new profile name starts
from the base bundle only. The profile gets
@xuanling-rs/[email protected]; no global package or npx is needed.
Quickstart
- Restart the profile and refresh DSH.
- Ask the model to search
mcp_catalog__xuanlingforsystem_infoand activate it; callmcp__xuanling__system_infoand check thatxuanling_versionis0.8.1. - Activate one filesystem tool, for example
fs_stat, and read a path insideXUANLING_WORKSPACE_ROOT. Paths outside the root are denied by design.
Configuration
XUANLING_WORKSPACE_ROOTis required, absolute, and is the filesystem capability root; the DSH process working directory is never authorization.- The Memory family uses the shared default
~/.xuanling/memory.db, opened lazily on the first valid Memory call. - Only
mcp_catalog__xuanlingis visible initially. Search it and activate one exact raw name per call; the tool appears on the next request. Do not activate the whole catalog speculatively. - Tool-call budget: 120 seconds. Long builds and watch processes belong to Harness background jobs.
- Process tools run explicit program + argv without a shell and use a minimal
environment by default (
inherit_env: false). - The server name is fixed to
xuanling; public names aremcp__xuanling__*.
Limits and safety
- Capability overlap is real. Native and XuanLing tools cover similar file, process, and project work; pick one family per operation deliberately.
- Filesystem confinement. XuanLing filesystem tools enforce pathname
capabilities under
XUANLING_WORKSPACE_ROOT; escaping paths are denied. - Process execution is not a sandbox. Untrusted code still needs host approval and an OS sandbox; minimal environments are the default.
- Shared store.
~/.xuanling/memory.dbis shared with other XuanLing deployments; never put secrets or private user content in it. - Lazy activation has a cost. Each new tool costs an activation step and an extra model turn, and activation sets do not survive a restart.
- Platform limits. Unsupported OS, CPU, or libc combinations fail with an explicit launcher error.
Troubleshooting
- Startup fails with a missing
XUANLING_WORKSPACE_ROOT. Export the confirmed absolute path in the environment of the DSH process, then restart. - Only
mcp_catalog__xuanlingis visible. Expected. Search and activate exact raw names; use the name without themcp__xuanling__prefix. - A tool call hits the 120-second budget. Move the long work to a Harness background job and resume with a follow-up call.
- A program is not found with
inherit_env: false. Retry withinherit_env: trueonly when inheriting the login environment is acceptable. - Launcher or version mismatch. Reinstall the exact
0.8.1version; do not mix versions in one profile, and remove any other XuanLing runtime bundle.
