대상: builds.sr.ht 웹훅으로 MacPull 원격 Mac에서 의존성을 미리 받고 lockfile·OpenClaw 헬스를 CI로 돌리려는 팀. 핵심: curl·npm 설치, Node 24, gateway status+doctor 연쇄 검증, 동시성·Git·디스크 매트릭스. 연관: 웹훅 예시, status 게이트, 고객 지원.

웹훅

HMAC 검증 후 러너로 전달.

프리페치

npm·pnpm 캐시를 NVMe에 붙임.

회송

jq 요약을 태스크에 실음.

웹훅만 붙였을 때 터지는 세 가지 함정

  1. 콜드 캐시: 곧바로 본빌드만 돌리면 RTT에 걸려 타임아웃이 먼저 터집니다.
  2. 락 표류: 프리페치가 package-lock.json을 바꾸면 재현성이 깨집니다.
  3. 착시: gateway status만으로는 HTTP 리스너 장애를 못 잡으니 doctor를 같이 실으세요.

Node 24·설치기·격리 변수 표

잡마다 OPENCLAW_HOME을 나누고 로그 맨 앞에 node -v·which openclaw를 남깁니다.

항목역할메모
NODE_MAJOR=24최소 런타임미만이면 doctor 경고.
curl 설치공식 원라이너아래 블록.
npm -g openclaw@^2026.5.0핀launchd PATH와 동일.
연쇄 검증한 번에 판정doctor 후 gateway status --json을 jq로 합침.
curl -fsSL https://openclaw.ai/install.sh | bash
npm install -g openclaw@^2026.5.0
node -v
openclaw doctor
openclaw gateway status --json | jq -c '{ok:.healthy,ver:.version}'

sr.ht 동시성·Git·디스크 매트릭스

한 행만 문서에 고정하세요.

런북이미지 동시성Git 재시도디스크
경량 JS동시 둘이·사·팔초 백오프 세 번루트 여유 십오 기가 미만이면 중단
모노레포동시 하나깊은 클론 실패 시 얕은 클론 한 번팔십 퍼센트 이상 알림
게이트웨이 스모크웹훅과 큐 분리fetch만 재시도임계 이하면 doctor 생략 후 정리
for i in 1 2 3; do git fetch --prune origin "$REF" && break || sleep $((i*i)); done

디스크는 df로 루트 볼륨을 보고 사용률이 팔십 퍼센트를 넘기면 프리페치 대신 정리 단계로 넘어가게 하세요.

builds.sr.ht에서 CI까지 여섯 단계 체크리스트

  1. 웹훅: 시크릿으로 HMAC 검증 후 커밋 SHA를 환경 변수로 넘깁니다.
  2. 프리페치: npm ci --dry-run 또는 pnpm fetch로 캐시를 데웁니다.
  3. lockfile: git diff --exit-code package-lock.json pnpm-lock.yaml로 표류를 잡습니다.
  4. 연쇄: openclaw doctor 후 openclaw gateway status --json | jq -c '{ok:.healthy}'.
  5. 병합: stderr 상단·lockfile·JSON을 한 파일로 printf 합칩니다.
  6. 회송: hut API나 태스크 노트에 curl로 붙이고 HTTP 이백번대를 확인합니다.

요약 블록에 실을 관측값과 18789 주의

127.0.0.1:18789를 쓰면 웹훅 워커와 스모크 잡이 포트를 가로채지 않게 큐를 나누세요.

요약에는 짧은 SHA·lockfile 통과·doctor 경고 수·healthy를 넣으면 온콜이 바로 읽습니다.

인용 가능한 숫자와 정책

  • Node 24 미만은 게이트에서 즉시 실패.
  • Git fetch 백오프 최대 세 번.
  • 디스크 팔십 퍼센트 이상이면 프리페치 생략 후 정리.

자주 묻는 질문

질문답
웹훅 토큰 위치환경·Keychain만, echo 금지.
TLS 종료공인은 프록시, Mac은 루프백·mTLS.
18789 충돌lsof 후 launchd 라벨·OPENCLAW_HOME 분리.
curl vs npm한 파이프라인은 한 경로, which 첨부.

공개 페이지로 이어지는 다음 행동

프리페치·lockfile·헬스를 한 블록에 묶으면 태스크가 준비 상태를 봅니다.

홈· 블로그· 요금· 고객 지원· 도움말은 로그인 없이 열립니다.

웹훅·프리페치 전용 원격 Mac 노드

Apple Silicon에서 builds.sr.ht 이벤트를 받아 의존성을 데우고 OpenClaw 게이트웨이 검증까지 같은 호스트에서 끝내세요.