CircleCI WebhookOpenClaw 게이트웨이(원격 Mac)lockfile 스캔요약 JSON 회송을 최소 단계로 고정합니다. 게이트웨이가 검증·격리 실행·알림을 한 노드에서 잇습니다. GitHub Checks·lockfile, Git·npm·brew 미러, Git·Docker 풀과 병행해 보세요.

왜 여기서 막히나: 딜리버리·게이트웨이 큐·API 권한

  • 프록시가 JSON을 바꾸면 HMAC이 깨집니다. raw body 검증.
  • 핸들러에서 곧바로 clone하면 딜리버리 타임아웃·재시도 폭주. 즉시 2xx 후 워커로.
  • Project API scope 과다·정책 밖이면 403. 최소 권한 재발급.

의사결정 소표: 검증·회송 채널·실행 모델

항목 이렇게 하면 조심할 점
시크릿 HMAC CircleCI 공식 규칙과 일치 본문 변형 금지
경로 토큰+TLS 구성이 단순 URL 유출 시 즉시 회전
동기 스캔 구현 단순 타임아웃
즉시 응답+큐 딜리버리 안정 워커 필요
Slack·Discord Webhook 사람이 보기 쉬운 요약 멱등 키·백오프

전제 조건: Node·openclaw CLI·토큰·최소 권한

Node 22.16+·24 LTSlaunchd와 셸에서 동일하게 맞추고 openclaw doctorPATH·TLS를 확인합니다. openclaw CLI는 단일 설치 경로만 씁니다. docs.openclaw.ai대로 게이트웨이는 127.0.0.1, 대시보드 토큰chmod 600. 외부 수신은 SSH 터널 또는 승인된 리버스 프록시 한 경로만. Project API는 조회·트리거에 필요한 최소 scope만.

전제 조건 체크리스트
  • which node가 에이전트·게이트웨이·수동 셸에서 동일
  • curl -fsS http://127.0.0.1:…/health가 주기적으로 성공
  • 기업 CA가 있으면 NODE_EXTRA_CA_CERTS를 plist에 명시
  • WORK_ROOT SSD 여유·동시 클론 상한 정의

CircleCI Webhook과 검증 설정 단계

프로젝트 설정에 Webhook URL·콘솔 시크릿을 저장하고 이벤트는 workflow-completed 등 필요한 것만 남깁니다. 핸들러는 문서의 HMAC으로 raw body를 검증합니다. 아래는 운영 순서입니다.

  1. 1. 게이트웨이·토큰·doctor
  2. 2. 스테이징 curl로 서명 검증
  3. 3. UI 등록·Recent Deliveries
  4. 4. 운영 URL·알림·백오프 Runbook
curl -fsS -X POST "https://edge/openclaw/circleci-hook" \ -H "Content-Type: application/json" \ -d @fixtures/workflow-completed.json

엣지에서 본문 변형 없는지 스테이징에서 먼저 확인하세요.

OpenClaw 스킬·스크립트 템플릿: lockfile 파싱·요약

페이로드의 리비전으로 ${WORK_ROOT}/${WORKFLOW_ID}얕은 클론package-lock.json·pnpm-lock.yaml·yarn.lock·Gemfile.lock을 찾아 기준 브랜치와 git diff 또는 dry-run으로 드리프트를 봅니다. 스킬이 종료 코드·요약·로그 꼬리를 JSON에 넣어 아웃바운드로 넘깁니다.

node -e "const f=require('fs'),j=JSON.parse(f.readFileSync('package-lock.json'));console.log(j.lockfileVersion,Object.keys(j.packages||{}).length)"

JSON 필드 예: workflow_id, revision, lockfile_status, log_tail. 본문 응답은 이미 2xx였다면 알림 채널로만 오류를 보냅니다.

CI 의존성 풀 시나리오와의 연결

게이트웨이 클론이 본 CircleCI 잡과 같은 PROXY·미러·registry를 쓰면 lockfile 결과가 로그와 맞습니다. NPM_CONFIG_CACHE 등으로 캐시 경로를 고정하고 동시 PR이 많으면 디스크·동시성 상한을 Runbook에 적어 둡니다.

흔한 오류 FAQ: 서명·타임아웃·권한

서명 검증이 끝까지 실패합니다

시크릿·문서의 HMAC이 같은지 확인합니다. 게이트웨이가 본문을 재직렬화하면 바이트가 달라지므로 raw body를 검증합니다.

딜리버리가 반복되며 타임아웃 납니다

즉시 2xx 후 큐로 넘겼는지 확인합니다. git clone --depth 1·미러·워커 수를 조정합니다.

Project API 403·읽기 전용

조직·프로젝트 바인딩·OIDC 정책을 확인하고 엔드포인트는 최소만 남깁니다.

openclaw doctor와 실제 런타임 Node가 다릅니다

plist에 NODE_BINARY 절대 경로·NODE_EXTRA_CA_CERTS를 넣습니다. curl -v로 API TLS를 확인합니다.

맺음말: 상주 게이트웨이는 Webhook·스캔·알림을 원격 Mac 한 노드에 고정해 파이프라인 접점을 줄입니다. 요금제·노드·구매도움말(SSH)·고객 지원으로 접속을 맞추세요. 로그인 없이 열람 가능합니다.

상주 게이트웨이용 원격 Mac

CircleCI Webhook·lockfile 게이트를 24시간 유지

MacPull 전용 Apple Silicon 노드에 OpenClaw와 CircleCI 연동을 고정하세요. 요금제·노드·구매·도움말(SSH)·고객 지원·기술 블로그는 로그인 없이 이용할 수 있습니다.

전용 노드
SSH
헬스 유지
지원