CLI extension point refactoring #76

Closed
doxios wants to merge 1 commit from story-75 into main
Collaborator

Closes #75

Changes

  • Removed register_commands() from Plugin base class
  • Created new cli plugin with cli.commands extension point
  • Updated memory and pairing plugins to declare implements: {"cli.commands": "register_commands"}
  • Updated cli.py to use registry.get_implementations() instead of raw plugin iteration
  • Added cobot plugins list and cobot plugins inspect commands

Verification

  • All 302 tests pass
  • cobot plugins inspect shows CLI contribution as proper implements edges:
cli.commands
    Defined by: cli
    Implemented by:
      → pairing.register_commands()
      → memory.register_commands()
Closes #75 ## Changes - Removed `register_commands()` from Plugin base class - Created new `cli` plugin with `cli.commands` extension point - Updated memory and pairing plugins to declare `implements: {"cli.commands": "register_commands"}` - Updated `cli.py` to use `registry.get_implementations()` instead of raw plugin iteration - Added `cobot plugins list` and `cobot plugins inspect` commands ## Verification - All 302 tests pass - `cobot plugins inspect` shows CLI contribution as proper `implements` edges: ``` cli.commands Defined by: cli Implemented by: → pairing.register_commands() → memory.register_commands() ```
feat: CLI extension point refactoring (#75)
Some checks failed
CI / lint (pull_request) Failing after 8s
CI / test (3.11) (pull_request) Successful in 21s
CI / test (3.12) (pull_request) Successful in 24s
E2E Tests / e2e (pull_request) Successful in 11s
CI / test (3.13) (pull_request) Successful in 24s
CI / build (pull_request) Has been skipped
929c88b88f
- Remove register_commands() from Plugin base class
- Create new cli plugin defining cli.commands extension point
- Update memory and pairing plugins to declare implements
- Update cli.py to use extension points for command registration
- Add 'cobot plugins list' and 'cobot plugins inspect' commands
- Update tests to reflect new architecture

The CLI plugin defines the 'cli.commands' extension point that
plugins can implement to register their CLI commands. This moves
CLI registration into the formal extension point system.
doxios closed this pull request 2026-02-22 12:28:22 +00:00
Some checks failed
CI / lint (pull_request) Failing after 8s
CI / test (3.11) (pull_request) Successful in 21s
CI / test (3.12) (pull_request) Successful in 24s
E2E Tests / e2e (pull_request) Successful in 11s
CI / test (3.13) (pull_request) Successful in 24s
CI / build (pull_request) Has been skipped

Pull request closed

Sign in to join this conversation.
No reviewers
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
ultanio/cobot!76
No description provided.