몇 줄의 자연어로 Mac을 조정하는 것을 상상해 보세요. 그 꿈은 이제 Claude의 새로운 컴퓨터 사용 도구 덕분에 현실이 되었습니다. 지루한 UI 워크플로를 자동화하든, 사용자 입력을 시뮬레이션하든, macOS 인터페이스와 상호작용하는 데모를 만들든, Claude의 컴퓨터 사용 도구는 강력하고 놀랍도록 직관적인 솔루션을 제공합니다.
이 기사에서는 이 기능이 무엇인지, 사용하는 방법, 도구의 핵심 작동 방식을 설명합니다. 반복 작업을 자동화하려는 개발자든, 손을 사용하지 않고 응용 프로그램을 제어하고 싶은 사람이든, 이 가이드는 시작하는 데 필요한 포괄적인 안내서입니다.

Claude의 컴퓨터 사용이란?
컴퓨터 사용은 AI 에이전트가 Mac의 키보드, 마우스 및 화면과 직접 상호 작용할 수 있도록 하는 Anthropic의 Claude 전용 베타 도구입니다. 이 상호 작용은 macOS 명령줄 유틸리티를 사용하여 프로그래밍 방식으로 이루어집니다.
Claude는 이 도구를 사용하여:
- 특정 키를 입력하거나 누르는 동작을 시뮬레이션합니다.
- 마우스 커서를 특정 위치로 이동합니다.
- 왼쪽, 오른쪽 또는 더블 클릭을 수행합니다.
- 현재 화면의 스크린샷을 찍습니다.
- 커서의 위치를 가져옵니다.
모든 이러한 작업은 API와 유사한 인터페이스를 통해 노출되며 Anthropic 에이전트가 호출할 수 있는 Python 기반 도구로 래핑되어 있습니다.
왜 Claude와 함께 macOS를 자동화해야 할까요?
AppleScript나 Automator와 같은 전통적인 macOS 자동화 도구는 강력하지만 흔히 부서지기 쉬운 애플리케이션 특정 도구이거나 범위가 제한적입니다. Claude의 컴퓨터 사용 API를 사용하면 이러한 규제에 더 이상 얽매이지 않습니다. 시스템 전체와 상호작용할 수 있으며, 애플리케이션을 탐색하고, 클릭하고, 입력하고, 드래그하며, 심지어 화면을 시각적으로 해석할 수 있습니다 — 마치 인간처럼 말이죠.
Claude는 화면에 무엇이 있는지 해석하고 자연어 지침과 저수준 시스템 명령을 사용하여 실시간으로 작업을 수행하는 스마트한 공동 조종사 역할을 합니다.
필요한 것들
시작하려면 다음 항목이 필요합니다:
- macOS 12 (Monterey) 이상이 설치된 Mac
- Python 3.8+가 설치되어 있어야 합니다.
- Homebrew (macOS 패키지 관리자)
- Terminal.app 또는 iTerm2와 같은 터미널 응용 프로그램
Claude Computer Use API에 대한 액세스 및 API 키
키보드 입력 및 마우스 제어와 같은 저수준 상호 작용을 위해 cliclick
라는 명령줄 유틸리티를 사용할 것입니다.
macOS 환경 설정하기
Claude가 Mac을 제어할 수 있도록 터미널 접근 권한을 부여해야 합니다:
- 시스템 설정 열기
- 개인정보 보호 및 보안 → 접근성로 이동
- 사용 중인 터미널 응용 프로그램에 대한 제어를 활성화합니다.
이 권한 없이는 자동화가 작동하지 않습니다.
작동 원리: Claude + cliclick + Python
시스템은 세 가지 주요 레이어로 구성되어 있습니다:
- Claude의 Computer Use API – 화면 해석을 처리하고 어떤 작업을 수행할지 결정합니다.
- cliclick – 마우스 이동, 클릭 및 키보드 입력을 시뮬레이션하는 명령줄 도구입니다.
- Python Bridge (
computer.py
) – Claude의 명령을 cliclick 및 macOS 시스템에 연결합니다.
Claude API는 시각적 정보를 해석(예: 어떤 앱이 열려 있는지 또는 버튼이 어디에 있는지)하고 고수준의 명령을 발행합니다. 이러한 명령은 cliclick를 통해 Mac에서 실행되고, Python 레이어에 의해 조정됩니다.
도구 설치하기
자동화 설정을 설치하고 실행하려면 다음 단계를 따르세요:
1. cliclick
설치하기
brew install cliclick
2. Quickstart 리포지토리 복제하기
git clone https://github.com/anthropics/anthropic-quickstarts.git
cd anthropic-quickstarts/computer-use-demo
3. 핵심 스크립트 교체하기
기존의 computer.py
파일을 Claude Computer Use를 이용한 macOS 자동화 가이드에서 제공된 수정된 버전으로 교체합니다.
4. 설정 스크립트 실행하기
./setup.sh
이 스크립트는 Python 가상 환경을 생성하고 종속성을 설치합니다.
5. 환경 활성화하기
source .venv/bin/activate
6. 환경 변수 설정하기
자리 표시자를 실제 데이터로 교체합니다.
export ANTHROPIC_API_KEY=sk-xxxxxx
export WIDTH=1512 # 화면 너비
export HEIGHT=982 # 화면 높이
해상도는 Apple 메뉴 > 이 Mac에 관하여 > 디스플레이에서 확인할 수 있습니다.
7. Streamlit 앱 시작하기
python -m streamlit run computer_use_demo/streamlit.py
명령을 Claude에게 발행할 수 있는 로컬 브라우저가 열립니다.
macOS에서 실제 작업 자동화하기
이제 모든 것이 준비되었으니, 할 수 있는 일을 살펴보겠습니다.
1. 응용 프로그램 실행하기
Claude에게 “Safari 열기” 또는 “Spotify 시작하기”라고 요청할 수 있습니다. Claude는 아이콘이나 메뉴 항목을 시각적으로 식별하고 필요한 클릭 및 키 입력을 시뮬레이션합니다.

2. 앱에서 텍스트 입력하기
Claude에게 노트를 열고 메시지를 입력하도록 요청할 수 있습니다. 이는 자동화된 로그나 일일 일지를 생성하는 데 유용합니다.
3. 메뉴 및 창 탐색하기
Claude는 키보드 단축키를 시뮬레이션하고, 메뉴를 클릭하며, 창을 특정 위치로 드래그 할 수 있습니다. 이는 파일을 내보내거나 작업 공간을 설정하는 등의 다단계 워크플로를 만드는 데 좋습니다.
컴퓨터 사용에 매료되셨나요? 더 깊이 들어가 봅시다:
이 computer.py
스크립트는 다음을 처리하는 미들웨어 역할을 합니다:
- 해상도에 기반하여 화면 좌표 변환
- 정확한 타이밍으로 마우스 및 키보드 동작 실행
- 시각적 확인을 위한 스크린샷 캡처 및 인코딩
- Claude가 발행한 각 명령(예:
left_click
,mouse_move
,type
)은 유효성 검사 및 파싱된 후 cliclick에 전달됩니다.
예시: Claude에게 Safari를 열라고 지시하기. 설정이 완료되면 Claude에게 다음과 같은 프롬프트를 보낼 수 있습니다:
"Safari를 열고, apple.com으로 가서 스크린샷을 찍어주세요."
그 뒤로 Claude는:
cliclick
를 사용하여Cmd+Space
를 누릅니다.- "Safari"를 입력합니다.
Enter
를 누릅니다.- 브라우저가 로드될 때까지 기다립니다.
- "apple.com"을 입력합니다.
Enter
를 누릅니다.screenshot()
를 사용하여 화면을 캡처합니다.
모든 이 단계는 자연어로 추상화됩니다.
또한 현재 마우스 위치 또는 화면의 스크린샷을 반환하는 피드백 루프를 지원하여 Claude가 무슨 일이 일어났는지 "보고" 지능적으로 반응할 수 있습니다. Claude의 컴퓨터 사용이 여러분을 위해 할 수 있는 것을 생각해 보세요:
- 콘텐츠 생성: Photoshop을 열고, 템플릿을 불러오고, 디자인을 내보내는 것을 자동화합니다.
- 회의: Zoom을 열고, 회의에 참여하고, 간단한 프롬프트로 음소거/음소거 해제를 수행합니다.
- 코딩: IDE를 열고, 프로젝트를 불러오고, 컴파일 — 모두 자연어 지침으로 촉발됩니다.
- 시스템 정리: Finder를 열고, 다운로드로 이동하여, 오래된 파일을 삭제합니다.
Claude의 컴퓨터 사용 원리
이 기능의 핵심은 AI 에이전트에 API와 유사한 인터페이스를 제공하는 computer.py
파일입니다.
이제 computer.py
의 주요 구성 요소를 분석해 보겠습니다.
1. 도구 구성 및 설정
class ComputerTool(BaseAnthropicTool):
name: Literal["computer"] = "computer"
api_type: Literal["computer_20241022"] = "computer_20241022"
이 클래스는 도구의 이름과 API 유형을 설정합니다. BaseAnthropicTool
에서 상속받아 도구가 Claude와 통신하는 방식을 표준화합니다.
생성자는 환경 변수에서 화면 너비, 높이 및 디스플레이 번호를 로드합니다. 이는 고해상도 디스플레이에서 마우스 좌표 매핑이 올바르게 작동하도록 보장합니다.
self.width = int(os.getenv("WIDTH") or 0)
self.height = int(os.getenv("HEIGHT") or 0)
2. 동작 실행
이 도구는 mouse_move
, type
, key
, screenshot
와 같은 다양한 동작을 처리합니다. 각 동작은 서로 다른 쉘 명령을 트리거합니다:
if action == "mouse_move":
return await self.shell(f"cliclick m:{x},{y}")
입력된 텍스트는 청크로 나누어져 타이핑을 시뮬레이션합니다:
for chunk in chunks(text, TYPING_GROUP_SIZE):
cmd = f"cliclick t:'{chunk}'"
results.append(await self.shell(cmd, take_screenshot=False))
이 방법은 사용자가 문자 단위로 입력하는 것을 모방하며 스크린샷을 캡처하는 것도 포함됩니다.
3. 스크린샷 기능
screenshot()
함수는 screencapture
를 사용하여 스크린샷을 찍고, ImageMagick의 convert
를 사용하여 크기를 조정하며, base64로 인코딩된 결과를 반환합니다:
screenshot_cmd = f"{self._display_prefix}screencapture {path}"
await self.shell(f"convert {path} -resize {x}x{y}! {path}")
이는 Claude가 작업을 수행하기 전후에 화면에서 무슨 일이 일어나는지 볼 수 있도록 합니다.
4. 좌표 스케일링
모든 화면의 해상도가 동일하지 않습니다. scale_coordinates()
메서드는 좌표를 조정하여 모든 디스플레이에서 상호작용이 일관되게 유지되도록 합니다:
x_scaling_factor = target_dimension["width"] / self.width
y_scaling_factor = target_dimension["height"] / self.height
이는 AI가 "400, 300에서 클릭"이라고 말할 때 실제 화면 크기에 상관없이 올바른 위치에 착지하도록 보장합니다.
5. 오류 처리 및 유효성 검사
코드 전반에 걸쳐 텍스트 누락이나 유효하지 않은 좌표와 같은 오류가 발생할 경우 유용한 메시지와 함께 빠르게 감지됩니다:
if text is None:
raise ToolError(f"text is required for {action}")
이를 통해 도구가 안전하게 작동하고 Claude가 시스템과 상호작용할 때 예측 가능한 동작을 보장합니다.
마무리 생각
Claude의 컴퓨터 사용 API는 자동화에 대한 미래지향적인 접근 방식을 제공합니다 — 더 적은 스크립팅, 더 많은 지능. 화면 시각을 해석하고 인간 어시스턴트처럼 반응함으로써, Claude는 깊은 기술적 지식 없이도 모든 macOS 사용자에게 강력한 자동화를 제공합니다.
단지 Python과 몇 가지 도구, API 키만 있으면 습관과 선호에 맞게 조정되는 워크플로를 구축할 수 있습니다 — 중요한 것에 집중할 수 있는 더 많은 시간을 제공합니다.