강사용 상세본 · AI LABS · 2026-07-28

Codex에
실시간 음성이
들어왔다

핵심은 "음성으로 코딩"이 아니다. 말하는 동안 에이전트가 딴 일을 계속한다는 것 — 지시를 던지면 별도 세션으로 떼어내 백그라운드에서 처리하고, 나는 대화를 끊지 않는다. 여기에 브라우저·화면·스킬·자동화가 붙어서 "말로 운영"이 된다.

선정 영상: OpenAI just released Codex Voice (It's basically Jarvis) Riley Brown 🇺🇸 16:27 · 2026-07-24 공개 (녹화 07-23) 조회 94k(07-28 수집) → 100.4k(07-29 재확인) 원본 보기
영상 진행자가 Excalidraw에 정리한 Codex Voice 능력·한계·유즈케이스 보드

🖼 실제 화면: 진행자가 음성으로 시켜서 Excalidraw에 그린 정리 보드 — 왼쪽 "What it can do", 가운데 "What it can't do", 오른쪽 "Use Cases". 이 보드 자체가 데모다(사람이 그린 게 아니다).

한 줄 핵심

"말로 시키고 → 에이전트는 백그라운드로 떼어내 일하고 → 나는 계속 말한다."
음성이 입력 방식만 바꾼 게 아니라, 작업을 병렬로 쪼개는 방식을 바꿨다. 영상에서 진행자가 놀라는 지점도 전부 여기다 — "새 채팅을 열 수 있다고?", "다른 세션에서 보낸 거라고?"

영상에서 실제로 벌어진 것 (프레임 9장 실측)

01 / 진입

버튼 하나 — "Start new voice chat"

Codex 데스크톱 앱(ChatGPT 앱) 입력창 오른쪽 끝의 파형 아이콘. 툴팁이 그대로 "Start new voice chat"이고, 누르면 세션 제목이 "New voice chat"으로 생긴다.

Codex 홈 화면 하단 파형 버튼에 Start new voice chat 툴팁

🖼 실제 화면: 홈 "What should we build?" + 프리셋 4장(Explore and understand code / Build a new feature, app, or tool / Review code and suggest changes / Fix issues and failures). 하단 바에 Choose project, 모델 셀렉터 5.6 Sol · High, 마이크, 그리고 파형 버튼.

💡 마이크 아이콘(음성→텍스트 입력)과 파형 아이콘(실시간 음성 대화)은 다른 버튼이다. 수업에서 제일 많이 헷갈릴 지점.
▶ 0:56 진입
02 / 스킬 호출

말하면 스킬을 스스로 읽는다

"내 이메일 가서 고객지원 컴플레인 찾아서 전부 답장 초안 써놓고, Codex 브라우저에 열어둬" 한 마디. 응답은 "Sure, I'll take care of that." 그리고 화면에 스킬을 읽는 로그가 뜬다.

New voice chat 세션에서 Control In App Browser 스킬을 읽는 화면

🖼 실제 화면: 음성 대화가 양쪽 다 텍스트로 기록된다(내가 말한 것도 그대로 남는다). 응답 아래에 "Reading Control In App Browser skill" — 미리 세팅해둔 스킬을 음성 지시에서 알아서 집어 든 것. 하단 음성 오브에는 스피커·음소거·종료 3버튼.

👉 핵심: 음성이 스킬을 트리거한다. 즉 스킬을 안 만들어두면 음성이 할 수 있는 것도 얇아진다. 음성은 스킬의 껍데기다.
▶ 1:16 지시 ▶ 1:42 스킬
03 / 브라우저

Gmail 열어서 답장 초안까지 — 보내진 않는다

인앱 브라우저가 실제 Gmail에 붙어서, 실제 미해결 문의를 읽고 답장을 작성해 초안 상태로 열어둔다. 자기 보고는 이렇다: "미해결 12건 정도, 대부분 결제·해지, 거기에 도메인·로그인·미리보기·이전 문제. 최신 메시지 확인했고 지금 답장 쓰는 중."

좌측 음성 대화, 우측 인앱 브라우저의 Gmail 답장 초안

🖼 실제 화면: 오른쪽이 인앱 브라우저 Gmail. 제목 "Cancel Vibecode Subscription" 문의에 대한 답장이 작성돼 있고 Send 버튼은 눌리지 않은 상태. 상단에 여러 메일 탭이 동시에 열려 있고, 하단에 "Worked for 1m 53s".

⚠️ 여기가 이 기능의 안전 설계다. 초안까지 만들고 멈춘다. 발송·결제는 스스로 안 한다(§05 한계 참조). 실무 도입 시 이 경계를 그대로 쓰는 게 맞다.
▶ 2:16 초안
04 / 병렬

"딴 세션으로 떼어놨어, 우린 계속 얘기하자"

진행자가 리서치를 시켰더니 화면에 "Chat created / Open chat"이 뜨고, 음성은 이렇게 말한다: "Yes, I spun that into a separate task so we can keep talking here." — 무거운 일은 새 채팅으로 분리, 대화는 안 끊긴다.

Chat created / Open chat 알림과 백그라운드 작업 분리

🖼 실제 화면: 대화 안에 "Chat created" 카드 + Open chat 링크, 그리고 "Worked for 31s". 오른쪽엔 음성 지시로 그려지고 있는 Excalidraw 보드("The New Codex Voice Feature").

👉 이게 "Jarvis 같다"는 말의 실체다. 음성이 빠른 게 아니라, 느린 일을 뒤로 넘기고 앞단 대화를 유지하는 구조.
▶ 7:19 분리
05 / 경계

할 수 있는 것 / 못 하는 것 (본인이 답한 내용)

진행자가 "너 한계가 뭐야?"라고 묻고, 그 답을 음성으로 Excalidraw에 정리시킨 결과다. 즉 이 표는 모델의 자기 보고이지 공식 문서가 아니다 — 그래도 실무 경계선으로는 유용하다.

✅ 할 수 있다

  • Real Time Voice — 실시간 음성 대화
  • Use my Skills — 내가 만든 스킬 사용
  • Open Browser — 인앱 브라우저 열기
  • Look at screen — 화면 보기
  • Research something live — 즉석 리서치
  • Build and edit things in bg — 백그라운드 작업
  • Open up new chats — 새 채팅 생성

⛔ 못 한다

  • start with browser — 브라우저부터 켜고 시작 X
  • Model switch — 대화 중 모델 전환 X
  • 앱을 조용히 장악 X (사용자 모르게)
  • Send money or emails — 송금·메일 발송 X

자막 근거(7:54경): "…take over apps, send messages, spend money, change permissions, or access…" — 이 묶음이 전부 스스로 못 하게 막힌 항목으로 언급된다.
※ 보드 원본에는 "Can't silently take over apps"가 두 줄 겹쳐 적혀 있다(같은 문장 중복으로 판단해 위 목록에선 한 항목으로 합쳤다).

💡 "Model switch 불가"는 실전 함정이다. 음성 세션을 시작할 때 고른 모델로 끝까지 간다(화면 셀렉터 = 5.6 Sol). 무거운 작업을 시킬 거면 시작 전에 모델·추론강도를 정해라.
▶ 7:30 한계 질문 ▶ 7:54 금지항목
06 / 문서

Notion에 새 페이지를 만들고 "검증했다"고 말한다

리서치 결과를 새 Notion 페이지로 생성하고, 화면에는 "Sent by Codex from another chat"(§04에서 떼어낸 그 세션이 결과를 보내온 것) 표시가 뜬다. 진행자 반응: "Oh my god. It opened it." 하단 "Worked for 46s".

Codex가 생성한 Notion 리서치 페이지, 출처마다 Verified 표기

🖼 실제 화면: Notion 페이지에 출처가 나열되고 각 줄 앞에 [Verified] / [Corroborated report] 라벨이 붙어 있다. 소스 구분 탭도 스스로 만들었다 — Original sources / What you missed / Research ideas / Not on the internet.

⚠️ 이 [Verified] 라벨은 모델이 자기 결과에 스스로 붙인 것이다. 사람이 검증한 게 아니다. 교육에서 이 화면을 쓸 때는 "검증됨"으로 소개하지 말고, "자기 확신도를 라벨로 표기한 산출물"로 다뤄야 한다. 이 페이지 내용(GPT-Live·Appshots·Computer Use 등 명칭)도 본 교안에서는 사실로 인용하지 않는다.
▶ 6:39 Notion 지시
07 / 화면

iOS 시뮬레이터까지 열고, 탭도 말로 정리

앱 미리보기를 인앱 시뮬레이터로 띄운다. 그런데 브라우저 탭이 갑자기 닫히고, 물어보니 정직하게 답한다: "브라우저 세션 정리 때문에 닫힌 거고, 일부러 닫은 게 아니야. 방금 다시 열었어." 이어서 "나머지 탭 다 닫고 그것만 열어둬" → 실행.

인앱 브라우저에 iOS 시뮬레이터로 앱 미리보기가 열린 화면

🖼 실제 화면: localhost:3200의 시뮬레이터 서버, 왼쪽에 기기 목록(iPhone 17 Pro Streaming 표시), 가운데 실제 앱 화면, 오른쪽 Tools 패널(Appearance/Liquid Glass/Text Size/VoiceOver 등). 하단 "2/25 sims".

⚠️ 실전 함정: 브라우저 세션 정리로 열어둔 탭이 사라진다. 초안·미리보기를 "열어둔 상태"에 의존하는 워크플로는 깨질 수 있다. 중요한 건 파일·문서로 떨어뜨려야 한다.
▶ 10:44 시뮬레이터 ▶ 12:15 탭 정리
08 / 원격

폰에서 말하면 맥이 일한다

영상에 인용된 OpenAI 공식 X 게시물: "You can also use ChatGPT Voice in Codex from the iOS app with paired remote access. Android support is coming soon." 진행자는 실제로 아이폰에서 Mac을 지정해 음성으로 일을 시킨다.

OpenAI 공식 X 게시물과 아이폰의 Remote 화면

🖼 실제 화면: 아이폰에 "Remote · Mac-1292.lan" 헤더 + 프로젝트 목록 + 하단 파형 버튼. 오른쪽은 X 게시물 원문(2026-07-23 게시).

💡 이게 "Jarvis"의 마지막 조각이다. 작업 머신은 데스크톱, 지시는 주머니에서. 안드로이드는 공식적으로 "coming soon"이므로 수업에서 단정하면 안 된다.
▶ 13:30 원격 공지 ▶ 13:41 페어링
09 / 자동화

Automations — 자기 메모리 파일을 고쳐가며 반복한다

영상 후반, Codex 사이드바에 New chat / Pull requests / Sites / Scheduled / Plugins가 있고, 실제 자동화 하나가 열려 있다. 이게 음성보다 오히려 우리 쪽에 더 중요한 화면이다.

Codex Automations 화면 — automation memory 경로와 memory.md 편집 diff

🖼 실제 화면: 자동화 ID agent-native-episode-brief-check, Automation memory: $CODEX_HOME/automations/<id>/memory.md, Last run 타임스탬프. 지시문에 "매 실행마다 캘린더를 점검 / 최근 90일 범위로 제한 / 스킬로 문서 확인 / 절대 중복 생성 금지"가 박혀 있고, 결과는 "신규 없음 · 파일 생성·수정 없음", 그리고 "Edited memory.md +6 −6"Undo / Review 버튼.

👉 자동화가 실행마다 자기 memory.md를 갱신하고, 그 변경을 사람이 Review/Undo할 수 있다. "반복 작업 + 지속 메모리 + 사람 승인" 3종 세트 — 우리가 크론에서 겪은 문제(잡은 돌았는데 상태를 못 남겨서 다음 실행이 모른다)를 정면으로 다루는 설계다.
▶ 8:34 자동화 언급

우리 환경과 교차확인

모델 표기 일치 — 화면 셀렉터가 5.6 Sol(High/Medium). 우리가 터미널 폴백에서 쓰는 그 계열과 같은 표기다. 화면·자막 둘 다에서 확인.
"스킬이 먼저" 구조 일치 — 음성은 트리거일 뿐, 실제 능력은 미리 만들어둔 스킬(Control In App Browser)에서 나온다. 우리가 스킬 우선으로 쌓아온 방향과 같다.
사람 승인 게이트 — 초안까지만 / 발송·송금 X / memory 변경은 Review·Undo. 우리 룰(배포·발송 전 사람 컨펌)과 정확히 같은 지점에 선을 그었다.
⚠️ 병렬 세션은 우리 쪽 미구현 — "무거운 건 새 세션으로 떼고 앞단 대화 유지"는 지금 우리 구조엔 없다. 긴 작업이 대화 채널을 점유하는 문제를 이미 겪었으니, 참고 가치가 크다.

정확도 플래그 (수업 전 반드시 확인)

"능력/한계 표"는 공식 문서가 아니다. 진행자 질문에 모델이 답한 내용을 그림으로 정리한 것. "OpenAI가 이렇게 발표했다"로 소개 금지.
Notion 페이지의 [Verified] 라벨은 자체 표기. 그 안의 기능 명칭들은 본 교안에서 사실로 인용하지 않았다. 필요하면 공식 문서로 별도 확인.
⚠️ 안드로이드 = "coming soon" (공식 게시물 문구 그대로). 현재 지원된다고 말하면 오류.
⚠️ 영상 속 다른 브라우저(Comet)는 Codex 기능이 아니다. 진행자 개인 브라우저이며, 인앱 브라우저와 혼동 금지.
날짜 정합 — 화면 메뉴바 Thu Jul 23 / X 게시물 Jul 23, 2026 / 영상 공개 07-24. 어긋남 없음.
자막 오전사 없음 — 이번 회차는 핵심 용어에 auto-sub 오전사가 없었다. 인용은 화면 텍스트로 재확인함.

바로 써먹기 (3분 실습안)

1) Codex 데스크톱 앱 입력창 오른쪽 파형 버튼 클릭 → "New voice chat" 생성 확인. (마이크 아이콘 아님)

2) 시작 전에 모델·추론강도를 정한다 — 대화 중엔 못 바꾼다.

3) 가벼운 지시 하나 + 무거운 지시 하나를 연달아 준다. 무거운 쪽이 "Chat created"로 떨어지는지 관찰 → 이게 이 기능의 핵심.

4) 발송·결제는 시키지 말고 초안까지만. 실제로 멈추는지 확인한다.

5) 열어둔 탭에 의존하지 말 것 — 세션 정리로 닫힌다. 결과는 파일·문서로 남긴다.

📱 수강생에게 / 그대로 복사해서 쓰기

🎙 Codex에 실시간 음성이 들어왔어요. 포인트는 "말로 코딩"이 아니라 **말하는 동안 에이전트가 딴 일을 계속한다**는 거예요. 무거운 지시를 주면 새 채팅으로 떼어내서 백그라운드로 돌리고, 대화는 끊기지 않아요. 들어가는 곳: Codex 앱 입력창 오른쪽 **파형 버튼** (마이크 아이콘 아니에요) 주의 2개: ① 대화 중엔 **모델 변경 안 됨** — 시작 전에 정하세요 ② 메일 **발송·송금은 스스로 안 합니다**(초안까지만)

※ 이 카드는 내부 복붙용. 수강생용 미니교안에는 이 섹션·영상버튼·방법론 표기를 제거하고 올린다.

출처: Riley Brown, "OpenAI just released Codex Voice (It's basically Jarvis)", 16:27, 2026-07-24 공개 · youtu.be/hLFs9JtMaRg
검증 로그 (GUIDE_ACCURACY_CHECKLIST §0~§12 통과): 자막 전문(/tmp/aitip-hLFs9JtMaRg.en.vtt, 3352줄) 정독 + 프레임 9장 실측(frames/2026-07-28-codex-voice-*.jpg). · 딥링크 13개 전부 해당 구간 자막과 1:1 대조 — 라벨 1건 수정("문서 생성"→"Notion 지시", 6:39는 지시 시점이라 생성 시점이 아님). · 제목·길이(16:27)·게시일(2026-07-24)·채널을 원본 메타데이터로 재확인. 조회수는 수집 시점(94k)과 재확인 시점(100.4k)이 달라 둘 다 표기. · UI 라벨은 전부 프레임에서 눈으로 확인(툴팁 "Start new voice chat", "Reading Control In App Browser skill", "Chat created", "Sent by Codex from another chat", 사이드바 5항목, "Undo / Review"). · 능력·한계 표는 모델 자기 보고임을 본문·플래그 양쪽에 명시. Notion 페이지의 [Verified] 라벨 및 그 안의 기능 명칭은 사실로 인용하지 않음(의도적 공백). · 화면 불일치 1건을 합치지 않고 각주 처리("Can't silently take over apps" 중복 표기).
분석 원본: _system/daily-ai-tips/2026-07-28.md