withHuman — A open-source human approval layer for AI Agents
withHuman — AI 에이전트용 오픈소스 사람 승인 계층
withHuman은 AI 에이전트가 도구를 실행하기 전에 호출을 가로채 규칙에 따라 자동 승인·거부하거나 담당자에게 검토를 요청하는 오픈소스 승인 계층입니다. 여러 에이전트에 공통 규칙을 적용하며, 서비스가 중단되면 도구 호출도 실패하도록 설계했습니다.
- 주제
에디터 노트
자동 규칙으로 일상적인 호출을 걸러내고 위험한 작업만 사람에게 보내는 설계는 에이전트 승인에서 생기는 업무량 문제를 직접 다룹니다. 다만 서비스가 중단되면 모든 도구 호출이 실패하므로 보안 경계로서의 엄격함은 장애 시 작업도 멈추게 합니다. 규칙 캐시는 아직 검토 단계입니다. 댓글에서 반복된 쟁점은 검토자가 무엇을 보고 승인하는가입니다. 현재 호출 인수와 에이전트 설명을 보여주지만 식별자 해석과 전체 기록 검토는 개발 중이라고 제작자가 밝혔습니다. 공개 프로토콜은 다른 구현과 통합을 허용하는 방향이지만, 실제 승인 품질은 맥락 제공과 규칙 설정에 달려 있습니다.
AI 요약
withHuman은 AI 에이전트와 도구 사이에서 도구 호출을 가로채는 승인 계층입니다. 정해진 규칙에 맞는 호출은 자동 승인하거나 거부하고, 위험도가 높은 호출은 팀의 담당자에게 검토를 요청합니다. Claude Code와 Codex용 사전 구성 훅, Python과 TypeScript SDK를 제공하며 LangGraph와 Pydantic AI 등 에이전트에도 적용할 수 있도록 Agent Approval Protocol(AAP)을 공개했습니다. 오픈소스 제품과 호스팅 버전을 함께 제공합니다.
승인 규칙과 장애 처리
제품을 만든 계기는 에이전트가 운영 환경의 문제를 조사하고 수정안을 찾더라도, 실제 운영 시스템에 수정 작업을 적용하도록 허가받기는 어렵다는 경험입니다. 팀마다 승인 권한과 에이전트에 허용할 작업이 다르고, 여러 에이전트가 각자 다른 승인 방식을 쓰는 문제도 있었습니다. withHuman은 기존 에이전트를 바꾸지 않고 도구 호출을 통제하는 공통 계층을 목표로 합니다.
withHuman이 작동하지 않으면 해당 도구 호출은 실패합니다. 제작자는 환불액이 일정 금액을 넘으면 사람의 승인을 받도록 한 규칙이 서비스 장애 때문에 우회되지 않도록 보수적으로 설계했다고 설명했습니다. 규칙을 중간 계층에 캐시해 짧은 장애를 견디는 방안은 검토 중입니다.
검토 맥락과 자동화
검토자가 호출을 판단할 때 필요한 정보를 제공하는 일은 아직 해결 중인 과제입니다. 현재는 에이전트가 전달한 설명과 도구 호출 인수를 보여주며, 전체 에이전트 기록 열람과 식별자를 사람이 알아보기 쉬운 정보로 연결하는 기능을 검토하고 있습니다. 제작자는 승인 피로를 줄이기 위해 자동 규칙을 승인 절차 앞에 두는 방안도 제시했습니다. 예를 들어 Stripe 환불액이 5달러 미만이면 자동 승인하고, 나머지만 사람이 확인하게 할 수 있습니다.
Product Hunt 반응
- @chrisbattarbee — 안녕하세요, Product Hunt 여러분. 저는 Ece와 함께 withHuman을 공동 창업한 Chris입니다. withHuman을 만들기 전에는 운영 문제를 조사하고 수정안을 찾는 AI 에이전트를 만들었습니다. 에이전트가 올바른 수정안을 찾더라도 고객에게 운영 시스템에 직접 적용하도록 허가해 달라고 요청하기는 어려웠습니다. 누구도 에이전트에게 운영자 권한을 주고 잘되기만을 바라고 싶어 하지는 않으니까요. 승인 단계를 넣었지만 팀마다 승인 권한과 허용할 작업이 달랐고, 이미 각자 다른 승인 방식을 갖춘 에이전트도 사용하고 있었습니다. withHuman은 당시 저희에게 필요했던 도구입니다. 에이전트와 도구 사이에서 호출을 가로채고, 규칙에 따라 일상적인 호출을 승인하거나 거부하며, 위험한 호출은 적절한 담당자에게 보냅니다. 에이전트를 바꿀 필요가 없고 에이전트가 승인 절차를 건너뛸 수도 없습니다. 현재 AAP 공개 사양과 Claude Code 및 Codex용 훅, Python 및 TypeScript SDK를 제공하며, 오픈소스 제품과 무료 플랜이 있는 호스팅 버전도 운영합니다. 빠른 시작 안내를 따르면 몇 분 안에 사용 중인 코딩 에이전트를 연결할 수 있습니다. 검토자에게 충분한 맥락을 제공하는 일과 MCP를 통하지 않는 호출을 통제하는 일은 계속 고민하고 있습니다. 어떤 에이전트 작업부터 사람의 승인을 받고 싶은지 의견을 듣고 싶습니다.
- @thomas_unise0 — Claude Code와 Codex용 훅이 이미 있다는 점이 눈길을 끌었습니다. 대부분의 승인 도구는 먼저 기존 설정을 다시 구성해야 하는데, 이 도구는 몇 분 안에 시험해 볼 수 있네요.
- @lev_perlman1 — 흥미롭네요. 클라우드든 자체 호스팅이든 withHuman에 연결할 수 없으면 어떻게 되나요?
- @chrisbattarbee — 좋은 질문입니다. 현재는 도구 호출이 실패합니다. 많은 경우 withHuman이 보안 경계 역할을 하기 때문입니다. 20달러가 넘는 환불은 사람에게 보내는 규칙을 설정했는데 withHuman이 중단됐다고 25달러 환불을 허용해서는 안 된다고 판단했습니다. 다만 withHuman의 안정성이 매우 중요하다는 점도 잘 알고 있습니다. 사용자가 향후 동작을 선택하도록 할 수도 있겠지만 지금은 보수적인 방식을 택했습니다. 짧은 장애에도 대응할 수 있도록 중간 계층에 규칙을 캐시하는 방안도 검토하고 있습니다.
- @david_turner12 — 프로토콜이 제품에 종속되지 않은 공개 사양이라는 점이 좋습니다. 검토자에게 맥락을 제공하는 문제처럼 아직 해결하지 못한 부분을 솔직히 말한 점도 마음에 듭니다.
- @chrisbattarbee — 감사합니다. 이 분야에서 해결책이 채택되려면 공개 사양이 필요하다고 생각합니다. 다른 이들이 통합 기능과 대체 제공자를 만들고 생태계를 키우면 좋겠습니다.
- @oleksii_sekundant — 운영 환경 문제를 수정하려던 경험이 왜 이런 도구가 필요한지 잘 설명해 줍니다. 승인 요청에는 판단에 필요한 맥락이 있어야 하는데, 그 부분을 아직 해결 중이라고 밝힌 점이 좋습니다.
- @chrisbattarbee — 감사합니다. 맥락은 흥미로운 문제입니다. 예를 들어 userId 같은 식별자만 포함한 도구 호출을 승인해 달라고 하면 판단하기 어렵습니다. 사람에게 익숙한 이름으로 보여줄 방법을 고민하고 있습니다.
- @mia_qiao — 운영 에이전트에 빠져 있던 계층처럼 보입니다. 승인 전에 검토자는 얼마나 많은 맥락을 보나요? 정보가 너무 적으면 위험하고 너무 많으면 금방 소음이 커집니다.
- @chrisbattarbee — 에이전트가 도구 호출에 맥락을 넣을 수 있고 전체 호출 인수도 보여줍니다. 식별자에 연결 정보를 넣고 에이전트 기록 전체를 검토하는 기능도 추가하려고 합니다. 승인 피로가 가장 큰 문제일 수 있습니다. 자동 규칙을 두는 승인 절차를 구상하고 있습니다. 고객 서비스 에이전트가 모든 환불을 승인받는 대신 Stripe 환불액이 5달러 미만이면 자동 승인하도록 규칙을 만들면 중요한 건만 사람이 확인하면 됩니다.
원문: Product Hunt / 번역·요약: Trawling