Responses API Shell Tool, Code Interpreter와 뭐가 다를까요?

Published on

in

Responses API Shell Tool, Code Interpreter와 뭐가 다를까요?

2026.03.27 기준
gpt-5.4 기준
Responses API v2026.03

Responses API Shell Tool,
Code Interpreter와 뭐가 다를까요?

OpenAI가 2026년 3월 23일 조용히 추가한 Shell Tool. 기존 Code Interpreter의 업그레이드처럼 보이지만, 실제로는 완전히 다른 실행 환경입니다. 쓰기 전에 이 차이를 알면 설계가 달라집니다.

6개
지원 언어 런타임
~10배
컨테이너 스핀업 속도 개선
20분
비활성 후 컨테이너 만료

Shell Tool가 생기기 전, Code Interpreter로 뭘 못했나

결론부터 말씀드리면, Code Interpreter는 Python만 실행되는 샌드박스입니다. Responses API 공식 문서에는 이렇게 나옵니다. “Compared to our existing code interpreter, which only executes Python, the shell tool enables a much wider range of use cases, like running Go or Java programs or starting a NodeJS server.” (출처: OpenAI 공식 블로그 Equipping the Responses API with a computer environment, 2026.03.11)

Python 외의 언어를 써야 하거나, 서비스를 띄워야 하거나, grep·curl·awk 같은 Unix 유틸리티를 직접 돌려야 할 때 Code Interpreter는 막혔습니다. 개발자들이 별도의 실행 환경을 직접 구축하거나, 로컬 서버를 두고 LangGraph 같은 오케스트레이션 레이어를 쌓아야 했습니다. 그게 만만한 작업이 아니었습니다.

Shell Tool은 그 빈자리를 채우기 위해 나왔습니다. 터미널 하나면 되는 일을, 이제 Responses API 안에서 그대로 할 수 있습니다.

항목 Code Interpreter Shell Tool
실행 언어 Python 전용 Python 3.11 / Node.js 22.16 / Java 17 / PHP 8.2 / Ruby 3.1 / Go 1.23
서비스 기동 불가 가능 (Node.js 서버 등)
네트워크 접근 기본 차단 Org 허용 목록 기반 제어 가능
API 가용 위치 Responses API Responses API 전용 (Chat Completions API 불가)
ZDR(제로 데이터 보존) 환경 사용 가능 Hosted Shell 사용 불가 → 로컬 셸만 가능

(출처: OpenAI Developers 공식 문서 developers.openai.com/api/docs/guides/tools-shell/)

표에서 마지막 행이 핵심입니다. ZDR 정책을 쓰는 조직은 Hosted Shell을 쓸 수 없습니다. 이 부분은 아래 섹션에서 더 자세히 다룹니다.

▲ 목차로 돌아가기

Shell Tool이 실제로 달라진 것들

Shell Tool은 Debian 12 기반 컨테이너 안에서 실행됩니다. 작업 디렉터리는 /mnt/data로 고정되어 있고, 모델이 직접 명령어를 제안하면 Responses API가 컨테이너 런타임으로 전달해 실행합니다. 모델은 명령어를 “실행”하는 게 아니라 “제안”하고, 실제 실행과 결과 피드백은 플랫폼이 담당합니다. (출처: OpenAI 공식 블로그, 2026.03.11)

여기서 놓치기 쉬운 포인트가 있습니다. 모델은 동시에 여러 셸 명령을 제안할 수 있고, Responses API는 이를 병렬로 실행합니다. 파일 검색, 외부 API 호출, 중간 결과 검증을 순차가 아닌 동시에 처리할 수 있다는 뜻입니다. 에이전트 루프의 전체 실행 시간이 단축됩니다.

💡 공식 발표문과 실제 사용 흐름을 같이 놓고 보니 이런 차이가 보였습니다.
Shell Tool은 단순히 Python 이외의 언어를 지원하는 게 주목적이 아닙니다. 에이전트가 작업 도중 데이터를 파일로 저장하고, 다음 단계에서 그 파일을 그대로 참조할 수 있는 상태 유지 실행 환경을 만든 겁니다. Code Interpreter가 “실행기”라면, Shell Tool은 “작업 공간”에 더 가깝습니다.

또 하나는 출력 길이 제어입니다. 대용량 파일을 처리할 때 터미널 로그가 컨텍스트를 가득 채우는 문제를 막기 위해, 모델이 명령어마다 출력 상한선을 지정할 수 있습니다. 상한을 넘으면 앞뒤를 보존하고 중간을 생략하는 방식으로 처리됩니다. 컨텍스트 예산을 효율적으로 씁니다.

서버 사이드 컴팩션(Server-side Compaction)도 같이 배포됐습니다. e커머스 플랫폼 Triple Whale의 에이전트 Moby는 500만 토큰, 150회 도구 호출 세션을 정확도 손실 없이 완주했습니다. (출처: Triple Whale 공식 X 게시물 via VentureBeat, 2026.02.10) 장시간 실행 에이전트가 컨텍스트 고갈로 중단되는 문제가 사실상 해소됩니다.

▲ 목차로 돌아가기

컨테이너 풀링, 왜 지금 이게 중요한가

2026년 3월 22일, OpenAI Developers 공식 계정이 조용히 한 줄을 남겼습니다. “You can spin up containers for skills, shell and code interpreter about 10x faster.” (출처: OpenAI Developers 공식 X, 2026.03.22) 컨테이너 풀링을 Responses API에 추가했다는 내용입니다. 10배 빠른 스핀업이 실제로 무슨 의미인지는 수치를 직접 놓고 봐야 와닿습니다.

기존에는 에이전트가 셸 명령을 실행할 때마다 새 컨테이너를 띄웠습니다. 이 “콜드 스타트” 시간이 각 단계마다 수 초씩 붙었고, 10단계짜리 멀티스텝 에이전트라면 대기 시간만 수십 초가 쌓였습니다. 풀링은 미리 워밍업된 컨테이너를 대기시켜두고, 요청이 들어오면 즉시 할당합니다. 스핀업 시간이 초 단위에서 밀리초 단위로 줄어듭니다.

💡 비용 절감이 목적이 아니라, 에이전트 루프의 병목 제거가 목적입니다.
멀티스텝 에이전트에서 각 도구 호출 사이의 대기 시간은 단순한 불편이 아닙니다. 세션 시간이 길어질수록 컨텍스트가 늘어나고, 컨텍스트가 클수록 토큰 비용이 올라갑니다. 풀링으로 각 단계가 빨라지면 전체 세션 길이가 짧아지고, 간접적으로 토큰 비용도 줄어드는 구조입니다.

단, 트레이드오프가 있습니다. 풀링은 유휴 컨테이너를 메모리에 유지하는 방식이라 인프라 자원 소모가 늘어납니다. OpenAI가 이 비용을 어떻게 반영할지는 아직 공개되지 않았습니다. 현재 컨테이너 요금 구조는 3월 31일부터 변경될 예정이며, 이 부분은 섹션 6에서 다룹니다.

▲ 목차로 돌아가기

쓰기 전 반드시 봐야 할 제약들

Shell Tool 도입을 고민 중이라면, 막상 써보고 나서 당황하지 않도록 제약 조건을 먼저 짚어두는 게 좋습니다.

ZDR 조직은 Hosted Shell을 쓸 수 없습니다

공식 문서에 명시적으로 적혀 있습니다. “If your org or project enables Zero Data Retention (ZDR), OpenAI-hosted containers aren’t available, so hosted shell can’t run in ZDR mode.” (출처: OpenAI Developers 공식 문서, 2026.03 기준) 보안을 강화하기 위해 ZDR을 켜둔 조직이라면, Hosted Shell 대신 로컬 셸 모드를 써야 합니다. 로컬 셸은 자체 인프라에서 직접 실행 환경을 관리해야 하므로 구축 비용이 따릅니다.

Chat Completions API에서는 호출 자체가 안 됩니다

Shell Tool은 Responses API에서만 동작합니다. 기존에 Chat Completions API로 에이전트를 구축한 경우, Shell Tool을 쓰려면 Responses API로 마이그레이션이 선행되어야 합니다. OpenAI는 Assistants API를 2026년 8월 26일 공식 종료 예정이며, Responses API로의 전환을 권고하고 있습니다. (출처: Microsoft Foundry Azure OpenAI 공식 문서)

컨테이너는 비활성 20분 후 만료됩니다

호스티드 컨테이너는 마지막 활동 후 20분이 지나면 자동 만료되고 데이터가 삭제됩니다. 만료된 컨테이너는 재활성화할 수 없습니다. /mnt/data에 저장한 파일은 컨테이너가 살아있는 동안만 접근 가능하므로, 필요한 산출물은 세션 내에 외부로 내보내야 합니다.

네트워크는 기본적으로 차단됩니다

호스티드 컨테이너는 아웃바운드 네트워크가 기본 차단 상태입니다. 외부 API를 호출하거나 패키지를 설치하려면 조직 관리자가 대시보드에서 도메인 허용 목록을 설정해야 하고, API 요청 시에도 network_policy를 명시적으로 지정해야 합니다. 허용 도메인을 넓게 열수록 프롬프트 인젝션을 통한 데이터 유출 위험이 높아집니다. 공식 문서는 “신뢰하는 도메인만 허용하라”고 명시합니다.

▲ 목차로 돌아가기

OpenAI Skills vs Anthropic Skills — 같아 보이지만 다릅니다

Shell Tool 업데이트와 함께 나온 또 하나의 변화가 Agent Skills입니다. OpenAI와 Anthropic(Claude Code) 모두 SKILL.md 기반의 동일한 오픈 스탠다드(agentskills.io)를 채택했습니다. 이 부분이 기존 블로그들이 잘 다루지 않은 지점입니다.

💡 같은 스탠다드를 쓰지만, 두 회사가 스킬을 대하는 철학이 다릅니다.
OpenAI는 스킬을 “입력·출력이 정의된 함수”처럼 씁니다. Anthropic은 스킬을 “에이전트에게 문제 접근법을 가르치는 교재”처럼 씁니다. 같은 SKILL.md를 써도 두 시스템에서 행동 방식이 다를 수 있습니다. (출처: VentureBeat, 2026.02.10 / LoreAI Newsletter, 2026.03.22)

중요한 실용적 포인트는, 스탠다드가 통일됐기 때문에 스킬이 벤더 종속 자산이 아니게 됐다는 점입니다. Glean은 OpenAI Skills 프레임워크 도입 후 도구 정확도가 73%에서 85%로 올랐다고 밝혔습니다. (출처: Glean 공식 X 게시물 via VentureBeat, 2026.02.10) 정확도 12%p 향상은, 동일한 워크플로에서 실패하는 도구 호출의 수가 줄어든다는 의미입니다.

그러나 스킬이 이식 가능하다는 건 어디까지나 표준 준수 플랫폼 간의 이야기입니다. OpenAI가 Responses API의 호스티드 컨테이너 안에서 스킬을 실행할 때는 컨테이너 네트워크 정책, ZDR 제약, 컨테이너 수명 주기 등 OpenAI 고유의 제약이 그대로 붙습니다. 포터블한 스킬과 플랫폼 고유의 실행 환경은 별개의 레이어입니다.

솔직히 말하면, 지금 시점에서 스킬 생태계는 초기 단계입니다. agentskills.io 커뮤니티 기반 확장 허브에 3,000개 이상의 스킬이 올라와 있다고는 하지만, 엔터프라이즈 환경에서 바로 가져다 쓸 수 있는 수준의 검증은 아직 부족합니다. 직접 만들어 쓰는 방향이 현실적입니다.

▲ 목차로 돌아가기

요금 구조, 3월 31일부터 달라집니다

OpenAI API 공식 가격 페이지에 작은 글씨로 중요한 내용이 있습니다. (출처: openai.com/api/pricing/, 2026.03.27 기준)

⚠️ 컨테이너 요금 변경 예정 (2026.03.31)

현재: 1GB당 $0.03 / 컨테이너 기준 과금
변경: 1GB당 $0.03 / 20분 세션 × 컨테이너 기준 과금
64GB 컨테이너 기준 세션당 $1.92

지금은 컨테이너당 스토리지 요금이지만, 3월 31일부터는 세션 단위로 바뀝니다. 같은 1GB 컨테이너를 하루에 10번 스핀업하면, 현재보다 10배 요금이 붙는 구조입니다. 멀티스텝 에이전트를 고빈도로 실행하는 파이프라인이라면 요금 설계를 다시 해야 합니다.

모델 요금 기준도 확인해두겠습니다. 현재 gpt-5.4 기준 입력 토큰은 1M당 $2.50, 출력은 1M당 $15.00입니다. 캐시된 입력은 1M당 $0.25로 90% 할인됩니다. 2026년 3월 5일 이후 출시된 모델의 데이터 레지던시·지역 처리 엔드포인트는 전 모델에 10% 추가 요금이 붙습니다. (출처: OpenAI API 공식 가격 페이지)

에이전트 작업이 많을수록 캐시 입력 활용이 실제 요금에 큰 차이를 만듭니다. 동일한 시스템 프롬프트를 반복 사용하는 구조라면, 캐시 히트율을 높이는 것이 Shell Tool 도입 시 비용 관리의 핵심입니다.

▲ 목차로 돌아가기

Q&A

Q1. Shell Tool을 쓰려면 기존 Chat Completions API 코드를 전부 다시 써야 하나요?

Shell Tool은 Responses API에서만 동작합니다. Chat Completions API 기반 코드라면 Responses API로 마이그레이션이 필요합니다. OpenAI 공식 마이그레이션 가이드(migrate-to-responses)가 있으니 참고하세요. 기존 Assistants API는 2026년 8월 26일에 종료됩니다.

Q2. 컨테이너 안에서 외부 API를 호출하려면 무엇부터 해야 하나요?

먼저 조직 관리자가 OpenAI 대시보드에서 허용 도메인 목록을 등록해야 합니다. 그다음 API 요청 시 network_policyallowed_domains를 명시합니다. 인증 헤더가 필요한 서비스라면 domain_secrets를 추가로 설정합니다. raw 크리덴셜은 모델 컨텍스트에 노출되지 않고 egress 프록시 레이어에서 치환됩니다.

Q3. 모델이 어떤 언어를 쓸지 스스로 결정하나요?

모델이 작업 맥락에 따라 언어를 제안합니다. Python, Node.js, Java, PHP, Ruby, Go 모두 프리인스톨 상태입니다. 다만 런타임 버전은 Debian 12 기반의 프리인스톨 버전으로 고정되어 있고 시간이 지나면 바뀔 수 있다고 공식 문서는 명시합니다. 버전 의존성이 있는 작업은 명시적으로 프롬프트에 버전 요건을 지정하는 게 좋습니다.

Q4. ZDR을 쓰면서 Shell 기능이 필요할 때는 어떻게 해야 하나요?

로컬 셸 모드를 사용해야 합니다. Responses API에 "environment": {"type": "local"}를 지정하면, 모델이 shell_call 출력 아이템을 반환하고 클라이언트 측에서 직접 명령을 실행한 뒤 shell_call_output으로 결과를 돌려주는 방식입니다. 자체 인프라에서 실행 환경을 완전히 통제할 수 있지만, 실행 하네스를 직접 구축해야 합니다.

Q5. OpenAI Skills과 Anthropic Claude Code Skills은 서로 호환되나요?

둘 다 동일한 SKILL.md 기반 오픈 스탠다드(agentskills.io)를 채택했기 때문에 이론적으로 이식이 가능합니다. 단, 실행 환경 자체는 플랫폼에 종속됩니다. OpenAI Hosted Shell의 네트워크 정책, ZDR 제약, 컨테이너 수명 주기 등은 Claude Code와 다릅니다. 스킬 로직은 포터블하지만 인프라 설정은 플랫폼마다 따로 맞춰야 합니다.

▲ 목차로 돌아가기

마치며

Shell Tool은 “Code Interpreter 업그레이드”가 아닙니다. OpenAI가 모델에게 처음으로 완전한 운영 환경을 줬다는 쪽이 더 정확합니다. Python만 돌리던 샌드박스에서, 6개 언어와 서비스 기동, 파일 시스템, 네트워크를 갖춘 작업 공간으로 바뀐 겁니다.

다만, 기대와 다른 부분이 분명히 있습니다. ZDR 환경에서는 Hosted Shell을 쓸 수 없고, Chat Completions API 기반 코드는 마이그레이션이 필요합니다. 3월 31일부터는 컨테이너 요금 구조도 바뀝니다. 마냥 “강력해졌다”고 쓰기 전에 이 조건들을 먼저 확인하는 게 맞습니다.

OpenAI와 Anthropic이 동일한 Skills 스탠다드를 채택한 건 조용하지만 큰 변화입니다. AI 에이전트의 핵심 자산이 특정 플랫폼이 아닌 오픈 스탠다드 위에 쌓이기 시작했다는 신호입니다. 당장 도입 여부와 무관하게, 이 방향은 눈여겨볼 가치가 있습니다.

▲ 목차로 돌아가기

📌 본 포스팅 참고 자료

  1. OpenAI 공식 Shell Tool 가이드 — developers.openai.com/api/docs/guides/tools-shell/
  2. OpenAI 공식 블로그 — Equipping the Responses API with a computer environment (2026.03.11) — openai.com/index/equip-responses-api-computer-environment/
  3. OpenAI API 공식 가격 — openai.com/api/pricing/
  4. VentureBeat — OpenAI upgrades its Responses API to support agent skills (2026.02.10) — venturebeat.com
  5. OpenAI Developers 공식 X (@OpenAIDevs) — Container pool announcement (2026.03.22)

본 포스팅 작성 이후 서비스 정책·UI·기능이 변경될 수 있습니다. 본 포스팅은 2026년 3월 27일 기준으로 작성되었으며, OpenAI의 Responses API 및 컨테이너 요금 구조는 공식 발표에 따라 달라질 수 있습니다. 최신 정보는 공식 문서를 직접 확인하시기 바랍니다.

댓글 남기기


최신 글


아이테크 어른경제에서 더 알아보기

지금 구독하여 계속 읽고 전체 아카이브에 액세스하세요.

계속 읽기