VS Code에서 쓰는 Codex: 패널, 로컬/클라우드 실행, 승인 모드 활용
IDE 맥락이 프롬프트를 짧게 만드는 이유
VS Code에서 Codex를 쓰면 "설명해야 할 것"이 줄어듭니다. 이미 에디터가 현재 열어둔 파일, 커서가 있는 위치, 선택한 코드, 워크스페이스 구조를 제공하기 때문입니다.12 그래서 같은 작업이라도 웹 채팅처럼 긴 배경 설명을 붙이기보다, 지금 보고 있는 코드에 대해 한 문장으로 지시하는 편이 더 정확하게 먹힙니다.2
이 장의 목표는 세 가지입니다. 확장을 설치하고, 로그인/환경 변수를 정리하고, 작업 중에 Chat ↔ Agent ↔ Full access, Local ↔ Cloud를 오가며 마무리는 로컬에서 짓는 '하이브리드 루틴'을 손에 익히는 것입니다.23
확장 설치: "공식 OpenAI"를 고르는 것부터
VS Code에서 확장(Extensions) 뷰를 열고 "Codex"를 검색한 뒤, 게시자가 OpenAI인 Codex – OpenAI's coding agent를 설치합니다.21 설치 후에는 사이드바(활동 표시줄)에 Codex 패널이 생기고, 패널을 열어 대화/작업을 진행하는 흐름이 기본입니다.2
패널은 왼쪽에 둬도 되지만, 코드 편집과 나란히 놓고 싶은 경우가 많습니다. 마켓플레이스 설명에서도 패널을 오른쪽으로 옮겨 쓰는 사용자가 많다고 안내합니다.1
팀 온보딩 관점에서는 "설치" 자체보다 "버전 변동"이 더 큰 리스크일 때가 있습니다. 확장을 빠르게 도입하는 팀일수록, 스프린트 중간에 확장이 바뀌어 UI/권한 동작이 달라지는 일을 줄이기 위해 확장 버전을 고정하거나 업데이트 정책을 합의해두는 편이 좋습니다.3
로그인과 환경 변수: 계정 로그인 vs API 키
Codex 확장은 기본적으로 ChatGPT 계정으로 로그인하는 흐름이 가장 빠릅니다. 패널에서 "Sign in with ChatGPT"를 누르면 브라우저로 OAuth 로그인이 열리고, 완료되면 VS Code의 Codex 패널이 활성화됩니다.2 이 방식은 ChatGPT 플랜(Plus/Pro/Business/Edu/Enterprise)으로 Codex를 사용할 수 있다고 안내됩니다.1
다만 자동화나 조직 정책 때문에 API 키 기반 인증이 필요한 경우도 있습니다. 일부 가이드에서는 확장이 ChatGPT 계정 로그인과 API 키 로그인을 모두 지원하며, API 키는 VS Code 설정의 Codex 항목에 입력해 사용할 수 있다고 정리합니다.3 개인 개발용이라면 계정 로그인이 편하고, 공유 자동화/특정 환경에서는 API 키가 더 관리하기 쉬운 경우가 있습니다.3
환경 변수는 이 장에서 "확장 자체"의 필수 요건이라기보다, 다음 상황에서 실전성이 커집니다.
로컬 워크스페이스에서 테스트 실행/빌드/포맷 도구가 특정 환경 변수를 요구할 때
클라우드 작업이 아닌 로컬 작업에서, 이미 터미널 세션에 주입된 값을 그대로 쓰고 싶을 때
비밀값을 프롬프트에 붙이지 않고, OS/셸/비밀관리 도구로만 주입하려고 할 때
중요한 원칙은 단순합니다. 비밀값은 프롬프트가 아니라 환경 변수/시크릿으로 다루고, 에이전트에게는 "이 값이 필요하다"까지만 말하는 습관이 안전합니다.3
Codex 패널 읽기: Environment, Mode, Reasoning
Codex 패널 하단에는 작업을 좌우하는 세 가지 손잡이가 있습니다. (표현은 확장 버전에 따라 조금씩 달라질 수 있지만, 개념은 동일합니다.)
첫째는 Environment입니다. "Work locally"는 로컬 파일시스템/통합 터미널을 써서 작업하고, "Run in the cloud"는 OpenAI가 제공하는 샌드박스형 클라우드 환경에서 작업을 돌립니다.2 로컬 작업은 반드시 VS Code에서 프로젝트 폴더를 열어야 제대로 동작한다고 안내됩니다.2
둘째는 Mode입니다. 튜토리얼 기준으로 Chat, Agent, Agent(Full access) 같은 모드가 있으며, Chat은 대화 중심, Agent는 파일/명령 실행을 하되 승인 흐름이 붙는 형태, Full access는 승인 없이 더 넓게 수행하는 형태로 소개됩니다.2 이 책의 5장에서 다룬 승인/샌드박스 개념을 여기서는 "UI에서 빠르게 바꿔 끼우는 스위치"로 이해하면 됩니다.
셋째는 Reasoning Effort입니다. 기본은 Medium이고, 더 복잡한 문제에서는 높일 수 있으며, 높일수록 오래 걸릴 수 있다고 설명합니다.2 VS Code에서는 열린 파일과 선택 영역이 이미 맥락을 제공하므로, Reasoning을 무조건 올리기보다 "맥락을 더 잘 붙이는 습관"이 먼저 효과가 큽니다.
작업 모드 전환의 요령: Chat → Agent → Full access
VS Code에서 모드 전환은 "기능 선택"이 아니라 "리듬 조절"에 가깝습니다.
Chat 모드는 계획과 이해에 좋습니다. 예를 들어 낯선 파일을 열어둔 채로 "이 모듈의 책임과 경계(입출력, 부작용)를 한 문단으로 요약해줘"라고 묻고, 바로 다음 질문으로 "수정 전 반드시 통과해야 하는 테스트가 뭐야?"처럼 짧은 질문을 연속으로 던지기 좋습니다.
Agent 모드는 구현과 검증에 좋습니다. 같은 맥락에서 "이 함수에 케이스 3개를 추가하고, 테스트를 돌려서 실패하면 고쳐줘"처럼 실행 가능한 지시를 내리면, 에이전트가 변경과 명령 실행을 진행하면서 필요한 순간에 승인을 요청하는 흐름을 만들 수 있습니다.23
Full access는 '작업 가속기'라기보다 '작업 환경'입니다. 샌드박스/권한 설계가 갖춰진 안전한 레포나 격리된 환경에서만 선택하고, 평소에는 Agent를 기본값으로 두는 편이 안전하다고 가이드들은 권합니다.3
로컬에서 실행할 때의 핵심: "열어둔 파일"과 "선택 영역"
로컬 모드의 장점은 단순합니다. 내 머신의 도구체인을 그대로 쓰기 때문에, 린트/테스트/빌드가 평소와 같은 조건으로 돌아갑니다.4 또한 에디터가 제공하는 맥락 덕분에, 프롬프트는 오히려 줄어듭니다. 마켓플레이스 설명에서도 열린 파일과 선택 코드가 문맥이 되어 더 짧은 프롬프트로 더 관련성 높은 결과를 얻을 수 있다고 강조합니다.1
실전에서 가장 자주 쓰는 패턴은 이렇습니다.
코드 일부를 드래그로 선택하고, "이 블록을 유지보수하기 쉽게 쪼개줘. 공개 API는 바꾸지 말고, 테스트도 같이 추가해줘"라고 한 줄로 지시합니다. 그러면 Codex는 선택 영역을 중심으로 변경을 제안하고, 로컬 터미널에서 테스트를 실행하도록 유도하거나 직접 실행을 시도합니다.2
여기서 중요한 습관은 두 가지입니다. 변경이 커질 것 같으면 먼저 "어떤 파일을 건드릴지"를 물어 범위를 줄이고, 실제 적용 전에 diff를 검토하는 것입니다. 확장은 "복사-붙여넣기"가 아니라 IDE 안에서 변경을 리뷰하는 루프에 가깝게 설계되어 있다는 설명이 반복됩니다.3
클라우드로 넘길 때의 판단 기준: 오래 걸리는 일, 격리하고 싶은 일
클라우드는 "내 컴퓨터가 느릴 때"만 쓰는 옵션이 아닙니다. 오래 걸리거나, 반복 실행 로그를 남겨 공유해야 하거나, 리팩터링/마이그레이션처럼 다단계 작업이 필요한 경우에 더 잘 맞습니다.4
로컬과 클라우드는 서로 대체 관계가 아니라 보완 관계로 설계되어, 로컬에서 시작했다가 클라우드로 넘기고, 결과를 다시 로컬에서 마무리하는 흐름을 권합니다.41 마켓플레이스 설명에서도 큰 작업은 클라우드에 위임하고, 진행 상황을 IDE에서 추적한 뒤, 마무리는 로컬에서 여는 흐름을 제시합니다.1
VS Code 자체도 2026년 들어 로컬/클라우드 에이전트를 "세션"으로 관리하며, 잘 정의된 리팩터링은 클라우드로 던지고 탐색적인 작업은 로컬로 돌아오는 방식이 자연스럽다고 설명합니다.5
승인(Approvals)을 VS Code에서 '속도 조절 장치'로 쓰는 법
승인은 불편한 보안 절차가 아니라, 에이전트의 속도를 상황에 맞게 조절하는 장치입니다. VS Code 확장에서도 Agent 모드가 "승인을 요청하는 방식"으로 소개되고, Full access는 "승인 없이 수행"하는 방식으로 소개됩니다.2
실무에서 권하는 기본값은 "대부분은 Agent(승인 포함)"입니다.3 그리고 다음 세 순간에만 레벨을 올리면 충분합니다.
작업이 완전히 정형화되어 있고(매번 같은 파일·같은 명령), 되돌리기 쉬울 때
변경 범위가 워크스페이스 내부로 명확히 제한될 때
작업 환경이 격리되어 있거나(샌드박스/브랜치/컨테이너), 검증 루프가 확실할 때
반대로 네트워크 접근, 패키지 설치, 외부 자원 호출이 섞이는 순간에는 승인을 더 보수적으로 유지하는 편이 좋다는 조언이 반복됩니다.34
로컬에서 마무리하는 하이브리드 루틴(권장)
하이브리드의 핵심은 단순합니다. 무거운 일은 클라우드, 확실한 검증과 커밋은 로컬입니다.41
예를 들어 "결제 모듈 리팩터링 + 회귀 테스트 보강" 같은 작업을 한다고 해보겠습니다.
처음 10분은 로컬 Chat/Agent로 시작합니다. 주요 파일을 열고, Codex에게 "현재 결제 흐름의 entry point 2개와, 실패 시나리오 3개를 요약해줘"처럼 짧은 질문으로 지도를 얻습니다. 그다음 "변경을 최소 커밋 3개로 나눠서 계획을 써줘"라고 시키면, 작업을 잘게 쪼개는 기준이 서기 시작합니다.
이제 '무거운' 부분을 클라우드로 넘깁니다. 예컨대 "타입/예외 처리 일괄 정리"나 "폴더 구조 재정렬"처럼 오래 걸리고 파일을 많이 건드리는 작업은 클라우드가 편합니다.41 로컬에서는 내가 다른 일을 하거나, 동시에 리뷰 준비를 할 수 있습니다.
결과가 오면 다시 로컬로 돌아와 마무리합니다. 변경을 적용하기 전에 diff를 훑고, 로컬에서 전체 테스트를 한 번 더 돌리고, 필요한 경우만 한두 군데를 손으로 다듬어 커밋합니다. 이때 VS Code의 강점은 "코드가 있는 자리에서 바로 확인하고 결론을 내릴 수 있다"는 점이고, 그래서 프롬프트는 더 짧아지고 결과는 더 정확해집니다.1
자주 겪는 문제와 빠른 점검
설정이 꼬였을 때는 대개 원인이 단순합니다. 로그인 루프가 반복되면 로그아웃/인증 캐시 정리 후 재로그인을 권하는 가이드가 있고, 권한 프롬프트가 계속 뜨면 현재 모드가 Chat인지 Agent인지부터 확인하라고 안내합니다.3 또 로컬 모드가 작동하지 않는 경우는 "폴더를 열지 않았다"가 흔한데, 로컬에서 작업하려면 프로젝트 폴더를 열어야 한다고 명시되어 있습니다.2
참고
1Codex – OpenAI's coding agent - Visual Studio Marketplace
2How to Use OpenAI's Codex Agent in VS Code: A Step-by-Step Guide
3Codex VSCode extension: installation, sign-in, and permissions (2025)
4Codex local vs cloud workflows: when to delegate tasks (2025)
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.