Skip to main content

Plugin CLI Reference

Complete reference for all babysitter plugin:* commands. Every command supports the --json flag for machine-readable output and --verbose for additional diagnostic information.

Global Flags

FlagDescription
--jsonOutput structured JSON instead of human-readable text
--verboseEnable verbose diagnostic output
--runs-dir <path>Override the default runs directory

Scope

Most plugin commands require a scope flag indicating where configuration is stored:

  • --global — User-wide configuration stored in ~/.a5c/
  • --project — Project-specific configuration stored in <projectDir>/.a5c/

When --project is used, the current working directory is treated as the project root.


plugin:add-marketplace

Clones a marketplace repository into the local marketplaces directory.

Usage

babysitter plugin:add-marketplace --marketplace-url <url> --global|--project [--json] [--verbose]

Required Flags

FlagDescription
--marketplace-url <url>Git remote URL of the marketplace repository to clone
--global or --projectScope for the marketplace clone

Example

babysitter plugin:add-marketplace --marketplace-url https://github.com/a5c-ai/babysitter-marketplace.git --global --json

JSON Output

{
"success": true,
"url": "https://github.com/a5c-ai/babysitter-marketplace.git",
"scope": "global",
"directory": "/home/user/.a5c/marketplaces/babysitter-marketplace"
}

Error Cases

ErrorCause
missing_argument--marketplace-url or --scope not provided
clone_failedGit clone failed (bad URL, network error, directory already exists)

plugin:update-marketplace

Pulls the latest changes for a previously cloned marketplace.

Usage

babysitter plugin:update-marketplace --marketplace-name <name> --global|--project [--json] [--verbose]

Required Flags

FlagDescription
--marketplace-name <name>Name of the previously cloned marketplace (directory name)
--global or --projectScope where the marketplace was cloned

Example

babysitter plugin:update-marketplace --marketplace-name babysitter-marketplace --global --json

JSON Output

{
"success": true,
"marketplace": "babysitter-marketplace",
"scope": "global"
}

Error Cases

ErrorCause
missing_argument--marketplace-name or --scope not provided
update_failedMarketplace directory not found, or git pull failed

plugin:list-plugins

Lists all plugins available in a marketplace manifest.

Usage

babysitter plugin:list-plugins --marketplace-name <name> --global|--project [--json] [--verbose]

Required Flags

FlagDescription
--marketplace-name <name>Name of the marketplace to list plugins from
--global or --projectScope where the marketplace is cloned

Example

babysitter plugin:list-plugins --marketplace-name babysitter-marketplace --global --json

JSON Output

{
"marketplace": "babysitter-marketplace",
"scope": "global",
"count": 2,
"plugins": [
{
"name": "babysitter@a5c.ai",
"description": "Core babysitter plugin for AI-assisted development",
"latestVersion": "0.0.176",
"versions": ["0.0.176", "0.0.175", "0.0.174"],
"packagePath": "plugins/babysitter-unified",
"tags": ["core", "development"],
"author": "a5c-ai"
}
]
}

Human-Readable Output

Plugins in marketplace "babysitter-marketplace" (scope: global):

NAME VERSION DESCRIPTION
──── ─────── ────────────────────────────────────────
babysitter@a5c.ai 0.0.176 Core babysitter plugin for AI-assisted development

1 plugin(s) available.

Error Cases

ErrorCause
missing_argument--marketplace-name or --scope not provided
list_failedMarketplace directory not found, or manifest unreadable

plugin:install

Installs a plugin from a marketplace. Updates the marketplace first, resolves the plugin version, reads install instructions from the plugin package, and returns them for the agent to execute.

Usage

babysitter plugin:install <plugin-name> [--marketplace-name <name>] --global|--project [--plugin-version <ver>] [--json] [--verbose]

The plugin name can be provided as a positional argument or via --plugin-name.

Required Flags

FlagDescription
<plugin-name> or --plugin-name <name>Name of the plugin to install
--global or --projectScope for the installation

Optional Flags

FlagDescription
--plugin-version <ver>Specific version to install. If omitted, the latest version from the marketplace manifest is used.
--marketplace-name <name>Marketplace containing the plugin. If omitted, the CLI tries to auto-resolve a single configured marketplace for the selected scope.

Example

babysitter plugin:install babysitter@a5c.ai --marketplace-name babysitter-marketplace --global --json

JSON Output

{
"plugin": "babysitter@a5c.ai",
"version": "0.0.176",
"marketplace": "babysitter-marketplace",
"scope": "global",
"instructions": "# Install babysitter@a5c.ai\n\n1. Copy the plugin configuration...\n",
"processFile": "/home/user/.a5c/marketplaces/babysitter-marketplace/plugins/babysitter-unified/install-process.js"
}

The instructions field contains the markdown content from install.md in the plugin package. The processFile field is non-null when an install-process.js babysitter process file exists in the plugin package directory.

Error Cases

ErrorCause
missing_argumentRequired flag not provided
install_failedPlugin not found in marketplace, marketplace update failed, or package directory not found

plugin:uninstall

Reads uninstall instructions for a previously installed plugin. Looks up the plugin in the registry to find its marketplace and version, then reads the uninstall instructions from the plugin package.

Usage

babysitter plugin:uninstall <plugin-name> --global|--project [--json] [--verbose]

Required Flags

FlagDescription
<plugin-name> or --plugin-name <name>Name of the plugin to uninstall
--global or --projectScope where the plugin is installed

Example

babysitter plugin:uninstall babysitter@a5c.ai --global --json

JSON Output

{
"plugin": "babysitter@a5c.ai",
"version": "0.0.176",
"marketplace": "babysitter-marketplace",
"scope": "global",
"instructions": "# Uninstall babysitter@a5c.ai\n\n1. Remove the plugin configuration...\n",
"processFile": null
}

Error Cases

ErrorCause
missing_argumentRequired flag not provided
uninstall_failedPlugin not found in registry, or plugin package directory not found

plugin:update

Updates an installed plugin to a newer version. Resolves the migration chain from the currently installed version to the target version using BFS shortest-path on available migration files, and returns all migration instructions in order.

Usage

babysitter plugin:update <plugin-name> [--marketplace-name <name>] --global|--project [--plugin-version <ver>] [--json] [--verbose]

Required Flags

FlagDescription
<plugin-name> or --plugin-name <name>Name of the plugin to update
--global or --projectScope where the plugin is installed

Optional Flags

FlagDescription
--plugin-version <ver>Specific target version. If omitted, the latest version from the marketplace manifest is used.
--marketplace-name <name>Marketplace containing the plugin. If omitted, the CLI tries to auto-resolve a single configured marketplace for the selected scope.

Example

babysitter plugin:update babysitter@a5c.ai --marketplace-name babysitter-marketplace --global --json

JSON Output

{
"plugin": "babysitter@a5c.ai",
"fromVersion": "0.0.174",
"toVersion": "0.0.176",
"marketplace": "babysitter-marketplace",
"scope": "global",
"migrations": [
{
"from": "0.0.174",
"to": "0.0.175",
"file": "0.0.174_to_0.0.175.md",
"type": "md",
"instructions": "# Migration 0.0.174 to 0.0.175\n\n1. Update configuration...\n",
"processFile": null
},
{
"from": "0.0.175",
"to": "0.0.176",
"file": "0.0.175_to_0.0.176.js",
"type": "js",
"instructions": "// Migration process code...",
"processFile": "/path/to/migrations/0.0.175_to_0.0.176.js"
}
]
}

When the installed version already matches the target version, migrations is an empty array with a message field:

{
"plugin": "babysitter@a5c.ai",
"fromVersion": "0.0.176",
"toVersion": "0.0.176",
"migrations": [],
"message": "Already at target version"
}

Error Cases

ErrorCause
missing_argumentRequired flag not provided
update_failedPlugin not installed, not found in marketplace, no migration path exists, or marketplace update failed

plugin:configure

Reads configuration instructions for an installed plugin from its plugin package.

Usage

babysitter plugin:configure <plugin-name> [--marketplace-name <name>] --global|--project [--json] [--verbose]

Required Flags

FlagDescription
<plugin-name> or --plugin-name <name>Name of the plugin to configure
--global or --projectScope for the configuration

Example

babysitter plugin:configure babysitter@a5c.ai --project --json

JSON Output

{
"plugin": "babysitter@a5c.ai",
"marketplace": "babysitter-marketplace",
"scope": "project",
"instructions": "# Configure babysitter@a5c.ai\n\n1. Set the API key...\n",
"processFile": "/path/to/configure-process.js"
}

Error Cases

ErrorCause
missing_argumentRequired flag not provided
configure_failedPlugin package directory not found

plugin:list-installed

Lists all plugins recorded in the plugin registry for the given scope.

Usage

babysitter plugin:list-installed --global|--project [--json] [--verbose]

Required Flags

FlagDescription
--global or --projectScope to list installed plugins for

Example

babysitter plugin:list-installed --global --json

JSON Output

[
{
"name": "babysitter@a5c.ai",
"version": "0.0.176",
"marketplace": "babysitter-marketplace",
"installedAt": "2026-03-01T10:30:00.000Z",
"updatedAt": "2026-03-05T14:20:00.000Z"
}
]

Human-Readable Output

Installed plugins (scope: global):

NAME VERSION MARKETPLACE INSTALLED
──── ─────── ─────────── ────────────────────
babysitter@a5c.ai 0.0.176 babysitter-marketplace 2026-03-01T10:30:00.000Z

1 plugin(s) installed.

Error Cases

ErrorCause
missing_argument--scope not provided
list_failedRegistry file unreadable

plugin:update-registry

Creates or updates a plugin entry in the registry. Used after the agent has completed the install or update steps to record the installed version.

Usage

babysitter plugin:update-registry <plugin-name> --plugin-version <ver> --marketplace-name <name> --global|--project [--json] [--verbose]

Required Flags

FlagDescription
<plugin-name> or --plugin-name <name>Name of the plugin
--plugin-version <ver>Version to record
--marketplace-name <name>Marketplace the plugin was sourced from
--global or --projectScope for the registry entry

Example

babysitter plugin:update-registry babysitter@a5c.ai --plugin-version 0.0.176 --marketplace-name babysitter-marketplace --global --json

JSON Output

{
"name": "babysitter@a5c.ai",
"version": "0.0.176",
"marketplace": "babysitter-marketplace",
"scope": "global",
"installedAt": "2026-03-01T10:30:00.000Z",
"updatedAt": "2026-03-06T09:00:00.000Z",
"packagePath": "/home/user/.a5c/marketplaces/babysitter-marketplace/plugins/babysitter-unified",
"metadata": {}
}

Error Cases

ErrorCause
missing_argumentAny required flag not provided
update_registry_failedPlugin package path resolution failed, or registry write failed

plugin:remove-from-registry

Removes a plugin entry from the registry. Used after the agent has completed the uninstall steps.

Usage

babysitter plugin:remove-from-registry <plugin-name> --global|--project [--json] [--verbose]

Required Flags

FlagDescription
<plugin-name> or --plugin-name <name>Name of the plugin to remove
--global or --projectScope for the registry

Example

babysitter plugin:remove-from-registry babysitter@a5c.ai --global --json

JSON Output

{
"removed": true,
"plugin": "babysitter@a5c.ai"
}

Error Cases

ErrorCause
missing_argumentRequired flag not provided
remove_failedRegistry read/write failed