에이전트의 결과물은 결국 '얼마나 좋은 맥락을 받았는가'로 갈립니다. 그런데 많은 사람이 텍스트로만 말을 겁니다. 코덱스에는 사실 여러 개의 입력 통로가 있고, 대부분 크게 저평가되어 있습니다. 이번 레슨에서 그 통로들을 하나씩 열어 봅니다. 먼저 아주 기초인 터미널 이동부터 짚고 갑니다.
0. 터미널 기초와 '프로젝트 폴더' 습관
코덱스는 터미널에서 실행되므로, 폴더를 오가는 최소한의 명령은 알아 두면 편합니다. 어렵지 않습니다. 딱 네 개면 됩니다.
| 명령 | 뜻 | 비유 |
|---|---|---|
| pwd | 지금 내가 어느 폴더에 있나 | '여기가 어디지?' 현재 위치 확인 |
| ls | 이 폴더 안에 뭐가 있나 | 서랍을 열어 내용물 보기 |
| cd 폴더명 | 그 폴더 안으로 들어가기 | 방 안으로 걸어 들어가기 |
| cd .. | 한 단계 위 폴더로 나가기 | 방에서 복도로 나가기 |
폴더나 파일 이름을 다 칠 필요 없습니다. 앞 글자만 치고 Tab 키를 누르면 나머지를 자동으로 완성해 줍니다. 오타도 줄고 훨씬 빠릅니다.
그리고 아주 중요한 습관 하나. 프로젝트마다 '전용 폴더'를 만들고, 그 폴더 안으로 cd 해서 들어간 뒤 코덱스를 실행하세요. 바탕화면에 파일을 다 쏟아 두면 코덱스가 무엇이 이 프로젝트인지 헷갈립니다. 폴더 안에서 실행하면 작업 범위가 딱 그 폴더로 좁혀져, 엉뚱한 파일을 건드릴 위험이 줄어듭니다.
바탕화면에 던지기 vs 전용 폴더에서 실행하기
바탕화면에 전부 쏟아두기
- 여행사진.png · 메모.txt · index.html 이 뒤죽박죽
- 코덱스가 무엇이 이 프로젝트인지 모름
작업 범위가 불분명
프로젝트마다 전용 폴더 + 그 안에서 실행
- cd task-tracker 로 전용 폴더에 들어감
- index.html · app.js 등 관련 파일만 모임
- 그 안에서 codex 실행하면 작업 범위가 이 폴더로 딱 좁혀짐
엉뚱한 파일 건드릴 위험이 줄어듦
코덱스는 '실행한 폴더'를 작업실로 삼습니다. 전용 폴더 안에서 켜야 범위가 깔끔합니다.
1. 이미지 입력 — 말로 설명하지 말고 보여주세요
가장 저평가된 기능입니다. 스크린샷을 찍어 코덱스 CLI에 그대로 붙여넣을 수 있습니다(Ctrl+V). 백 마디 설명보다 한 장의 그림이 정확합니다. 거의 모든 프롬프트에 스크린샷 한 장을 붙이는 습관을 들여 보세요.
- 원하는 화면 레이아웃 이미지를 보여주면 → 코덱스가 그 모습에 맞춰 UI를 만듭니다.
- 에러가 뜬 화면을 캡처해 붙이면 → 코덱스가 무엇이 어떻게 깨졌는지 눈으로 직접 봅니다.
- 디자인 시안, 그래프, 표 사진도 그대로 이해합니다.
화면 캡처 방법 (붙여넣기는 Ctrl+V)
맥(Mac) : Cmd + Shift + 4 → 영역 선택 캡처
Cmd + Shift + 3 → 전체 화면 캡처
윈도우 : Win + PrintScreen → 전체 화면 캡처
캡처한 뒤 코덱스 입력창에서 Ctrl + V 로 붙여넣기
2. 웹 검색 — 최신 정보를 직접 찾아오게
코덱스에는 웹 검색 도구가 내장되어 있습니다. 이것도 잘 안 씁니다. 모르는 프레임워크, 최신 문서, 처음 보는 라이브러리처럼 학습 데이터에 없을 수 있는 내용을 다룰 때 '웹에서 찾아서 파일로 정리해 줘'라고 시키면 됩니다.
웹 검색을 시키는 예
웹 검색으로 이 라이브러리의 최신 v3 설치·설정 방법을 찾아서,
핵심만 docs/setup-notes.md 파일로 정리해 줘.
버전이 바뀌며 달라진 부분이 있으면 표시해 줘.
웹 검색은 코딩 밖에서도 쓸모가 있습니다. 시장 조사, 경쟁사 훑기, 고객 리서치 같은 것도 시킬 수 있어요. 다만 전문 심층 리서치(deep research)만큼 파고들지는 않습니다. '빠르고 쓸 만한 조사' 정도로 기대하세요.
3. XML 태그 — 붙여넣는 긴 글의 경계를 알려주기
에러 로그나 문서처럼 긴 텍스트 덩어리를 붙여넣을 때, 어디서부터 어디까지가 '붙여넣은 내용'이고 어디가 '내 지시'인지 코덱스가 헷갈릴 수 있습니다. 이때 붙여넣는 부분을 <text> ... </text> 같은 태그로 감싸 주면, 에이전트가 경계를 또렷이 알아봅니다. 컨텍스트 엔지니어링의 작지만 강력한 프로 팁입니다.
긴 텍스트를 태그로 감싸는 예
아래 <text> 안은 서버가 뱉은 에러 로그야. 원인을 분석하고 고쳐 줘.
<text>
TypeError: Cannot read properties of undefined (reading 'id')
at renderTask (app.js:42)
at ...
</text>
4. 세션 관리 — 이어갈까, 새로 시작할까
터미널을 끄지 않고도 대화를 갈아탈 수 있습니다. /resume 는 저장된 지난 대화를 다시 불러오고, /new 나 /clear 는 깨끗한 새 대화를 시작합니다. 중요한 건, 이어가는 게 항상 좋은 건 아니라는 점입니다. 예전 세션이 잡음으로 가득 차 있으면 오히려 방해가 되니, 그럴 땐 과감히 새로 시작하세요.
세션 판단: 이어갈까 vs 새로 시작할까
/resume
- 예전 대화를 그대로 불러옴 (맥락 유지)
- 단점: 대화가 지저분·비대하면 오히려 헷갈리게 함
지금 이어서 쓸 '살아있는 맥락'이 있을 때
/new · /clear
- 깨끗한 새 대화 시작 (터미널은 안 꺼짐)
- 잡음 털고 새 출발
이어갈 살아있는 맥락이 없을 때
맥락이 재산이면 /resume, 잡음이면 /new. '무조건 이어가기'가 정답은 아닙니다.
이 네 가지 통로 — 이미지, 웹 검색, XML 태그, 세션 관리 — 를 습관으로 만들면 같은 모델이라도 결과물이 눈에 띄게 좋아집니다. 다음 레슨에서는 '말을 어떻게 거느냐', 즉 프롬프트의 명확성을 다룹니다.