검색

레이블이 coding agent인 게시물을 표시합니다. 모든 게시물 표시
레이블이 coding agent인 게시물을 표시합니다. 모든 게시물 표시

2026년 6월 12일

사용기 - CodeGraph 사용하여 Codex 가 코드를 구조화된 코드 그래프로 이해하게 만들기

AI 코딩 도구를 사용하면 자주 경험하는 문제는 "프로젝트 구조를 파악하는 데 시간이 많이 걸린다" 였다. 특히 멀티 모듈이나 대규모 코드로 구성된 프로젝트의 경우 기존 소스를 검색하여 파악하는데 많은 시간이 걸린다. 

CodeGraph 는 소스 코드를 분석해서 코드베이스를 그래프 형태로 인덱싱하는 오픈소스 프로젝트이다. 


CodeGraph는 AI 코딩 에이전트가 프로젝트 소스코드를 매번 grep, find, Read로 처음부터 탐색하지 않도록, 코드베이스를 미리 인덱싱해 코드 지식 그래프로 제공하는 도구다. 로컬 코드베이스를 분석해 .codegraph/ 디렉터리에 인덱스를 저장하고, Codex CLI, Claude Code, Cursor, Gemini CLI, Antigravity IDE 같은 AI 에이전트가 MCP를 통해 이 그래프를 조회할 수 있도록 해준다. 공식 설명에서도 CodeGraph는 tree-sitter 기반으로 코드베이스를 파싱하고, 심볼·엣지·파일 정보를 SQLite/FTS5에 저장하며, MCP를 통해 AI 에이전트에 제공하는 로컬 우선 코드 인텔리전스 도구라고 설명한다.


CodeGraph 는 AST(Abstract Syntax Tree) 결과를 이용하여 코드 그래프를 만들어 사용하고 있는데 관련하여 2026년 arXiv 논문 "Codebase-Memory:Tree-Sitter-Based Knowledge Graphs for LLM Code Exploration via MCP" 에 따르면Tree-sitter 기반 코드 지식 그래프 + MCP 방식이 **토큰은 10배 적게, tool call은 2.1배 적게 사용했지만, 답변 품질은 파일 탐색형 agent 92% 대비 83%**였다고 보고한다. 즉, 그래프 기반 탐색은 효율성은 높지만, 원본 파일을 충분히 읽는 방식보다 품질이 낮아질 수 있다는 문제를 보여주고 있다.

CodeGraph는 이런 품질 이슈를 “자동 정답화”로 해결하지 않고, AST 기반 그래프 + context/trace/impact + 원본 body 제공으로 사실 확인 비용을 줄이는 방식으로 완화하고 있다.


1. 설치하기 

 환경

  • Model : MacBook Pro (14-inch, 2021)
  • CPU : Apple M1 Pro
  • MENORY : 16GB
  • DISK : 512 GB SSD
  • OS : macOS 15.3.1 (24D70)
  • AI Coding Agent : Codex

설치는 npm 을 사용하여 전역으로 설치하는 방식을 사용했다. (여러 프로젝트에서 사용할 수 있도록)

npm install -g @colbymchenry/codegraph


설치 이후에는 다음 명령으로 확인 할 수 있다. 

codegraph --version

which codegraph


2. AI 코딩 에이전트에 MCP 연결

CodeGraph는 MCP 서버로 동작한다. 따라서 Codex, Claude Code, Cursor 같은 AI 코딩 도구에서 사용하려면 먼저 MCP 설정을 연결해야 한다. Codex 를 주력으로 사용하고 있어 Codex 에 MCP 로 등록했다. 

codegraph install

이 명령은 현재 개발환경에 설치된 AI 에이전트를 감지하고, CodeGraph MCP 서버 설정을 자동으로 추가한다. 공식 README 기준으로 자동 설정 대상에는 Claude Code, Cursor, Codex CLI, opencode, Hermes Agent, Gemini CLI, Antigravity IDE, Kiro 등이 포함된다. 

기본적으로 설치는 전역으로 설치하고 각 프로젝트 경로에서 초기화를 해주것이 좋다. (여러 프로젝트에서 사용할 수 있게)

성공적으로 연결되었다면 아래와 같이 확인하거나 codex 도구에서 /mcp 명령으로 확인 할 수 있다. 

grep -A 3 -B 1 "codegraph" ~/.codex/config.toml


 Codex 앱에서 /mcp 입력


3. 로컬 프로젝트 초기화 및  인덱스 생성

로컬 프로젝트 루트로 이동하여 init 명령을 사용하여 초기화를 실행 합니다. 최초 초기화인 경우 -i 옵션을 사용하여 코드 분석 인덱싱까지 함께 진행하는 것이 일반적이다. 

codegraph init -i


코드가 추가 되거나 수정되면 index 명령을 사용하여 인덱스를 갱신한다. 

codegraph index

 status 명령으로 초기화 또는 인덱싱 상태를 확인할 수 있다. 

codegraph status


4. 사용 방법





5. 사용 후기

CodeGraph 을 코덱스에 사용한 결과 코드 검색 속도는 아주 빨라졌다. 작업 하기 전에 관련 코드를 검색하는 작업을 하는 것이 일반적인데 codegraph 을 사용하여 검색하고 해당 파일들을 기준으로 수정작업을 진행하기 때문에 상당한 속도 개선은 있는 것 같다.

추가로 CodeGraph 는 아주 빠른 속도록 업데이트 되고 있기 때문에 다음과 같이 설치된 버전과 최신 버전을 확인해서 
echo "installed: $(codegraph --version)"
echo "latest:    $(npm view @colbymchenry/codegraph version)"

최신 버전으로 업데이트 할 수 있다. (전역 설치의 경우에)
npm update -g @colbymchenry/codegraph
CodeGraph 버전을 업데이트했다면 필수는 아니지만 최신 분석 로직 반영을 위해서 index 을 다시 실행한는 것이 좋다. 

codegraph index

codegraph status


2026년 3월 5일

사용기 - 윈도우에서 AI 코딩 사용하기 (Codex)

과거에는 개발자가 직접 코드를 작성하고 디버깅하는 방식이 일반적이었으나, 현재는 AI가 코드 생성, 테스트, 디버깅, 문서 작성 등 다양한 개발 작업을 지원하는 환경으로 전환되고 있다. 특히 AI 코딩 도구와 에이전트 기반 개발 환경의 확산으로 인해 개발 생산성을 크게 향상시킬 수 있으며, 복잡한 시스템 개발에서도 효율적인 작업이 가능해지고 있다.

이러한 변화에 따라 많은 개발 조직에서는 AI 기반 개발 도구를 적극적으로 도입하고 있으며, 개발 환경 또한 이러한 도구들이 원활하게 동작할 수 있도록 재구성하고 있다. 특히 AI 기반 개발 환경에서는 코드 분석, 자동 테스트, 컨테이너 실행, 인프라 구성 등 다양한 작업이 동시에 이루어지기 때문에 안정적이고 일관된 개발 환경이 중요하다.

많은 기업에서 개발자의 작업 환경으로 Windows 운영체제를 사용하고 있으나, 실제 소프트웨어 실행 환경은 대부분 Linux 기반 서버나 컨테이너 환경에서 운영되는 경우가 많다. 이러한 환경 차이는 개발 단계에서 다양한 문제를 발생시킬 수 있으며, 특히 라이브러리 의존성, 파일 시스템 차이, 실행 환경 차이 등으로 인해 개발과 운영 환경 간의 불일치가 발생할 가능성이 있다.

이러한 문제를 해결하기 위해 Windows 환경에서는 WSL(Windows Subsystem for Linux)을 활용한 개발 환경 구성이 널리 사용되고 있다.

WSL은 Windows 운영체제 내부에서 Linux 환경을 실행할 수 있도록 지원하는 기능으로, 개발자는 Windows 환경을 유지하면서도 Linux 기반 개발 도구와 환경을 그대로 사용할 수 있다. 이를 통해 개발자는 Linux 서버 환경과 동일한 개발 환경을 로컬에서 구축할 수 있으며, 다양한 오픈소스 개발 도구와 패키지를 보다 안정적으로 사용할 수 있다.

특히 AI 기반 개발 환경에서는 Python 기반 AI 도구, 컨테이너 환경, 패키지 관리 시스템 등 Linux 환경에 최적화된 기술들이 많이 사용된다. 예를 들어 AI 모델 실행 환경, 벡터 데이터베이스, 컨테이너 기반 서비스 등은 Linux 환경에서 보다 안정적으로 동작하는 경우가 많다. WSL을 활용하면 이러한 기술을 Windows 환경에서도 동일하게 사용할 수 있어 개발 환경의 일관성을 확보할 수 있다.

또한 WSL 환경에서는 Docker, Kubernetes, Git, Python 패키지 관리자 등 다양한 개발 도구를 Linux 환경과 동일하게 사용할 수 있으며, 이는 AI 기반 개발 도구와의 호환성을 높이는 데에도 중요한 역할을 한다. 최근 등장한 AI 기반 개발 도구들 또한 Linux 환경을 기본 실행 환경으로 가정하고 설계되는 경우가 많기 때문에, WSL 기반 개발 환경은 AI 코딩 도구의 활용성을 높이는 데에도 효과적이다.

개발자는 Windows 환경에서 Visual Studio Code와 같은 개발 도구를 사용하면서도, 실제 코드 실행과 빌드 작업은 WSL 내부의 Linux 환경에서 수행할 수 있다. 이러한 방식은 Windows의 편리한 사용자 환경과 Linux의 안정적인 개발 환경을 동시에 활용할 수 있다는 장점을 가진다. 특히 Visual Studio Code는 WSL과의 통합 기능을 제공하여 Windows에서 실행되는 IDE가 WSL 내부의 Linux 환경에 직접 연결되어 개발 작업을 수행할 수 있도록 지원한다.

이와 같은 구조는 AI 기반 개발 환경에서도 매우 효과적으로 활용될 수 있다. 예를 들어 AI 코딩 도구를 통해 생성된 코드가 Linux 기반 컨테이너 환경에서 바로 테스트되도록 구성하거나, 자동화된 빌드 및 테스트 프로세스를 Linux 환경에서 실행하도록 설정할 수 있다. 이러한 환경은 실제 운영 환경과 유사한 개발 환경을 제공함으로써 개발 과정에서 발생할 수 있는 환경 차이를 최소화하는 데 도움을 준다.



결론적으로 AI 기반 개발 환경을 도입하는 과정에서는 단순히 AI 도구를 사용하는 것뿐만 아니라, 이러한 도구들이 안정적으로 동작할 수 있는 개발 환경을 구축하는 것이 중요하다. Windows 환경을 사용하는 개발 조직의 경우 WSL을 활용한 Linux 기반 개발 환경을 함께 구성함으로써 개발 환경의 일관성을 확보하고, AI 기반 개발 도구와의 호환성을 높이며, 전체 개발 생산성을 향상시킬 수 있다. 이러한 접근 방식은 향후 AI 중심 개발 환경으로의 전환 과정에서도 중요한 기반이 될 것으로 기대된다.



WSL 환경 설치하기 

윈도우에서 "PowerShell" 을  검색창에 입력하면 설치된 경우 PowerShell 터미널을 그렇지 않는 경우는  설치를 위한 Microsoft Store 로 이동한다. 설치를 완료하면 열기 버튼이 활성화 되는데 이를 클릭해도 "PoswerShell" 이 실행된다.


코딩 에이전트(Codex CLI 같은 것)나 레포 자동 빌드/테스트는 윈도우보다 리눅스 환경이 명령 실행/경로/권한 문제가 적어서 안정적이라고 한다. 이런 이유에서 코딩 에어전트 이용을 위해서는 “윈도우에선 WSL2(Windows Subsystem for Linux 2) 권장” 이 자주 언급된다.

 설치 여부는 " wsl -l -v" 명령을 PowerShell 에 입력하여 확인 할수 있다.

wsl --status

wsl -l -v


가장 쉬운 설치 방법은 "PowerShell" 을 관리자 계정으로 실행하고  "wsl -- install" 명령으로 설치 할 수 있다.  특정 배포판 설치도 가능한데 설치 가능 배포한 목록은 "wsl --list --online" 명령으로 확인 가능하다. 이때 wsl 이 설치되어 있지 않았다면 자동 설치한다.


명령을 실행해보면 상당한 수의 배폰본은 지원하고 있음을 알 수 있다. 보통은 우분투를 가장 많이 사용한다고 하며 디폴터 설치 배포본 역시 우분투이다.


설치 전에 상태 확인이 필요한데 " wsl --status" 명령으로 확인 할 수 있다. 


WSL1(리눅스 명령을 윈도우가 번역하여 수행), WSL2 (가상화를 통한 리눅스 지원) 에 대한 활성화 작업이 필요하다. 지금 위의 환경에서는 모두 비활성화 상태이다.

활성화는 PowerShell 을 관리자 권한으로 실행하고 아래 명령을 입력하면 된다.

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

또는 시작 메뉴에서 "Windows 기능 켜기/끄기 를 실행하고 아래 기능을 채크 한다음 윈도우를 재시작 한다.

  • 가상 머신 플랫폼(Virtual Machine Platform)
  • Linux용 Windows 하위 시스템(Windows Subsystem for Linux)

설치는 PowerShell 을 관리자 권한으로 실행하고  "wsl --install" , "wsl --install -d Ubuntu" 명령으로 할 수 있다. 


설치가 완료되면 계정 생성을 진행하게 된다.  계정생성이 완료되면 가장 먼저 시스템을 업데이트 한다.
sudo apt update
sudo apt upgrade -y


WSL 환경에서 개발 도구 설치하기 

다음 단계는 AI Agent 기반 개발 환경을 만들기 위한 개발 툴 체인을 설치하는 것이다.

1) 기본 시스템 도구
항목설치 목적설치 명령확인 명령
curlAPI 호출 및 다운로드sudo apt install -y curlcurl --version
wget파일 다운로드sudo apt install -y wgetwget --version
unzip / zip압축 파일 처리sudo apt install -y unzip zip
git소스 코드 버전 관리sudo apt install -y gitgit --version

2) 자바 개발 환경
항목설치 목적설치 명령확인 명령
OpenJDK 17자바 실행 환경sudo apt install -y openjdk-17-jdkjava -version
GradleJava 빌드 도구sudo apt install -y gradlegradle -v

3) AI 코딩 Agent
항목설치 목적설치 명령확인 명령
Codex CLIAI 코드 생성 및 수정npm install -g @openai/codexcodex --help
AiderAI 코드 수정 도구pip install aider-chataider --help

DE(VS Code)에서 Codex Agent를 설치한다면 WSL에 Codex CLI를 반드시 설치할 필요는 없지만 CLI 가 할 수 있는 작업이 더 많기 때문에 보통은 같이 사용한다. (npm 이 디폴트로 설치되어 있지 않아 sudo apt intall -y npm 명령으로 설치가 필요하다.)

추가로 Ubuntu 22.04 이후부터는 직접 시스템에서 사용하는 Python 을 변경하지 못하게 막고 있어 pipx 사용이 가장 안전한 방법이다. 
sudo apt update
sudo apt install -y pipx python3-venv
pipx ensurepath
터미널을 다시 실행하고 aider 을 설치한다. 
pipx install aider-chat
다음으로 자신의 환경에 필요한 빌드 도구를 설치한다.  Visual Studio Code는  https://code.visualstudio.com/ 에서 다운로드하여 설치 할 수 있다.


IED 도구 vscode 을 사용 중이라면 WSL 확장을 아래 명령으로 설치하고  PowerShell 에서 프로젝트 로 이동하고 code . 을 입력하여 VS 코드 리눅스 환경에서 실행할 수 있다.   
code --install-extension ms-vscode-remote.remote-wsl
VSCode 에서 Extenctions (Ctrl+Shift+X) 를 크릭하여 wsl 을 검색하여 설치할 수 도 있다.


VSCode 기반의 AI 코딩을 위해서 아래의 확장들은 거의 필수이다. (AI Agent 만 선택)

① Remote - WSL
② GitLens  , SVN (vscode-svn extension)
OpenAI Codex (선택)
GitHub Copilot (선택)
Docker
⑥ 기타 : Gradle for Java 

AI 코딩 시작하기

먼저 레파지토리에서 프로젝트를 가져온다. WSL 환경에 소스를 가져와야 하기 때문에 workspace 폴더를 생성하고 여기에서 다음 명령으로 소스를 가져온다. 
  1. GitLab 프로젝트 페이지 → Clone 버튼에서 URL을 복사
  2. git clone <HTTPS_URL>

이제 VS 코드를 실행하고 Ctrl + Shift + P 을 입력하여 명령 팔레트를 열고 WSL 을 입력하여 명령 목록에서 클릭하여 WSL환경에 연결한다.  


이제 폴더를 열면 된다. 보통은 "Do you trust the authors of this workspace?" 메시지가 나오는데 신뢰한다고 답을 하면 된다.

이제 좌측 아이콘에서 Codex 클릭하고 로그인 / 인증키 입력 한다. CLI와 IDE 확장은 동일한 로그인 정보를 공유하도록 설계되어 있어 터미널에서도 CLI 을 사용이 가능하다.

터미널에서 codex 을 실행하고 다음에 아래와 같은 간단한 명령으로 코드를 리뷰하게 할 수 있다.
"review this code focusing on security issues" 


Codex 앱 사용하기

Codex 사이트(https://openai.com/ko-KR/codex/)를 방문하면 맥/윈도우 용 앱을 다운로드 할 수 있다.  (2026.03.04 일 부터 윈도우지원) 

윈도우용 Codex 앱은 PowerShell + Windows Sandbox (네이티브 센트박스) 기반으로 에어전트가 작업을 실행하며 필요하면 WSL 에서 실행하도록 구성하여 사용할 수 있다.

앞에서 설치한 VS Code 확장(Codex in IDE)  + WSL 와 함께 아래와 같이 역할을 구분하여 사용할 수 있다. 
  • VS Code 확장(Codex in IDE) : “에디터 안에서” 코드 편집/대화 중심
  • Codex 앱 : “에이전트 관제센터”처럼 프로젝트/작업을 여러 개 굴리고, Windows Sandbox/PowerShell 또는 WSL 중 선택해 실행  

Codex 앱에 프로젝트를 추가할 떄는 WSL 의 경로를 사용하는 것이 좋다.  앞서 WSL 에서 생성한 프로젝트는 윈도우 파일 탐색기의 Linux 아이콘을 클릭하여 해당 프로젝트 경로를 찾아 추가할 수 있다.


프로젝트 추가를 위한 가장 쉬운 방법은 1) PowerShell 에서 wsl 명령으로 WSL 에 연결하고 해당 프로젝트로 이동하여 2) explorer.exe . 명령을 입력하면 탐색기로 리눅스 파일시스템을 확인 할 수 있다. 3) 파일 탐색기에 보여지는 이경로로 프로젝트를 추가하면 된다. 


에어전트 환경 모드는 좌측 하단의 설정 > 일반 의 Agent environment 설정에서 Windows Subsystem for Linux 와 Windows Native 를 선택할 수 있게 되어 있다.

간단하게 "문서를 확인해서 프로젝트 구조 및 향후 과제를 확인해줘." 프롬프트를 입력해본댜. (모델은 GPT 5.3 Codex , 낮음 을 선택했다.

 

다음은 전체 개발 환경을 도식화 한 것이다.