feat(cli): add action and plan CLI extensions #413

Merged
freemo merged 1 commit from feature/m4-cli-extensions into master 2026-02-24 14:04:53 +00:00
Owner

Summary

Adds extended CLI flags and enriched output for the plan and action command groups, enabling users to configure automation profiles, invariants, and actor overrides directly from the command line.

Changes

  • plan use command: Added --automation-profile, --invariant (repeatable), --strategy-actor, --execution-actor, --estimation-actor, and --invariant-actor flags. All actor flags validate namespaced names via validate_namespaced_actor(). Automation profiles are checked against BUILTIN_PROFILES. Flags persist to plan metadata.
  • plan status/list output: Added "Profile" and "Invariants" columns to the plan status summary and lifecycle-list tables. Expanded _plan_spec_dict with estimation_actor, invariant_actor, and invariants fields across all output formats (json, yaml, plain, table). Rich panel rendering in _print_lifecycle_plan now displays invariants with source provenance tags.
  • action show output: Extended _print_action and _action_spec_dict with estimation_actor, invariant_actor, invariants, inputs_schema, and automation_profile fields.
  • Documentation: Added docs/reference/plan_cli.md and updated docs/reference/action_cli.md with extended flags and examples.
  • Tests: 29 Behave scenarios (features/cli_extensions.feature), 5 Robot Framework integration tests (robot/cli_extensions.robot), and 6 ASV benchmark suites (benchmarks/cli_extensions_bench.py).

Closes #325

## Summary Adds extended CLI flags and enriched output for the `plan` and `action` command groups, enabling users to configure automation profiles, invariants, and actor overrides directly from the command line. ### Changes - **`plan use` command**: Added `--automation-profile`, `--invariant` (repeatable), `--strategy-actor`, `--execution-actor`, `--estimation-actor`, and `--invariant-actor` flags. All actor flags validate namespaced names via `validate_namespaced_actor()`. Automation profiles are checked against `BUILTIN_PROFILES`. Flags persist to plan metadata. - **`plan status/list` output**: Added "Profile" and "Invariants" columns to the plan status summary and lifecycle-list tables. Expanded `_plan_spec_dict` with `estimation_actor`, `invariant_actor`, and `invariants` fields across all output formats (json, yaml, plain, table). Rich panel rendering in `_print_lifecycle_plan` now displays invariants with source provenance tags. - **`action show` output**: Extended `_print_action` and `_action_spec_dict` with `estimation_actor`, `invariant_actor`, `invariants`, `inputs_schema`, and `automation_profile` fields. - **Documentation**: Added `docs/reference/plan_cli.md` and updated `docs/reference/action_cli.md` with extended flags and examples. - **Tests**: 29 Behave scenarios (`features/cli_extensions.feature`), 5 Robot Framework integration tests (`robot/cli_extensions.robot`), and 6 ASV benchmark suites (`benchmarks/cli_extensions_bench.py`). Closes #325
freemo added this to the v3.1.0 milestone 2026-02-24 10:29:19 +00:00
freemo force-pushed feature/m4-cli-extensions from 33ba030b7d
All checks were successful
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 16s
CI / build (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 20s
CI / security (pull_request) Successful in 32s
CI / typecheck (pull_request) Successful in 41s
CI / integration_tests (pull_request) Successful in 2m27s
CI / unit_tests (pull_request) Successful in 12m31s
CI / docker (pull_request) Successful in 9s
CI / benchmark-regression (pull_request) Successful in 20m44s
CI / coverage (pull_request) Successful in 29m22s
to aa008ba5d7
All checks were successful
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 15s
CI / quality (pull_request) Successful in 18s
CI / build (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 30s
CI / security (pull_request) Successful in 32s
CI / integration_tests (pull_request) Successful in 4m2s
CI / unit_tests (pull_request) Successful in 7m26s
CI / docker (pull_request) Successful in 9s
CI / benchmark-regression (pull_request) Successful in 16m11s
CI / coverage (pull_request) Successful in 23m7s
CI / lint (push) Successful in 26s
CI / quality (push) Successful in 19s
CI / typecheck (push) Successful in 1m4s
CI / build (push) Successful in 39s
CI / security (push) Successful in 1m2s
CI / benchmark-regression (push) Has been skipped
CI / integration_tests (push) Successful in 4m15s
CI / benchmark-publish (push) Successful in 11m19s
CI / unit_tests (push) Successful in 14m6s
CI / docker (push) Successful in 9s
CI / coverage (push) Successful in 37m7s
2026-02-24 13:41:12 +00:00
Compare
freemo scheduled this pull request to auto merge when all checks succeed 2026-02-24 13:41:29 +00:00
freemo merged commit aa008ba5d7 into master 2026-02-24 14:04:53 +00:00
freemo deleted branch feature/m4-cli-extensions 2026-02-24 14:04:53 +00:00
freemo self-assigned this 2026-02-24 14:22:26 +00:00
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.

Blocks
Reference
cleveragents/cleveragents-core!413
No description provided.