Skip to content

Clean up skills UI and unify scheduled tasks iconography - #319

Merged
bashybaranaba merged 1 commit into
mainfrom
agent/skills-ui-polish-main
Aug 23, 2026
Merged

Clean up skills UI and unify scheduled tasks iconography#319
bashybaranaba merged 1 commit into
mainfrom
agent/skills-ui-polish-main

Conversation

@bashybaranaba

Copy link
Copy Markdown
Member

Why

Platform skills store icon as a Lucide icon name (panels-top-left, file-text, monitor), but three surfaces rendered that string as raw text inside a 36px chip — so slugs spilled across the skills grid, the agent's skills list, and the skill detail header.

What changed

Icon resolution. New SkillIcon resolves the stored value properly: a Lucide name renders the real glyph, an emoji renders as a glyph, and anything unrecognised falls back to the Zap mark. A slug can never reach the layout again.

Skills card cleanup. Icon, title, and description now share one aligned row instead of the icon floating above. The chunky grey "Available to…" ghost button becomes a quiet inline row. The hover lift (-translate-y + shadow) gives way to a flat border/tint hover matching the tools view. Tags truncate, the empty state adopts the house dashed-border pattern, and cards are keyboard-reachable with a proper focus ring.

Sparkles → Zap for skills across the agent section nav, the Customize tab, both empty states, and the runtime skills note. Sparkles intentionally stays on credits, the copilot badge, and the composer's "Auto" chip — those aren't skills.

Tasks → "Scheduled tasks" with a single ClipboardClock icon across the sidebar, collapsed rail, agent section nav, global search (nav item + result group + row icon), landing sidebar, page header, create-button tooltip, task detail back link, and the copilot scope label.

Note on the icon

ClipboardClock postdates the pinned lucide-react 0.474 (it landed around 0.511). Rather than bump the icon library across the whole app, it's inlined from Lucide's own path data using LucideProps, so it's structurally identical to a real Lucide icon and drops into every icon: slot unchanged.

Verification

  • tsc --noEmit clean on both the main- and staging-based branches
  • next build passes (only pre-existing next-auth/jose Edge-runtime warnings)
  • next lint on changed files shows only pre-existing no-explicit-any warnings

🤖 Generated with Claude Code

Platform skills store `icon` as a Lucide icon name (`panels-top-left`,
`file-text`, `monitor`), but three surfaces rendered that string as raw
text inside a 36px chip, so slugs spilled across the card, the agent's
skills list, and the skill detail header.

Add a SkillIcon that resolves the stored value: a Lucide name renders the
real glyph, an emoji renders as a glyph, and anything unrecognised falls
back to the Zap mark, so a slug can never reach the layout again.

Tidy the skills grid card while there: the icon, title, and description
share one aligned row; the boxed ghost "Available to..." button becomes a
quiet inline row; the hover lift gives way to a flat border/tint hover
matching the tools view; tags truncate; the empty state adopts the house
dashed-border pattern; cards are keyboard-reachable with a focus ring.

Skills now read as Zap rather than Sparkles across the agent section nav,
the Customize tab, both empty states, and the runtime skills note.
Sparkles stays on credits, the copilot badge, and the composer's Auto
chip, which are not skills.

Tasks become "Scheduled tasks" with a single ClipboardClock icon across
the sidebar, collapsed rail, agent section nav, global search, landing
sidebar, page header, create tooltip, detail back link, and copilot
scope label. That icon postdates the pinned lucide-react 0.474, so it is
inlined from Lucide's own path data with LucideProps and drops into every
`icon:` slot unchanged.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Aug 23, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
agent-commons Ready Ready Preview Aug 23, 2026 9:13pm
agent-commons-commons-docs Ready Ready Preview Aug 23, 2026 9:13pm
commons-courses Ready Ready Preview Aug 23, 2026 9:13pm

Request Review

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.

1 participant