콘텐츠로 이동

iMessage 통합하기: imsg 가이드

평소에 개인적인 메시징 채널을 자동화하려고 하면 폐쇄적인 환경 때문에 막막할 때가 많죠. 특히 iMessage 같은 플랫폼은 외부에서 접근하기가 꽤 까다로워서 개발자들에게는 늘 고민거리예요.

기존의 도구들을 연결해서 메시지를 주고받는 흐름을 만들고 싶지만, 복잡한 설정 과정에서 길을 잃기 쉽습니다. 이런 갈증을 느끼는 분들을 위해 imsg를 이용한 통합 방법을 정리해 드릴게요.

시작하기 전에 소스 문서에서 언급된 다음 조건들을 확인해 주세요.

  • imsg가 실행되는 Mac에서 Messages 앱에 로그인되어 있어야 합니다.
  • OpenClaw와 imsg를 실행하는 프로세스에 Full Disk Access(전체 디스크 접근 권한)가 필요합니다 (Messages DB 접근용).
  • Messages 앱을 통해 메시지를 보내려면 Automation(자동화) 권한이 필요합니다.

5분 만에 끝내는 최소 경로 설정 단계입니다.

Terminal window
brew install steipete/tap/imsg
imsg rpc --help

json5 설정 파일에 다음 내용을 추가하세요.

{
channels: {
imessage: {
enabled: true,
cliPath: "/usr/local/bin/imsg",
dbPath: "/Users/<you>/Library/Messages/chat.db",
},
},
}
Terminal window
openclaw gateway

기본 dmPolicy에서는 페어링 승인이 필요합니다. 페어링 요청은 1시간 후에 만료되니 주의하세요.

Terminal window
openclaw pairing list imessage
openclaw pairing approve imessage <CODE>

OpenClaw는 stdio와 호환되는 cliPath만 있으면 됩니다. 원격 Mac에 SSH로 접속해서 imsg를 실행하는 래퍼 스크립트를 가리키도록 설정할 수 있어요.

래퍼 스크립트 예시:

#!/usr/bin/env bash
exec ssh -T gateway-host imsg "$@"

추천 설정 (첨부파일 포함 시):

{
channels: {
imessage: {
enabled: true,
cliPath: "~/.openclaw/scripts/imsg-ssh",
remoteHost: "user@gateway-host", // SCP로 첨부파일을 가져올 때 사용
includeAttachments: true,
},
},
}

문제가 생겼을 때는 소스 문서에서 정의한 다음 해결 방법을 참고하세요.

imsg를 찾을 수 없거나 RPC를 지원하지 않는 경우

섹션 제목: “imsg를 찾을 수 없거나 RPC를 지원하지 않는 경우”

바이너리와 RPC 지원 여부를 확인해 보세요. RPC 미지원 메시지가 뜨면 imsg를 업데이트해야 합니다.

Terminal window
imsg rpc --help
openclaw channels status --probe

다음 항목들을 체크해 보세요.

  • channels.imessage.dmPolicy 설정
  • channels.imessage.allowFrom 리스트
  • 페어링 승인 상태 (openclaw pairing list imessage)

다음 설정들을 확인해야 합니다.

  • channels.imessage.groupPolicy 및 groupAllowFrom
  • channels.imessage.groups 화이트리스트 동작
  • 멘션 패턴 설정 (agents.list[].groupChat.mentionPatterns)

해당 사용자 세션의 터미널에서 대화형 명령을 실행하고 팝업을 승인하세요.

Terminal window
imsg chats --limit 1
imsg send <handle> "test"

설정에 대해 더 궁금한 점이 있다면 AI Setup Assistant에게 물어보세요.

OpenClaw

OpenClaw Expert

아직 막혀 있나요?

이 문서에서 답을 못 찾았다면 OpenClaw Expert에게 바로 물어보세요.