@@ -3,6 +3,7 @@ package model
33import (
44 "testing"
55
6+ "github.com/charmbracelet/crush/internal/config"
67 "github.com/charmbracelet/crush/internal/skills"
78 "github.com/charmbracelet/crush/internal/ui/common"
89 uistyles "github.com/charmbracelet/crush/internal/ui/styles"
@@ -56,3 +57,25 @@ func TestSkillStatusItemsIncludesBuiltinSkills(t *testing.T) {
5657 }
5758 require.True(t, hasBuiltin)
5859}
60+
61+func TestSkillStatusItemsExcludesDisabledSkills(t *testing.T) {
62+ t.Parallel()
63+
64+ st := uistyles.DefaultStyles()
65+ ui := &UI{
66+ com: &common.Common{
67+ Styles: &st,
68+ Workspace: &testWorkspace{cfg: &config.Config{Options: &config.Options{DisabledSkills: []string{"go-doc", "crush-config"}}}},
69+ },
70+ skillStates: []*skills.SkillState{
71+ {Name: "go-doc", Path: "/tmp/go-doc/SKILL.md", State: skills.StateNormal},
72+ },
73+ }
74+
75+ items := ui.skillStatusItems()
76+
77+ for _, item := range items {
78+ require.NotEqual(t, "go-doc", item.name)
79+ require.NotEqual(t, "crush-config", item.name)
80+ }
81+}