Show HN: OneCLI – AI 에이전트에게 시크릿을 숨기는 오픈소스 자격증명 게이트웨이
Show HN: OneCLI – OSS credential gateway that keeps secrets out of AI agents
TL;DR Highlight
에이전트가 키를 못 보게 게이트웨이가 요청에 대신 주입해 준다
Who Should Read
사내 AI 에이전트가 API 키를 직접 들고 있어 유출이 걱정되는 백엔드·플랫폼 개발자
Core Mechanics
- 에이전트는 키를 아예 못 본다
- 각 에이전트는 허용받은 접근 권한만 갖는다.
- 게이트웨이가 모든 요청마다 그 권한을 검사한다.
- Rust 게이트웨이가 요청에 키를 끼워 넣는다
- 나가는 HTTPS 요청을 MITM(중간에서 가로채기)으로 가로챈다.
- 에이전트는 Proxy-Authorization 헤더의 액세스 토큰으로 인증한다.
- 시크릿은 암호화해 두고 쓸 때만 푼다
- AES-256-GCM으로 저장하고 요청 시점에만 복호화한다.
- 호스트·경로 패턴으로 매칭해 헤더나 쿼리 파라미터로 주입한다.
- 샌드박스의 유일한 출구가 게이트웨이다
- 에이전트마다 파일시스템과 셸이 있는 격리 샌드박스를 쓴다.
- 허용한 곳 외에는 나갈 수 없다.
- v1 볼트에서 팀용 에이전트 플랫폼(v2)으로 확장했다
- 원래는 Rust로 만든 에이전트용 자격증명 볼트였다.
- 이제 직원별 에이전트, 팀 정책 한 곳 관리, 사람 승인(메일 발송·티켓 삭제 등)을 지원한다.
Community Reactions
- 정적 키에는 잘 맞지만 OAuth가 아쉽다는 의견
- 게이트웨이가 OAuth client credentials 발급까지 해 주면 좋겠다는 의견이 있었다.
- 특정 실패 시 재시도와 단락(short circuit) 지원도 제안됐다.
- 가짜 키가 유출돼도 쓸모없게 만드는 방식이라는 평가
- DB 클라이언트가 디스크를 안 만지고 서버에 요청하는 오래된 설계와 같다는 의견이 있었다.
- GitHub 전용 프록시(gh-proxy)를 만든 사람은 샌드박스에서 가짜 토큰이 새도 공격자에게 무용지물이라고 했다.
- 결국 키를 다른 키로 바꾸는 것뿐이라는 회의론
- 어떤 추상화를 써도 어딘가에서 자격증명이 LLM으로 흘러간다는 반론이 있었다.
- SSO(OAuth·SAML·OIDC)를 이미 쓴다면 그걸 쓰는 게 낫다는 의견도 있었다.
- 대안과 비교 질문이 이어졌다
- agent-vault, clawpatrol과의 비교를 묻는 댓글이 있었다.
- varlock.dev는 .env.schema로 설정하고 Infisical·1Password 등 플러그인으로 시크릿을 가져온다고 소개됐다.
How to Apply
- 에이전트 환경에서 실제 키 제거하기
- 오늘 에이전트 프로세스의 .env와 프롬프트에서 실제 API 키가 있는지 grep으로 찾아라.
- 키 대신 가짜 토큰을 넣고 프록시가 실제 값으로 바꾸는 구조를 설계하라.
- OneCLI 로컬에서 돌려 보기
- git clone 후 pnpm install, pnpm run setup을 실행하라.
- localhost:10254 대시보드에서 에이전트와 시크릿을 만들고 호스트별 주입을 확인하라.
- 위험 작업은 사람 승인 걸기
- 메일 발송, 티켓 삭제, 버킷 비우기 같은 작업을 목록으로 뽑아라.
- 게이트웨이 정책에서 해당 요청에 승인 단계를 붙여라.
- 에이전트 네트워크 출구를 하나로 막기
- 샌드박스에서 나가는 트래픽을 게이트웨이 한 곳으로만 허용하라.
- 호스트·경로별 허용 목록을 작성해 적용하라.
Try It
# 터미널에 붙여넣기: OneCLI 셀프호스트 로컬 실행 (원문 Quick Start)
git clone https://github.com/onecli/onecli.git && cd onecli
pnpm install
pnpm run setup
# 실행 후 브라우저에서 http://localhost:10254 을 열어 에이전트와 시크릿을 만든다
# 쿠버네티스라면 아래 Helm 차트를 쓴다
helm install onecli oci://ghcr.io/onecli/charts/onecliTerminology
관련 논문
같은 시뮬레이션, 다른 근거: 도구 출력을 파일로 넘기면 LLM 에이전트 정확도가 어디서 깎이나
긴 툴 출력을 파일로 넘기자 GPT-5.1은 정확도 11.3%p 하락, 정식 출력 지정하니 회복
가짜 뉴스가 진짜 폭락을: LLM 트레이딩 에이전트 대상 정보 주입 공격
가짜 헤드라인 한 줄로 LLM 트레이딩 에이전트 62%를 조종했다(프롬프트 주입은 14%)
Harness Engineering 101: LLM은 뇌, harness는 몸
에이전트는 JSON 배열을 관리하는 루프이고, 16개 챕터로 직접 만들어 본다
Harness²: 에이전트 harness를 스스로 고쳐 쓰는 재귀 최적화 프레임워크
모델은 고정하고 harness를 재귀로 고쳤더니 벤치마크 점수가 최대 11.8%p 올랐다
해고된 Savannah 경찰관, ICE 요원 남편에게 Flock 계정 공유
경찰관이 Flock 계정을 남편(ICE 요원)에게 공유했고, 감사에서 983건 검색이 드러나 해고됐다
tmux와 Claude Code: 세션, send-keys, 그리고 한계선
tmux로 Claude Code 여러 개를 돌리면 편하지만 에이전트 4개쯤에서 한계가 온다
Hybrid Reasoning Agents: 잠재 공간에서 생각하고 텍스트로 행동하는 LLM 에이전트
잠재 공간 추론과 텍스트 도구 호출을 섞었더니 성능 10.4%↑, 토큰 최대 54.7%↓