Plugin system
Extend the Nimbus CLI with community plugins. Plugins are Python packages under nimbus-plugin-* on PyPI.
Install a plugin
nimbus plugin install nimbus-plugin-jira
nimbus plugin install nimbus-plugin-notion
List installed plugins
nimbus plugin list
Output:
nimbus plugins
jira JiraPlugin
nimbus plugin run jira sync Sync Jira issues to Nimbus tasks
nimbus plugin run jira implement Implement a Jira issue
Run a plugin command
nimbus plugin run jira sync --project ACME
nimbus plugin run notion export --database "Sprint Tasks"
Uninstall
nimbus plugin uninstall nimbus-plugin-jira
Build your own plugin
See the example plugin for a complete reference implementation.
Minimal structure:
# nimbus_plugin_myname/__init__.py
from nimbus_sdk import NimbusPlugin, command
class MyPlugin(NimbusPlugin):
name = "myname"
@command()
def do_thing(self, arg: str = "default"):
"""Description shown in nimbus plugin list"""
print(f"Doing thing with {arg}")
Register via entry point in pyproject.toml:
[project.entry-points."nimbus.plugins"]
myname = "nimbus_plugin_myname:MyPlugin"
Publish to PyPI as nimbus-plugin-myname and anyone can install it with:
nimbus plugin install nimbus-plugin-myname
Velocity dashboard
The engineering velocity dashboard at get-nimbus.com/dashboard/analytics tracks:
- Tasks completed per period (7/30/90 days)
- PRs opened
- Success rate
- Average task duration
- Estimated hours saved
- Cost per task
- Daily activity bar chart
All task metrics are recorded automatically when Nimbus completes a task.