Claws Out: Securing and Building with OpenClaw

📺 원본 영상: Claws Out: Securing and Building with OpenClaw - Nick Taylor, Pomerium
🎙️ 채널: AI Engineer
📅 정리 일자: 2026-07-14
⚠️ Note: 본 리포트는 영상의 음성을 텍스트로 변환(STT)하여 정리한 것입니다. 화면에 표시된 자료(차트, 코드, 슬라이드 등)는 포함되지 않을 수 있습니다.


개요

Nick Taylor는 이 강연에서 OpenClaw의 control plane 접근을 더 안전하고 편하게 만드는 Trusted Proxy 인증 모드를 소개한다. 그는 Pomerium에서 일하는 Developer Advocate로서, identity-aware proxy를 활용해 WebSocket 토큰 입력과 디바이스 페어링 과정을 제거하면서도 보안 경계를 유지하는 방식을 설명한다.

강연의 후반부는 단순한 기능 소개를 넘어, OpenClaw를 실제 개발 워크플로에 어떻게 녹여낼 수 있는지를 보여주는 라이브 데모로 이어진다. ChatGPT, MCP(Model Context Protocol), OAuth, React, Vite 기반 UI를 연결해, 로컬 또는 개인 워크스페이스의 개발 결과물을 안전하게 외부 서비스와 연동하는 장면이 핵심이다.


토큰 인증의 불편함에서 출발한 문제의식

Nick Taylor가 처음 제기한 문제는 보안 그 자체보다도, 보안이 개발 경험과 충돌하는 지점에서 시작된다. 기존 OpenClaw 환경에서는 프록시로 보호된 상태에서도 WebSocket 연결을 위해 별도의 인증 토큰을 UI에 붙여 넣어야 했고, 디바이스 페어링도 계속 요구되었다. 그는 이러한 절차가 왜 존재하는지는 이해했지만, 이미 신뢰할 수 있는 프록시가 앞단에서 접근을 제어하고 있다면 같은 인증 흐름을 반복할 필요가 있는지 의문을 가졌다.

이 문제는 특히 identity-aware proxy를 사용하는 환경에서 더 선명해진다. identity-aware proxy는 사용자의 신원을 확인하는 identity provider, 접근 정책을 판단하는 policy engine, 실제 트래픽을 전달하는 reverse proxy가 결합된 구조다. Google Cloud Platform의 IAP(Identity-Aware Proxy)가 대표적인 예이며, Pomerium 역시 같은 문제 영역을 다루는 도구다. Nick은 이런 구조가 이미 내부 애플리케이션 접근 제어에 강력한 보안 모델을 제공하기 때문에, OpenClaw의 인증 모드도 이를 신뢰할 수 있어야 한다고 보았다.

결국 그는 OpenClaw 프로젝트에 이슈를 제안했고, Caddy를 사용하는 다른 기여자도 유사한 필요를 제기했다. 이후 프로젝트 측에서 요구 조건이 정리되었고, Nick은 Trusted Proxy 인증 모드 구현에 착수했다. 이 기능은 단순히 토큰 입력을 없애는 편의 기능이 아니라, OpenClaw가 더 현실적인 운영 환경에서 reverse proxy와 자연스럽게 결합되도록 만드는 기반 작업이었다.


Trusted Proxy 인증 모드의 핵심 구조

Trusted Proxy 모드의 설정은 gateway 주변에서 이루어진다. 기존에는 WebSocket 연결을 위해 별도 token을 다뤄야 했지만, 이 모드에서는 인증 책임의 상당 부분을 앞단 proxy로 넘긴다. 따라서 OpenClaw는 직접 사용자의 비밀번호나 세션을 처리하기보다는, 신뢰된 proxy가 전달하는 헤더와 네트워크 출처를 기준으로 요청을 판단하게 된다.

강연에서 Nick은 설정의 일부를 보여주며, mode가 TrustedProxy로 바뀌고 TrustedProxies 항목이 추가된다고 설명한다. 이 값은 control plane 접근을 게이트키핑하는 proxy의 IP 주소를 의미하며, 하나 이상의 주소가 들어갈 수 있다. 또한 TrustedProxy 섹션 안에는 user header와 required header 같은 구성이 들어가는데, Nick의 경우 user header로 JWT(JSON Web Token)를 사용했다. allowed users 같은 선택적 설정도 존재하지만, Pomerium처럼 정책 엔진이 접근 허용 여부를 이미 결정하는 구조에서는 반드시 필요하지 않을 수 있다.

TrustedProxy 설정과 TrustedProxies, user header, required header 구성을 설명하는 화면

04:17 - TrustedProxy 설정과 TrustedProxies, user header, required header 구성을 설명하는 화면

이 변화의 효과는 두 갈래로 나타난다. 첫째, WebSocket 연결을 위해 토큰을 query string에 넣는 방식에서 벗어날 수 있어 보안 태세가 개선된다. 둘째, 사용자는 매번 디바이스를 페어링하지 않아도 되므로 모바일이나 원격 환경에서 OpenClaw를 훨씬 덜 번거롭게 사용할 수 있다. Nick이 이 기능을 “보안 개선이면서 동시에 UX 개선”으로 본 이유도 여기에 있다.

Trusted Proxy 모드 적용 후 WebSocket token과 device pairing이 필요 없어지는 효과를 설명하는 화면

05:11 - Trusted Proxy 모드 적용 후 WebSocket token과 device pairing이 필요 없어지는 효과를 설명하는 화면


오픈소스 기여 과정에서 드러난 프로젝트의 성장 속도

Trusted Proxy 기능은 Nick의 첫 OpenClaw 기여였고, 그는 이 과정에서 오픈소스 프로젝트의 속도와 협업 방식을 함께 경험했다. 기능이 병합된 뒤에는 작은 버그가 발견되었는데, Anthony가 이를 보고했고 Sid가 수정했다. Nick은 자신이 로컬 환경에서 이미 페어링된 상태로 테스트했기 때문에 특정 문제를 놓쳤다고 설명한다. 이 사례는 개인 기여자의 테스트 환경이 실제 사용자 환경을 모두 포괄할 수 없다는 점을 잘 보여준다.

흥미로운 대목은 프로젝트의 성장 속도다. Nick이 처음 이슈를 열었을 때 번호는 1560번대였고, 초기 PR은 1700번대였다고 한다. 그러나 휴가를 다녀오는 사이 기존 PR은 stale 상태가 되어 닫혔고, 약 2주 뒤에는 이슈와 PR 번호가 거의 16000번대까지 올라갔다고 설명한다. 구체적인 번호는 발화 맥락상 반올림되었거나 STT에서 자릿수가 잘못 잡혔을 가능성이 있지만, 강연의 요지는 OpenClaw 프로젝트가 매우 빠르게 성장하고 있어 기여자가 지속적으로 rebase를 해야 했다는 점이다.

이 부분은 OpenClaw가 단순한 개인 실험 도구를 넘어 빠르게 움직이는 커뮤니티 프로젝트가 되었음을 시사한다. 빠른 성장에는 활발한 기능 추가와 버그 수정이라는 장점이 있지만, 동시에 외부 기여자에게는 최신 main branch와 계속 맞춰야 하는 유지 비용이 발생한다. Nick의 경험은 오픈소스 AI 개발 도구 생태계가 얼마나 빠르게 변하고 있는지를 보여주는 작은 사례다.


개인 OpenClaw 인스턴스와 모바일 개발 워크플로

Nick은 자신의 OpenClaw 인스턴스를 “McClaw”라고 부르며, 이를 몬트리올의 책상 위에서 운영하고 있다고 소개한다. 그는 처음에는 Telegram을 사용했지만, 채널 암호화 문제 때문에 Discord 중심으로 옮겼다고 설명한다. 보안 회사에서 일하는 입장에서는 메시징 플랫폼의 암호화 특성과 데이터 노출 가능성을 무시할 수 없었고, 이 판단은 이후 강연 전체의 보안 철학과도 연결된다.

그는 Trusted Proxy 모드가 병합된 뒤 OpenClaw로 무언가를 만드는 과정 자체가 재미있어졌다고 말한다. 특히 휴대폰에서 Discord를 통해 워크스페이스에 명령을 보내고, 파일을 읽거나 수정하며, 필요하면 웹 UI까지 만들어내는 흐름을 보여준다. 이 과정에서 그는 Clawspace라는 개인 도구도 만들었는데, SSH로 접속하지 않고도 workspace 파일을 읽고 편집할 수 있게 해주는 사이드 프로젝트다.

이 대목에서 강연의 주제는 “보안 기능 하나의 구현”을 넘어 “개인 소프트웨어의 시대”로 확장된다. Nick은 모든 사람이 같은 방식으로 OpenClaw를 사용할 필요는 없다고 전제하면서도, 자신에게 맞는 도구를 직접 만들 수 있다는 점을 강조한다. OpenClaw는 이 관점에서 단순한 자동화 에이전트가 아니라, 개인의 개발 환경과 습관에 맞춰 확장되는 인터페이스가 된다.


MCP 앱 데모: ChatGPT 안에서 개발 중인 UI를 호출하다

강연 후반부의 라이브 코딩 데모는 MCP(Model Context Protocol)를 중심으로 진행된다. Nick은 AI Engineer 웹사이트에 있는 speaker 데이터와 MCP 서버를 활용해, ChatGPT 안에서 호출 가능한 앱 형태의 UI를 구성한다. 그는 이 작업을 완전히 처음부터 만드는 것은 아니며, 자신이 사용하는 템플릿을 기반으로 MCP 서버와 OAuth 연결을 설정한다고 설명한다.

MCP 앱 라이브 코딩 데모를 시작하며 OAuth와 앱 등록 흐름을 보여주는 화면

08:53 - MCP 앱 라이브 코딩 데모를 시작하며 OAuth와 앱 등록 흐름을 보여주는 화면

데모의 첫 단계에서는 MCP 앱이 ChatGPT에 등록되고, echo tool과 search speakers tool이 연결된다. echo tool을 호출하면 단순한 텍스트 응답만 반환되는 것이 아니라, MCP spec에 포함된 UI 기능을 통해 ChatGPT 안에 위젯 형태의 인터페이스가 나타난다. Nick은 OpenClaw에게 echo widget의 메시지를 바꾸라고 지시하고, 이 변경이 React와 Vite 기반 개발 환경에서 hot module reloading을 통해 즉시 반영되는 모습을 보여준다.

ChatGPT 안의 MCP echo widget UI를 OpenClaw로 수정하고 Vite React 개발 환경의 실시간 반영을 설명하는 화면

10:46 - ChatGPT 안의 MCP echo widget UI를 OpenClaw로 수정하고 Vite React 개발 환경의 실시간 반영을 설명하는 화면

이 데모가 중요한 이유는 OpenClaw가 단순히 파일을 수정하는 백그라운드 도구가 아니라, 외부 서비스와 연결된 개발 피드백 루프 안에서 작동한다는 점이다. Nick은 Discord로 OpenClaw에 명령을 보내고, OpenClaw는 워크스페이스 파일을 수정하며, ChatGPT 안의 MCP 앱은 그 결과를 UI로 보여준다. 이 연결이 가능하려면 로컬 또는 개인 워크스페이스의 리소스를 안전하게 외부에서 접근할 수 있어야 하고, 바로 이 지점에서 Trusted Proxy 인증 모드가 다시 핵심 인프라로 등장한다.


안전하게 노출된 로컬 개발 환경이라는 새로운 패턴

Nick은 자신의 MCP 앱이 public URL을 갖고 있지만, 그 URL이 Pomerium을 통해 보호되고 있다고 설명한다. 즉, 외부 서비스인 ChatGPT가 MCP 서버에 접근할 수는 있지만, 접근 경로는 identity-aware proxy에 의해 게이트키핑된다. 이 구조는 로컬 개발 환경을 인터넷에 무작정 노출하는 방식과 다르며, 인증과 정책을 통과한 요청만 내부 리소스에 닿도록 만드는 방식이다.

이 접근은 web development와 AI agent workflow가 만나는 지점에서 특히 유용하다. React와 Vite의 hot module reloading은 원래 로컬 개발자가 브라우저에서 즉각적인 피드백을 얻기 위한 기술이다. Nick의 데모에서는 이 구조가 ChatGPT의 MCP UI와 결합되면서, 에이전트가 수정한 코드가 곧바로 대화형 앱 화면에 반영된다. 개발자는 터미널과 IDE 앞에 앉아 있지 않아도, 모바일 메신저와 ChatGPT UI를 오가며 기능을 만들고 확인할 수 있다.

물론 이러한 패턴은 보안 리스크를 동반한다. Nick은 사람들이 의도치 않게 리소스를 노출하거나, 이메일을 삭제하는 등 민감한 사고가 발생할 수 있음을 언급한다. 따라서 핵심은 “무엇이든 외부에 열어두는 것”이 아니라, identity-aware proxy, OAuth, 정책 기반 접근 제어를 통해 필요한 표면만 제한적으로 노출하는 것이다. Trusted Proxy 모드는 바로 이 제한된 노출을 OpenClaw의 인증 체계와 맞추는 역할을 한다.


Search Speakers 위젯과 LLM 호출 흐름

두 번째 데모에서는 AI Engineer 웹사이트의 speaker.json 데이터를 소스로 사용해 conference speaker를 검색하는 UI를 만든다. 처음에는 매우 단순한 UI가 표시되지만, Nick은 OpenClaw에게 echo widget에서 보여준 것과 유사한 형태로 search speakers UI를 개선하라고 지시한다.

AI Engineer speaker.json 데이터를 활용해 speaker 검색 UI를 구성하도록 OpenClaw에 지시하는 화면

12:37 - AI Engineer speaker.json 데이터를 활용해 speaker 검색 UI를 구성하도록 OpenClaw에 지시하는 화면

시간이 조금 지난 뒤 위젯은 필터링 가능한 인터페이스로 바뀌고, 사용자는 발표자를 검색한 뒤 세부 정보를 확인할 수 있게 된다.

검색 UI에서 발표자를 필터링하고 세부 정보를 확인하는 화면

14:07 - 검색 UI에서 발표자를 필터링하고 세부 정보를 확인하는 화면

이후 그는 “more” 버튼을 추가한다. 이 버튼은 MCP 앱의 sendMessage 기능을 사용해 클릭 시 LLM에 추가 메시지를 보내고, 특정 발표자의 세션을 왜 확인해야 하는지 요약하게 만든다. 사용자가 버튼을 누르면 ChatGPT 쪽에서 새로운 추론 흐름이 시작되고, 해당 발표와 발표자에 대한 설명이 생성된다. 이 장면은 MCP 앱이 단순한 데이터 조회 UI를 넘어, 사용자 인터랙션을 다시 LLM 호출로 연결하는 양방향 인터페이스가 될 수 있음을 보여준다.

more 버튼을 추가한 뒤 sendMessage 기능으로 ChatGPT가 발표 정보를 요약하는 화면

14:49 - more 버튼을 추가한 뒤 sendMessage 기능으로 ChatGPT가 발표 정보를 요약하는 화면

이 패턴은 앞으로의 AI 앱 개발에서 중요한 의미를 갖는다. 전통적인 웹 앱은 사용자가 버튼을 누르면 서버 API가 호출되고 정해진 응답을 반환했다. 반면 MCP 기반 앱에서는 버튼 클릭이 LLM과 도구 호출을 다시 연결하며, UI와 대화형 추론이 하나의 루프 안에서 움직인다. Nick의 데모는 이 모델을 거창한 제품 설명이 아니라 실제 개발 워크플로 속에서 보여준다는 점에서 설득력이 있다.


OpenClaw가 보여주는 개인 소프트웨어의 방향

강연의 마지막 메시지는 기술 구현보다 사용 방식에 가깝다. Nick은 몇 년 전만 해도 휴대폰으로 개발하는 것이 왜 필요한지 이해하지 못했지만, 지금은 OpenClaw와 같은 도구 덕분에 모바일 기반 개발 흐름에 익숙해졌다고 말한다. 이는 전통적인 “개발자는 로컬 머신 앞에서 IDE와 터미널을 사용한다”는 전제를 흔든다.

그렇다고 해서 이 흐름이 모든 개발 작업을 대체한다는 의미는 아니다. Nick도 Claude, Codex 같은 다른 도구를 함께 사용한다고 언급하며, OpenClaw는 그중 하나의 워크플로로 자리 잡는다. 중요한 점은 사용자가 자신의 맥락에 맞게 도구를 조합하고, 필요하면 Clawspace 같은 개인 도구를 직접 만들어 사용할 수 있다는 것이다. 이때 AI 에이전트는 범용 자동화 도구라기보다, 개인의 작업 환경을 확장하는 programmable interface에 가까워진다.

이 강연에서 Trusted Proxy 모드는 그 기반을 제공하는 보안 장치로 읽힌다. 개인 개발 환경이 외부 서비스, 모바일 메신저, LLM 앱과 연결될수록 접근 제어는 더 중요해진다. Nick의 주장은 단순하다. 재미있게 만들되, 반드시 보안을 고려해야 한다는 것이다. OpenClaw의 매력은 바로 이 두 가지, 즉 실험의 자유와 접근 제어의 현실성을 동시에 다룰 수 있다는 데 있다.


마무리 / 핵심 정리

Nick Taylor의 강연은 OpenClaw에 추가된 Trusted Proxy 인증 모드를 중심으로, 현대적인 AI 개발 환경에서 보안과 사용성이 어떻게 함께 설계될 수 있는지를 보여준다. 기존의 token auth와 device pairing은 local-first 환경에서는 타당한 기본값일 수 있지만, identity-aware proxy가 앞단에서 접근을 통제하는 구조에서는 중복된 friction으로 작동할 수 있다. Trusted Proxy 모드는 이 중복을 줄이면서도, proxy가 전달하는 사용자 헤더와 신뢰된 IP 범위를 통해 접근 통제의 책임 경계를 명확히 한다.

더 흥미로운 부분은 이 기능이 실제 개발 워크플로를 바꾸는 방식이다. Nick은 Discord, OpenClaw, Pomerium, MCP, ChatGPT, React, Vite를 연결해, 휴대폰에서 지시한 변경이 ChatGPT 안의 UI에 실시간으로 반영되는 환경을 시연했다. 이는 AI 에이전트가 단순히 코드를 생성하는 단계를 넘어, 개인 워크스페이스와 외부 앱 사이에서 살아 있는 개발 루프를 구성할 수 있음을 보여준다.

다만 이 흐름은 보안 설계를 전제로 할 때만 지속 가능하다. 로컬 리소스를 외부에서 접근 가능하게 만드는 순간, 인증·인가·정책·감사 가능성은 선택 사항이 아니라 필수 조건이 된다. 이 강연의 핵심 takeaway는 OpenClaw로 무엇이든 만들 수 있다는 낙관이 아니라, 안전하게 열어둔 경계 안에서 개인 소프트웨어를 더 자유롭게 만들 수 있다는 현실적인 제안이다.


📚 출처 및 참고

구분내용
원본 영상Claws Out: Securing and Building with OpenClaw - Nick Taylor, Pomerium
채널AI Engineer
리포트 작성2026-07-14
작성 방식YouTube 영상 STT 변환 후 에디팅

💬 본 리포트는 영상 내용을 바탕으로 재구성되었습니다. 정확한 내용은 원본 영상을 참조해 주세요.