iMessage 통합하기: imsg 가이드
평소에 개인적인 메시징 채널을 자동화하려고 하면 폐쇄적인 환경 때문에 막막할 때가 많죠. 특히 iMessage 같은 플랫폼은 외부에서 접근하기가 꽤 까다로워서 개발자들에게는 늘 고민거리예요.
기존의 도구들을 연결해서 메시지를 주고받는 흐름을 만들고 싶지만, 복잡한 설정 과정에서 길을 잃기 쉽습니다. 이런 갈증을 느끼는 분들을 위해 imsg를 이용한 통합 방법을 정리해 드릴게요.
필요한 것
섹션 제목: “필요한 것”시작하기 전에 소스 문서에서 언급된 다음 조건들을 확인해 주세요.
imsg가 실행되는 Mac에서 Messages 앱에 로그인되어 있어야 합니다.- OpenClaw와
imsg를 실행하는 프로세스에 Full Disk Access(전체 디스크 접근 권한)가 필요합니다 (Messages DB 접근용). - Messages 앱을 통해 메시지를 보내려면 Automation(자동화) 권한이 필요합니다.
빠른 시작
섹션 제목: “빠른 시작”5분 만에 끝내는 최소 경로 설정 단계입니다.
1단계: imsg 설치 및 확인
섹션 제목: “1단계: imsg 설치 및 확인”brew install steipete/tap/imsgimsg rpc --help2단계: OpenClaw 설정
섹션 제목: “2단계: OpenClaw 설정”json5 설정 파일에 다음 내용을 추가하세요.
{ channels: { imessage: { enabled: true, cliPath: "/usr/local/bin/imsg", dbPath: "/Users/<you>/Library/Messages/chat.db", }, },}3단계: Gateway 시작
섹션 제목: “3단계: Gateway 시작”openclaw gateway4단계: 첫 번째 DM 페어링 승인
섹션 제목: “4단계: 첫 번째 DM 페어링 승인”기본 dmPolicy에서는 페어링 승인이 필요합니다. 페어링 요청은 1시간 후에 만료되니 주의하세요.
openclaw pairing list imessageopenclaw pairing approve imessage <CODE>Remote Mac 설정 (SSH)
섹션 제목: “Remote Mac 설정 (SSH)”OpenClaw는 stdio와 호환되는 cliPath만 있으면 됩니다. 원격 Mac에 SSH로 접속해서 imsg를 실행하는 래퍼 스크립트를 가리키도록 설정할 수 있어요.
래퍼 스크립트 예시:
#!/usr/bin/env bashexec 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를 업데이트해야 합니다.
imsg rpc --helpopenclaw channels status --probeDM이 무시되는 경우
섹션 제목: “DM이 무시되는 경우”다음 항목들을 체크해 보세요.
channels.imessage.dmPolicy설정channels.imessage.allowFrom리스트- 페어링 승인 상태 (
openclaw pairing list imessage)
그룹 메시지가 무시되는 경우
섹션 제목: “그룹 메시지가 무시되는 경우”다음 설정들을 확인해야 합니다.
channels.imessage.groupPolicy및groupAllowFromchannels.imessage.groups화이트리스트 동작- 멘션 패턴 설정 (
agents.list[].groupChat.mentionPatterns)
macOS 권한 팝업을 놓친 경우
섹션 제목: “macOS 권한 팝업을 놓친 경우”해당 사용자 세션의 터미널에서 대화형 명령을 실행하고 팝업을 승인하세요.
imsg chats --limit 1imsg send <handle> "test"설정에 대해 더 궁금한 점이 있다면 AI Setup Assistant에게 물어보세요.
다음 단계
섹션 제목: “다음 단계”OpenClaw Expert
아직 막혀 있나요?
이 문서에서 답을 못 찾았다면 OpenClaw Expert에게 바로 물어보세요.