Skip to content

feat(skills): show enabled/disabled status in 'skills list' - #16129

Merged
teknium1 merged 1 commit into
mainfrom
hermes/hermes-b258f084
Apr 26, 2026
Merged

feat(skills): show enabled/disabled status in 'skills list'#16129
teknium1 merged 1 commit into
mainfrom
hermes/hermes-b258f084

Conversation

@teknium1

@teknium1 teknium1 commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

Summary

hermes skills list shows each skill's enabled/disabled status and accepts --enabled-only to filter down to what will actually load for the active profile — answering @mochizukimr's "hermes -p dario skills list shows the full catalog, I want the live set for this profile" question.

Profile switching already works via -p (swaps HERMES_HOME). This just surfaces the filtered result visibly.

Usage

hermes -p dario skills list                  # every skill, with a Status column
hermes -p dario skills list --enabled-only   # only what will load for the dario profile
/skills list --enabled-only                  # same inside an agent session

Changes

  • hermes_cli/skills_hub.pydo_list gains enabled_only param, adds Status column, summary shows enabled/disabled split
  • hermes_cli/main.py--enabled-only on the skills list subparser
  • /skills list slash handler + help panel updated
  • Tests — 4 new (status column, disabled marking, --enabled-only hiding, no platform-env leakage); existing fixtures updated to accept skip_disabled kwarg

Validation

Before After
Status column absent enabled / disabled per row
--enabled-only N/A hides disabled rows + updates title/summary
Summary N hub, N builtin, N local … — N enabled, N disabled
Targeted tests 10 passing 14 passing

E2E verified with profile + fixture skills:

  • hermes -p dario skills list → all 4 skills shown, 2 disabled ones marked
  • hermes -p dario skills list --enabled-only → only the 2 live skills, summary reads 2 enabled shown

'hermes skills list' now shows every skill's enabled/disabled status
and accepts --enabled-only to filter down to what will actually load
for the active profile:

    hermes -p dario skills list --enabled-only

Previously the command was a flat catalog — it did not apply
skills.disabled from config.yaml, so there was no way to see the
live skill set for a profile without reading config by hand.
Profile switching already works via -p (swaps HERMES_HOME); this
just surfaces the result visibly.

Changes:
- hermes_cli/skills_hub.py: do_list adds a Status column and an
  enabled_only filter; summary reports enabled/disabled split
- hermes_cli/main.py: --enabled-only flag on 'skills list'
- /skills list slash command accepts --enabled-only too
- tests: 4 new (status column, disabled marking, enabled-only
  hiding, no platform leakage into get_disabled_skill_names);
  existing fixtures updated to accept skip_disabled kwarg

Reported by @mochizukimr on X.
@teknium1
teknium1 force-pushed the hermes/hermes-b258f084 branch from 142f783 to 3b8b25d Compare April 26, 2026 16:11
@teknium1 teknium1 changed the title feat(skills): show per-platform enabled/disabled in 'skills list' feat(skills): show enabled/disabled status in 'skills list' Apr 26, 2026
@teknium1
teknium1 merged commit 0e2a53e into main Apr 26, 2026
11 of 12 checks passed
@teknium1
teknium1 deleted the hermes/hermes-b258f084 branch April 26, 2026 16:20
@alt-glitch alt-glitch added type/feature New feature or request comp/cli CLI entry point, hermes_cli/, setup wizard tool/skills Skills system (list, view, manage) P3 Low — cosmetic, nice to have labels Apr 26, 2026
donald131 pushed a commit to donald131/hermes-agent that referenced this pull request May 2, 2026
…arch#16129)

'hermes skills list' now shows every skill's enabled/disabled status
and accepts --enabled-only to filter down to what will actually load
for the active profile:

    hermes -p dario skills list --enabled-only

Previously the command was a flat catalog — it did not apply
skills.disabled from config.yaml, so there was no way to see the
live skill set for a profile without reading config by hand.
Profile switching already works via -p (swaps HERMES_HOME); this
just surfaces the result visibly.

Changes:
- hermes_cli/skills_hub.py: do_list adds a Status column and an
  enabled_only filter; summary reports enabled/disabled split
- hermes_cli/main.py: --enabled-only flag on 'skills list'
- /skills list slash command accepts --enabled-only too
- tests: 4 new (status column, disabled marking, enabled-only
  hiding, no platform leakage into get_disabled_skill_names);
  existing fixtures updated to accept skip_disabled kwarg

Reported by @mochizukimr on X.
02356abc pushed a commit to 02356abc/hermes-agent that referenced this pull request May 14, 2026
…arch#16129)

'hermes skills list' now shows every skill's enabled/disabled status
and accepts --enabled-only to filter down to what will actually load
for the active profile:

    hermes -p dario skills list --enabled-only

Previously the command was a flat catalog — it did not apply
skills.disabled from config.yaml, so there was no way to see the
live skill set for a profile without reading config by hand.
Profile switching already works via -p (swaps HERMES_HOME); this
just surfaces the result visibly.

Changes:
- hermes_cli/skills_hub.py: do_list adds a Status column and an
  enabled_only filter; summary reports enabled/disabled split
- hermes_cli/main.py: --enabled-only flag on 'skills list'
- /skills list slash command accepts --enabled-only too
- tests: 4 new (status column, disabled marking, enabled-only
  hiding, no platform leakage into get_disabled_skill_names);
  existing fixtures updated to accept skip_disabled kwarg

Reported by @mochizukimr on X.
dannyJ848 pushed a commit to dannyJ848/hermes-agent that referenced this pull request May 17, 2026
…arch#16129)

'hermes skills list' now shows every skill's enabled/disabled status
and accepts --enabled-only to filter down to what will actually load
for the active profile:

    hermes -p dario skills list --enabled-only

Previously the command was a flat catalog — it did not apply
skills.disabled from config.yaml, so there was no way to see the
live skill set for a profile without reading config by hand.
Profile switching already works via -p (swaps HERMES_HOME); this
just surfaces the result visibly.

Changes:
- hermes_cli/skills_hub.py: do_list adds a Status column and an
  enabled_only filter; summary reports enabled/disabled split
- hermes_cli/main.py: --enabled-only flag on 'skills list'
- /skills list slash command accepts --enabled-only too
- tests: 4 new (status column, disabled marking, enabled-only
  hiding, no platform leakage into get_disabled_skill_names);
  existing fixtures updated to accept skip_disabled kwarg

Reported by @mochizukimr on X.
gweeteve pushed a commit to gweeteve/hermes-agent that referenced this pull request Jun 2, 2026
…arch#16129)

'hermes skills list' now shows every skill's enabled/disabled status
and accepts --enabled-only to filter down to what will actually load
for the active profile:

    hermes -p dario skills list --enabled-only

Previously the command was a flat catalog — it did not apply
skills.disabled from config.yaml, so there was no way to see the
live skill set for a profile without reading config by hand.
Profile switching already works via -p (swaps HERMES_HOME); this
just surfaces the result visibly.

Changes:
- hermes_cli/skills_hub.py: do_list adds a Status column and an
  enabled_only filter; summary reports enabled/disabled split
- hermes_cli/main.py: --enabled-only flag on 'skills list'
- /skills list slash command accepts --enabled-only too
- tests: 4 new (status column, disabled marking, enabled-only
  hiding, no platform leakage into get_disabled_skill_names);
  existing fixtures updated to accept skip_disabled kwarg

Reported by @mochizukimr on X.
waefrebeorn pushed a commit to waefrebeorn/slermes that referenced this pull request Jul 2, 2026
…arch#16129)

'hermes skills list' now shows every skill's enabled/disabled status
and accepts --enabled-only to filter down to what will actually load
for the active profile:

    hermes -p dario skills list --enabled-only

Previously the command was a flat catalog — it did not apply
skills.disabled from config.yaml, so there was no way to see the
live skill set for a profile without reading config by hand.
Profile switching already works via -p (swaps HERMES_HOME); this
just surfaces the result visibly.

Changes:
- hermes_cli/skills_hub.py: do_list adds a Status column and an
  enabled_only filter; summary reports enabled/disabled split
- hermes_cli/main.py: --enabled-only flag on 'skills list'
- /skills list slash command accepts --enabled-only too
- tests: 4 new (status column, disabled marking, enabled-only
  hiding, no platform leakage into get_disabled_skill_names);
  existing fixtures updated to accept skip_disabled kwarg

Reported by @mochizukimr on X.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/cli CLI entry point, hermes_cli/, setup wizard P3 Low — cosmetic, nice to have tool/skills Skills system (list, view, manage) type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants