UAT: Plugin architecture has no CLI commands — agents plugin list/activate/deactivate commands are missing #5541

Open
opened 2026-04-09 07:18:15 +00:00 by HAL9000 · 1 comment
Owner

Bug Report

Feature Area: Plugin architecture extensions — plugin system for extending CleverAgents functionality

Severity: Backlog — the plugin infrastructure exists but is not user-accessible via CLI


What Was Tested

Analyzed src/cleveragents/infrastructure/plugins/, src/cleveragents/cli/main.py, and src/cleveragents/cli/commands/ to verify the plugin architecture CLI interface.

Expected Behavior (from spec)

The v3.6.0 milestone includes "Plugin architecture extensions" as a deliverable. A plugin system should be user-accessible, allowing users to:

  • List registered plugins (agents plugin list)
  • Activate/deactivate plugins (agents plugin activate <name>)
  • View plugin details (agents plugin show <name>)
  • Register plugins from config (agents plugin register --module <module> --class <class>)

Actual Behavior

What exists (infrastructure layer):

The plugin infrastructure is well-implemented:

  • src/cleveragents/infrastructure/plugins/manager.pyPluginManager with full lifecycle management
  • src/cleveragents/infrastructure/plugins/loader.pyPluginLoader with security allowlist
  • src/cleveragents/infrastructure/plugins/types.pyPluginDescriptor, PluginState, ExtensionPoint
  • src/cleveragents/infrastructure/plugins/exceptions.pyPluginError, PluginLoadError, PluginNotFoundError, ProtocolMismatchError
  • DI container integration (verified in robot/plugin_architecture.robot)

What is missing (CLI layer):

Searching src/cleveragents/cli/main.py for "plugin" reveals only one comment:

# plugin_manager logs (emitted during module import) go to stderr and not

There is no agents plugin CLI command group registered. The src/cleveragents/cli/commands/ directory has no plugin.py file.

Code Location

  • src/cleveragents/cli/main.py — no plugin command registered
  • src/cleveragents/cli/commands/ — no plugin.py file
  • src/cleveragents/infrastructure/plugins/ — infrastructure exists but not exposed via CLI

Impact

  • Users cannot discover, activate, or manage plugins through the CLI
  • The plugin system is only accessible programmatically (via Python API)
  • The v3.6.0 "plugin architecture extensions" deliverable is incomplete — the infrastructure exists but the user-facing interface is missing
  • Plugin integration tests (robot/plugin_architecture.robot) test the Python API directly, bypassing the CLI

Suggested Fix

Create src/cleveragents/cli/commands/plugin.py with:

agents plugin list                    # List all registered plugins
agents plugin show <name>             # Show plugin details
agents plugin activate <name>         # Activate a plugin
agents plugin deactivate <name>       # Deactivate a plugin
agents plugin register --module <m> --class <c>  # Register from config

Register in src/cleveragents/cli/main.py alongside other command groups.


Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: uat-tester

## Bug Report **Feature Area**: Plugin architecture extensions — plugin system for extending CleverAgents functionality **Severity**: Backlog — the plugin infrastructure exists but is not user-accessible via CLI --- ## What Was Tested Analyzed `src/cleveragents/infrastructure/plugins/`, `src/cleveragents/cli/main.py`, and `src/cleveragents/cli/commands/` to verify the plugin architecture CLI interface. ## Expected Behavior (from spec) The v3.6.0 milestone includes "Plugin architecture extensions" as a deliverable. A plugin system should be user-accessible, allowing users to: - List registered plugins (`agents plugin list`) - Activate/deactivate plugins (`agents plugin activate <name>`) - View plugin details (`agents plugin show <name>`) - Register plugins from config (`agents plugin register --module <module> --class <class>`) ## Actual Behavior ### What exists (infrastructure layer): The plugin infrastructure is well-implemented: - `src/cleveragents/infrastructure/plugins/manager.py` — `PluginManager` with full lifecycle management - `src/cleveragents/infrastructure/plugins/loader.py` — `PluginLoader` with security allowlist - `src/cleveragents/infrastructure/plugins/types.py` — `PluginDescriptor`, `PluginState`, `ExtensionPoint` - `src/cleveragents/infrastructure/plugins/exceptions.py` — `PluginError`, `PluginLoadError`, `PluginNotFoundError`, `ProtocolMismatchError` - DI container integration (verified in `robot/plugin_architecture.robot`) ### What is missing (CLI layer): Searching `src/cleveragents/cli/main.py` for "plugin" reveals only one comment: ```python # plugin_manager logs (emitted during module import) go to stderr and not ``` There is **no `agents plugin` CLI command group** registered. The `src/cleveragents/cli/commands/` directory has no `plugin.py` file. ## Code Location - `src/cleveragents/cli/main.py` — no `plugin` command registered - `src/cleveragents/cli/commands/` — no `plugin.py` file - `src/cleveragents/infrastructure/plugins/` — infrastructure exists but not exposed via CLI ## Impact - Users cannot discover, activate, or manage plugins through the CLI - The plugin system is only accessible programmatically (via Python API) - The v3.6.0 "plugin architecture extensions" deliverable is incomplete — the infrastructure exists but the user-facing interface is missing - Plugin integration tests (`robot/plugin_architecture.robot`) test the Python API directly, bypassing the CLI ## Suggested Fix Create `src/cleveragents/cli/commands/plugin.py` with: ``` agents plugin list # List all registered plugins agents plugin show <name> # Show plugin details agents plugin activate <name> # Activate a plugin agents plugin deactivate <name> # Deactivate a plugin agents plugin register --module <m> --class <c> # Register from config ``` Register in `src/cleveragents/cli/main.py` alongside other command groups. --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: uat-tester
HAL9000 added this to the v3.8.0 milestone 2026-04-09 07:24:50 +00:00
Author
Owner

Label compliance fix applied:

  • Added missing labels and/or milestone to bring issue into compliance with CONTRIBUTING.md

Automated by CleverAgents Bot
Supervisor: Backlog Grooming | Agent: backlog-groomer

Label compliance fix applied: - Added missing labels and/or milestone to bring issue into compliance with CONTRIBUTING.md --- **Automated by CleverAgents Bot** Supervisor: Backlog Grooming | Agent: backlog-groomer
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#5541
No description provided.