라이프스타일
IDE 확장 시작하기
IDE에서는 코드 옆에서 설명과 편집을 요청합니다. VS Code, Cursor, Windsurf는 확장을 쓰고 Xcode와 JetBrains는 자체 통합을 사용하므로 설치 절차를 구분합니다.
읽는 데 약 12분 · 실습 30 분

이 글의 목차
Codex 학습 목차로 돌아가기Codex 학습 센터: 전체 튜토리얼 목차설치와 첫 작업부터 MD 지침과 고급 연동까지 60개 강의, 열 개 단원을 계획합니다. 수준, 환경, 목표, 명령으로 다음 글을 찾고 미게시 항목의 상태를 확인할 수 있습니다.전체 글 읽기
이 강의의 목표
IDE는 편집, 파일 탐색, 도구 실행을 모은 작업 화면입니다. 확장은 선택 영역을 Codex 맥락으로 전달하지만 열 줄 선택이 수정 권한을 열 줄로 제한하지는 않습니다. 요청문명확하게 작업 요청하기좋은 요청은 결과, 배경, 제한과 완료 조건을 명확히 합니다. '페이지 개선'만으로는 속도, 디자인, 접근성 중 무엇인지 알 수 없습니다. 먼저 관찰 가능한 동작으로 바꿔 적으세요.전체 글 읽기에 범위를 명시하고 파일 접근은 권한으로 제어합니다. 그림의 01은 맥락 선택, 02는 수정 요청, 03은 비교와 검증입니다.
시작 전: 공식 확장 설치하기
각 OS의 VS Code에서 Extensions로 Codex를 검색하고 게시자 OpenAI, 식별자 openai.chatgpt를 확인해 설치합니다. 아래 공식 IDE 페이지에서도 이동할 수 있습니다. 아이콘만으로 구분하지 마세요. 창 재로드 안내가 뜨면 파일을 저장한 후 진행합니다. 설치됨 표시는 존재 확인이며 실행이나 인증 완료는 아닙니다.
Codex 아이콘을 열고 없으면 View → Command Palette에서 Codex: Open Codex Sidebar를 검색합니다. Windows/Linux 단축키는 Ctrl+Shift+P, macOS는 Command+Shift+P입니다. 안내에 따라 계정과 워크스페이스를 확인합니다. CLI와 인증을 공유할 수 있으므로 로그아웃 전에 다른 작업 영향을 확인하세요.
공식 문서는 Cursor와 Windsurf도 안내하지만 이 실습은 VS Code를 사용합니다. Xcode와 JetBrains는 자체 통합이므로 VS Code 식별자를 설정 절차로 쓰지 않습니다. Windows의 WSL 창에서는 환경 표시와 터미널 경로를 확인하고 WSLLinux/WSL CLI와 파일 위치호스트와 WSL의 도구, 경로, 계정을 구분하고 올바른 환경에서 실습과 업데이트를 진행합니다.전체 글 읽기 안에서 필요한 도구를 사용할 수 있어야 합니다.
1단계: 오류가 있는 실습 사본 열기
Small Steps 자료를 풀고 broken을 codex-ide-lab으로 복사하며 expected는 독립 참조로 보관합니다. File → Open Folder로 열고 index.html, style.css, app.js, core.mjs, core.test.mjs을 확인합니다. 신뢰 안내는 출처를 확인한 실습 사본에 대해 처리하며 다운로드 폴더 전체를 프로젝트로 삼지 않습니다.
Terminal → New Terminal을 열고 Windows의 Get-Location 또는 macOS/Linux의 pwd로 codex-ide-lab을 확인합니다. Node.js가 필요하므로 node --version 후 테스트합니다. 세 그룹 중 필터 그룹이 실패하고 나머지는 통과해야 합니다. 의도된 오류이므로 처음부터 실패 테스트를 지우거나 기대값을 바꾸지 않습니다.
node --test core.test.mjs
2단계: 선택 영역을 Codex에 전달하기
core.mjs에서 visibleTasks 전체를 선택하고 명령 팔레트의 현재 Codex 대화에 추가하는 동작으로 첨부합니다. 공식 명령 ID는 chatgpt.addToThread입니다. 다음으로 core.test.mjs를 열고 chatgpt.addFileToThread로 파일 전체를 첨부하세요. 표시 이름은 언어와 버전에 따라 다르므로 키보드 바로 가기 설정에서 ID를 검색해 해당 명령을 확인할 수 있습니다. ID는 터미널 명령이 아닙니다. 편집기 탭이 열렸다는 사실만으로 첨부되었다고 판단하지 말고 전송 전에 파일명, 범위, 첨부 표시를 확인하여 같은 이름의 다른 사본을 제외하세요.
Explain the selected visibleTasks function in core.mjs and the failing filter assertion in core.test.mjs. Do not edit yet. Identify which tasks should appear for All, Active and Completed, and quote the predicate that causes the mismatch. Confirm the working folder before answering.
첫 요청은 설명만입니다. completed 분기의 !task.completed 때문에 미완료 항목이 나온다고 짚어야 합니다. 필터 문제일 수 있다는 말뿐이면 분기와 검증을 요구합니다. 고쳤다고 하면 읽기 요청 범위를 넘었는지 확인하세요. 열린 파일은 맥락을 돕지만 필요한 함수와 실패를 이해했는지는 검증해야 합니다.
3단계: 수정 범위를 정확히 요청하기
Fix only the Completed filter in core.mjs so completed tasks appear. Keep the public function signatures and existing tests unchanged. Preserve All and Active behavior, task order, and input arrays. Run node --test core.test.mjs and report the actual result. Show the final diff and any remaining limitation.
같은 작업에서 전송합니다. 승인 요청은 폴더와 명령이 실습에 맞는지 확인합니다. 핵심 수정은 completed 분기의 task.completed이며 active 동작과 테스트 기대값은 유지합니다. Codex가 테스트 성공을 보고해도 자신의 통합 터미널에서 다시 실행해 독립 검증을 남깁니다.
export function visibleTasks(tasks, filter) {
if (filter === "active") return tasks.filter((task) => !task.completed);
if (filter === "completed") return tasks.filter((task) => task.completed);
return tasks;
}
비교용 참조 결과이지 먼저 붙여 넣고 Codex가 고쳤다고 주장하는 코드가 아닙니다. 같은 함수에 의도된 오류라는 오래된 주석이 남으면 정리합니다. 화면 변경, 의존성 추가, 백엔드는 필요 없습니다. 세 그룹 통과뿐 아니라 실제 diff가 요청 범위인지도 판단합니다.
편집기에서는 수정되었는데 테스트는 계속 실패할 때
먼저 파일을 저장한 뒤 통합 터미널의 작업 디렉터리를 확인합니다. 저장하지 않은 편집기 텍스트는 테스트가 읽는 디스크 파일과 다를 수 있고, 같은 이름의 다른 사본 때문에 올바른 수정을 보면서 엉뚱한 파일을 테스트할 수도 있습니다. core.mjs의 전체 경로, 저장 상태, 테스트 디렉터리를 확인한 뒤 원래 테스트를 다시 실행하세요. 셋 다 맞는데 실패하면 전체 오류와 현재 diff를 Codex에 전달하며 기대값을 바꾸거나 확장을 다시 설치하지 않습니다. 문맥 첨부, 파일 저장, 테스트 실행은 각각 확인해야 합니다.
4단계: 차이와 동작 확인하기
사본에 Git이 있으면 Source Control을 보고 없으면 Explorer의 Select for Compare/Compare with Selected로 보존한 broken과 수정본을 비교합니다. diff를 보기 위해 실제 프로젝트를 커밋할 필요는 없습니다. 조건과 낡은 주석만 대상이며 테스트가 오류를 허용하도록 바뀌지 않았는지 확인합니다.
codex-ide-lab 미리 보기 검증 전에 보관할 이전 실습 기록을 남기세요. 같은 브라우저 주소에는 다른 강의 데이터가 남을 수 있습니다. About this exercise를 열고 Reset practice data를 누른 뒤 Show에서 All tasks를 선택해 빈 목록을 확인합니다. 실습 데이터만 초기화하며 소스 파일은 복원하지 않습니다. 로컬 미리 보기에서 Read와 Build를 추가하고 Read를 완료합니다. All은 둘 다, Active는 Build, Completed는 Read입니다. 새로고침 후에도 Completed에 Read가 있고 빈 목록 필터도 오류가 없어야 합니다. OS별 실행은 첫 프로젝트첫 소규모 프로젝트 완성하기Small Steps 할 일 사이트의 독립 복사본에서 제목과 배경색을 바꿉니다. 실습 파일 다섯 개의 역할을 확인하고 변경 내역, 핵심 테스트, 두 화면 폭을 비교하여 기존 기능과 데이터를 보존합니다.전체 글 읽기를 참고하세요. localhost 검증은 배포된 웹사이트가 아닙니다.
| 점검 | 성공 조건 | 흔한 오판 |
|---|---|---|
| 맥락 | 함수, 테스트, 폴더가 정확 | 선택을 쓰기 제한으로 간주 |
| 수정 | Completed 수정과 나머지 유지 | 완료 메시지만 믿기 |
| 테스트 | 기존 세 그룹 통과 | 기대값을 바꿔 통과 |
| 화면 | 올바른 필터와 새로고침 | localhost를 공개 URL로 간주 |
문제 해결, 복구, 다음 단계
명령이 없으면 현재 창의 활성 확장과 환경을 확인합니다. WSL과 로컬 창은 다를 수 있습니다. 선택 맥락이 빠지면 첨부, 파일, 범위를 확인하거나 core.mjs의 visibleTasks를 명시하고 필요한 코드를 제공합니다. node는 같은 통합 터미널에서 확인하며 다른 셸의 성공으로 대신하지 않습니다. 응답 중단 후에는 diff를 보고 남은 작업을 요청합니다.
다시 연습하려면 보관한 broken/core.mjs만 실습 사본에 복원해 원래 필터 실패가 돌아오는지 확인합니다. 다른 작업을 지우는 전체 강제 초기화는 하지 않습니다. 로컬 검증은 broken의 의도된 실패, expected의 통과, 참조 화면이며 확장이 생성한 결과라고 주장하지 않습니다. 다음은 디버깅버그 수정의 전체 과정디버깅은 재현 가능한 증상에서 시작해 근거로 원인을 좁히고 수정 결과를 검증합니다. 입력, 단계, 기대와 실제 결과를 전달하세요.전체 글 읽기, 테스트와 리뷰테스트, 코드 리뷰와 PR테스트는 조건별 동작, 리뷰는 변경의 결함, PR은 통합 제안을 다룹니다. 테스트 통과, 승인과 병합은 별도 상태입니다.전체 글 읽기, Git 차이Git, 브랜치, diff와 복원Git은 파일 이력, 브랜치는 변경 묶음, diff는 차이를 관리합니다. 대화를 재개한다고 파일이 복원되지는 않습니다.전체 글 읽기입니다.
Codex 학습 목차로 돌아가기Codex 학습 센터: 전체 튜토리얼 목차설치와 첫 작업부터 MD 지침과 고급 연동까지 60개 강의, 열 개 단원을 계획합니다. 수준, 환경, 목표, 명령으로 다음 글을 찾고 미게시 항목의 상태를 확인할 수 있습니다.전체 글 읽기
자세한 설명 보기
Editor to Selection to Diff
같은 주제의 글
라이프스타일
Codex 학습 센터: 전체 튜토리얼 목차
설치와 첫 작업부터 MD 지침과 고급 연동까지 60개 강의, 열 개 단원을 계획합니다. 수준, 환경, 목표, 명령으로 다음 글을 찾고 미게시 항목의 상태를 확인할 수 있습니다.
라이프스타일
Worktree와 작업 격리
Worktree는 하나의 Git 저장소에 다른 브랜치의 작업 폴더를 만듭니다. 파일이 분리되어도 DB, 포트와 외부 서비스는 공유될 수 있습니다.
라이프스타일
실습: 작은 웹사이트 만들기
brief.md에서 Small Steps 할 일 사이트를 계획하고 추가·완료·삭제·필터·로컬 저장을 구현합니다. HTML·CSS·데이터 함수·화면 이벤트·시험을 분리하고 Node와 브라우저로 검증한 뒤 재시작·복원 인계 기록을 남깁니다.
라이프스타일
사용량과 효율: 재작업 줄이기
조건, 모델 선택, 시간, 결과를 기록해 불필요한 재시도와 과도한 문맥을 줄입니다.
이 글을 인용한 글
최신 여행 소식·가이드

가이드도쿄
도쿄 어디에 묵을까? 신주쿠·우에노·도쿄역·시부야·아사쿠사·이케부쿠로·긴자 일곱 지역 비교: 공항 교통, 숙박세, 짐 배송까지
도쿄 어디에 묵을까? 신주쿠, 우에노, 도쿄역, 시부야, 아사쿠사, 이케부쿠로, 긴자 일곱 지역을 같은 기준으로 비교한다. 나리타·하네다 공항에서 오는 방법, 교통 노선, 주변의 볼거리, 동네 분위기, 적합한 여행자를 비교표와 야마노테선 안내도로 살펴보고, 2026년 9월에 확인한 도쿄도 숙박세(2027년 4월부터 3%)와 공항 택배로 짐을 보내는 규정도 정리했다.
- 예산
- 호텔

가이드도쿄
도쿄 교통패스 선택법: Suica/Welcome Suica, Tokyo Subway Ticket, JR Pass는 살 만할까?
도쿄를 처음 여행한다면 먼저 1인당 IC 카드 한 장으로 탈 때마다 결제한다(Welcome Suica는 보증금이 없고 28일간 유효). 하루에 지하철을 4번 이상 타면 2,000엔짜리 Tokyo Subway Ticket 72시간권을 추가하고, 간사이에 가지 않고 도쿄만 여행한다면 JR Pass는 반드시 손해다. TOURIST PASMO, iPhone의 Suica, 도쿄 Metro 하루권의 이용 가능·불가 범위를 결정도로 비교한다. 가격은 2026년 9월 확인.
- 교통
- 예산

가이드도쿄
도쿄 디즈니랜드·디즈니씨 가이드: 티켓 가격, 판타지 스프링스 Fantasy Springs, 디즈니 프리미어 액세스 DPA와 스탠바이 패스 이용법, 첫 방문에는 어느 파크가 좋을까
도쿄 디즈니 하루짜리 패스포트는 변동 가격제로, 2026년 9월에는 평일 대부분이 9,900엔, 주말이 10,900엔이다. 공식 홈페이지에서 매일 14:00에 두 달 뒤 같은 날짜의 티켓을 판매한다. 무료 프라이오리티 패스는 공식 서비스 목록에서 빠져 대기 시간을 줄이는 방법은 유료 디즈니 프리미어 액세스(한 사람당 한 번 1,000~3,500엔)뿐이다. 운영 시간, 25주년 행사, 스탠바이 패스, 엔트리 리퀘스트, 판타지 스프링스 이용법, 첫 방문 때 디즈니랜드와 디즈니씨 중 어디를 고를지도 담았다. 2026년 9월 공식 홈페이지에서 확인했다.
- 추천 일정
- 가족 여행
출처
- Codex IDE extension · 확인일:
- Editor context and selected code · 확인일:
- Authentication · 확인일: