거버넌스하기 가장 어려운 에이전트는 개발자가 개인 또는 회사 구독으로 로그인한 것입니다: Pro/Max로 로그인한 Claude Code, 또는 ChatGPT로 로그인한 Codex. 노트북에서 실행되고, OAuth 자격 증명으로 인증하며, 추론 경로 상의 클라우드 공급자 guardrail이 절대 보지 못하는 정확히 그 표면입니다 (gateway 비교 참조). 유혹적인 “해결책” — 구독을 보유하고 트래픽을 라우팅하는 서비스를 앞에 배치하는 것 — 은 Olivares AI가 만들지 않을 것입니다. 모델 공급자가 이를 금지하고 있으며, 이는 우리의 컨트롤 플레인을 자격 증명 침해의 단일 장애점으로 만들 것이기 때문입니다.
이 페이지는 구독을 중개하지 않고 이러한 에이전트를 거버넌스하는 방법에 대한 솔직한 설명입니다: 무엇을 관찰하는지, 어디서 정책을 적용하는지, 그리고 gateway가 적절한 유일하고 좁은 경로(그리고 그것은 절대 구독의 것이 아닙니다).
레드라인: 구독을 절대 라우팅하지 않습니다. Olivares AI는 서드파티 구독 자격 증명을 보유, 프록시, 라우팅하지 않습니다. Anthropic의 자체 정책은 다음과 같이 명시합니다: “Anthropic does not permit third-party developers to offer Claude.ai login or to route requests through Free, Pro, or Max plan credentials on behalf of their users” (Claude Code legal & compliance, 2026-06-21 조회 — 금지 조항은 세 가지 소비자 플랜 Free, Pro, Max를 명시합니다). OpenAI의 약관도 소비자 ChatGPT/Codex 로그인에 동일하게 적용됩니다. 우리의 입장은 해당 기준보다 더 엄격합니다: 어떤 플랜의 구독 OAuth도 라우팅하지 않습니다. 거버넌스는 에이전트 주위에서 이루어지며, 자격 증명 내부에서 이루어지지 않습니다.
구독 중개가 배제된 이유
규칙에 대해 정확히 할 필요가 있습니다. 구매자의 법률 자문이 이를 확인할 것이기 때문입니다. Anthropic의 정책은 혼동해서는 안 되는 두 가지 목록을 제시합니다:
- OAuth를 사용할 수 있는 주체 — 5가지 플랜: “OAuth authentication is intended exclusively for purchasers of Claude Free, Pro, Max, Team, and Enterprise subscription plans and is designed to support ordinary use of Claude Code and other native Anthropic applications.”
- 서드파티가 해서는 안 되는 것 — 사용자를 대신하여 라우팅: “Anthropic does not permit third-party developers to offer Claude.ai login or to route requests through Free, Pro, or Max plan credentials on behalf of their users.”
금지 조항은 소비자 플랜(Free, Pro, Max)을 명시적으로 열거합니다. 반대로 해당 페이지는 누구에게도 Team이나 Enterprise 시트를 라우팅할 권한을 부여하지 않습니다 — 이에 대해 침묵하고 있으며, 우리는 침묵을 허가로 해석하지 않습니다. 도구를 개발하는 개발자에게 Anthropic의 자체 가이드는 구독 OAuth에서 완전히 벗어나도록 안내합니다: “Developers building products or services that interact with Claude’s capabilities, including those using the Agent SDK, should use API key authentication through Claude Console or a supported cloud provider.” (source; 플랜별 약관 구분: Team/Enterprise/API는 Commercial Terms, Free/Pro/Max는 Consumer Terms.)
우리의 Codex 커넥터는 설계상 코드에 동일한 규율을 인코딩합니다: 자동화 자격
증명은 OpenAI API key 또는 workspace access token이며, 절대 개인 ChatGPT
구독이 아닙니다 — “proxying it for third-party/programmatic use violates OpenAI’s
terms exactly as a consumer Claude subscription does for Anthropic. There is no
subscription config field by design” (connectors/codex/codex.go). 따라서
레드라인은 사후에 부착된 마케팅 약속이 아닙니다; 제품의 형태 그 자체입니다.
세 가지 메커니즘, 어느 것도 구독이 아닙니다
구독 인증 에이전트를 세 가지 독립적인 채널로 거버넌스합니다. 처음 두 가지는 추론에 전혀 관여하지 않으며; 세 번째는 API key로 인증하는 트래픽에만 관여하고, 구독에는 절대 관여하지 않습니다.
1. 관찰 — 텔레메트리, 사용량, 포스처
Claude Code는 OpenTelemetry를 내보내며, 관리자는 관리 티어에서 전체 플릿에 대해 이를 활성화할 수 있습니다: “Administrators can configure OpenTelemetry settings for all users through the managed settings file” (Claude Code monitoring). 이 gen-ai 신호 — 세션, 토큰, 비용, 도구 활동 — 를 수집하여 접근 맵과 포스처 발견 사항으로 변환합니다. 중요한 것은 이것이 Claude Code 측에서도 구조적으로 최소 데이터라는 것입니다: 프롬프트 콘텐츠는 *“redacted by default”*이며 도구 세부사항, 도구 콘텐츠, 원시 API 본문은 각각 *“(default: disabled)“*입니다 (동일 출처). 사용량과 메타데이터를 소비하지, 대화를 소비하지 않습니다.
Codex의 경우, 동일한 관찰 채널은 커넥터가 Analytics 및 Compliance/Audit API를
수집하는 것입니다 — 사용량, 채택, 불변 감사 기록이 비용 샘플과 변조 방지 증거로
변환되며, *“never prompt/diff content or key values”*를 전달합니다
(connectors/codex/codex.go).
2. Managed settings + hooks — 인프로세스 PEP
관찰은 enforcement가 아닙니다. Claude Code의 enforcement 채널은 OS 정책 티어의
managed settings 파일이며, 모든 도구가 실행되기 전에 Olivares 결정 지점에
콜백하는 재정의 불가능한 PreToolUse hook을 포함합니다. Anthropic은 우리가
의존하는 속성을 문서화합니다: “Environment variables defined in the managed
settings file have high precedence and cannot be overridden by users”, 그리고
managed settings는 “can be distributed via MDM”
(monitoring).
Olivares는 allowManagedHooksOnly로 해당 파일을 생성하여
(olivares agent managed-settings) 개발자 자신의 hook이 거버넌스 대상 hook보다
먼저 실행되거나 이를 약화시킬 수 없도록 하며, 세션별 엔드포인트와 bearer는
정적 파일에 기록되지 않고 시작 시 주입됩니다. 결정 자체는 모든 엣지에서
deny-closed입니다: tool-call은 확정 신원이 해석되고, 정책 disposition이
deny가 아니며, 라이브 정책 엔진이 금지하지 않고, — ask의 경우 — 인간
승인이 정확한 계획 해시에 바인딩될 때만 허용됩니다. 긴급 중지
(kill switch)는 활성 break-glass 부여를 포함한
모든 것보다 우선합니다.
이것이 Claude Code hooks PEP 페이지가 운영적으로 문서화하는 메커니즘이며, 로컬 개발 에이전트를 단순히 관찰하는 것이 아니라 거버넌스할 수 있게 하는 것입니다.
3. API key를 위한 gateway — OAuth를 위해서는 절대 아닙니다
Olivares가 추론 요청 경로에 위치하는 정확히 하나의 경로가 있으며, 이는 Claude
Code의 managed-settings 채널을 사용하지 않는 호출자에게만 존재합니다:
API key(또는 Bedrock/Vertex 동등물)로 인증된 원시 SDK 또는 curl 트래픽.
Claude Code는 ANTHROPIC_BASE_URL로 이러한 요청을 라우팅합니다 — “To route
requests through a custom API endpoint, set the ANTHROPIC_BASE_URL environment
variable instead” — 그리고 ANTHROPIC_AUTH_TOKEN을 통해 bearer로 gateway를
인증합니다, “when routing through an LLM gateway or proxy that authenticates with
bearer tokens rather than Anthropic API keys”
(Claude Code IAM). Olivares 인라인 추론
프록시를 가리키면, 해당 트래픽은 거버넌스 파이프라인 — 거주지, 모델 접근,
컨텍스트 윈도우, DLP, 예산, 녹화 — 을 거쳐 전달됩니다.
경계는 절대적입니다: 이 경로는 API key / bearer 트래픽을 전달하며, 구독의 OAuth
자격 증명은 절대 전달하지 않습니다. Managed settings가 도달할 수 없는
SDK/curl 호출자를 위한 enforcement 심이며, 그 이상은 아닙니다.
솔직함의 상자: verified-deployed, 우회 불가능이 아닙니다
배포되었음을 증명할 수 있는 enforcement이지, 우회할 수 없는 enforcement가 아닙니다. Managed settings + hook PEP는 deny-closed이며 설정을 통해 사용자가 재정의할 수 없습니다 — 그러나 마법이 아닙니다.
ANTHROPIC_BASE_URL을 자체 엔드포인트로 가리키는 개발자는 추론을 완전히 다른 곳으로 보냅니다; 우리 자체 엔지니어링 노트가 이를 명확히 밝힙니다: “a customANTHROPIC_BASE_URLbypasses server-managed-settings entirely” (modules/inferenceproxy/doc.go). 따라서 PEP가 우회 불가능하다고 절대 주장하지 않습니다. 대신 지지할 수 있는 두 가지를 주장합니다:
- Verified-deployed입니다. Olivares는 managed settings와 PEP hook이 실제로 호스트에 존재함을 인증합니다 — 프로비저닝되지 않은 호스트는 거버넌스 없이 관찰만 되며, 이는 숨겨지지 않고 가시적입니다.
- 우회 자체가 발견 사항입니다. 호스트에서 비기본
ANTHROPIC_BASE_URL은 포스처 발견 사항으로 표면화되며, 승인된 Olivares gateway에서 벗어나는 base URL을 고정하는 관리 환경은 드리프트 발견 사항을 발생시킵니다 (connectors/claude-config,connectors/managedsettings). 우회가 조용히 넘어가지 않습니다; 점등됩니다.“Verified-deployed, evasion-as-finding”은 개발자가 통제하는 머신에서 실행되는 모든 에이전트에 대한 솔직한 enforcement 이야기입니다. “우회 불가능”을 판매하지 않겠습니다.
Codex 비대칭성, 솔직하게 밝힙니다
Claude Code와 Codex는 대칭적이지 않으며, 이 차이는 중요합니다. ChatGPT로
인증된 Codex에는 ANTHROPIC_BASE_URL의 문서화된 동등물이 없습니다 — OpenAI의
managed-configuration 페이지는
커스텀 base URL이나 gateway를 통해 추론을 라우팅하는 설정이나 환경 변수를
문서화하지 않습니다(fetch로 확인, 2026-06-21; 해당 페이지의 부재이지, 다른 곳에
없다는 증거는 아닙니다). 따라서 추론을 가로채서 Codex를 거버넌스하지 않습니다.
대신 OpenAI가 관리자에게 실제로 적용 가능한 제어를 제공하는 곳에서
거버넌스합니다. Codex managed configuration은 기업이 *“Requirements:
admin-enforced constraints that users can’t override”*를 설정하여
*“constrain security-sensitive settings (approval policy, approvers reviewer,
automatic review policy, sandbox mode, permission profiles, web search mode,
managed hooks, and optionally which MCP servers users can enable)“*할 수
있도록 합니다(동일 출처). Olivares는 이러한 요구사항을 작성하고 인증합니다
(connectors/codex-managed-config) — approval policy, sandbox mode, MCP
allowlist, 마스킹된 텔레메트리(log_user_prompt = false) — 그리고 Codex의
Analytics 및 Compliance 증거를 수집합니다. 구성과 증거를 통한 거버넌스이지,
모델 호출에 대한 man-in-the-middle이 아닙니다.
한눈에 보는 테이블
| 채널 | 하는 일 | 추론에 관여하는가? | 자격 증명 |
|---|---|---|---|
| 관찰 | 사용량, 비용, 도구 활동 → 접근 맵 + 포스처; Codex Analytics/Compliance → 원장 | 아니오 | 없음 — 텔레메트리만, 콘텐츠는 기본적으로 마스킹 |
| Managed settings + hooks | Claude Code에서 deny-closed PreToolUse PEP, 설정으로 재정의 불가 | 아니오 | 에이전트 자체의 것; 우리는 절대 보지 않음 |
| Gateway (API key 전용) | ANTHROPIC_BASE_URL을 통한 원시 SDK/curl 호출자용 거버넌스 파이프라인 | 예 | API key / bearer — 구독 OAuth 절대 아님 |
| Codex managed-config | 관리자가 적용하는 요구사항(approval/sandbox/MCP) + 증거 수집 | 아니오 | 조직의 것; 구성이지, 가로채기가 아님 |
관련 문서
- Olivares와 귀사의 gateway / Guardrails 비교 — 이 중 어느 것도 귀사의 AI gateway와 경쟁하지 않는 이유.
- Olivares AI vs WitnessAI — IDE에서의 에이전트 거버넌스에 대한 직접 비교.