BOOST-D05Shipped
Fix search: truncate & width-clamp results
Today boost search is the worst screen in the app: a single result can dump a 2,000-character description with literal, unrendered \\n\\n escapes, while names are padded to a fixed 30 columns that waste half the row. Clamp each row to the live terminal width, collapse whitespace/escape artifacts, and ellipsize. This one fix turns a wall of noise into a scannable list.
layoutComplexity MImpact High★★★★★
commands/discovery.py · search
BOOST-D06Proposed
Glass-panel box primitives
The web system frames everything in rounded glass; the CLI frames nothing. Add rounded box-drawing primitives (╭─╮ │ ╰─╯) with dim --line borders and an optional title, mirroring the web .glass/.window surfaces. Reusable chrome for doctor, info, snapshot and success summaries.
layoutComplexity MImpact Med★★★★☆
core/output.py · new panel()
BOOST-D07Proposed
Relevance visualization in search
Results are "ranked by heuristic relevance" but the ranking is invisible — every row looks equal. Render a tiny gradient relevance bar or score glyph per hit and visually separate curated from GitHub-wide matches, so the eye lands on the best result first.
layoutComplexity MImpact Med★★★★☆
commands/discovery.py · search
BOOST-D08Proposed
Width-aware, right-aligned tables
table() is a naive ljust that ignores terminal width and left-aligns numeric columns. Make it width-aware (shrink the widest text column to fit), right-align counts with tabular figures, and add dim column separators — matching the web's font-variant-numeric: tabular-nums stat blocks.
layoutComplexity MImpact Med★★★☆☆
core/output.py:71–83
BOOST-D09Proposed
Terminal-window chrome for preview / cat
The web guide renders skills inside a titled window with traffic-light dots (.window .dots). Give preview/cat the same treatment: a titled frame with the skill name in the bar, so a rendered SKILL.md in the terminal matches the screenshots on the site.
layoutComplexity MImpact Med★★★★☆
commands/info.py · preview/cat
BOOST-D23Shipped
trending had the same overflow as search
Grading the un-touched commands surfaced a sibling of D05: boost trending piped raw catalog descriptions straight into table(), so a single 300-char description blew the table across the pane. Fixed by clipping each description through out.truncate() to the width left after the name/installs/last columns — the same helper the search fix introduced.
layoutComplexity SImpact High★★★★☆
commands/discovery.py · cmd_trending
BOOST-D24Proposed
Width-aware shared table()
out.table() backs 28 call sites, and several still overflow: taps pads the NAME column to the widest repo (K-Dense-AI/claude-scientific-skills = 44 cols) and then prints full URLs, so wide catalogs wrap. The durable fix is to make table() itself width-aware — shrink the widest text column to the terminal and right-align numeric columns — instead of truncating per-caller. Higher blast radius (28 callers, many exact-output tests), so it needs a careful, test-first pass.
layoutComplexity LImpact Med★★★★☆
core/output.py:table() · commands/taps.py