Signal 연동
기준일: 2026-07-26
난이도: 고급
공식 기준: Signal
개요
Hermes는 signal-cli 데몬(HTTP 모드)에 SSE/JSON-RPC로 붙습니다. 추가 Python 패키지 없이 httpx만 사용합니다. E2EE·최소 메타데이터로 보안 민감 워크플로에 적합합니다.
핵심 개념
| 항목 | 내용 |
|---|---|
| 외부 의존성 | signal-cli + Java 17+ |
| 링크 | 휴대폰 주장치, signal-cli는 링크 장치 |
| 통신 | SIGNAL_HTTP_URL (예: http://127.0.0.1:8080) |
| 계정 | E.164 SIGNAL_ACCOUNT |
| 그룹 | 기본 off — SIGNAL_GROUP_ALLOWED_USERS로 명시 |
상세
signal-cli 설치
# macOS
brew install signal-cli
# Linux: GitHub releases tarball → /opt + PATH
계정 링크
signal-cli link -n "HermesAgent"
# 폰: Settings → Linked Devices → 스캔
데몬
signal-cli --account +1234567890 daemon --http 127.0.0.1:8080
curl http://127.0.0.1:8080/api/v1/check
Hermes 설정
hermes gateway setup
SIGNAL_HTTP_URL=http://127.0.0.1:8080
SIGNAL_ACCOUNT=+1234567890
SIGNAL_ALLOWED_USERS=+1234567890,+0987654321
# SIGNAL_GROUP_ALLOWED_USERS=groupId1,groupId2 # 또는 *
# SIGNAL_HOME_CHANNEL=+1234567890
hermes gateway
접근 제어
- DM: allowlist / pairing /
SIGNAL_ALLOW_ALL_USERS - 그룹: 미설정 시 모든 그룹 무시; ID 목록 또는
*
기능
- 수신: 이미지·오디오(STT 시 전사)·문서
- 송신:
MEDIA:→ 이미지/음성/비디오/문서 네이티브 첨부
보안
데몬 HTTP를 로컬/사설망에만 바인딩. allowlist 필수. 링크 장치 분실 시 폰에서 장치 해제.
체크리스트
- 공식 원문과 명령·설정 키를 대조했다
- 로컬/
config.yaml/.env에서 재현 경로를 확인했다 - 권한·allowlist·시크릿 노출을 점검했다
- 실패 시 롤백·비활성화 방법을 알고 있다
다음 단계
- 공식 문서: Signal
- 메시징 게이트웨이
- Hermes Agent 소개
기준일: 2026-07-26 — 공식 문서 동기화 코퍼스