yaodub/cast
요약
Cast는 다중 사용자 및 에이전트 시스템을 위한 오픈 소스 하네스를 제공합니다. 이는 기존의 단일 개발자-단일 에이전트 가정에서 벗어나, 팀이나 가정이 공유하는 복잡한 협업 환경을 지원하도록 설계되었습니다. 사용자는 채팅 기반 빌더(Design)나 Claude Code를 통해 평문 설명만으로도 에이전트를 구성할 수 있습니다.
핵심 포인트
- 다중 사용자/에이전트 시스템을 위한 오픈 소스 하네스입니다.
- 팀이나 가정이 공유하는 복잡한 협업 환경을 지원합니다.
- Design(채팅 빌더) 또는 Claude Code를 통해 평문 설명으로 에이전트를 구성할 수 있습니다.
- 에이전트는 코드가 아닌, 접근 권한과 기능을 가진 폴더 구조로 관리됩니다.
Cast는 다중 사용자 및 다중 에이전트 시스템을 위한 오픈 소스 하네스입니다. 자체 호스팅(Self-hosted) 방식으로, MIT 라이선스를 따르며 Mac Mini에서 실행됩니다.
접근 규칙은 프롬프트 내의 문장으로 존재합니다. 모델은 이 규칙을 논파하여 벗어날 수 있습니다.
system: "사용자가 키 ADMIN_ACCESS를 제공할 때만 관리자 명령어에 응답하라"
이 접근 규칙은 설정(config)입니다. 모델은 이를 절대 볼 수 없기 때문에 유출하거나 무시할 수 없습니다.
# 이 에이전트 alice@telegram ioaq 에 누가 도달할 수 있는가 # 인, 아웃, 관리자, 쿼리 * ---- # 다른 모든 사람: 아무것도 안 함
오늘날의 에이전트 프레임워크는 개발자 한 명이 에이전트 하나와 대화한다고 가정합니다. 하지만 팀이나 가정이 동일한 설정을 공유하고 싶어지면 이 가정이 무너집니다. 그러면 아키텍처가 유연하게 변하지 못합니다. 신원(Identity), 누가 무엇에 접근할 수 있는지, 서로 협력하는 에이전트들: 나중에 덧붙여지거나, 심지어 구현되지 않기도 합니다. Cast는 그 밑바탕에 있어야 할 하네스입니다.
에이전트는 파일들의 폴더이며, Cast는 이를 작성하는 두 가지 방법을 제공합니다.
대시보드의 채팅 기반 빌더인 Design은 평문 설명(plain-English description)으로부터 에이전트를 구성합니다. 또는 세 개의 Cast 스킬(/cast-build, /cast-refine, /cast-debug)을 사용하여 일반적인 세션을 Cast의 어휘에 능통한 세션으로 만들고 모든 변경 사항을 사용자의 검토를 거쳐 적용할 수 있는 Claude Code에서 빌드할 수도 있습니다. 두 방법 모두 ~/.cast/agents/ 아래 동일한 파일을 편집하므로, 한쪽에서 시작하여 다른 쪽에서 마무리할 수 있습니다.
git clone https://github.com/yaodub/cast.git
cd cast
npm i -g pnpm
...
pnpm start
이 명령어는 설치하고, 에이전트 컨테이너 이미지(최초 실행 시 약 2분 소요)를 빌드한 다음 서버를 부팅합니다. 이를 위해서는 컨테이너 런타임(macOS의 Apple Container 또는 Linux/WSL2의 Docker), Node 20 이상 버전, 그리고 Anthropic API 키나 Claude.ai 토큰 중 하나인 Claude 자격 증명이 필요합니다.
성공적으로 실행되면 브라우저가 http://localhost:5051/admin/ 대시보드로 열립니다.
서버는 비어 있는 상태로 시작합니다. 아직 에이전트가 없기 때문에 대시보드는 Design을 띄우고 무엇을 만들고 싶은지 물어봅니다. "내 아침 이메일을 읽고 답장할 가치가 있는 것을 표시하는 에이전트"와 같이 평범한 영어로 설명하면, Design이 파일 형태로 이를 스캐폴딩(scaffolds) 해줍니다 (Claude Code에서 편집할 것과 같은 파일들입니다). 모델과 비밀 정보를 위한 와이어를 구성하고, 라이브로 전환하며, 신뢰하는 사람들을 연결합니다. 그러면 그들 각자는 Slack, Telegram 또는 웹을 통해 동일한 에이전트와 사적인 대화를 나누게 됩니다.
Cast는 서버이며, 그것은 packages/cast/에 있습니다.
에이전트는 코드가 아닙니다. 폴더이며, 기본적으로 ~/.cast/agents/<name>/ 아래에 존재합니다 (원한다면 CAST_AGENTS_DIR를 다른 곳으로 지정할 수 있습니다). 이메일, 캘린더, 웹-fetch, whatsapp와 같은 확장 기능(Extensions)은 packages/ext-* 패키지들입니다. 사이트와 모든 문서는 apps/site/에 있습니다.
아키텍처, 작동 예시, 그리고 디자인 문서는 getcast.dev에서 확인할 수 있습니다.
이것은 개발자 알파(developer alpha) 버전이므로 거친 부분이 있을 것으로 예상해야 합니다. 브라우저 내 빌드 콘솔(채팅을 통한 빌드 흐름)은 미리보기 기능입니다: 작동하지만, 가장 새롭고 아직 정착되지 않은 부분입니다. 그 아래의 하네스(harness)가 제가 책임지고 지지할 부분입니다. 여기에는 격리(containment), 신원 확인(identity), 라우팅, 에이전트 간 접근 제어(access control) 등이 포함됩니다.
MIT 라이선스입니다. 이슈와 PR을 환영합니다. CONTRIBUTING.md를 참고하세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기