craft.do, 에이전트 네이티브 데스크톱 앱 'Craft Agents' 오픈소스 공개… Claude Agent SDK·Pi SDK 병행 사용
craft.do가 자사 팀이 에이전트와 함께 일하기 위해 만든 데스크톱 앱 'Craft Agents'를 오픈소스로 공개했다. 직관적인 멀티태스킹, 모든 API·서비스에 대한 군더더기 없는 연결, 세션 공유, 코드 중심이 아닌 문서 중심 워크플로를 하나의 UI에서 제공하는 것이 목표라고 설명했다. 라이선스는 Apache 2.0이며, 개발사 스스로 '코드 에디터 없이 Craft Agents만으로 Craft Agents를 만들고 있다'고 밝혔다.
아키텍처는 Claude Agent SDK와 Pi SDK를 나란히 쓰는 구조다. 에이전트 네이티브 소프트웨어 원칙을 바탕으로, 프롬프트 한 줄로 커스터마이즈가 가능하도록 기본값부터 고도로 유연하게 설계했다고 설명했다. 프로바이더 측면에서도 Anthropic 외에 Google AI Studio, ChatGPT Plus(Codex OAuth), GitHub Copilot OAuth 연결을 지원하고, 워크스페이스별 기본 모델을 지정할 수 있다.
외부 연결은 세 가지 방식으로 이뤄진다. 에이전트에게 'Linear를 소스로 추가해달라'고 말하면, 공개 API와 MCP 서버를 찾아 문서를 읽고 자격증명을 세팅해 자동으로 구성한다. 이미 가지고 있는 MCP config JSON은 그대로 붙여 넣을 수 있다. 로컬 MCP는 stdio 기반 서버가 머신 위에서 서브프로세스로 실행되며, npx 명령이나 파이썬 스크립트, 로컬 바이너리를 그대로 가리키면 된다. 커스텀 API의 경우 OpenAPI 명세, 엔드포인트 URL, 문서 스크린샷 같은 다양한 입력을 받아들인다.
번들된 'Craft MCP Integration'은 32개 이상의 Craft 문서 도구(블록, 컬렉션, 검색, 태스크)를 노출한다. 외부 소스로는 MCP 서버, Google(Gmail·Calendar·Drive·YouTube·Search Console)·Slack·Microsoft 같은 REST API, 로컬 파일시스템, Obsidian vault, Git 레포 등을 연결할 수 있다. Claude Code의 스킬과 MCP를 그대로 마이그레이션해 가져올 수도 있으며, 새 스킬은 자연어로 기능과 맥락을 설명하면 에이전트가 나머지를 처리한다. 세션 도중에도 @ 멘션으로 새 스킬과 소스를 즉시 불러올 수 있으며 재시작은 필요 없다.
권한은 3단계로 분리돼 있다. 'safe(Explore)'는 읽기 전용으로 모든 쓰기 작업을 차단하고, 'ask(Ask to Edit)'는 실행 전에 승인을 요청하며 기본값이다. 'allow-all(Auto)'은 모든 명령을 자동 승인한다. 채팅 인터페이스에서 SHIFT+TAB으로 모드를 순환할 수 있다. 단축키는 Cmd+N(새 채팅), Cmd+1/2/3(사이드바·리스트·채팅 포커스), Cmd+/(단축키 다이얼로그), Enter(전송), Shift+Enter(줄 바꿈)가 지원된다.
UI 측면에서는 멀티 세션 인박스(상태 워크플로·플래그), 스트리밍 응답과 도구 시각화가 담긴 Claude Code 스타일 실시간 업데이트, VS Code 방식의 멀티 파일 Diff, 앱·워크스페이스 단위로 상속되는 테마 시스템이 포함된다. 세션은 Todo → In Progress → Needs Review → Done 상태 워크플로를 갖추고 있으며 제목은 AI가 자동 생성하거나 수동 지정할 수 있다. 이미지·PDF·Office 문서는 드래그앤드롭으로 첨부되며 자동 변환된다. 라벨 변경·스케줄·툴 사용 같은 이벤트에 따라 에이전트 세션을 생성하는 'Automations' 기능도 포함됐다.
Craft Agents는 리눅스 VPS 같은 원격 머신에 헤드리스 서버로 띄우고, 데스크톱 앱을 씬 클라이언트로 접속시키는 구성을 공식 지원한다. 서버는 'CRAFT_SERVER_TOKEN=$(openssl rand -hex 32) bun run packages/server/src/index.ts'로 기동되고, 시작 시 'CRAFT_SERVER_URL=ws://<IP>:9100'과 토큰을 출력한다. 씬 클라이언트 모드에서는 UI만 데스크톱에서 렌더되고 세션 로직·도구 실행·LLM 호출은 모두 원격 서버에서 수행된다. 네트워크 노출 시에는 PEM 인증서를 'CRAFT_RPC_TLS_CERT'와 'CRAFT_RPC_TLS_KEY'에 지정해 wss:// 접속을 활성화할 수 있으며, scripts/generate-dev-cert.sh로 365일짜리 개발용 자체 서명 인증서를 생성할 수 있다. Docker 이미지 배포도 지원된다.