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.
Quick Reference
| Task | Command |
|---|---|
| Install a plugin | horus install --plugin horus-sim3d |
| List installed plugins | horus list |
| Use a plugin | horus sim3d --robot kuka_iiwa |
| Verify plugin integrity | horus verify |
| Disable a plugin | horus disable sim3d |
| Enable a plugin | horus enable sim3d |
| Remove a plugin | horus remove horus-sim3d |
How CLI Plugins Work
- Any package named
horus-*with a binary is automatically a plugin - Installing it registers the binary with the HORUS plugin system
- 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
| Priority | Location | Scope |
|---|---|---|
| 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 |
| 5th | PATH lookup for horus-* binaries | System-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
- Creating Plugins — Build a plugin that adds commands to
horus - Managing Plugins — Install, remove, and configure plugins
See Also
- Package Management — Registry and dependencies
- CLI Reference — All HORUS commands