100 Commits
Author SHA1 Message Date
Vyctor H. Brzezowski 64db9c3fae fix: default homepage Plugins to Featured (#3434)
Default the homepage Plugins catalog to Featured when switching from the Skills-only Trending tab, while preserving explicit valid plugin tabs and existing Skills behavior.\n\nCloses #3433
2026-08-06 20:52:09 -03:00
Vyctor H. Brzezowski 34350cd16d fix: restore homepage catalog discovery (#3418)
Restores homepage search and category discovery while preserving the canonical Trending feed contract. Adds the responsive control-group divider and closes #3417.
2026-08-06 17:58:34 -03:00
Vyctor H. Brzezowski 2f428b4e1b fix: align discovery icons by content type and viewport (#3427)
Remove Skill listing icons across discovery, retain Plugin recognition icons on desktop, and collapse both icon columns at the existing mobile breakpoints. Keep loading skeletons aligned with settled rows and cards.

Closes #3425.

Co-authored-by: Vyctor H. Brzezowski <krzyszchweski@gmail.com>
2026-08-06 17:17:16 -03:00
Vyctor H. Brzezowski 871e430ef6 fix: show honest skills.sh Trending provenance (#3423)
* fix: show honest skills.sh trending provenance

* test: type mixed trending fixtures
2026-08-06 15:38:38 -03:00
Vyctor H. Brzezowski 31729d314c fix: restore homepage headline text selection (#3428) 2026-08-05 21:59:45 -03:00
Vyctor H. Brzezowski 3074701740 fix: rank native trending by downloads (#3424) 2026-08-05 16:52:35 -07:00
Vyctor H. Brzezowski 8f7c1c50b7 fix(web): simplify official publisher activity (#3426) 2026-08-05 16:51:36 -07:00
Vyctor H. Brzezowski fc0a47f02d fix: report broken worktree source symlinks (#3396) 2026-08-05 14:28:41 -03:00
Vyctor H. Brzezowski dc9da89d3b fix(web): bound canonical skills SSR loading (#3399) 2026-08-05 14:22:47 -03:00
Vyctor H. Brzezowski 82e73637ed fix(web): remove unused client font bundles (#3398) 2026-08-05 14:22:15 -03:00
Vyctor H. Brzezowski dc7a0f4de1 fix(home): contain app category scroller on mobile (#3281)
Constrain the mobile app-category strip to the available content width while preserving internal horizontal scrolling. Scope the CSS regression contract to the exact nested mobile rule.
2026-08-03 13:51:44 -03:00
vyctorbrzezowski 2ce2ecf358 fix(web): move active promotions into a top bar 2026-07-16 13:25:15 -03:00
vyctorbrzezowski 3348b0baa4 fix(web): restore homepage official creators 2026-07-16 12:44:57 -03:00
vyctorbrzezowski 114d23688a fix(web): center homepage hero background 2026-07-16 12:16:15 -03:00
Vyctor H. Brzezowski bf9c3be4a7 feat(web): refresh homepage hero artwork (#3106) 2026-07-16 11:04:36 -03:00
Vyctor H. Brzezowski 307f11f5b8 perf: bound publisher profile reads (#3073) 2026-07-13 12:46:23 -03:00
Vyctor H. Brzezowski 4eb4dabc70 perf: batch home publisher hydration (#3070) 2026-07-13 11:37:15 -03:00
Vyctor H. Brzezowski cba061d490 fix(web): defer detail histories until needed (#3072) 2026-07-13 11:36:35 -03:00
Vyctor H. Brzezowski b2673d3ca8 fix(web): defer offscreen home images (#3071) 2026-07-13 11:35:57 -03:00
Vyctor H. Brzezowski 154bbdf492 perf: load plugin catalog during SSR (#3062) 2026-07-13 11:35:20 -03:00
vyctorbrzezowski 06843677fe test: seed dashboard truncation fixtures 2026-07-11 12:53:01 -03:00
vyctorbrzezowski 0c05bbe9f4 fix: polish shared controls and toasts 2026-07-11 12:53:01 -03:00
vyctorbrzezowski 926ecde45f fix: stabilize browse tabs and toasts 2026-07-11 12:53:01 -03:00
vyctorbrzezowski d5ef783708 fix: keep homepage CLI band full bleed 2026-07-11 12:53:01 -03:00
vyctorbrzezowski bafcd04be0 fix: truncate long dashboard package names 2026-07-11 12:53:01 -03:00
vyctorbrzezowski b953c189be fix: align creator identity and activity rails 2026-07-11 12:53:01 -03:00
vyctorbrzezowski 726e734287 fix: polish homepage app and publish sections 2026-07-11 12:53:01 -03:00
vyctorbrzezowski 423003968c fix: align browse controls with design system 2026-07-11 12:53:01 -03:00
Vyctor H. Brzezowski 0e898b1dfd fix: remove account links from mobile menu (#3012) 2026-07-08 13:51:47 -07:00
Vyctor H. Brzezowski 3565204dba fix: show profile edit action for owners (#3011) 2026-07-08 13:51:37 -07:00
Vyctor H. Brzezowski 59301ced53 Refine homepage promotion banner (#3010)
* fix: refine home promotion banner

* fix: add promotional banner treatment

* fix: tune promotion banner red treatment

* fix: refine promotion banner title details

* fix: anchor promotion banner glow

* fix: animate promotion urgency text

* fix: add promotion urgency icon

* fix: remove promotion urgency scramble

* fix: soften promotion banner glow

* fix: tune light promotion glow

* fix: rebalance light promotion glow

* fix: polish promotion banner light mode

* fix: reduce promotion meta size

* fix: align promotion meta copy

* fix: add promotion banner top reflection

* fix: refine promotion banner copy

* fix: keep promotion banner generic

* fix: gate promotion brand icon

* fix: enable promotion title truncation
2026-07-08 13:51:26 -07:00
Vyctor H. Brzezowski a89bfaf61d feat(web): add publisher dashboard workspace (#2922)
* feat(dashboard): rebuild publisher workspace with clearer hierarchy

Replace the monolithic dashboard with a browse-aligned workspace: attention
strip with catalog dedupe, home-style grid cards, download insights, and a
sidebar promo plus changelog open by default.

* feat(dashboard): polish stats, sidebar, and compact download charts

Checkpoint for the publisher workspace iteration: compact stats panel with distinct mock sparklines, sidebar feed cleanup, and toolbar spacing fixes.

* chore: checkpoint dashboard redesign

* chore: checkpoint dashboard ui baseline

* feat: refine publisher dashboard workspace

* feat: refine publisher dashboard layout

* feat: refine dashboard and changelog surfaces

* feat: refine dashboard review vault and metrics

* fix: strengthen dashboard review states

* refactor: render changelog artwork as image

* fix: refine dashboard review and changelog layout

* fix: align grid status and expose chart tooltips

* feat: publish researched platform changelog

* fix: space review detail link

* feat: focus anchored changelog entries

* fix: refine expanded changelog actions

* feat: seed local publisher switcher content

* fix: center populated dashboard publisher selector

* fix: tune populated dashboard publisher chrome

* fix: move dashboard publisher selector to context bar

* Revert "fix: move dashboard publisher selector to context bar"

This reverts commit daa586ddbb4bbb0456e6a4abad483bba8073ae81.

* fix: lift dashboard chart tooltip

* fix: split dashboard title and action row

* fix: left-align dashboard publisher control

* Revert "fix: left-align dashboard publisher control"

This reverts commit ee3d8a6182630768d7d712c9e750d23969f4131a.

* fix: center dashboard publisher in action row

* Revert "fix: center dashboard publisher in action row"

This reverts commit 4baffc71d927be24ee15d6ca649b7c0ab4a3a939.

* Revert "fix: split dashboard title and action row"

This reverts commit ef4cf026e1692b53497f6fd347d5796195d9597e.

* fix: style changelog action links as buttons

* Revert "feat: seed local publisher switcher content"

This reverts commit 55caa24d3c0705b0c7eb144aa6bee58fa57d4acd.

* chore: exclude local-only dashboard artifacts

* fix: remove synthetic dashboard catalog items

* fix: surface suspicious skills in dashboard attention

* fix: use real plugin validation findings

* fix: preserve package catalog metadata types

* test: align dashboard attention scanner preview

* fix: use real dashboard download metrics

* chore: satisfy dashboard preflight checks

* fix: simplify plugin finding severity type

* chore: remove unused dashboard helpers

* chore: remove unused dashboard exports

* fix: route plugin security reviews to audits

* fix: aggregate full dashboard metrics

* fix: include legacy personal metrics

* fix: include legacy selected metrics

* fix: avoid paginated dashboard metrics query

* test: follow dashboard validation review flow

* fix(web): remove dashboard changelog

* fix(web): refine publisher dashboard workspace

* test: update plugin inspector dashboard flow
2026-07-02 08:09:03 -07:00
vyctorbrzezowski a1fd095b1f fix(publish): refine summary prefill note 2026-06-26 12:19:37 -07:00
vyctorbrzezowski 5b1be27f4a feat(publish): prefill short summary from SKILL.md with discovery banner
Auto-populate the publish form short summary from SKILL.md frontmatter
description (metadata or top-level), with a dismissible in-field banner
that nudges authors toward discovery-friendly copy. Reset prefill state
on re-upload, measure banner height for textarea padding, and raise the
summary limit to 300 characters.
2026-06-26 12:19:37 -07:00
vyctorbrzezowski 8df8d9f550 fix(ci): satisfy format check and types after main rebase
Narrow plugin rows in search results and compare org-role visibility
against the route handle so types-build passes on rebased main.
2026-06-25 11:45:03 -07:00
vyctorbrzezowski 3568288c91 fix(ui): align search creators list and hide org roles publicly
Match creator search results to the /creators directory row layout and
only show organization membership roles to the profile owner or site admins.
2026-06-25 11:45:03 -07:00
vyctorbrzezowski 2aa8af1e7b fix(ci): satisfy format check and knip on profile polish branch
Run oxfmt across touched UI files, stop exporting the unused inline-code
summary segment type, and type the malformed-topic hook test so types-build
passes.
2026-06-25 11:45:03 -07:00
vyctorbrzezowski e095e4b0ae fix(ui): harden skill and plugin detail polish for mobile browse
Tighten detail-page UX across diff loading, topic browse filters, install copy controls, versions tables, and mobile hero layout without changing core flows.
2026-06-25 11:45:03 -07:00
vyctorbrzezowski f78d1b266c fix(search): align pending browse rules with GitHub-backed spec
Keep GitHub-backed pending verification visible in browse/search, hide only
first-publish hosted pending skills synchronously, and require a listable
approved version before showing hosted skills still under review.
2026-06-25 11:38:04 -07:00
vyctorbrzezowski b26654b3b0 fix(search): unblock CI types and API browse exclusion
Tighten publicBrowse test fixtures for Convex Id/license types, drop
moderationSourceVersionId from digest picks, and apply pending-review
filtering to listPublicApiPageV1 entries.
2026-06-25 11:38:04 -07:00
vyctorbrzezowski 64e5bcb676 fix(search): resolve approved browse versions during pending review
Keep digest summary fast paths for ordinary listings while loading the last
approved public version when a newer release is still pending review.
2026-06-25 11:38:04 -07:00
vyctorbrzezowski 7fa17e159e fix(search): keep skills all tab on approved recommended ranking
Stop default recommended browse from falling back to updated ordering when
scores are missing, and exclude pending-review items from public browse/search
while preserving the last approved version for established skills.
2026-06-25 11:38:04 -07:00
Vyctor H. Brzezowski 3ef5f14d84 Improve skill publish metadata layout (#2851)
* Improve skill publish metadata layout and copy.

Reorganize categories/topics into their own card, add short summary on publish, align catalog fields, and clarify publishing-as owner labels.

* Rename publish tags label and fix related tests.

Use Release tags on the publish form, align publishing-as aria labels, and replace the invisible catalog toolbar mirror with a height spacer.

* Cap publish summary at 200 chars and polish PR assets.

Limit the publish-form short summary to 200 characters, tighten publish-only backend validation, simplify owner option labels, and drop the broken in-repo PR screenshot.
2026-06-24 14:09:23 -07:00
Vyctor H. Brzezowski 40e345f4a9 feat(ui): move creator into skill and plugin detail hero (#2842)
* feat(ui): move creator into skill and plugin detail hero

Show publisher name, handle, and official badge below the summary in the
shared detail hero, remove the sidebar Creator row, and resolve official
status from backend publisher data plus client fallback lookup.

* fix(ui): avoid extra official publisher detail reads

* fix(ui): align creator hero types with package API
2026-06-24 14:09:14 -07:00
Vyctor H. Brzezowski 6f537bf7ad fix(og): org profile images and Downloads metric in OG cards (#2840)
* fix(og): render org profile images in publisher OG cards

Pass publisher avatar, kind, and installs into OG meta URLs and allow
safely fetching public HTTPS org logos when generating profile images.

* fix: render org profile images in publisher OG cards

Org logos use public HTTPS URLs outside the GitHub/gravatar allowlist, so OG
generation fell back to the default mark. Allow SSRF-safe public fetches for
publisher profile avatars and embed avatar/kind metadata in OG URLs.

* fix(og): show Downloads instead of Installs on OG cards

Switch skill, plugin, and publisher OG image generators to read and
label download counts, with legacy installs query param fallback.

* fix(og): type skill API payload for canonical stat reads

Export SkillStatReadable so fetchSkillOgMeta can pass API skill stats
through readCanonicalStat without a TypeScript error.

* fix(og): format compact downloads in OG cards

Query-param download counts were rendered as raw integers on publisher
OG images. Reuse formatCompactStat, add download icon + lowercase label,
bump layout versions, and refresh org profile visual proof.

* fix(og): use Downloads label without icon on OG cards

Remove the download SVG from OG stat blocks and show only a muted
"Downloads" label above compact values. Bump skill/plugin/publisher
layout versions to bust cached social previews.
2026-06-24 14:08:49 -07:00
Vyctor H. Brzezowski cfb21978dd fix(web): align publisher grouped All tab with catalog total (#2839)
* fix(web): align publisher grouped All tab with catalog total

The grouped All chip was summing only paginated items while the Skills/Plugins tab showed the publisher total, causing mismatches like Plugins 59 vs All 12 on large profiles.

* docs(proof): add post-fix publisher All tab screenshot
2026-06-24 14:08:37 -07:00
Vyctor H. Brzezowski 82197de7e1 fix(web): restore full-color round user avatars in Cmd+K typeahead (#2837)
* fix(web): restore full-color round user avatars in Cmd+K typeahead

Keep org avatars square and muted in the navbar search dropdown while showing user profile photos in full color with circular framing.

* fix(web): limit typeahead user color restore to profile photos

Keep muted glyph fallbacks for users without avatars while preserving full-color circular photos and explicit muted square org treatment.
2026-06-24 14:08:27 -07:00
Vyctor H. Brzezowski 2bf8113ef1 fix(web): compact CLI/Prompt toggle on skill install card (#2815)
* fix(web): compact CLI/Prompt toggle on skill install card

Replace pill tablist with a flat text toggle for CLI vs Prompt install
options, with matching skeleton and styles.

* chore: add UI proof screenshot for install toggle PR
2026-06-23 23:50:29 -07:00
Vyctor H. Brzezowski 173e28dd84 fix(web): refresh publisher profile detail and catalog UX (#2818)
* feat(profile): polish publisher detail hero, catalog, and members layout

Refine the publisher profile page with a full-width hero, larger avatar,
Links/Members side-by-side details, chip-based catalog filters, and
segmented Skills/Plugins tabs while extracting profile styles into a
dedicated stylesheet.

* feat(profile): polish catalog grouping, members UI, and chrome layout

Checkpoint before moving publisher stats into the profile header actions slot.

* feat(profile): default catalog tab, plugin links, and visual proof

Open the plugins tab when a publisher has no skills, preserve scoped
plugin detail hrefs on profile rows, and keep catalog pagination active
during search. Includes publisher profile polish follow-ups and UI proof
screenshots for the PR.

* fix(profile): clear lint issues in publisher profile route

* fix(profile): polish avatar/badge details and refresh UI proof

Square org avatars, show icon-only official badge on mobile handles, and
match member placeholder size to photo avatars. Regenerate publisher
profile Playwright screenshots for PR proof.

* test(e2e): assert publisher catalog region on profile smoke

Match the publisher profile catalog landmark after the profile polish
removed the visible "Publisher catalog" heading.

* test(e2e): stabilize org delete profile catalog waits

Wait for the publisher profile heading and catalog region before asserting
seeded skill visibility, matching the async catalog load on the polished
profile page.

* test(e2e): assert publisher catalog skills by slug link

Profile catalog rows truncate display names to 40 chars, so deletion
proofs should wait for the skill detail href instead of the full seed
label text.

* fix(test): add skillSlug to AccountDeletionFixture type

Unblocks types-build after the publisher profile e2e assertion started
reading fixture.skillSlug for the catalog link check.
2026-06-23 23:41:24 -07:00
Vyctor H. Brzezowski a61f302a04 fix(web): refresh plugin validation panel (#2835)
* Polish skill header visibility alert and CLI install command styling.

Move staff moderation notes into the management toolbar and highlight install command targets with muted verb and emphasized slug.

* Polish plugin validation findings as a hero section above detail tabs.

Move validation outputs out of the tab bar into a persistent findings region with richer cards, CLI/agent copy actions, and updated unit and e2e coverage.

* Polish plugin validation fix guide header layout.

Stack the remediation copy on its own line and pin the fix guide link to the top-right beside the How to fix label.

* Polish plugin validation fix guide link column and color.

Move the fix guide CTA into a right column centered against the copy block and set the link color to #0099FF.

* Polish plugin validation panel header, actions, and findings list.

Tighten validation overview hierarchy with neutral stats, summary hint,
CLI validate block, and Copy instructions tooltip; align action heights,
collapse findings by default, and update unit/e2e assertions for the new copy.
2026-06-23 23:41:08 -07:00
Vyctor H. Brzezowski 7cc6b22176 feat(web): rename publishers browse to Creators (#2799)
* feat(web): rename publishers browse to Creators

Align /publishers page heading and filter tabs with clearer creator-focused copy, move Official after All, and show full org labels on desktop only.

* test(e2e): align local-auth flows with owner-qualified routes

Update playwright local-auth helpers and specs for canonical profile, skill, and plugin URLs after the main branch routing migration.

* fix(test): export plugin validation href helper for e2e typecheck

* chore: format local-auth helpers import

* chore: retrigger CI after flaky local-auth shards

* feat(web): move publishers browse to /creators route

Keep /publishers and /users as legacy redirects with search preserved, and align registry copy, tests, and reserved slugs with the new path.

* fix(web): drop unused OpenClaw slug re-export after schema move

* chore: format openClawExtensionSlugs re-export cleanup
2026-06-23 12:24:25 -07:00
Vyctor H. Brzezowski b927db6340 fix(web): show only downloads in plugin browse listings (#2797)
* fix(web): show only downloads in plugin browse listings

Plugin list rows and cards on /plugins and the home Plugins tab no longer surface star counts.

* docs: add UI proof screenshots for plugin listing change
2026-06-23 12:24:11 -07:00
Vyctor H. Brzezowski a5e41320c8 fix(web): recall publishers outside browse window in search (#2790)
* fix: recall publishers outside top install window in search

Publisher search only scanned the top 500 by installs and dropped empty
profiles, so handles like vincentkoc never appeared even when the user
profile was public.

* test: cover publisher search recall for low-install handles

Add regression coverage for publishers with published skills that fall
outside the top install browse window, matching the vyctorbrzezowski case.

* test: align publisher search mocks with downloads browse indexes

* chore: add production publisher search proof for PR 2790

* test: drop invalid publisher list stats assertion

Remove stats.skills expectation from listPublicPage search recall test;
public list items only expose downloads and installs counts.

* chore: retrigger CI after delete-account flake
2026-06-22 21:51:40 -07:00
Vyctor H. Brzezowski 8035a16024 fix(schema): expand reserved catalog topic slugs (#2791)
Block additional trust, curation, brand, and channel topic labels that
publishers could use to imply platform endorsement.
2026-06-22 21:01:51 -07:00
Vyctor H. BrzezowskiandCursor 0dafef6c8b feat(web): polish skill and plugin detail pages (#2780)
* fix: polish skill detail hero metadata

* fix: improve skill readme presentation

* chore: outline skill detail structure

* fix: narrow detail page container

* fix: compact skill sidebar on detail pages

* fix: use body font for install switcher

* fix: align plugin detail sidebar

* fix: shorten skill readme preview

* fix: soften related skills heading

* fix: remove duplicate stars metadata

* fix: remove related skill hover underline

* chore: remove detail debug outlines

* fix: align hero with content column

* fix: rename summary disclosure action

* fix: wrap tab content in contrast panel

* fix: restore full width hero layout

* fix: refine skill detail surfaces

* fix: soften skill readme body copy

* fix: hide skill detail breadcrumbs

* fix: place skill taxonomy above title

* fix: reduce skill detail title size

* fix: add skill hero top spacing

* fix: standardize skill markdown formatting

* fix: refine related skills navigation

* fix: align plugin detail hero with skills

* fix: increase hero taxonomy spacing

* fix: mark official plugin owners

* fix: tune detail sidebar labels

* fix: restyle install tab switcher

* fix: add subtle skill detail wash

* fix: horizontalize skill versions panel

* fix: animate install tab switcher

* fix: align plugin versions layout

* fix: improve tab markdown surface contrast

* fix: separate detail categories with commas

* fix: remove detail tab underline bars

* fix: bleed skill wash behind header

* fix: polish detail versions changelog

* fix: add file tree to skill files view

* fix: anchor skill wash to page top

* fix: restore plugin version download actions

* fix: align detail sidebar top spacing

* fix: restore active detail tab bar

* fix: collapse detail version changelogs

* fix: clarify version changelog toggles

* fix: tune detail tab and install polish

* fix: polish markdown code blocks

* fix: refine markdown code wrap control

* docs: capture detail polish direction

* fix: refine release history layout

* feat: simplify detail file navigation

* fix: align detail hero sidebar patterns

* fix: unify plugin and skill detail polish

* fix: refine detail hero and release rows

* fix: move related skills below detail content

* fix: align detail hero title with main content column

Keep the hero wash full width while constraining taxonomy, title, and
summary to the same grid column as install and tab content on desktop.

* fix: increase star count badge font to 14px

Make the sidebar star action count easier to read on detail pages.

* fix: align shiki code block surfaces with detail markdown

Override Shiki's inline pre background so fenced blocks use the shared
markdown-code-block surface on skill and plugin README tabs.

* fix: remove code wrap toggle blur flicker

Drop the wrap-state blur reveal so toggling nowrap/wrap keeps the code
DOM stable without flashing highlighted tokens.

* fix: contain detail markdown overflow in tab bodies

Keep README and SKILL surfaces clipped to the tab column while preserving
horizontal scroll only inside code blocks and tables.

* fix: use neutral hover border on detail sidebar actions

Override the accent outline hover on Star, Share, and Download sidebar
buttons so detail pages keep a quieter action treatment.

* fix: tighten release row checks and download actions

Keep scan badges on one horizontal row, left-align package actions with
the column header, and show an icon-only download control.

* fix: collapse long plugin README previews like SKILL.md

Reuse the skill readme preview limiter with Read more/Show less on plugin
README.md tabs so long documentation stays scannable by default.

* fix: match activity metric info icon to security audit

Reuse the quiet sidebar info button styling so download labels no longer
show a circular hover treatment on the help icon.

* chore: remove unused activity metric info button styles

* fix: use neutral colors for download trend sparklines

Keep sidebar activity graphs muted with ink-soft tones instead of accent
red on skill and plugin detail pages.

* fix(ui): style related skills category link as outline button

Give the compact hero "More in …" footer full-width outline button affordance with neutral hover, matching sidebar secondary actions.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ui): compact skill/plugin detail hero on mobile

Tighten vertical rhythm below 1100px: side-by-side Star/Share, smaller
action buttons, denser metadata rows, shorter download sparkline, and
reduced gaps between hero, sidebar, and install sections.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ui): reduce sidebar action count font to 13px

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ui): reduce sidebar action count font to 13px

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ui): shrink sidebar star count badge height

Lower the action-count pill so Star and Share buttons align at the same height.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ui): restore markdown ordered and bullet list markers

Tailwind preflight strips list-style from ol/ul; re-apply disc and decimal
markers inside .markdown so SKILL.md and plugin README numbering renders.

Co-authored-by: Cursor <cursoragent@cursor.com>

* feat: add download period tabs to detail sidebar

Replace the static 30-day downloads row with All time, 30d, and 7d tabs
that update the sparkline and total on skill and plugin detail pages.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ui): polish audit sidebar, badges, and chart theme tokens

Make creator badges fully clickable, collapse Latest audit to one inline row,
and tune download sparkline colors per theme with softer blue tones.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: make creator user badges fully clickable

Use fallbackHandle for profile links, pass plugin ownerHandle when the
owner record omits it, and add sidebar hover affordance on the whole badge.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ui): tighten audit sidebar and related skills footer

Center the category footer action, remove the secondary-actions negative
margin hack, and keep Latest audit on one compact inline row.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ui): refine downloads tabs, report row, and related summaries

Move download period tabs inline with the Downloads label using listing-style
underline tabs, drop the Report block top border, and cap related skill
descriptions at 80 characters.

Co-authored-by: Cursor <cursoragent@cursor.com>

* feat: polish skill and plugin detail pages

* feat: add diff viewer skeleton

* fix: retain diff skeleton while versions load

* feat: restructure skill card review layout

* feat: add category icons to related skills

* fix: keep primary skill file first

* fix: keep skill card context expanded

* fix: refine skill card overview and risk contrast

* fix: show stars in related skill rows

* fix: refine install requirement tabs

* fix: join skill card risk rail

* fix: align plugin versions panel behavior

* fix: polish plugin repository and requirement panels

* fix: stabilize detail page skeleton layouts

* fix: resolve detail hydration gaps and finish polish pass

Keep mobile/desktop detail markup stable for SSR hydration, sync Shiki
theme selection with useSyncExternalStore, and complete tabpanel ARIA for
Files and Versions. Also lands remaining plugin categorize, install, and
metadata dialog polish from the detail-page iteration.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: stabilize detail page CI contracts

* feat(web): polish detail install shell and checkpoint branch WIP

Add subtle terminal $ prompt to skill/plugin install commands with
vertical alignment and descender-safe line height. Bundle remaining
detail-page polish, dialog tweaks, and local PR proof artifacts as a
restore point before further agent work.

* fix(web): polish plugin sidebar download and detail hero alignment

Move plugin download inline with the downloads count when no activity graph
is shown, and to the sidebar footer when a graph is present. Align skill/plugin
hero summary rows, compact management toolbar actions, and plugin mobile
About/Stats tabs. Remove accidental local proof artifacts from the branch.

* fix(web): stabilize detail page CI

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 19:32:12 -07:00
Vyctor H. BrzezowskiandPatrick Erichsen 2993f6ccb7 polish: refine homepage hero (#2765)
* polish: refine homepage hero

* fix(web): preserve accessible hero trigger

* test: align header typeahead metadata assertion

---------

Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-06-22 13:28:55 -07:00
Vyctor H. Brzezowski 9ea97b3c58 fix(web): polish browse listing pages (#2767)
* feat: polish browse listing pages

* fix(web): refine mobile publisher rows

* test(web): preserve browse contracts after rebase
2026-06-22 13:11:51 -07:00
Vyctor H. Brzezowski 6dfe780a29 build: generate llms.txt from canonical metadata (#2483)
* docs: add llms.txt

* docs: avoid dead llms skill examples

* refactor: centralize public registry routes

* refactor: share canonical ClawHub links

* feat: generate llms.txt from canonical metadata

* build: generate llms.txt for dev and production

* test: follow canonical docs navigation link
2026-06-22 13:04:07 -07:00
Vyctor H. Brzezowski 519f56301d perf: cache homepage listing tabs (#2764) 2026-06-22 13:03:11 -07:00
vyctorbrzezowski 6bd73e33bb feat: unify header search results 2026-06-22 13:01:11 -07:00
Vyctor H. Brzezowski 730063b575 fix(web): hide pending and suspicious items from New (#2760) 2026-06-19 18:15:40 -07:00
Vyctor H. BrzezowskiandCursor ea0125d87e Refresh homepage experience (#2756)
* style: add Mobbin-inspired home listing toolbar and grid

Introduce a catalog section below the hero with Skills/Plugins toggle,
sort tabs, filter affordance, and a card grid fed by public list APIs.

Co-authored-by: Cursor <cursoragent@cursor.com>

* style: switch home listing from card grid to horizontal rows

Use icon, single-line summary, stats, and install CTA in scan-friendly
rows inside one bordered list instead of a three-column card grid.

Co-authored-by: Cursor <cursoragent@cursor.com>

* style: refine home listing rows like reference catalogs

Drop install CTAs, use muted icon tiles with brighter glyphs, and
flatten the list into divider rows without index numbers.

Co-authored-by: Cursor <cursoragent@cursor.com>

* feat(home): rebuild listing with search and category select

Add inline catalog search, category dropdown with icons, grid/list views,
and empty states tuned for the home listing toolbar.

Co-authored-by: Cursor <cursoragent@cursor.com>

* feat: refresh homepage hero and listing

* feat: add homepage apps section

* feat: add homepage publish section

* feat: add homepage ecosystem footer

* fix: use favicon icons for homepage app plugins

* fix: standardize footer styling globally

* fix: add spacing above homepage apps link

* fix: smooth homepage publish section transition

* fix: neutralize homepage light mode background

* fix: expand homepage app shortcuts grid

* fix: neutralize light theme surfaces

* fix: remove light publish section transition overlay

* fix: square footer bottom edge

* fix: simplify category menu scrollbar

* fix: clarify homepage category filters

* fix: refine mobile listing controls

* fix: restore homepage listing fold fade

* fix: tighten homepage listing row labels

* fix: space homepage apps cta

* fix: align homepage icons and app grids

* fix: scroll homepage app tabs on mobile

* fix: balance homepage app copy on mobile

* fix: balance homepage cli copy on mobile

* fix: refine mobile homepage motion

* feat: add popular publishers to homepage

* fix: remove stars from homepage listings

* fix: rank homepage listings by installs

* feat: show publisher catalog counts

* fix: align publisher card stats

* refactor: simplify publisher catalog counts

* fix: tighten publisher section heading

* fix: show app tiles on mobile

* fix: center mobile apps banner

* fix: use install icon in homepage listings

* feat: expand popular publishers

* feat: add mouse drag to publisher carousel

* chore: update pinned publishers

* fix: allow dragging publisher cards

* fix: show app card backgrounds on hover

* feat: curate homepage app shortcuts

* chore: reorder featured publishers

* fix: diversify homepage app shortcuts

* fix: hide native listing search clear

* fix: refine homepage app shortcuts and search reset

* fix: keep app icon frames rounded

* fix: hide officials tab for skills listing

* fix: replace featured homepage tabs with new

* fix: call homepage publishers creators

* fix: simplify homepage hero subtitle

* fix: use singular official plugin tab

* fix: make official the first plugin tab

* feat: add homepage trending skills tab

* fix: use existing trending skills leaderboard

* fix: show trending leaderboard installs

* fix: tighten listing kind toggle padding

* fix: normalize listing kind control padding

* fix: restore equal listing kind padding

* fix: shorten skills top tab label

* fix: shorten plugin top tab label

* fix: align trending skills installs metric

* fix: normalize listing view toggle padding

* Revert "fix: align trending skills installs metric"

This reverts commit 5c421b5cd4326347b4b702949b035fdf954811d8.

* Revert "fix: show trending leaderboard installs"

This reverts commit 8c7daa0e59c9e07cb99c232a2a34e5afbab80eeb.

* fix: hide stats on homepage trending skills

* fix: center listing row hover background

* chore: clean up homepage pre-pr checks

* fix: page homepage listing results

* fix: resolve homepage skill categories

* fix: stabilize homepage listing shortcut

* fix: harden homepage section rendering

* fix: preserve homepage skill category results

* perf: optimize homepage footer artwork

* fix: extend homepage byos reveal field

* fix: stabilize homepage CI

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:29:40 -07:00
Vyctor H. Brzezowski 53d16a55d4 fix: align official plugin browse with official publishers (#2758)
* fix: bound official plugin browse queries

* fix: normalize official publisher plugins
2026-06-19 17:07:56 -07:00
Vyctor H. Brzezowski 1a3fdd8f51 fix: redirect sign-in to dashboard (#2718) 2026-06-17 17:31:21 -07:00
Vyctor H. Brzezowski 2d93401234 fix: use installs instead of downloads on social cards (#2713) 2026-06-17 17:28:20 -07:00
Vyctor H. Brzezowski b1e077da38 Polish ClawHub header and search UX (#2717)
* feat: sync header design polish

* fix: restore header search hints

* fix: strengthen search tab affordance

* Revert "fix: strengthen search tab affordance"

This reverts commit b586437577fce1b6521bb56ac01201cdb2bbc7da.

* fix: match search tab affordance

* fix: prevent header logo underline

* fix: soften search footer row

* fix: align search tab radii

* fix: make search footer full width

* fix: align mobile header search height

* fix: add responsive header more menu

* fix: simplify header more trigger

* fix: show mobile menu at compact header widths

* fix: widen compact search results menu

* fix: remove compact menu hover glow

* fix: use body font for user handle

* fix: prevent mobile nav link underline

* fix: revamp compact mobile header

* fix: connect mobile search results

* fix: move logged-out appearance switcher

* perf: shrink clawhub logo asset

* test: update header design contract

* fix: refine mobile auth controls

* fix: preserve watermark logo asset

* fix: scope arrow navigation to search tabs
2026-06-17 17:28:13 -07:00
Vyctor H. Brzezowski 5f0e1ee639 feat: import owned public GitHub skills (#2444)
* feat: add GitHub skill import flow

* polish: refine GitHub import review states

* feat: link publish page to GitHub import

* test: keep import route checks lint-clean

* fix: harden GitHub import review flow

* polish: show copied state for GitHub import links

* fix: stabilize GitHub import slug review state

* fix: harden GitHub import discovery

* fix: address GitHub import review feedback

* fix: preserve legacy GitHub skill filenames

* fix: allow public GitHub URL imports

* style: format github import

* fix: remove stale import route imports

* fix: enforce owned GitHub import URLs

* fix: align GitHub import with main
2026-06-17 12:43:51 -07:00
Vyctor H. Brzezowski f3ab8663e3 feat(cli): polish terminal branding (#2434) 2026-06-17 12:13:42 -07:00
Vyctor H. Brzezowski 815a053b32 feat: add post-publish share dialog (#2439) 2026-06-17 11:52:56 -07:00
Vyctor H. Brzezowski 74aa61086e fix: gate local Codex workers (#2472) 2026-06-03 12:26:20 -07:00
Vyctor H. Brzezowski ded9ff4235 fix: stabilize auth loading states (#2447) 2026-06-01 10:01:04 -07:00
Vyctor H. Brzezowski 309723f7a8 fix(cli): report unknown root commands (#2433) 2026-05-29 11:03:53 -05:00
Vyctor H. Brzezowski 6adf379f32 feat: add publish flow guidance shortcuts (#2423)
* feat: add publish flow guidance shortcuts

* style: polish publish follow-up surfaces

* fix: route soul publish guide link
2026-05-27 20:55:43 -05:00
Vyctor H. BrzezowskiandPatrick Erichsen d854449610 fix: restrict membership management to org publishers (#2285)
* fix: restrict membership management to org publishers

* fix(api): ignore stale personal publisher memberships

* fix(api): reject stale personal publisher publish targets

* fix(api): reject stale personal publisher memberships

* fix(api): use personal publisher links for package access

* fix(api): guard personal publisher owner scopes

* fix: enforce publisher ownership for skill reads

* fix: narrow personal publisher dashboard owner

* fix: ignore stale personal package memberships

* fix: allow own legacy personal skill destination

* fix: preserve legacy personal package dashboards

* fix: preserve legacy personal skill dashboards

* fix: avoid redundant personal publisher boolean coercion

* fix: preserve legacy personal publisher access

* fix: include legacy direct packages in personal dashboard

* fix: close stale personal publisher ownership gaps

---------

Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-27 14:34:13 -07:00
Vyctor H. BrzezowskiandPatrick Erichsen 87f2b846ef fix: hide package resources when owners are banned (#2283)
* fix: hide package resources when owners are banned

* fix(api): attribute unban package restores to moderator

* fix(web): clarify package effects in ban confirmations

* fix(api): continue package ban batches during in-flight bans

* fix: keep package unban restore scoped to ban batch

* fix: retimestamp package releases during repeated bans

* fix: start package ban batches after user ban commit

* fix: preserve manual package moderation after unban

* fix: cover personal publisher package sanctions

* fix: restore personal publisher packages in autoban remediation

* fix: bound package publish token revocation batches

* fix: clear package ban reason during remediation restore

* fix: block direct package ban restores

* fix: scan linked personal publisher packages during sanctions

* fix: tighten package sanction restore batches

* fix: block personal publisher publishes after owner ban

* fix: allow initial package ban cleanup before commit

---------

Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-27 14:17:39 -07:00
Vyctor H. BrzezowskiandPatrick Erichsen 97023d3123 fix(api): guard moderated skill files and tags (#2287)
* fix(api): guard moderated skill files and tags

* fix(api): guard public list latest version ownership

* fix(api): guard stale latest version outputs

* fix(api): keep legacy digest latest versions

* fix(api): guard public latest-version readers

* fix: avoid ambiguous array allocation in skill export

* fix: drop legacy markerless digest versions

* fix: verify markerless digest versions

* test: mark package catalog digest versions

* fix: keep skill list tag resolution on digest path

* test: mark resolved skill versions with owner

* fix: repair digest capability backfill skip

---------

Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-27 13:34:54 -07:00
Vyctor H. BrzezowskiandPatrick Erichsen 18acbc1209 fix: abort stale unban skill restore batches (#2284)
* fix: abort stale unban skill restore batches

* fix(api): keep ban restore markers monotonic

* fix(api): restore legacy ban-hidden skills on unban

* fix: retimestamp legacy ban-hidden skills on re-ban

* fix: abort stale scheduled skill ban pages

---------

Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-27 12:14:52 -07:00
Vyctor H. BrzezowskiandPatrick Erichsen 6f893b54f4 fix: block direct skill transfers under moderation (#2282)
* fix: block direct skill transfers under moderation

* fix(api): block accepted transfers for moderated skills

* fix(api): block malware-flagged skill transfers

* fix: cover moderated skill transfer bypasses

* test: support ownership heal transfer sync

* fix: close moderated transfer backfill gaps

* fix: block soft-deleted transfer guard state

---------

Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-27 12:01:51 -07:00
Vyctor H. Brzezowski 321df223b2 fix(web): polish skill and plugin upload forms (#2415)
* feat: add shared publish form UI pieces

* fix: improve skill publish form UX

* fix: align plugin publish form UX

* fix: refine publish form polish follow-ups

* fix: refine publish upload states

* fix(web): finalize publish upload polish

* test: use ClawHub logo for owner avatar fixture

* fix(web): avoid premature skill publish field errors

* test: adapt local auth publish flow to owner picker

* fix(web): keep plugin publish locked after success
2026-05-27 11:10:50 -07:00
Vyctor H. Brzezowski 707d390923 fix: revalidate package publish owners before insert (#2281)
* fix: revalidate package publish owners before insert

* fix(api): recheck package publisher membership before insert
2026-05-27 11:03:11 -07:00
Vyctor H. BrzezowskiandPatrick Erichsen a54f240a08 feat: unify signed-out screens with SignInPrompt component (#2148)
Replace ad-hoc sign-in UI on /settings, /dashboard, /import, /stars,
/cli/auth and /docs/auth with a single SignInPrompt component that
mirrors the polished /settings design (gradient backdrop, blur, card
with shadow, LockKeyhole icon, styled GitHub sign-in button).

Also replaces inline 'Sign in to comment.' text in SoulDetailPage and
SkillCommentsPanel with a compact SignInButton size='sm'.

Adds SignInPrompt.test.tsx with 8 unit tests and -stars.test.tsx with
6 route-level tests.

Fixes stars.tsx loading logic so unauthenticated users see the prompt
immediately instead of a skeleton.

- bun run build: pass
- bun run format:check: pass
- bun run lint: pass
- bun run test: 1,758 tests pass

Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-20 19:37:25 -07:00
Vyctor H. BrzezowskiandPatrick Erichsen 07bf41e109 fix(api): accept full skill list pagination cursors (#2275) (#2286)
Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-20 19:36:57 -07:00
Vyctor H. Brzezowski cb6f365bb5 fix(web): remove files tab height cap on desktop (#2217)
* fix(web): adjust files tab tree height and mobile disclosure

* fix(web): refine mobile see-all affordance in files tab

* fix(web): polish files preview empty state

* fix(web): add files preview header divider

* fix(web): polish files code preview styling

* fix(web): move files preview metadata to footer

* fix(web): keep files code preview scrollbars visible

* fix(web): tighten files preview footer divider

* fix(web): move files preview scrolling to viewer body

* fix(web): align files tab panel headers

* fix(web): align files panel header dividers

* fix(web): balance files panel header padding

* fix(web): match files preview header typography

* fix(web): precisely align files panel header dividers

* fix(web): split file row paths by filename

* fix(web): add contrast to files preview body

* fix(web): align files panel mobile breakpoint

* fix(web): polish mobile files see all overlay
2026-05-20 19:30:16 -07:00
Vyctor H. Brzezowski 526d84f338 fix: render CJK text in OG images (#2342) 2026-05-19 22:13:24 -07:00
Vyctor H. Brzezowski f23671bba9 docs: reconcile local dev worktree workflows (#2328) 2026-05-19 15:56:17 -07:00
Vyctor H. Brzezowski b8efe83d1b feat: refresh dynamic og images (#2180) 2026-05-19 13:37:36 -07:00
Vyctor H. BrzezowskiandPeter Steinberger 8bbc66868d fix: harden skill transfer acceptance (#2276)
* fix: prevent skill transfer acceptance after requester is banned

The acceptTransferInternal mutation did not verify whether the transfer
requester (fromUser) was banned or deactivated when the skill still
belonged to that user. This created a race condition where a pending
transfer could be accepted after the requester was banned, allowing
the skill to escape the ban batch and remain alive under a new owner.

This change moves the requester validity check before the ownership
branch, so it is evaluated unconditionally for all transfers.

Fixes a security vulnerability where banned users' skills could
survive moderation actions via pending transfers.

* fix: harden skill transfer acceptance

Co-authored-by: vyctorbrzezowski <krzyszchweski@gmail.com>

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-05-16 14:35:13 +01:00
Vyctor H. BrzezowskiandPatrick Erichsen 9ab92e5847 fix(web): harden search relevance UX (#2206)
Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com>
2026-05-14 11:18:42 -07:00
Vyctor H. Brzezowski d794f4633d fix(web): sort publisher previews by downloads (#2176) 2026-05-12 22:17:52 -07:00
Vyctor H. Brzezowski 8a87890c6a feat(web): redesign settings experience
Redesign Settings into focused account, organization, API token, and account deletion views.

Follow-up verification:
- restored the Separator primitive usage so the Radix dependency remains active and static checks pass
- gated the organization member query to the organizations view with a selected org
- added focused settings coverage for default account rendering, organizations navigation/member loading, and legacy hash migration

Validation:
- bun install --frozen-lockfile
- bun run test -- src/routes/-settings.test.tsx src/__tests__/header.test.tsx
- bun run test:ui-contract
- bun run ci:static
- bunx tsc --noEmit
- bunx tsc -p packages/schema/tsconfig.json --noEmit
- bunx tsc -p packages/clawhub/tsconfig.json --noEmit
- VITE_CONVEX_URL=https://example.invalid bun run build
- GitHub repo-owned PR checks passed on verified signed head 7abd808fd4

Vercel fork authorization remained a non-code failure; authenticated local visual proof was blocked by missing GitHub login credentials, while signed-out settings route dev QA rendered without framework overlay.
2026-05-11 08:05:34 -05:00
Vyctor H. Brzezowski 77692d1249 fix: avoid eager publisher page hydration (#2129) 2026-05-09 19:43:50 -04:00
Vyctor H. Brzezowski 91d962e8b7 fix: show suspicious filter conditionally (#2121) 2026-05-09 19:43:18 -04:00
Vyctor H. Brzezowski 31def36bbd fix(web): constrain page content containers
Constrain settings, profile content, skill detail, and plugin detail pages to the header content width while preserving profile hero bleed.\n\nCo-authored-by: vyctorbrzezowski <krzyszchweski@gmail.com>
2026-05-09 18:35:28 -04:00
Vyctor H. Brzezowski 8a6efc236a fix(web): align header avatar controls
Align signed-in header avatar controls across desktop and mobile so the menu trigger keeps consistent sizing, truncation, and dropdown styling.\n\nCo-authored-by: vyctorbrzezowski <krzyszchweski@gmail.com>
2026-05-09 18:35:25 -04:00
Vyctor Huggo Przozwski 38ba9768d3 test: isolate site helper env
Test-only isolation for site helper env handling.\n\nVerified locally with bun run ci:pr, focused polluted-env site helper test, and Playwright smoke.
2026-05-09 10:59:29 -04:00
Vyctor Huggo PrzozwskiandPeter Steinberger 8bd7be9d04 feat(web): add publishers discovery and profiles
Add the publishers discovery/profile surface and harden the landing fixups for existing publisher aggregate rows and scoped plugin links.

Co-authored-by: Vyctor Huggo Przozwski <krzyszchweski@gmail.com>
Co-authored-by: Peter Steinberger <peter@steipete.com>
2026-05-09 09:36:21 -04:00
Vyctor Huggo Przozwski f3d9c9b27a fix: rename plugins cards view to grid (#2119) 2026-05-09 07:56:39 -04:00
Vyctor Huggo Przozwski 6b2efcb7b8 fix(web): polish browse listing surfaces
Polish ClawHub browse and listing surfaces across skills, plugins, and search: clearer search controls, visible safety filtering, plugin card view parity, and more consistent card metadata treatment. Kept #2090's Grid terminology for skills while preserving plugin card view behavior.\n\nTests:\n- bun run test -- src/__tests__/search-route.test.tsx src/__tests__/packages-route.test.tsx src/__tests__/skills-index.test.tsx src/__tests__/header.test.tsx src/__tests__/ui-design-contract.test.ts\n- bun run format:check\n- bun run lint\n- bunx tsc --noEmit\n- bunx tsc -p packages/schema/tsconfig.json --noEmit\n- bunx tsc -p packages/clawhub/tsconfig.json --noEmit\n- git diff --check origin/main...HEAD\n\nCo-authored-by: vyctorbrzezowski <krzyszchweski@gmail.com>
2026-05-09 06:46:14 -04:00
Vyctor Huggo Przozwski 05122ea799 fix(dev): keep local seed resets deterministic
Clean stale seed lookup/badge rows during repeated local Convex dev seed resets, and delete package fixtures in an order that avoids the package-release trigger fallback query limit.\n\nTests:\n- bun run test -- convex/devSeed.rescanFixtures.test.ts\n- bun run format:check\n- bun run lint\n- bunx tsc --noEmit\n- bunx tsc -p packages/schema/tsconfig.json --noEmit\n- bunx tsc -p packages/clawhub/tsconfig.json --noEmit\n- git diff --check origin/main...HEAD\n\nCo-authored-by: vyctorbrzezowski <krzyszchweski@gmail.com>
2026-05-09 06:42:27 -04:00
Vyctor Huggo Przozwski b65d05ba9f fix(dev): align local Convex site URL setup
Document local Convex HTTP route usage through the site proxy port and make setup-worktree reject local site URL misconfigurations that point browser/auth routes at the function port.\n\nTests:\n- bun run test -- scripts/setup-worktree.test.ts\n- bun run format:check\n- bun run lint\n- bunx tsc --noEmit\n- bunx tsc -p packages/schema/tsconfig.json --noEmit\n- bunx tsc -p packages/clawhub/tsconfig.json --noEmit\n- git diff --check origin/main...HEAD\n\nCo-authored-by: vyctorbrzezowski <krzyszchweski@gmail.com>
2026-05-09 06:39:20 -04:00