Integrate OpenAI Codex with TypeScript Node.js Apps
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

OpenAI Codex를 TypeScript(Node.js) 앱에 통합하는 방법

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

TypeScript/Node.js 개발자, AI 코드 어시스턴트 도구를 활용하고자 하는 프로그래머

핵심 요약

  • Codex CLI는 로컬에서 실행되는 AI 기반 터미널 에이전트로, npm install을 통해 설치 가능
  • JS SDK는 Codex CLI와의 상호작용을 단순화하며, CodexSDK를 통해 stdin/stdout 관리 및 이벤트 처리 가능
  • 사용 예시: codex "write unit tests for utils/date.ts"로 단일 명령어로 테스트 생성 및 실행 가능
  • 지원 기능: 이미지 처리, Git 통합, 모델 제공자 변경(예: Gemini, Anthropic)

섹션별 세부 요약

1. Codex CLI 개요

  • 기능:

- 텍스트, 스크린샷, 다이어그램 입력 지원

- 프로젝트 구조 및 의존성 분석

- Git 커밋, PR 생성, 테스트 실행 가능

- 여러 모델 제공자(Gemini, Groq 등) 지원

  • 장점: 로컬 실행으로 보안 강화, 자동화된 코드 수정 및 테스트

2. JS SDK 설치 및 구성

  • 설치 명령어:

```bash

npm i -g @openai/codex@native

npm install codex-js-sdk

```

  • SDK 초기화 예시:

```typescript

import { CodexSDK, LogLevel } from 'codex-js-sdk';

const sdk = new CodexSDK({

cwd: './my-project',

logLevel: LogLevel.DEBUG,

codexPath: './node_modules/.bin/codex',

env: { OPENAI_API_KEY: 'sk-proj-...' }

});

```

  • 필수 구성 요소: cwd, logLevel, codexPath, env

3. 이벤트 처리 및 명령어 전송

  • 이벤트 핸들러 설정:

```typescript

sdk.onResponse((response: CodexResponse) => {

if (response.msg.type === 'task_complete') {

sdk.stop();

process.exit(0);

}

});

```

  • 사용자 요청 전송:

```typescript

const requestId = sdk.sendUserMessage([

{ type: 'text', text: 'What is in this picture?' },

{ type: 'image', image_url: 'data:image/png;base64,...' }

]);

```

4. 명령 실행 및 변경 확인

  • 명령 실행 승인:

```typescript

sdk.handleCommand(requestId, true); // 승인

sdk.handleCommand(requestId, false); // 거부

```

  • 파일 변경 승인:

```typescript

sdk.handlePatch(requestId, true); // 승인

```

5. 설치 및 실행 제한 사항

  • 필수 의존성:

- ripgrep 설치(맥OS, Ubuntu, Rust)

  • 버전 주의사항:

- Native(Rust) 버전만 JS SDK와 호환 가능

- API 프로토콜이 빠르게 변경될 수 있음

결론

OpenAI Codex CLI와 JS SDK를 활용하면 로컬에서 AI 기반 코드 수정, 테스트 실행, Git 통합 등을 간단한 명령어로 수행할 수 있으며, assistant-ui 또는 copilotkit을 통해 챗 인터페이스 기반의 코딩 어시스턴트 서비스를 빠르게 구축할 수 있습니다.