Plugins

HORUS supports CLI plugins — standalone binaries that add new subcommands to the horus command. When you run horus sim3d, HORUS discovers and executes the sim3d plugin binary, passing through all arguments.

How CLI Plugins Work

  1. Any package named horus-* with a binary is automatically a plugin
  2. Installing it registers the binary with the HORUS plugin system
  3. Running horus <command> checks plugins before showing "unknown command"
# Install a plugin
horus install --plugin horus-sim3d

# Use it as a native command
horus sim3d --robot kuka_iiwa

# List installed plugins
horus list

Plugin Resolution Order

PriorityLocationScope
1st.horus/plugins.lock (project)Local project only
2nd~/.horus/plugins.lock (global)All projects
3rd.horus/bin/horus-* (project)Local project only
4th~/.horus/bin/horus-* (global)All projects
5thPATH lookup for horus-* binariesSystem-wide

Project plugins override global ones, so you can pin a specific version per project.

Security

Plugins are verified via SHA-256 checksums recorded at install time. Before execution, HORUS verifies the binary hasn't been modified:

# Verify all installed plugins
horus verify

Next Steps