feat(cli): add skill commands #285

Closed
opened 2026-02-22 23:40:55 +00:00 by freemo · 1 comment
Owner

Metadata

  • Commit: feat(cli): add skill commands
  • Branch: feature/m3-skill-cli

Subtasks

  • Implement agents skill add/remove/list/show/tools with YAML config input and --namespace filter.
  • Update CLI reference with skill command examples and output formats.
  • Tests (Behave): Add CLI scenarios for skill add/remove/list/show/tools.
  • Tests (Robot): Add Robot CLI test for skill show/tools outputs.
  • Tests (ASV): Add benchmarks/skill_cli_bench.py for CLI parsing overhead.
  • Run nox (all default sessions, including benchmark), fix any errors if needed ensuring nox passes.
  • Verify coverage >=97% via nox -s coverage_report. If coverage is <97% then review the current unit test coverage report at build/coverage.xml and use it to write new Behave based unit tests to improve code coverage. Specifically, write Behave style unit tests that are descriptively named and specifically improves coverage on whichever file has the most uncovered lines by writing tests that will target the uncovered lines in the report. Once that is done rerun nox -s coverage_report to verify all tests pass and coverage is above >=97%, if not repeat this task as many times as is needed until coverage reaches >=97%.

Section: ### Section 5: Actors, Skills & Tool Execution [WORKSTREAM C - Aditya Lead]
Status: Completed

## Metadata - **Commit**: `feat(cli): add skill commands` - **Branch**: `feature/m3-skill-cli` ## Subtasks - [x] Implement `agents skill add/remove/list/show/tools` with YAML config input and `--namespace` filter. - [x] Update CLI reference with skill command examples and output formats. - [x] Tests (Behave): Add CLI scenarios for skill add/remove/list/show/tools. - [x] Tests (Robot): Add Robot CLI test for skill show/tools outputs. - [x] Tests (ASV): Add `benchmarks/skill_cli_bench.py` for CLI parsing overhead. - [x] Run `nox` (all default sessions, including benchmark), fix any errors if needed ensuring nox passes. - [x] Verify coverage >=97% via `nox -s coverage_report`. If coverage is <97% then review the current unit test coverage report at `build/coverage.xml` and use it to write new Behave based unit tests to improve code coverage. Specifically, write Behave style unit tests that are descriptively named and specifically improves coverage on whichever file has the most uncovered lines by writing tests that will target the uncovered lines in the report. Once that is done rerun `nox -s coverage_report` to verify all tests pass and coverage is above >=97%, if not repeat this task as many times as is needed until coverage reaches >=97%. **Section**: ### Section 5: Actors, Skills & Tool Execution [WORKSTREAM C - Aditya Lead] **Status**: Completed
freemo added this to the v3.1.0 milestone 2026-02-22 23:40:55 +00:00
Author
Owner

Implementation Notes — C0.skill.cli: Skill CLI Commands

2026-02-17: C0.skill.cli Complete - Skill CLI Commands + Output Formatting

  • Created SkillService with dual-mode storage pattern (in-memory fallback, ready for UnitOfWork persistence).
  • Created skill.py Typer command group with 5 subcommands (skill add, remove, list, show, tools), all supporting 6 output formats.
  • Key decision: Module-level _service singleton (not DI container) matches the pattern in action.py CLI; _reset_skill_service() enables test isolation.

(Migrated from docs/implementation-notes.md)

## Implementation Notes — C0.skill.cli: Skill CLI Commands **2026-02-17**: C0.skill.cli Complete - Skill CLI Commands + Output Formatting - Created `SkillService` with dual-mode storage pattern (in-memory fallback, ready for `UnitOfWork` persistence). - Created `skill.py` Typer command group with 5 subcommands (`skill add`, `remove`, `list`, `show`, `tools`), all supporting 6 output formats. - Key decision: Module-level `_service` singleton (not DI container) matches the pattern in `action.py` CLI; `_reset_skill_service()` enables test isolation. *(Migrated from `docs/implementation-notes.md`)*
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.

Blocks
#354 Epic: Actor & Skill Schema + CLI (C0)
cleveragents/cleveragents-core
Reference
cleveragents/cleveragents-core#285
No description provided.