feat(webui): add SkillHub marketplace source

This commit is contained in:
Xubin Ren
2026-07-30 01:13:37 +08:00
parent 42ee34e34d
commit e66eb204d0
20 changed files with 1448 additions and 182 deletions
+23
View File
@@ -791,6 +791,29 @@
"views": "Skills views",
"installedTab": "Installed",
"discoverTab": "Discover",
"marketplaceSearchFailed": "Could not search skill marketplaces.",
"marketplaceInstallFailed": "Could not install this skill.",
"marketplaceSearchPlaceholder": "Search skills",
"marketplaceSearchLabel": "Search skills",
"marketplaceSearching": "Searching",
"marketplaceProviderFilter": "Skill source",
"marketplaceProviderAll": "All",
"marketplaceTrendingTitle": "Trending by marketplace",
"marketplaceTrendingDescription": "Each marketplace keeps its own ranking and install metrics.",
"marketplaceViewAll": "View all",
"marketplaceTrendingUnavailable": "Trending skills are temporarily unavailable.",
"marketplaceEmpty": "No skills found for “{{query}}”.",
"marketplaceConfirmTitle": "Install {{name}}?",
"marketplaceConfirmDescription": "This third-party skill comes from {{provider}} ({{source}}) and may include instructions or executable scripts.",
"marketplaceConfirmInstall": "Install skill",
"marketplaceOpen": "Open {{name}} on {{provider}}",
"marketplaceInstalls24h": "{{formattedCount}} installs / 24h",
"marketplaceInstalls": "{{formattedCount}} installs",
"marketplaceNpxRequired": "Node.js with npx is required",
"marketplaceInstalling": "Installing",
"marketplaceInstalled": "Installed",
"marketplaceInstall": "Install",
"marketplaceNoTrend": "No trend yet",
"featured": "Agent skills",
"empty": "No skills are available.",
"sourceWorkspace": "Custom",
+23
View File
@@ -778,6 +778,29 @@
"views": "Vistas de habilidades",
"installedTab": "Instaladas",
"discoverTab": "Descubrir",
"marketplaceSearchFailed": "No se pudieron buscar los mercados de skills.",
"marketplaceInstallFailed": "No se pudo instalar este skill.",
"marketplaceSearchPlaceholder": "Buscar skills",
"marketplaceSearchLabel": "Buscar skills",
"marketplaceSearching": "Buscando",
"marketplaceProviderFilter": "Origen del skill",
"marketplaceProviderAll": "Todos",
"marketplaceTrendingTitle": "Tendencias por mercado",
"marketplaceTrendingDescription": "Cada mercado conserva su propio ranking y métricas de instalación.",
"marketplaceViewAll": "Ver todos",
"marketplaceTrendingUnavailable": "Los skills populares no están disponibles temporalmente.",
"marketplaceEmpty": "No se encontraron skills para “{{query}}”.",
"marketplaceConfirmTitle": "¿Instalar {{name}}?",
"marketplaceConfirmDescription": "Este skill de terceros procede de {{provider}} ({{source}}) y puede incluir instrucciones o scripts ejecutables.",
"marketplaceConfirmInstall": "Instalar skill",
"marketplaceOpen": "Abrir {{name}} en {{provider}}",
"marketplaceInstalls24h": "{{formattedCount}} instalaciones / 24 h",
"marketplaceInstalls": "{{formattedCount}} instalaciones",
"marketplaceNpxRequired": "Se requiere Node.js con npx",
"marketplaceInstalling": "Instalando",
"marketplaceInstalled": "Instalado",
"marketplaceInstall": "Instalar",
"marketplaceNoTrend": "Sin tendencia todavía",
"featured": "Habilidades del agente",
"empty": "No hay habilidades disponibles.",
"sourceWorkspace": "Personalizada",
+23
View File
@@ -777,6 +777,29 @@
"views": "Vues des compétences",
"installedTab": "Installées",
"discoverTab": "Découvrir",
"marketplaceSearchFailed": "Impossible de rechercher dans les catalogues de compétences.",
"marketplaceInstallFailed": "Impossible dinstaller cette compétence.",
"marketplaceSearchPlaceholder": "Rechercher des compétences",
"marketplaceSearchLabel": "Rechercher des compétences",
"marketplaceSearching": "Recherche en cours",
"marketplaceProviderFilter": "Source des compétences",
"marketplaceProviderAll": "Toutes",
"marketplaceTrendingTitle": "Tendances par catalogue",
"marketplaceTrendingDescription": "Chaque catalogue conserve son propre classement et ses propres statistiques dinstallation.",
"marketplaceViewAll": "Tout afficher",
"marketplaceTrendingUnavailable": "Les compétences populaires sont temporairement indisponibles.",
"marketplaceEmpty": "Aucune compétence trouvée pour « {{query}} ».",
"marketplaceConfirmTitle": "Installer {{name}} ?",
"marketplaceConfirmDescription": "Cette compétence tierce provient de {{provider}} ({{source}}) et peut contenir des instructions ou des scripts exécutables.",
"marketplaceConfirmInstall": "Installer la compétence",
"marketplaceOpen": "Ouvrir {{name}} sur {{provider}}",
"marketplaceInstalls24h": "{{formattedCount}} installations / 24 h",
"marketplaceInstalls": "{{formattedCount}} installations",
"marketplaceNpxRequired": "Node.js avec npx est requis",
"marketplaceInstalling": "Installation",
"marketplaceInstalled": "Installée",
"marketplaceInstall": "Installer",
"marketplaceNoTrend": "Pas encore de tendance",
"featured": "Compétences agent",
"empty": "Aucune compétence disponible.",
"sourceWorkspace": "Personnalisée",
+23
View File
@@ -777,6 +777,29 @@
"views": "Tampilan skill",
"installedTab": "Terpasang",
"discoverTab": "Temukan",
"marketplaceSearchFailed": "Tidak dapat mencari marketplace skill.",
"marketplaceInstallFailed": "Tidak dapat memasang skill ini.",
"marketplaceSearchPlaceholder": "Cari skill",
"marketplaceSearchLabel": "Cari skill",
"marketplaceSearching": "Mencari",
"marketplaceProviderFilter": "Sumber skill",
"marketplaceProviderAll": "Semua",
"marketplaceTrendingTitle": "Tren per marketplace",
"marketplaceTrendingDescription": "Setiap marketplace mempertahankan peringkat dan metrik pemasangannya sendiri.",
"marketplaceViewAll": "Lihat semua",
"marketplaceTrendingUnavailable": "Skill populer sementara tidak tersedia.",
"marketplaceEmpty": "Tidak ada skill yang ditemukan untuk “{{query}}”.",
"marketplaceConfirmTitle": "Pasang {{name}}?",
"marketplaceConfirmDescription": "Skill pihak ketiga ini berasal dari {{provider}} ({{source}}) dan mungkin berisi instruksi atau skrip yang dapat dijalankan.",
"marketplaceConfirmInstall": "Pasang skill",
"marketplaceOpen": "Buka {{name}} di {{provider}}",
"marketplaceInstalls24h": "{{formattedCount}} pemasangan / 24 jam",
"marketplaceInstalls": "{{formattedCount}} pemasangan",
"marketplaceNpxRequired": "Node.js dengan npx diperlukan",
"marketplaceInstalling": "Memasang",
"marketplaceInstalled": "Terpasang",
"marketplaceInstall": "Pasang",
"marketplaceNoTrend": "Belum ada tren",
"featured": "Skill agent",
"empty": "Tidak ada skill yang tersedia.",
"sourceWorkspace": "Kustom",
+23
View File
@@ -777,6 +777,29 @@
"views": "スキル表示",
"installedTab": "インストール済み",
"discoverTab": "見つける",
"marketplaceSearchFailed": "スキルマーケットを検索できませんでした。",
"marketplaceInstallFailed": "このスキルをインストールできませんでした。",
"marketplaceSearchPlaceholder": "スキルを検索",
"marketplaceSearchLabel": "スキルを検索",
"marketplaceSearching": "検索中",
"marketplaceProviderFilter": "スキルの提供元",
"marketplaceProviderAll": "すべて",
"marketplaceTrendingTitle": "マーケット別トレンド",
"marketplaceTrendingDescription": "各マーケットのランキングとインストール指標を個別に表示します。",
"marketplaceViewAll": "すべて表示",
"marketplaceTrendingUnavailable": "トレンドスキルを一時的に取得できません。",
"marketplaceEmpty": "「{{query}}」に一致するスキルはありません。",
"marketplaceConfirmTitle": "{{name}} をインストールしますか?",
"marketplaceConfirmDescription": "このサードパーティ製スキルは {{provider}}{{source}})から提供され、指示や実行可能なスクリプトを含む場合があります。",
"marketplaceConfirmInstall": "スキルをインストール",
"marketplaceOpen": "{{provider}} で {{name}} を開く",
"marketplaceInstalls24h": "24時間で {{formattedCount}} 回インストール",
"marketplaceInstalls": "{{formattedCount}} 回インストール",
"marketplaceNpxRequired": "npx を含む Node.js が必要です",
"marketplaceInstalling": "インストール中",
"marketplaceInstalled": "インストール済み",
"marketplaceInstall": "インストール",
"marketplaceNoTrend": "トレンドなし",
"featured": "エージェントスキル",
"empty": "利用可能なスキルはありません。",
"sourceWorkspace": "カスタム",
+23
View File
@@ -777,6 +777,29 @@
"views": "스킬 보기",
"installedTab": "설치됨",
"discoverTab": "탐색",
"marketplaceSearchFailed": "스킬 마켓을 검색할 수 없습니다.",
"marketplaceInstallFailed": "이 스킬을 설치할 수 없습니다.",
"marketplaceSearchPlaceholder": "스킬 검색",
"marketplaceSearchLabel": "스킬 검색",
"marketplaceSearching": "검색 중",
"marketplaceProviderFilter": "스킬 출처",
"marketplaceProviderAll": "전체",
"marketplaceTrendingTitle": "마켓별 인기 스킬",
"marketplaceTrendingDescription": "각 마켓의 순위와 설치 지표를 별도로 표시합니다.",
"marketplaceViewAll": "모두 보기",
"marketplaceTrendingUnavailable": "인기 스킬을 일시적으로 불러올 수 없습니다.",
"marketplaceEmpty": "“{{query}}”에 해당하는 스킬이 없습니다.",
"marketplaceConfirmTitle": "{{name}}을(를) 설치할까요?",
"marketplaceConfirmDescription": "이 타사 스킬은 {{provider}}({{source}})에서 제공되며 지침이나 실행 가능한 스크립트를 포함할 수 있습니다.",
"marketplaceConfirmInstall": "스킬 설치",
"marketplaceOpen": "{{provider}}에서 {{name}} 열기",
"marketplaceInstalls24h": "24시간 동안 {{formattedCount}}회 설치",
"marketplaceInstalls": "{{formattedCount}}회 설치",
"marketplaceNpxRequired": "npx가 포함된 Node.js가 필요합니다",
"marketplaceInstalling": "설치 중",
"marketplaceInstalled": "설치됨",
"marketplaceInstall": "설치",
"marketplaceNoTrend": "추세 없음",
"featured": "에이전트 스킬",
"empty": "사용 가능한 스킬이 없습니다.",
"sourceWorkspace": "사용자 지정",
+23
View File
@@ -791,6 +791,29 @@
"views": "Visualizações de skills",
"installedTab": "Instaladas",
"discoverTab": "Descobrir",
"marketplaceSearchFailed": "Não foi possível pesquisar nos mercados de skills.",
"marketplaceInstallFailed": "Não foi possível instalar esta skill.",
"marketplaceSearchPlaceholder": "Pesquisar skills",
"marketplaceSearchLabel": "Pesquisar skills",
"marketplaceSearching": "Pesquisando",
"marketplaceProviderFilter": "Origem da skill",
"marketplaceProviderAll": "Todas",
"marketplaceTrendingTitle": "Tendências por mercado",
"marketplaceTrendingDescription": "Cada mercado mantém seu próprio ranking e métricas de instalação.",
"marketplaceViewAll": "Ver todas",
"marketplaceTrendingUnavailable": "As skills em alta estão temporariamente indisponíveis.",
"marketplaceEmpty": "Nenhuma skill encontrada para “{{query}}”.",
"marketplaceConfirmTitle": "Instalar {{name}}?",
"marketplaceConfirmDescription": "Esta skill de terceiros vem de {{provider}} ({{source}}) e pode incluir instruções ou scripts executáveis.",
"marketplaceConfirmInstall": "Instalar skill",
"marketplaceOpen": "Abrir {{name}} no {{provider}}",
"marketplaceInstalls24h": "{{formattedCount}} instalações / 24 h",
"marketplaceInstalls": "{{formattedCount}} instalações",
"marketplaceNpxRequired": "Node.js com npx é necessário",
"marketplaceInstalling": "Instalando",
"marketplaceInstalled": "Instalada",
"marketplaceInstall": "Instalar",
"marketplaceNoTrend": "Ainda sem tendência",
"featured": "Skills do agente",
"empty": "Nenhuma skill disponível.",
"sourceWorkspace": "Personalizada",
+23
View File
@@ -777,6 +777,29 @@
"views": "Chế độ xem kỹ năng",
"installedTab": "Đã cài đặt",
"discoverTab": "Khám phá",
"marketplaceSearchFailed": "Không thể tìm kiếm các kho kỹ năng.",
"marketplaceInstallFailed": "Không thể cài đặt kỹ năng này.",
"marketplaceSearchPlaceholder": "Tìm kiếm kỹ năng",
"marketplaceSearchLabel": "Tìm kiếm kỹ năng",
"marketplaceSearching": "Đang tìm kiếm",
"marketplaceProviderFilter": "Nguồn kỹ năng",
"marketplaceProviderAll": "Tất cả",
"marketplaceTrendingTitle": "Xu hướng theo kho",
"marketplaceTrendingDescription": "Mỗi kho giữ bảng xếp hạng và số liệu cài đặt riêng.",
"marketplaceViewAll": "Xem tất cả",
"marketplaceTrendingUnavailable": "Các kỹ năng thịnh hành tạm thời không khả dụng.",
"marketplaceEmpty": "Không tìm thấy kỹ năng cho “{{query}}”.",
"marketplaceConfirmTitle": "Cài đặt {{name}}?",
"marketplaceConfirmDescription": "Kỹ năng bên thứ ba này đến từ {{provider}} ({{source}}) và có thể chứa hướng dẫn hoặc tập lệnh thực thi.",
"marketplaceConfirmInstall": "Cài đặt kỹ năng",
"marketplaceOpen": "Mở {{name}} trên {{provider}}",
"marketplaceInstalls24h": "{{formattedCount}} lượt cài đặt / 24 giờ",
"marketplaceInstalls": "{{formattedCount}} lượt cài đặt",
"marketplaceNpxRequired": "Cần Node.js có npx",
"marketplaceInstalling": "Đang cài đặt",
"marketplaceInstalled": "Đã cài đặt",
"marketplaceInstall": "Cài đặt",
"marketplaceNoTrend": "Chưa có xu hướng",
"featured": "Kỹ năng agent",
"empty": "Không có kỹ năng nào khả dụng.",
"sourceWorkspace": "Tùy chỉnh",
+23
View File
@@ -791,6 +791,29 @@
"views": "技能视图",
"installedTab": "已安装",
"discoverTab": "发现",
"marketplaceSearchFailed": "暂时无法搜索技能市场。",
"marketplaceInstallFailed": "无法安装此技能。",
"marketplaceSearchPlaceholder": "搜索技能",
"marketplaceSearchLabel": "搜索技能",
"marketplaceSearching": "正在搜索",
"marketplaceProviderFilter": "技能来源",
"marketplaceProviderAll": "全部",
"marketplaceTrendingTitle": "各市场热门技能",
"marketplaceTrendingDescription": "不同市场分别保留自己的榜单和安装指标。",
"marketplaceViewAll": "查看全部",
"marketplaceTrendingUnavailable": "暂时无法获取热门技能。",
"marketplaceEmpty": "没有找到与“{{query}}”相关的技能。",
"marketplaceConfirmTitle": "安装 {{name}}",
"marketplaceConfirmDescription": "此第三方技能来自 {{provider}}{{source}}),其中可能包含操作指令或可执行脚本。",
"marketplaceConfirmInstall": "安装技能",
"marketplaceOpen": "在 {{provider}} 中打开 {{name}}",
"marketplaceInstalls24h": "24 小时内安装 {{formattedCount}} 次",
"marketplaceInstalls": "安装 {{formattedCount}} 次",
"marketplaceNpxRequired": "需要安装带有 npx 的 Node.js",
"marketplaceInstalling": "正在安装",
"marketplaceInstalled": "已安装",
"marketplaceInstall": "安装",
"marketplaceNoTrend": "暂无趋势",
"featured": "Agent 技能",
"empty": "暂无可用技能。",
"sourceWorkspace": "自定义",
+23
View File
@@ -777,6 +777,29 @@
"views": "技能檢視",
"installedTab": "已安裝",
"discoverTab": "探索",
"marketplaceSearchFailed": "暫時無法搜尋技能市集。",
"marketplaceInstallFailed": "無法安裝此技能。",
"marketplaceSearchPlaceholder": "搜尋技能",
"marketplaceSearchLabel": "搜尋技能",
"marketplaceSearching": "正在搜尋",
"marketplaceProviderFilter": "技能來源",
"marketplaceProviderAll": "全部",
"marketplaceTrendingTitle": "各市集熱門技能",
"marketplaceTrendingDescription": "不同市集分別保留自己的排行與安裝指標。",
"marketplaceViewAll": "查看全部",
"marketplaceTrendingUnavailable": "暫時無法取得熱門技能。",
"marketplaceEmpty": "找不到與「{{query}}」相關的技能。",
"marketplaceConfirmTitle": "安裝 {{name}}",
"marketplaceConfirmDescription": "此第三方技能來自 {{provider}}{{source}}),其中可能包含操作指示或可執行腳本。",
"marketplaceConfirmInstall": "安裝技能",
"marketplaceOpen": "在 {{provider}} 開啟 {{name}}",
"marketplaceInstalls24h": "24 小時內安裝 {{formattedCount}} 次",
"marketplaceInstalls": "安裝 {{formattedCount}} 次",
"marketplaceNpxRequired": "需要安裝包含 npx 的 Node.js",
"marketplaceInstalling": "正在安裝",
"marketplaceInstalled": "已安裝",
"marketplaceInstall": "安裝",
"marketplaceNoTrend": "暫無趨勢",
"featured": "Agent 技能",
"empty": "目前沒有可用的技能。",
"sourceWorkspace": "自訂",