Skip to content

Overview

vd is a single-binary vendoring package manager for the skills that power your coding agents. Skills live in your repo as plain files — vd fetches them from any upstream, locks them with a SHA, and dispatches them to every agent in your stack.

Terminal window
# Homebrew (recommended)
brew install vanducng/tap/vd
# or with the install script
curl -fsSL https://raw.githubusercontent.com/vanducng/vd-cli/main/install.sh | sh

Pre-built binaries (darwin/linux/windows × amd64/arm64) and a from-source build are covered in the usage guide.

To update an existing install: brew update && brew upgrade vanducng/tap/vd for Homebrew, or vd upgrade for standalone binaries (downloads the latest release and self-replaces; Homebrew installs are deferred back to brew).

Terminal window
vd init # bootstrap skills.toml at the repo root
vd add browserbase/skills/browser --as browser # track an upstream skill
vd sync # vendor it locally (fetch, hash, lock)
vd build # emit manifests for every configured agent
vd install # (optional) detect local agents; install user-level
vd install cursor # (optional) or target Cursor only

vd build emits the manifest each agent stack expects:

AgentWhat vd build emits
Claude Code.claude-plugin/marketplace.json + plugin.json
OpenAI Codex.agents/skills/<name> repo-scope symlinks; vd install codex for user scope
Factory Droid.factory/skills/<name> repo entries (relative symlinks on Unix, copies on Windows); vd install droid for user scope
Pi.pi/skills/<name> repo entries (relative symlinks on Unix, copies on Windows); vd install pi for user scope
Cursorvd install cursor writes $HOME/.cursor/skills/<name> (or $VD_CURSOR_HOME/skills); --scope repo writes .cursor/skills/<name> (relative symlinks on Unix, copies on Windows)

Droid, Pi, and Cursor support covers skills only, not plugins, hooks, extensions, or observability. vd install with no agent detects which of these homes exist and installs at user scope.