OpenAI Codex cli

TMT

πŸ’‘ OpenAI Codex CLI μ†Œκ°œ

OpenAI Codex CLIλŠ” ν„°λ―Έλ„μ—μ„œ AIλ₯Ό ν™œμš©ν•˜μ—¬ μ½”λ“œ 생성, μˆ˜μ •, 파일 관리 등을 ν•  수 μžˆλŠ” λ„κ΅¬μž…λ‹ˆλ‹€. ChatGPT μˆ˜μ€€μ˜ μžμ—°μ–΄ 이해λ₯Ό 톡해 μ½”λ“œ μž‘μ„±, μˆ˜μ •, λ¦¬νŒ©ν† λ§ 등을 μˆ˜ν–‰ν•  수 있으며, 터미널 기반 μ›Œν¬ν”Œλ‘œμš°μ— μ ν•©ν•˜κ²Œ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ‹¨μˆœνžˆ μ½”λ“œ 생성을 λ„˜μ–΄ μ‹€μ œλ‘œ νŒŒμΌμ„ μˆ˜μ •ν•˜κ±°λ‚˜ μ‹€ν–‰ν•˜μ—¬ κ²°κ³Όλ₯Ό 확인할 수 μžˆλŠ” κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.


πŸš€ Codex CLI μ£Όμš” κΈ°λŠ₯

  1. μ½”λ“œ 생성 및 μˆ˜μ •

    • μžμ—°μ–΄λ‘œ μ½”λ“œ μž‘μ„± μš”μ²­:

      codex "create a simple REST API using FastAPI"
    • μ½”λ“œ μˆ˜μ • μš”μ²­:

      codex "refactor the Dashboard component to use React Hooks"
    • νŠΉμ • μ½”λ“œ 파일 μ„€λͺ…:

      codex "explain utils/date.ts"
  2. μžλ™ μ‹€ν–‰ λͺ¨λ“œ

    • Suggest λͺ¨λ“œ (κΈ°λ³Έ): μ½”λ“œ μ œμ•ˆλ§Œ ν•˜κ³ , μ‚¬μš©μž 확인 ν›„ μ‹€ν–‰.

    • Auto Edit λͺ¨λ“œ: μ½”λ“œ μˆ˜μ •κΉŒμ§€ μžλ™μœΌλ‘œ μ‹€ν–‰ν•˜λ˜, λͺ…λ Ήμ–΄ 싀행은 승인 ν•„μš”.

    • Full Auto λͺ¨λ“œ: 파일 μˆ˜μ • 및 λͺ…λ Ήμ–΄ 싀행을 μžλ™μœΌλ‘œ 처리 (λ„€νŠΈμ›Œν¬ λΉ„ν™œμ„±ν™”).

      codex --approval-mode full-auto "generate unit tests for app.js"
  3. 파일 관리

    • 파일 이동/이름 λ³€κ²½ 등을 터미널 λͺ…령어와 κ²°ν•©ν•˜μ—¬ μˆ˜ν–‰:

      codex "Bulk-rename *.jpeg -> *.jpg with git mv"
  4. λ³΄μ•ˆ λͺ¨λΈ

    • 기본적으둜 λ„€νŠΈμ›Œν¬λ₯Ό λΉ„ν™œμ„±ν™”ν•˜μ—¬ μ™ΈλΆ€λ‘œλΆ€ν„° 격리된 μƒνƒœλ‘œ μ½”λ“œ μ‹€ν–‰.
    • macOS: sandbox-execλ₯Ό μ‚¬μš©ν•˜μ—¬ κΆŒν•œμ„ μ œν•œ.
    • Linux: Dockerλ₯Ό μ‚¬μš©ν•˜μ—¬ λ„€νŠΈμ›Œν¬λ₯Ό 격리.
  5. CI/CDμ™€μ˜ 연동

    • CI νŒŒμ΄ν”„λΌμΈμ—μ„œ μ‚¬μš© κ°€λŠ₯:

      - name: Update changelog via Codex
        run: |
          npm install -g @openai/codex
          export OPENAI_API_KEY="${{ secrets.OPENAI_KEY }}"
          codex -a auto-edit --quiet "update CHANGELOG for next release"
  6. λ‹€μ–‘ν•œ AI 제곡자 지원

    • OpenAI 뿐만 μ•„λ‹ˆλΌ Azure, OpenRouter, Gemini, Ollama λ“± λ‹€μ–‘ν•œ AI λͺ¨λΈ μ‚¬μš© κ°€λŠ₯.

    • ν™˜κ²½ λ³€μˆ˜λ‘œ API ν‚€ μ„€μ •:

      export OPENAI_API_KEY="your-api-key-here"
      export AZURE_OPENAI_API_KEY="your-azure-api-key-here"
  7. 디버깅 지원

    • 디버깅 λͺ¨λ“œ ν™œμ„±ν™”:

      DEBUG=true codex
    • CLI의 문제 해결을 μœ„ν•œ 둜그λ₯Ό μƒμ„Ένžˆ 확인 κ°€λŠ₯.


πŸ› οΈ μ‚¬μš© μ˜ˆμ‹œ

  1. μ½”λ“œ 생성

    codex "create a Python script that reads a CSV and prints the average value"
    • Python 슀크립트λ₯Ό μƒμ„±ν•˜μ—¬ CSV νŒŒμΌμ„ 읽고 평균값을 좜λ ₯ν•˜λŠ” μ½”λ“œ 생성.
    • 생성 ν›„ print둜 평균값을 ν™•μΈν•˜λŠ” λ‘œμ§κΉŒμ§€ 포함.
  2. μ½”λ“œ μˆ˜μ •

    codex "convert this class-based component to a functional component"
    • κΈ°μ‘΄ React ν΄λž˜μŠ€ν˜• μ»΄ν¬λ„ŒνŠΈλ₯Ό ν•¨μˆ˜ν˜• μ»΄ν¬λ„ŒνŠΈλ‘œ λ³€ν™˜ν•˜μ—¬ μˆ˜μ •.
  3. 파일 λ³€κ²½

    codex "rename all .txt files to .md"
    • ν˜„μž¬ λ””λ ‰ν† λ¦¬μ˜ λͺ¨λ“  .txt νŒŒμΌμ„ .md둜 λ³€κ²½.
  4. μ½”λ“œ 리뷰 μžλ™ν™”

    codex "analyze this codebase for potential security vulnerabilities"
    • μ½”λ“œλ² μ΄μŠ€λ₯Ό λΆ„μ„ν•˜μ—¬ 잠재적 λ³΄μ•ˆ 취약점 리포트 생성.

🧩 SDK처럼 μ‚¬μš©ν•˜κΈ°

Codex CLIλ₯Ό SDK처럼 μ‚¬μš©ν•˜μ—¬ μžλ™ν™” μ›Œν¬ν”Œλ‘œμš°μ— 톡합할 수 μžˆμŠ΅λ‹ˆλ‹€.

  1. ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ Node.js μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ Codexλ₯Ό λͺ…λ Ήμ€„λ‘œ ν˜ΈμΆœν•˜μ—¬ μ½”λ“œ μžλ™ 생성:

    const { exec } = require("child_process");
    
    exec('codex "generate a REST API in Python"', (err, stdout, stderr) => {
      if (err) {
        console.error(`Error: ${stderr}`);
        return;
      }
      console.log(`Generated Code: ${stdout}`);
    });
  2. CI νŒŒμ΄ν”„λΌμΈμ—μ„œ μ‚¬μš©

    • GitHub Actionsλ₯Ό μ‚¬μš©ν•˜μ—¬ μ½”λ“œ μˆ˜μ • 및 리뷰 μžλ™ν™”:

      - name: Automated Code Review
        run: |
          npm install -g @openai/codex
          export OPENAI_API_KEY="${{ secrets.OPENAI_KEY }}"
          codex -a auto-edit "review the recent changes for potential bugs"
    • μžλ™ 리뷰 ν›„ μˆ˜μ • 사항을 Git에 μ»€λ°‹ν•˜λ„λ‘ μ„€μ •.

  3. 슀크립트 μž‘μ„± 및 μ‹€ν–‰ Codexλ₯Ό 톡해 μ½”λ“œλ₯Ό μž‘μ„±ν•˜κ³  ν…ŒμŠ€νŠΈκΉŒμ§€ μžλ™μœΌλ‘œ μ§„ν–‰:

    codex "generate a Jest test for add.js"
    • ν…ŒμŠ€νŠΈ 파일 생성 ν›„ npm test둜 μžλ™ μ‹€ν–‰ν•˜μ—¬ κ²°κ³Ό 확인.

πŸ’‘ ν™œμš© 아이디어

  1. μ½”λ“œ λ¦¬νŒ©ν† λ§ μžλ™ν™”

    • μ½”λ“œλ² μ΄μŠ€ 전체λ₯Ό λΆ„μ„ν•˜μ—¬ λΉ„νš¨μœ¨μ μΈ 뢀뢄을 μ°Ύμ•„ μˆ˜μ •.
  2. ν…ŒμŠ€νŠΈ μ½”λ“œ 생성

    • ν•¨μˆ˜λ³„λ‘œ μžλ™ ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μƒμ„±ν•˜μ—¬ 컀버리지 ν™•μž₯.
  3. λ¬Έμ„œ μžλ™ 생성

    • ν•¨μˆ˜ μ„€λͺ… 및 μ½”λ“œ ꡬ쑰λ₯Ό μžλ™μœΌλ‘œ λ¬Έμ„œν™”ν•˜μ—¬ 개발 κ°€μ΄λ“œ μž‘μ„±.
  4. λ³΄μ•ˆ 감사

    • μ˜€ν”ˆμ†ŒμŠ€ ν”„λ‘œμ νŠΈμ—μ„œ 취약점 탐지 및 패치 μ œμ•ˆ.
  5. μ‹€μ‹œκ°„ ν”Όλ“œλ°±

    • μ½”λ“œλ₯Ό μž‘μ„±ν•˜λ©΄μ„œ AI ν”Όλ“œλ°±μ„ λ°›μ•„ 더 λ‚˜μ€ μ½”λ“œ μž‘μ„± μœ λ„.

βœ… 정리

Codex CLIλŠ” κ°œλ°œμžκ°€ 터미널 ν™˜κ²½μ—μ„œ AI의 κ°•λ ₯ν•œ μ½”λ“œ 생성을 ν™œμš©ν•  수 μžˆλ„λ‘ ν•΄μ€λ‹ˆλ‹€. λ‹€μ–‘ν•œ AI λͺ¨λΈκ³Ό μœ μ—°ν•˜κ²Œ μ—°λ™λ˜λ©°, μžλ™ν™”λœ μ½”λ“œ μž‘μ„± 및 μˆ˜μ •μ— μ ν•©ν•©λ‹ˆλ‹€. SDK처럼 ν™œμš©ν•˜μ—¬ μ½”λ“œ μžλ™ν™”μ™€ CI/CD νŒŒμ΄ν”„λΌμΈμ—μ„œ ν™œμš©ν•  수 μžˆμ–΄ 맀우 μœ μš©ν•©λ‹ˆλ‹€. 터미널을 많이 μ‚¬μš©ν•˜λŠ” 개발자라면 Codex CLIλ₯Ό 톡해 AI 기반 μ½”λ“œ μž‘μ„±μ˜ μƒˆλ‘œμš΄ κ°€λŠ₯성을 νƒν—˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

Edit this page

On this Page