Zero-dependency no-shell execFile runner for host-native OS integrations: utf8 stdio capture, abort propagation, Windows hide
$ dsh plugin --profile web add npm:@deepseek-ai/dsh-native-commandRun the command above in your terminal to install this plugin via the dsh CLI. You can switch Profile in the top-right corner. New to dsh? Read the beginner tutorial
English | 中文
A zero-dependency no-shell execFile runner shared by host-native OS integrations: one runNativeCommand(command, args, signal) call spawns the executable directly (never a shell string), captures utf8 stdout/stderr, propagates the caller's abort into child termination, and hides the transient console window on Windows. Failures reject with the exit code and both captured streams attached, so callers classify (missing tool, cancelled, real failure) without re-running anything.
Its two consumers are the host-side native integrations: the directory-picker-native backend's OS chooser commands and the gateway's open-with-default-application hand-off (dsh-host-apiproxy host.openPath). The NativeCommandRunner type is their injectable command boundary.
It is a library, not a service or plugin: no ctx, registers nothing, holds no state, emits no events.
import { runNativeCommand, type NativeCommandRunner } from '@deepseek-ai/dsh-native-command'
None, as this is host-side subprocess plumbing; nothing here reaches a model request.
None; this package neither assembles nor sends a provider request.
dsh-output-retention bounding before pointing this at commands with meaningful output volume.