iflytek/skillhub

skillhub

Self-hosted, open-source agent skill registry for enterprises. Publish & version skill packages, govern with RBAC and audit logs, deploy on-premise with Docker or Kubernetes.

待分类agent-frameworkai-agentai-governance

SkillHub An enterprise-grade, open-source agent skill registry — publish, discover, and manage reusable skill packages across your organization.

  

English | 中文

SkillHub is a self-hosted platform that gives teams a private, governed place to share agent skills. Publish a skill package, push it to a namespace, and let others find it through search or install it via CLI. Built for on-premise deployment behind your firewall, with the same polish you'd expect from a public registry.

⭐ If SkillHub fits your team, star the repo to help other teams find it, and Watch → Custom → Releases to get notified when a new version ships.

Share Great Skills

Great Skills become more valuable when they are shared. If you have a Skill that has proved useful in real work or everyday life, share it with the SkillHub community and help grow an open, practical Skill ecosystem. We welcome Skills for daily life, office work, learning and research, travel and events, content creation, data analysis, and software development—not only engineering workflows.

High-quality community contributions may join the curated starter collection, making new SkillHub deployments useful from day one. You do not need to finish the full adaptation before joining in: open an issue with the Skill's source and the problem it solves, or submit a PR by following the Skill sharing guide.

Documentation

  • 📖 User Guide — Skill publishing, search, CLI usage and other user guides
  • 🛠️ Developer Docs — Architecture, API reference, local development, deployment and operations
  • 🐍 Python Examples — Search, download, and publish skills from Python via the REST API

Governance and Safety

  • Privacy and Data Governance —

Data categories, operator responsibilities, retention, portability, and incident handling for public and self-hosted instances

  • Content Safety — Package safety expectations,

review and reporting controls, appeals, and child-safety responsibilities

  • Code of Conduct — Community standards and the private

reporting channel

  • Security Policy —

Private vulnerability reporting and coordinated disclosure

Highlights

  • Self-Hosted & Private — Deploy on your own infrastructure.

Keep proprietary skills behind your firewall with full data sovereignty. One make dev-all command to get running locally.

  • Publish & Version — Upload agent skill packages with semantic

versioning, custom tags (beta, stable), and automatic latest tracking.

  • Discover — Full-text search with filters by namespace,

downloads, ratings, and recency. Visibility rules ensure users only see what they're authorized to.

  • Team Namespaces — Organize skills under team or global scopes.

Each namespace has its own members, roles (Owner / Admin / Member), and publishing policies.

  • Review & Governance — Team admins review within their namespace;

platform admins gate promotions to the global scope. Governance actions are audit-logged for compliance.

  • Social Features — Star skills, rate them, and track downloads.

Build a community around your organization's best practices.

  • Account Merging — Consolidate multiple OAuth identities and

API tokens under a single user account.

  • API Token Management — Generate scoped tokens for CLI and

programmatic access with prefix-based secure hashing.

  • CLI-First — Native REST API plus a compatibility layer for

existing ClawHub-style registry clients. Native CLI APIs are the primary supported path while protocol compatibility continues to expand.

  • Pluggable Storage — Local filesystem for development, S3 /

MinIO for production. Swap via config.

  • Internationalization — Multi-language support with i18next.

Quick Start

Start the full local stack with:

curl -fsSL https://imageless.oss-cn-beijing.aliyuncs.com/runtime.sh | sh -s -- up

The default command pulls the latest stable release images. Use --version edge if you want the newest build from main.

Configure public URL (recommended for production):

curl -fsSL https://imageless.oss-cn-beijing.aliyuncs.com/runtime.sh | sh -s -- up --public-url https://skillhub.your-company.com

The --public-url parameter sets the public access URL for your SkillHub instance. This ensures:

  • CLI install commands show the correct registry URL
  • Agent setup instructions display the correct skill.md URL
  • OAuth callbacks and device auth links work properly

For users in China (Aliyun mirror):

curl -fsSL https://imageless.oss-cn-beijing.aliyuncs.com/runtime.sh | sh -s -- up --aliyun --public-url https://skillhub.your-company.com --version latest

Keep the existing runtime home when rerunning or updating the deployment. The runtime script reuses its .env.release file; deleting the directory discards your custom configuration, including the public URL and generated anonymous download cookie secret.

If deployment runs into problems, inspect the ps and logs lifecycle commands printed by the runtime script, then retry up with the same runtime home. If you intentionally want a fresh configuration, back up .env.release before clearing the runtime home.

SkillHub CLI

Install and manage Agent skills from the command line:

# Install CLI
npm install -g @astron-team/skillhub

# Or run directly
npx @astron-team/skillhub@latest version

# Login
skillhub login --token sk_xxx --registry https://skill.xfyun.cn

# Search and install skills
skillhub search pdf
skillhub install pdf-parser --agent codex

# List installed skills
skillhub list

📖 Full guide: docs/skillhub/en/guide/cli.md

Prerequisites

  • Docker & Docker Compose

Local Development

make dev-all
For developers in China: If Maven dependency download times out, configure Aliyun mirror. See Local Development Guide for details.

Then open:

  • Web UI: http://localhost:3000
  • Backend API: http://localhost:8080

By default, make dev-all starts the backend with the local profile. In that mode, local development keeps the mock-auth users below and also creates a password-based bootstrap admin account by default:

  • local-user for normal publishing and namespace operations
  • local-admin with SUPER_ADMIN for review and admin flows

Use them with the X-Mock-User-Id header in local development.

The local bootstrap admin is enabled by default in application-local.yml:

  • username: admin
  • password: ChangeMe!2026
  • To disable it, set BOOTSTRAP_ADMIN_ENABLED=false before starting the backend.

Stop everything with:

make dev-all-down

Reset local dependencies and start from a clean slate with:

make dev-all-reset

Run make help to see all available commands.

Useful backend commands:

make test
make test-backend-app
make build-backend-app

Do not run ./mvnw -pl skillhub-app clean test directly under server/. skillhub-app depends on sibling modules in the same repo, and a standalone clean build can fall back to stale artifacts from the local Maven repository, which surfaces misleading cannot find symbol and signature-mismatch errors. Use -am, or the make test-backend-app and make build-backend-app targets above.

For the full development workflow (local dev → staging → PR), see docs/dev-workflow.md.

API Contract Sync

OpenAPI types for the web client are checked into the repository. When backend API contracts change, regenerate the SDK and commit the updated generated file: