- Anthropic의 Claude Desktop 소프트웨어가 필자의 오픈소스 입력 시뮬레이션 라이브러리 enigo를 사용함을 발견함
- enigo는 Windows, macOS, BSD 및 Linux 등 여러 운영체제에서 동작하며, Electron 기반 Claude Desktop에 핵심적으로 활용됨
- 필자는 Anthropic에 지원서를 보냈으나, 팀의 인력 부족을 이유로 거절 통보를 받음
- enigo는 MIT 라이선스로 누구나 무료로 사용할 수 있어, 필자는 금전적 이익 없이 명성만 얻게 되는 상황임
- Claude에 ‘팔과 다리’를 제공했으면서도, 정작 채용 과정에서는 거절당함에 대해 아쉬움과 동시에 뿌듯함을 표현함
서문
2024년 10월, Anthropic은 "Claude Computer Use"라는 기능을 선보였음. 이 기능은 AI가 컴퓨터를 제어할 수 있도록 하여, 예를 들어 웹 브라우저에서 데이터를 복사해 스프레드시트로 옮기는 작업을 가능하게 함. 필자는 컴퓨터 제어를 위한 라이브러리의 관리자로서 Anthropic의 방식에 흥미를 느껴, 이를 분석하고 배우고자 함. Anthropic은 2025년 3월 기준 600억 달러 이상의 기업가치를 인정받은 AI 업계의 선도 업체임.
enigo 라이브러리와 Claude Desktop
Anthropic이 Claude의 데스크탑 버전에서 필자가 개발한 enigo 라이브러리를 사용하는 것을 알게 됨. MacOS용 Claude Desktop에서 enigo 사용 여부는 아래 명령어로 확인할 수 있음.
$ 7z x Claude.dmg
$ perl -nle 'print $& while /.{0,67}enigo.{0,30}/g' Claude/Claude.app/Contents/Resources/app.asar.unpacked/node_modules/claude-native/claude-native-binding.node
출력 예시:
/Users/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/enigo-0.2.1/src/macos/macos_impl.rs- 같은 방식으로 Windows용 Claude에서도 enigo 사용하는 것을 확인할 수 있음
enigo의 특징:
- Windows, macOS, BSD, Linux(wayland, X11, libei) 등 여러 플랫폼을 지원
- Rust로 작성되어 메모리 안전성 및 빠른 성능 제공
- 루트 권한 필요 없음
- crates.io에서 30만 회 이상 다운로드, GitHub 1200+ stars 기록
- 여러 OS의 입력 방식 차이와 부족한 문서 등으로 인해 입력 시뮬레이션이 상당히 난이도 높은 분야임
- 크로스 플랫폼 입력 시뮬레이션을 구현한 사실상 유일한 Rust 라이브러리임
오픈소스와 보상 구조
enigo는 MIT 라이선스로 배포되어 누구나 무료로 사용할 수 있음. 사용 기업이나 유저로부터 직접적인 금전적 보상을 받지 않음. 대가로 얻는 것은 GitHub 스타 수, crates.io 다운로드 수와 같은 커뮤니티 내 인지도임.
Electron 앱, 그리고 리눅스 미지원의 아이러니
Claude Desktop은 Electron 기반임에도 공식적으로는 macOS와 Windows만 지원함. Electron의 장점이 멀티플랫폼 지원임에도 불구하고 리눅스 버전이 없음. 유저 커뮤니티에서는 자체적으로 Stub 코드를 활용하며 리눅스 이식을 시도했음. (예시: claude-desktop-linux-flake 등)
흥미롭게도, enigo는 실제로 리눅스도 지원함에도 불구하고 이런 우회적 접근 방식이 필요했음.
Anthropic 입사 지원, 그리고 거절 경험
필자는 지인을 통해 Anthropic이 Claude Desktop 개발팀에서 비공개 신규 기능 개발 포지션을 모집 중임을 알게 됨. 해당 팀에서 enigo를 핵심적으로 사용하는 만큼 자신에게 적합한 자리라고 판단하여 지원서를 제출함.
- 자동 회신 이메일에 따르면 팀 상황상 추가 지원서를 검토할 인력이 부족함을 안내받음
- 몇 주 후 거절 메일을 받으며 채용에 불발됨
입사 성공 시:
- Claude Desktop의 Computer Use와 유사한 기능을 더 발전시키고 싶었음
- 특히 Claude Desktop의 리눅스 이식에도 기여할 수 있는 전문성을 보유하고 있었음
- enigo의 고도화와 프로젝트 완성도 증가에 큰 도움이 될 수 있었음
결론 및 소회
enigo가 Anthropic Claude Desktop에 채택된 것에 대한 자부심을 느낌. 동시에 자신이 만든 ‘팔과 다리’를 활용하는 회사에 채용 과정에서는 거절당한 상황을 유쾌하게 받아들임. 마지막으로 Roko's Basilisk(미래 슈퍼 AI의 처벌 시나리오)에 스스로는 안전해졌다는 농담도 곁들임.