usecomputer: AI 에이전트용 macOS 데스크톱 자동화 CLI

macOS 데스크톱 자동화 CLI. 마우스, 키보드, 스크린샷을 제어. Anthropic Computer Tool 실행 레이어 제공.

핵심 기능

기능설명
마우스 제어이동, 클릭, 드래그, 커서 위치 쿼리
키보드 합성타이핑, 키 press (단축키 포함)
스크린샷화면 캡처
CoordMap좌표 매핑

기술 스택

  • Zig N-API 모듈 — 네이티브 Quartz 이벤트 사용
  • 크로스 플랫폼 키 인젝션 — macOS, Windows, Linux X11

설치

npm install -g usecomputer

CLI 사용법

# 마우스 위치 확인
usecomputer mouse position --json
 
# 마우스 이동
usecomputer mouse move -x 500 -y 500
 
# 클릭
usecomputer click -x 500 -y 500 --button left --count 1
 
# 타이핑
usecomputer type "hello"
 
# 단축키
usecomputer press "cmd+s"

Node.js 라이브러리

import * as usecomputer from 'usecomputer'
 
// 스크린샷
const screenshot = await usecomputer.screenshot({
  path: './tmp/shot.png',
})
 
// 클릭
await usecomputer.click({
  point: { x: 500, y: 500 },
  button: 'left',
  count: 1,
})

Anthropic Computer Tool 연동

const message = await anthropic.beta.messages.create({
  model: 'claude-opus-4-6',
  tools: [{
    type: 'computer_20251124',
    name: 'computer',
    display_width_px: 1024,
    display_height_px: 768,
  }],
  messages: [{ role: 'user', content: 'Open Safari and search for usecomputer.' }],
})
 
// usecomputer로 액션 실행
switch (toolUse.input.action) {
  case 'left_click':
    await usecomputer.click({ point, button: 'left', count: 1 })
    break
  case 'type':
    await usecomputer.typeText({ text: toolUse.input.text })
    break
  // ...
}

지원 액션

Anthropic 액션usecomputer 함수
screenshotscreenshot()
left_clickclick({ count: 1 })
double_clickclick({ count: 2 })
mouse_movemouseMove()
typetypeText()
keypress()
scrollscroll()

요구사항

  • macOS (Darwin)
  • 터미널 앱에 접근성 권한 활성화

의미

  • Computer Use 기능을 로컬 macOS에서 실행 가능
  • Claude가 직접 화면을 보고 클릭/타이핑
  • DroidClaw와 비슷하지만 macOS 데스크톱 대상