Skip to content

Feat/issue 130 cli polish ux#131

Merged
rosspeili merged 5 commits into
ARPAHLS:mainfrom
rizzoMartin:feat/issue-130-CLI-polish-UX
May 27, 2026
Merged

Feat/issue 130 cli polish ux#131
rosspeili merged 5 commits into
ARPAHLS:mainfrom
rizzoMartin:feat/issue-130-CLI-polish-UX

Conversation

@rizzoMartin
Copy link
Copy Markdown
Contributor

Description

Polish pass on the CLI following #93 (pastel redesign, merged).

Splash footer — added a dim pastel line under the version with
https://skillware.site and https://github.com/arpahls/skillware.

Menu UX — stub items now labeled paths (soon, #81) and
test (soon, #83) so users know they are coming. Menu re-prints after
each command; exits only on q or Ctrl+C, not on empty Enter.

Width-aware tablecmd_list() now uses expand=True and column
ratios so the table adapts to terminal width instead of crushing columns
on narrow terminals. console is passed from cmd_interactive() to
cmd_list() so both share the same terminal context.

short_description ripple — added short_description to
templates/python_skill/manifest.yaml with an example string. Mentioned
as optional in the contributor checklist in
docs/contributing/ai_native_workflow.md and
templates/python_skill/README.md. Added one line to README.md Quick
Start noting that bare skillware opens the interactive menu.

Tests — added test_cmd_interactive_list_dispatch covering menu
input 1 dispatching to cmd_list. Removed stale test that asserted
a FileNotFoundError no longer raised by the current implementation.

Docs — refreshed docs/usage/cli.md with current sample output,
color theme table, and interactive menu documentation.

Type of Change (Matches Issue Templates)

  • Skill Proposal: New Skill (Contains manifest.yaml, skill.py, and instructions.md)
  • Bug Report Fix: Non-breaking change which fixes an execution error or framework bug
  • Doc Fix: Documentation Update
  • Framework Feature / RFC Updates: Core Framework Update (Changes to base_skill.py, loader.py, etc.)

Checklist (all PRs)

  • My code follows the Agent Code of Conduct.
  • I have run python -m flake8 . and pytest tests/ locally (or the subset relevant to this change).
  • examples/README.md is updated if this PR adds, renames, or removes a runnable script under examples/.

New or updated skill (complete only if this PR adds or changes a skill under skills/)

Skip this section for framework-only, documentation-only, or other PRs that do not touch the skill registry.

Bundle & metadata

  • Skill lives at skills/<category>/<skill_name>/ (copied from templates/python_skill/ or equivalent).
  • manifest.yaml has name, version, description, valid parameters, and constitution.
  • manifest.yaml includes issuer with real name and email (not template placeholders).
  • Optional: issuer.github and issuer.org set when applicable.
  • requirements and env_vars are documented when the skill needs them.

Logic, cognition, and UI

  • skill.py is deterministic Python (no arbitrary LLM-generated code paths).
  • instructions.md explains when and how to use the skill.
  • card.json is present and its issuer matches manifest.yaml (name and email at minimum).

Tests & loader

  • test_skill.py covers execution and schema expectations.
  • SkillLoader.load_skill("<category>/<skill_name>") succeeds (or missing deps are documented).

Documentation & catalog

  • docs/skills/<skill_name>.md exists or is updated (ID, Issuer, usage).
  • docs/skills/README.md lists the skill with ID and Issuer.

Constitution & Safety (if adding or modifying a skill)

Related Issues

Fixes #130

@rosspeili
Copy link
Copy Markdown
Contributor

Thanks @rizzoMartin, solid work on #130 as always. Splash footer, menu loop, stub labels, width-aware table, and template/checklist ripple all look good and tests pass locally as well.

One thing before merge: docs/usage/cli.md still says Enter exits (line 21–22) but this PR removes that behavior, please update interactive menu docs (re-print loop, splash links, stub labels). PR description mentions cli.md but it isn’t in the diff.

Tiny nits (non-blocking): SPLASH_STYLE comment sKillwareskillware, tighten test_cmd_interactive_list_dispatch so it can’t pass via "No skills found".

LGTM once cli.md is synced. <3

@rosspeili
Copy link
Copy Markdown
Contributor

Thanks @rizzoMartin, LGTM, merging as-is. (there is a changelog line missing, but changelog was introduced in the latest commit you might not have, will do myself in the next PR, so no worries).

#130 is fully covered: splash footer, menu loop/exit behavior, stub labels, width-aware table, template + checklist ripple, and cli.md all look good. The 0ba95b6 follow-up fixed the docs sync and the list-dispatch test nicely. Tests pass locally.

Great work as always, closes #130.

@rosspeili rosspeili merged commit 0bd2410 into ARPAHLS:main May 27, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feat]: CLI visual polish and UX (sub-issue of #93)

2 participants