op plugin¶
Plugin management
list¶
List all plugins
Usage: list [options]
Options:
--type <type>— Filter by type: connector|transformer|destination|auth-provider|widget--status <status>— Filter by status: enabled|disabled|installed
install¶
Install a plugin from file, URL, or registry reference
Usage: install [options] <source>
Arguments:
<source>— Local .oppkg path, HTTPS URL, or registry reference
Options:
--tenant <id>— Install for specific tenant (ignored in --dev mode; always uses your own tenant)--dev— Install in development mode: requires only plugins:manage scope, scoped to your tenant, expires in 7 days
upgrade¶
Upload a new plugin version (replaces the active version)
Usage: upgrade [options] <source>
Arguments:
<source>— Local .oppkg path or HTTPS URL of the updated plugin package
Options:
--tenant <id>— Target tenant for the upgrade
rollback¶
Roll back a plugin to its previous version
Usage: rollback [options] <plugin-id>
Arguments:
<plugin-id>— Plugin manifest ID to roll back
enable¶
Enable an installed plugin
Usage: enable [options] <plugin-id>
Arguments:
<plugin-id>— Plugin ID
Options:
--tenant <id>— Enable for specific tenant
disable¶
Disable an installed plugin
Usage: disable [options] <plugin-id>
Arguments:
<plugin-id>— Plugin ID
Options:
--tenant <id>— Disable for specific tenant
uninstall¶
Uninstall a plugin
Usage: uninstall [options] <plugin-id>
Arguments:
<plugin-id>— Plugin ID
info¶
Show plugin manifest and details
Usage: info [options] <plugin-id>
Arguments:
<plugin-id>— Plugin ID
create¶
Scaffold a new plugin project interactively
Usage: create [options]
pack¶
Package the current directory into a .oppkg file
Usage: pack [options]
Options:
--out <path>— Output file path--sign <gpg-key-id>— GPG key ID to sign the package
validate¶
Validate a .oppkg file
Usage: validate [options] <path-to.oppkg>
Arguments:
<path-to.oppkg>— Path to the .oppkg file
simulate-hook¶
Test a plugin hook locally (no server required) or against a running instance with --remote
Usage: simulate-hook [options] <stage>
Arguments:
<stage>— Hook stage, e.g. before:ingestion.receive | after:ingestion.validate | before:ontology.map | before:pipeline.trigger | before:auth.login | before:app.request
Options:
--plugin <path-or-id>— Local bundle path (default: ./dist/bundle.js) or Plugin ID when using --remote--input <data.json>— Path to JSON file containing HookPayload.data--entrypoint <export>— Named export to invoke (overrides plugin.manifest.json entrypoint)--tenant-id <id>— Tenant ID for the mock context (default: dev-tenant)--credentials <creds.json>— Path to JSON file with credential name→value mappings--config <config.json>— Path to JSON file with plugin instance config values--timeout <ms>— Execution timeout in milliseconds (default: 30000)--sandbox— Use isolated-vm for production-accurate sandboxing (requires isolated-vm to be installed)--remote— Execute on the running OnePlatform server instead of locally (requires --plugin)