SkillHub v0.2.15
This release adds a production-ready Helm deployment path and Redis high-availability options, while improving authentication, publishing, search, CLI namespace handling, and Kubernetes reliability.
🌟 Highlights
- Deploy SkillHub with the new official Helm Chart, including PostgreSQL and Redis dependencies, external-service options, Ingress/TLS, S3 storage, autoscaling, disruption budgets, and OCI publication through GHCR
- Run production deployments with standalone Redis, Redis Cluster, or Redis Sentinel configurations
- Restore device authorization and make API-token denials, login recovery, and OAuth provider availability clearer and more reliable
- Fix rejected-version re-upload, label-based search indexing, namespace-aware CLI operations, and PostgreSQL initialization on fresh Kubernetes volumes
✨ Features
- Add the official SkillHub Helm Chart with schema validation, multiple deployment topologies, upgrade safeguards, CI coverage, and OCI publishing to
ghcr.io/iflytek/charts/skillhubby @jangrui in #445 - Add configurable Redis Cluster and Sentinel support while preserving standalone Redis as the default deployment mode by @mosesyu95 in #505
🐛 Bug Fixes
- Allow rejected skill versions to be uploaded again with the same version number while preserving published and yanked history by @FenjuFu in #601
- Recover the login page automatically when a deployment leaves the browser with a stale lazy-loaded JavaScript chunk after logout by @zhukai9527 in #560
- Return safe, localized reasons and request IDs for API-token authorization failures instead of mapping every HTTP 403 response to a missing-scope error by @gale-popai in #610
- Trust
X-Forwarded-Protoonly when operators explicitly enableSKILLHUB_TRUST_FORWARDED_PROTO, preventing untrusted clients from controlling the forwarded scheme while supporting trusted TLS proxies by @myml in #443 - Rebuild the search index asynchronously after label changes so newly attached or removed labels affect search results by @shychee in #592
- Restore OAuth Device Flow against production Redis serialization by converting stored device-code data instead of casting untyped maps by @gale-popai in #607
- Hide OAuth providers that still use empty or placeholder client IDs, avoiding login options that cannot complete authentication by @yaffir in #480
- Normalize
namespace/slug,@namespace/slug, andnamespace--slugCLI coordinates; reject conflicting--namespacevalues; and prevent namespace-scoped removal from deleting same-slug installations elsewhere by @dongmucat in #608 - Initialize new Kubernetes PostgreSQL volumes under
pgdata/when the volume root containslost+found, while continuing to recognize existing root-level database clusters by @xring in #367
The CLI behavior changes from #608 are present in source but are not included in the already-published npm CLI 0.1.9 package. They will reach npm through a later
cli-v*release.
📚 Documentation
- Expand the English and Chinese FAQ with deployment, upgrades, offline operation, OAuth administration, and CLI troubleshooting guidance by @FenjuFu in #593
- Add English and Chinese HarnessClaw Engine integration guidance for installing SkillHub packages through the existing CLI directory target by @FenjuFu in #598
- Add clearer GitHub star, watch, Trendshift, and AAIF project-discovery links to the English and Chinese README files by @FenjuFu in #599 and #603
🔧 Chore
- Release SkillHub CLI 0.1.9 and document its existing installation behavior by @dongmucat in #595
- Add persisted CLI token-lifecycle coverage across identity, search, resolution, and download endpoints by @dongmucat in #609
📖 Documentation
- Docs site: https://iflytek.github.io/skillhub/
👥 New Contributors
- Welcome @zhukai9527, who made their first contribution in #560
- Welcome @gale-popai, who made their first contributions in #607 and #610
- Welcome @shychee, who made their first contribution in #592
- Welcome @yaffir, who made their first contribution in #480
- Welcome @jangrui, who made their first contribution in #445
- Welcome @mosesyu95, who made their first contribution in #505
- Welcome @xring, who made their first contribution in #367
Full Changelog: v0.2.14...v0.2.15