Skip to content

fix: Windows skillhub catalog extraction and skills UI polish#986

Merged
alchemistklk merged 4 commits intomainfrom
fix/windows-skillhub-and-skills-ui
Apr 9, 2026
Merged

fix: Windows skillhub catalog extraction and skills UI polish#986
alchemistklk merged 4 commits intomainfrom
fix/windows-skillhub-and-skills-ui

Conversation

@lefarcen
Copy link
Copy Markdown
Collaborator

@lefarcen lefarcen commented Apr 9, 2026

Summary

  • Fix skillhub catalog tar extraction on Windows — GNU tar misparses C: as rsh host spec and backslashes as escape sequences. Add --force-local on Windows and normalize paths to forward slashes.
  • Add guaranteed top margin to BrandRail GitHub link so it doesn't visually collide with bullet content on short viewports.
  • Add scroll chevron buttons to the skills category pill list for users without horizontal-scroll affordances (mouse-only desktop).

Closes #595
Closes #785

Test plan

  • Windows: verify SkillHub catalog loads and displays skills after refresh
  • Verify BrandRail GitHub link has spacing from bullet content on small screens
  • Verify category pill list shows left/right scroll buttons when overflowing

🤖 Generated with Claude Code

GNU tar (Git Bash's tar.exe, which commonly precedes the system bsdtar
in PATH on Windows dev machines) misparses Windows paths in two ways:

  1. A leading `C:` is interpreted as an rsh `host:path` spec, so the
     extraction fails with "tar (child): Cannot connect to C: resolve
     failed". `--force-local` disables that parsing.
  2. Backslashes in paths are treated as escape sequences (e.g. `\n`
     in `projects\nexu` is eaten), so `-C` lands in a phantom dir.

Fix: pass `--force-local` only on Windows (bsdtar doesn't accept it,
so it stays off on macOS/Linux) and normalize archive/extract paths to
forward slashes, which both GNU tar and bsdtar handle correctly.

Without this, refreshCatalog silently fails on Windows (the catch in
start() swallows the error), so the SkillHub page renders an empty
catalog despite installed skills working fine.
The BrandRail column uses flex-col + justify-between with three
children (logo / content / GitHub link). When the viewport is short
or the middle content block is tall, justify-between collapses the
gap between the bullets and the GitHub link, leaving them visually
glued together.

Add `mt-10 xl:mt-12` to the GitHub FadeIn so there is always at least
~40-48px of breathing room between bullets and the GitHub link, even
when justify-between has no slack to distribute.
The horizontally-scrolling category filter on the SkillHub Explore tab
already showed left/right fade gradients when there was overflow, but
users on devices without horizontal-scroll affordances (mouse-only
desktop, no touchpad gesture) had no way to scroll the hidden pills.

Layer a chevron button on top of each fade gradient that scrolls the
pill row by ~80% of its visible width, smoothly. The buttons reuse
the existing `showPillFadeLeft` / `showPillFade` overflow state, so
they appear/disappear automatically as the user scrolls or the
viewport resizes — no extra listeners.
@sentry
Copy link
Copy Markdown

sentry Bot commented Apr 9, 2026

Codecov Report

❌ Patch coverage is 0% with 47 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
apps/web/src/pages/skills.tsx 0.00% 30 Missing ⚠️
...ontroller/src/services/skillhub/catalog-manager.ts 0.00% 16 Missing ⚠️
apps/web/src/components/brand-rail.tsx 0.00% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 156fe94609

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread apps/controller/src/services/skillhub/catalog-manager.ts Outdated
… Windows

Windows System32\tar.exe (bsdtar) rejects --force-local, while Git
Bash's GNU tar needs it for C: drive paths. Try with the flag first
and fall back without it.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@alchemistklk alchemistklk merged commit 8e871b6 into main Apr 9, 2026
11 checks passed
@lefarcen lefarcen mentioned this pull request Apr 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants