Problem statement
This is exactly what I was looking for. I thought about building it myself, but you beat me to it, and you're almost there it looks like. Very cool project. I'd like to help you finish it!
Would you mind if I added a new command called browse? I already had an agent take a first pass at this, it just needs a few tweaks before it's ready. I was picturing a TUI search feature that auto-populates with skills as you type in the search panel, and allows you to preview them as you hover over them.
Proposed solution
This is the first pass of what my agent built:
What was added
internal/tui/styles.go
All lipgloss colour/style definitions — accent purple palette, panel borders (normal and focused), selected-item highlight, muted text, status bar styles, glamour-rendered markdown style.
internal/tui/model.go
Full bubbletea model with:
- Search box (bubbles/textinput) — debounced at 350ms so we don't hammer the ClawHub API on every keystroke
- Results list — scrolling window that tracks the cursor; shows name, source, description
- Preview pane (bubbles/viewport) — calls svc.Resolver.ResolveMany() on hover to fetch the real SKILL.md, then renders it through glamour as styled markdown
- Install on Enter — calls svc.Install() with the selected source/slug ref
- Status bar — shows loading spinners, install success/error, keybinding hints
- All network calls run in background goroutines (bubbletea Cmds) so the UI never blocks
cmd/skillpm/main.go
New browse command (aliases: ui, tui) registered right after search. Launches the TUI with tea.WithAltScreen() (full-screen, restores terminal on exit). Supports --source to scope search to a single source.
Usage
skillpm browse # search all sources
skillpm browse --source clawhub # search only clawhub
Alternatives considered
No response
Impact / compatibility
No response
Problem statement
This is exactly what I was looking for. I thought about building it myself, but you beat me to it, and you're almost there it looks like. Very cool project. I'd like to help you finish it!
Would you mind if I added a new command called
browse? I already had an agent take a first pass at this, it just needs a few tweaks before it's ready. I was picturing a TUI search feature that auto-populates with skills as you type in the search panel, and allows you to preview them as you hover over them.Proposed solution
This is the first pass of what my agent built:
What was added
internal/tui/styles.go
All lipgloss colour/style definitions — accent purple palette, panel borders (normal and focused), selected-item highlight, muted text, status bar styles, glamour-rendered markdown style.
internal/tui/model.go
Full bubbletea model with:
cmd/skillpm/main.go
New browse command (aliases: ui, tui) registered right after search. Launches the TUI with tea.WithAltScreen() (full-screen, restores terminal on exit). Supports --source to scope search to a single source.
Usage
skillpm browse # search all sources
skillpm browse --source clawhub # search only clawhub
Alternatives considered
No response
Impact / compatibility
No response