Skip to content

armstrongl/nd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

207 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nd

CI Go License: MIT Release

Warning

nd is still in alpha and under active development. Please let me know if you encounter issues 🙂

Manage coding agent assets (skills, agents, commands, rules, and more) across tools like Claude Code with symlink-based deployment.

nd demo

What it does

  • Built-in assets: Ships with nd-specific skills, commands, and an agent — ready to use after nd init
  • Register sources: Point nd at local directories or git repos containing agent assets
  • Deploy assets: Create symlinks from agent config directories to source assets, keeping everything in sync
  • Switch profiles: Group assets into named profiles and switch between them instantly
  • Save snapshots: Capture and restore deployment states as point-in-time snapshots

Install

Homebrew (macOS/Linux)

brew install armstrongl/tap/nd

Go install

go install github.com/armstrongl/nd@latest

GitHub releases

Download pre-built binaries from Releases.

Build from source

git clone https://github.com/armstrongl/nd.git
cd nd
go build -o nd .

Quick start

# Initialize nd and deploy built-in assets
nd init

# See available assets (built-in assets are ready immediately)
nd list

# Register an asset source (local directory or git repo)
nd source add ~/my-assets
# or: nd source add github-user/asset-repo

# Deploy an asset
nd deploy skills/greeting

# Check deployment status
nd status

Commands

Command Description
nd init Initialize nd configuration
nd source add Register a local directory or git repo as an asset source
nd source remove Remove a registered source
nd source list List all registered sources
nd list List all available assets from all sources
nd deploy Deploy assets by creating symlinks
nd remove Remove deployed assets
nd status Show deployment status and health
nd pin / nd unpin Pin/unpin assets to persist across profile switches
nd sync Repair symlinks and pull git sources
nd doctor Health check: validate config, sources, deployments
nd profile create Create a named profile (asset collection)
nd profile switch Switch between profiles
nd profile deploy Deploy all assets from a profile
nd profile delete Delete a profile
nd profile add-asset Add an asset to an existing profile
nd profile list List all profiles
nd snapshot save Save current deployments as a snapshot
nd snapshot restore Restore deployments from a snapshot
nd snapshot list List all snapshots
nd snapshot delete Delete a snapshot
nd settings edit Open config file in your editor
nd uninstall Remove all nd-managed symlinks
nd version Print version information
nd completion Generate shell completions (bash, zsh, fish)

Run any command with --help for detailed usage, or see the full Command Reference.

Many commands support interactive mode: run without arguments to get a picker. Use --json for scripted output and --yes to skip confirmations.

Configure

nd uses a YAML config file at ~/.config/nd/config.yaml. Key settings:

version: 1
default_scope: global       # or "project"
default_agent: claude-code
symlink_strategy: absolute  # or "relative"

See the full configuration guide.

Documentation

Contribute

Contributions are welcome! See CONTRIBUTING.md for development setup, testing, and PR guidelines.

For architecture details, see ARCHITECTURE.md.

License

MIT

Packages

 
 
 

Contributors