팀에서는 레포가 여러개 있습니다. 프론트를 예로 치면 product-desktop, product-mobile 처럼 있는 셈입니다..
다들 Claude Code나 Codex 같은 AI Agent를 쓰기 때문에 스킬을 커밋하여 공유하고 있는데요.
아무래도 같은 프론트라면 공통적인 스킬들(예: 아키텍처 등)도 있을 겁니다.
여기서 몇가지 문제가 생깁니다.
게다가 public github는 보안상 쓰기 어렵기에... 어디에다 올려서 쓸 수 없었습니다.
bitbucket에 올리는거 까지는 괜찮은데 이걸 레포마다 동기화하는건 어떻게 해결하지? 라는 생각이 들었습니다.
심볼릭 링크면 이를 해결할 수 있을 것 같았고, 그래서 만든 CLI도구가 바로 agent-skill-cast 입니다.
마치 마법을 외우는거 처럼 스킬을 agent에게 장착 시키는 CLI도구입니다.
먼저 설치를 진행합니다.
npm install -g agent-skill-cast
cast source add https://github.com/your-team/shared-skills
cast source add ~/projects/my-skills
cast use
cast use my-skills/react
선택한 스킬은.claude/skills/, .gemini/skills/, 또는 .codex/skills/ 하위에 심볼릭 링크됩니다
cast source sync
명령으로 모든 외부 소스를 pull 받습니다. (로컬 폴더는 symbolic link라 pull X)
cast use로 사용할 때마다 해당 skill을 .claude/skills 하위로 심볼릭 링크를 합니다.스킬 소스 (GitHub/Local)
↓
~/.asc_sources/shared-skills/ ← 클론/심볼릭 링크
↓
┌────┼────┐
↓ ↓ ↓
프로젝트 A B C
.claude/skills/ → [symlinks]
소스의 폴더를 기준으로 각 agent 폴더(.claude/skills 등)와 1~2 depth에서 SKILL.md가 존재하는 폴더를 탐색합니다.
와 같은 케이스를 모두 지원합니다.
따라서 실제 사용하고 있는 프로젝트를 소스로 삼거나, https://github.com/ComposioHQ/awesome-claude-skills와 같은 외부 프로젝트를 모두 소스로 삼을 수 있습니다.
앞서 개발 계기에서 이야기한 것 처럼, 현재 레포의 스킬을 특정 git reop를 통해 publish하는 기능 까지 계획했었는데, 생각보다 사용자 플로우 정의가 어려워서 우선은 use에 초점을 맞췄습니다.
