Run a Deno CLI directly from a Git repository, including a private repository, without publishing a package or installing a binary first.
dxx github:crudetc/crude-spec --help
dxx resolves the repository to an immutable commit, caches its checkout, and
runs the repository's own Deno configuration.
The command shape follows deno x.
Deno options go before the target; everything after the target is passed to the
tool verbatim, including --.
Run a repository's default command:
dxx github:owner/repository --help dxx github:owner/repository@main serve
Select a named command from the repository's Deno exports:
dxx --package github:owner/repository cli --help
dxx -p git+ssh://git@example.com/group/tool.git?ref=main cli serveFor command selection, a source-backed target differs from deno x: cli
selects the "./cli" export from deno.json rather than an npm bin field.
dxx adds these source-backed module specifiers:
github:<owner>/<repository>[@<ref>]git+https://<host>/<path>.git?ref=<ref>git+ssh://<user>@<host>/<path>.git?ref=<ref>
It delegates native Deno targets unchanged: npm: and jsr: use deno x;
all other Deno targets use deno x too. Source specifiers are command targets
only—they do not become valid Deno import schemes.
For a source-backed target, Deno option values use =: for example,
--allow-net=example.com. This keeps source-target parsing small and
unambiguous.
Mutable refs resolve to a commit once and remain pinned locally. Pass
--reload (or -r) to resolve the ref again, refresh Deno dependencies, and
repair the resolved source checkout if necessary.
GitHub retrieval uses GITHUB_TOKEN, GH_TOKEN, or the authenticated GitHub
CLI credential. It removes environment-provided GitHub credentials before
starting Deno. Generic SSH targets use the operating system's SSH agent and
host-key configuration.
DXX_CACHE_DIR selects the source-cache location. Otherwise, dxx uses the
platform user cache directory. dxx clean removes the complete source cache;
dxx clean --dry-run reports the directory. Deno's dependency cache remains
managed by Deno.
--cache-dir applies only to source-backed targets and dxx clean.
Source-backed execution supports nodeModulesDir: "none". Repositories with a
package.json must set that value explicitly. Permissions are passed through
to Deno: a tool granted --allow-write can modify its cached checkout.
Before acquiring an uncached source target, dxx asks for confirmation. Pass
--yes or -y to skip it. Non-interactive invocations proceed without a
prompt, as deno x does.
dxx --help describes dxx's own options and source targets, then defers to
deno x --help.
go build -o dxx .macOS and Linux are supported. Windows is unsupported.
For the complete behavior and limits, read the specification.
MIT. See LICENSE.