사내 전용 스킬 레지스트리로 퍼블리시·검색·거버넌스를 통합한 플랫폼
SkillHub는 온프레미스에서 스킬 패키지의 퍼블리시·버전·검색·거버넌스를 제공하는 self-hosted 레지스트리 플랫폼이다.
TL;DR
SkillHub는 온프레미스에서 작동하는 스킬 레지스트리로 스킬 패키지의 퍼블리시·버전·검색·설치 흐름을 중앙에서 관리하도록 설계되었다. 플랫폼은 React 프론트엔드와 Spring Boot 백엔드를 조합하고 PostgreSQL·Redis·S3/MinIO 같은 인프라를 활용하여 메타데이터와 바이너리를 분리 관리하며 RBAC과 감사 로그로 거버넌스 요건을 충족시킨다. CLI 중심 워크플로우와 ClawHub 호환성으로 기존 에이전트 생태계와 통합이 가능하고 Docker Compose 또는 Kubernetes 매니페스트로 온프레미스 배포가 가능하다. 한편 운영 환경에서는 SKILLHUB_PUBLIC_BASE_URL 설정과 bootstrap admin 비밀번호 교체 같은 보안·구성 작업이 선행되어야 한다.
주요 기능
- 스킬 패키지를 퍼블리시하고 버전 관리할 수 있다. 게시 시 시맨틱 버전과 커스텀 태그(beta, stable)를 지정할 수 있으며 latest 트래킹이 자동으로 관리된다. 이 기능은 조직 전반에서 재사용 가능한 스킬의 배포 흐름을 일관되게 유지한다.
- 네임스페이스 기반으로 스킬을 조직화하고 멤버십과 역할을 분리할 수 있다. 각 네임스페이스는 Owner/Admin/Member 롤을 가지며 게시·검토·프로모션 권한을 독립적으로 설정한다. 네임스페이스는 팀 경계에 따른 가시성과 권한을 유지하는 데 사용된다.
- 검색과 필터링을 통해 스킬을 발견할 수 있다. 전체 텍스트 검색뿐만 아니라 네임스페이스, 다운로드 수, 평점, 최근성 기준으로 필터링이 가능하며 가시성 규칙은 권한에 따라 결과를 제한한다. 이로 인해 사용자는 허가된 스킬만 조회하고 설치 명령을 얻을 수 있다.
- CLI 중심 워크플로우를 지원하여 스크립트와 자동화에 통합할 수 있다. 공식 npm 패키지와 npx 호환 명령으로 로그인·검색·설치·게시 작업을 수행할 수 있으며 ClawHub 호환성 계층을 통해 기존 클라이언트와 연동된다. CLI 우선 정책은 CI/CD 파이프라인에 직접 연동하기 쉽게 설계되어 있다.
어떻게 동작하는가
SkillHub는 React 프론트엔드, Nginx 리버스 프록시, Spring Boot 백엔드로 구성된 전형적인 웹 스택을 사용하며 백엔드는 OAuth2·API 토큰·RBAC·감사 로깅을 처리한다. 스킬 패키지는 S3/MinIO 또는 로컬 파일시스템에 저장되며 PostgreSQL과 Flyway 마이그레이션으로 메타데이터를 관리하고 Redis가 세션 관리를 담당한다. 런타임 이미지는 GitHub Actions로 빌드되어 GHCR에 게시되며 curl 기반 스크립트로 전체 스택을 빠르게 기동할 수 있다.
해결 문제
사내에서 재사용 가능한 에이전트 스킬을 중앙에서 관리하고 배포하는 문제를 해결한다. 권한과 검토 흐름을 네임스페이스·롤 기반으로 분리하여 조직 내 거버넌스와 컴플라이언스를 유지할 수 있게 한다. 또한 퍼블리시된 스킬의 버전 관리와 검색·설치 경험을 표준화하여 팀 간 지식 공유 비용을 낮춘다.
차별점
- 온프레미스 전용으로 설계되어 데이터 주권 요구를 충족한다. 런타임을 자체 인프라에 배포하도록 Docker Compose와 Kubernetes 매니페스트를 제공하며 S3/MinIO 플러그형 스토리지를 사용해 민감한 패키지 데이터를 외부 클라우드에 두지 않을 수 있다. 이 구조는 기업 환경에서 규정 준수를 유지하면서 레지스트리를 운영할 수 있게 한다.
- 세분화된 거버넌스와 감사 기능을 백엔드 수준에서 제공한다. 팀 내부의 리뷰 흐름과 플랫폼 전체 프로모션 정책을 분리하고 모든 거버넌스 액션을 감사 로그로 남겨 컴플라이언스 증빙이 가능하다. 이로 인해 규제 요구가 있는 조직에서도 스킬 운영을 추적할 수 있다.
- CLI 우선과 ClawHub 호환성으로 기존 에이전트 생태계와 연동이 용이하다. 공식 CLI 패키지와 npx 명령으로 스크립트 기반 배포가 가능하며 OpenClaw, AstronClaw, Loomy 등 클라이언트를 향해 레지스트리 엔드포인트를 지정하면 즉시 설치·검색 경험을 재현할 수 있다. 이 호환성은 기존 자동화 도구에 최소한의 변경으로 통합되게 만든다.
사용 사례
- 조직 내부에서 표준화된 스킬 저장소를 운영할 때 사용된다. 팀별 네임스페이스와 역할 체계를 통해 개발팀은 자체 스킬을 관리하고 플랫폼 관리자는 글로벌 프로모션을 제어할 수 있다. 이로써 사내 재사용성과 컴플라이언스가 동시에 향상된다.
- 에이전트 플랫폼 통합 지점으로 활용되어 OpenClaw이나 AstronClaw 같은 클라이언트에 레지스트리 엔드포인트를 제공한다. 클라이언트는 레지스트리에서 스킬을 검색·설치하고 조직 맞춤형 스킬을 자동화 파이프라인에 포함할 수 있다. 이 방식은 에이전트 배포와 운영을 중앙집중화한다.
- 로컬 데스크탑 자동화 도구와 연결하여 조직 특화 워크플로를 배포하는 데 사용된다. 예컨대 Loomy와 연결하면 사내에서 사용되는 자동화 스킬을 손쉽게 배포하고 업데이트할 수 있으며 사용자 환경에 맞춘 스킬 배포가 가능하다. 이는 데스크탑 생산성 도구의 기능 확장과 일관된 관리 정책을 동시에 제공한다.
시작하기
로컬에서 전체 개발 스택을 실행하려면 저장소 루트에서 make dev-all을 실행하면 프론트엔드와 백엔드, 부속 서비스가 기동된다. 프로덕션형 빠른 배포는 README에 제시된 curl runtime.sh 명령으로 미리 빌드된 GHCR 이미지를 풀어 올리면 되며 --public-url 플래그로 외부 접속용 호스트를 지정해야 CLI와 OAuth 콜백이 정상 동작한다. Kubernetes 배포를 원하면 deploy/k8s 디렉터리의 매니페스트를 복사하고 비밀값을 생성한 뒤 kubectl apply 명령으로 각 리소스를 적용하면 된다.
요구사항
- 운영 환경 또는 테스트용으로 Docker와 Docker Compose가 필요하다. README의 Quick Start와 runtime 스크립트는 컨테이너 런타임 기반으로 동작하도록 설계되어 있다. 또한 로컬 개발과 빌드를 위해서는 make가 설치되어 있어야 하고, 백엔드 빌드는 Java 21 환경을 전제로 한다.
이미지 분석

4.8k
Stars
642
Forks
+207
Trending
3
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.