Claude Code와 Cursor — AI 코딩 에이전트와 함께 개발하기
이 토픽을 마치면
편 #9의 에이전트 원리를 가장 성숙한 실무 응용 인 AI 코딩 에이전트에서 어떻게 만나는지 배웁니다. Claude Code·Cursor·Windsurf·GitHub Copilot의 실전 사용법과 각 도구의 강점, 그리고 바이오 연구실에서 이 도구들을 어떻게 활용하는지 정리.
Phase 3 도구 편 세 번째. 2025년 기준으로 소프트웨어 개발 방식을 근본적으로 바꾸고 있는 도구들. 바이오 연구실도 이 흐름을 활용하면 데이터 분석·파이프라인 구축·논문 코드 재현이 극적으로 빨라집니다.
AI 코딩 에이전트가 하는 일
편 #9에서 이야기했듯이 에이전트 = LLM + Tools + Loop + Memory. AI 코딩 에이전트는 이 구조가 개발 환경에 특화된 형태.
필수 도구.
- 파일 시스템: 파일 읽기·쓰기·검색.
- 터미널 실행: 셸 명령·테스트 실행.
- Git: 상태 확인·커밋·diff.
- 웹 접근: 문서 조회·라이브러리 정보.
- 에디터 통합: 커서 위치·선택된 코드 인식.
이 도구들로 에이전트가 실제로 코드를 짜고·실행하고·디버깅할 수 있게 됩니다.
전형적 태스크.
- 새 기능 구현.
- 버그 수정.
- 테스트 작성.
- 리팩토링.
- 문서 작성.
- 코드 리뷰.
- 마이그레이션.
바이오 실무 태스크.
- scRNA-seq 분석 파이프라인 스크립트.
- 실험 데이터 시각화 (matplotlib·plotly).
- API 통합 (PubMed·UniProt·ClinicalTrials.gov).
- Snakemake·Nextflow 워크플로.
- Jupyter 노트북 분석.
주요 도구 지도
Claude Code
Anthropic의 CLI 코딩 에이전트. 터미널에서 직접 대화.
# 프로젝트 폴더에서claude
# 대화 시작> "src/analysis.py에서 데이터 파싱 부분 리팩토링해줘"특징.
- 터미널 네이티브. 별도 GUI 없음, 어떤 에디터와도 조합 가능.
- 강력한 도구 사용. Bash·파일·git·웹 도구가 잘 통합됨.
- 긴 세션. 편 #10의 문맥 관리를 자동으로 (compaction·offloading).
- Skills·Plugins. 프로젝트별 커스텀 로직 확장.
- MCP 지원. 편 #9의 MCP 서버 연결.
바이오 사용 사례.
- 실험 데이터 폴더에서 대량 파일 처리.
- Jupyter 노트북 대신 CLI로 분석 파이프라인 개발.
- 원격 서버(HPC) SSH 세션에서 직접.
Cursor
VS Code 포크. AI 페어 프로그래밍에 특화된 IDE.
주요 기능.
- Tab 자동완성: 파일 문맥 이해한 인라인 완성.
- Cmd+K: 코드 편집 자연어 명령.
- Cmd+L (Chat): 사이드바 대화.
- Cmd+I (Composer): 여러 파일 편집 에이전트.
- Codebase indexing: 프로젝트 전체 인덱싱, 세만틱 검색.
- Rules for AI: 프로젝트별 규칙(코딩 스타일·아키텍처) 지정.
특징.
- 비주얼 IDE. VS Code 익숙한 사용자 즉시 적응.
- 인라인 편집. 특정 코드 블록 선택 후 자연어로 편집.
- 모델 선택: Claude·GPT-4o·Gemini·자체 fast model 등 선택 가능.
Windsurf (Codeium)
Cursor 계열 경쟁 IDE. Cascade 라는 에이전트 모드 유명.
차별점.
- Flows: 여러 파일에 걸친 큰 변경을 자동 계획·실행.
- Windsurf Cascade: 능동적 코드 이해 (사용자가 선택한 것뿐 아니라 관련 파일 자동 참조).
- 가격 경쟁력: Cursor 대비 낮은 편.
GitHub Copilot
Copilot Chat: 사이드바 대화. Copilot Workspace: 이슈 → 계획 → 구현 → PR을 자동화. Copilot Agent Mode: 최근 Cursor·Claude Code에 유사한 에이전트 기능.
Microsoft·OpenAI 지원. VS Code 통합 강력. 기업 규모 인프라 성숙.
기타
- Zed: 성능 우선 에디터. 최근 AI 기능 강화.
- Continue.dev: 오픈소스 코딩 확장 (VS Code·JetBrains).
- Aider: CLI 기반 오픈소스 에이전트.
- Devin (Cognition): 완전 자율 에이전트. 클라우드 실행.
Claude Code 실전 흐름
바이오 실무에서 Claude Code를 어떻게 쓰는지 구체적 예시.
시작
cd ~/lab_projectclaude첫 대화에서 프로젝트 설명 · CLAUDE.md 파일 참조. 프로젝트 규칙·구조를 에이전트가 학습.
태스크 위임
예시 1: scRNA-seq 데이터 분석 스크립트.
"
data/samples/폴더에 새 scRNA-seq h5ad 파일 5개가 있어. Scanpy로 QC · filtering · normalization · UMAP · Leiden clustering을 각 샘플에 대해 수행하고, 결과를results/{sample_id}/폴더에 저장하는 스크립트를 만들어줘. 각 샘플 결과 요약 표도 만들어."
에이전트가:
- 폴더 구조 확인 (
ls,find). - 샘플 파일 검토 (파일 크기·확장자).
- Scanpy 표준 파이프라인 스크립트 작성.
- 필요 라이브러리 확인·설치.
- 소형 샘플로 테스트 실행.
- 문제 발견 시 수정.
- 최종 스크립트 및 사용법 문서 반환.
코드 리뷰
예시 2: PR 코드 리뷰.
"이 브랜치의 변경사항을 리뷰해줘. 특히 통계 검정 부분의 다중 검정 보정 누락 있는지 봐줘."
에이전트가 git diff main으로 변경 확인, 통계 관련 부분 발견, p_adjusted 처리 누락 지적, statsmodels의 FDR 보정 코드 제안.
디버깅
예시 3: 실패한 파이프라인 디버깅.
"run_analysis.py 실행하면 3번째 샘플에서 crash 나. 로그는 logs/error.log에 있어. 원인 찾아서 고쳐줘."
에이전트가 로그 읽기 → 문제 파일 검토 → 3번째 샘플의 특이 상황(예: 0 세포 사이즈) 확인 → 예외 처리 코드 추가 → 재실행 검증.
문서 생성
예시 4: README·튜토리얼.
"이 리포지토리의 사용법 README를 작성해줘. 설치 · 데이터 준비 · 실행 · 결과 해석 순으로. 신규 랩원이 처음 접했을 때 필요한 내용 모두 포함."
프로젝트 스캔 후 종합 README 작성. 기존 스크립트에서 실제 사용 예시 추출.
Cursor 실전 흐름
Cursor를 쓰는 다른 스타일.
인라인 편집 (Cmd+K)
특정 함수를 선택하고 Cmd+K.
"이 함수에 numpy 벡터화 적용해서 for loop 제거해줘"
Cursor가 함수를 편집 제안 → 승인/거절.
사이드바 대화 (Cmd+L)
"지금 열려 있는 이 노트북에서 UMAP 시각화 색상을 세포 타입 기반으로 바꾸고 싶어"
Cursor Chat이 노트북 문맥 이해하고 코드 스니펫 제안.
Composer (Cmd+I)
큰 변경을 여러 파일에 걸쳐.
"@src/utils.py @src/analysis.py에서 config 관리를 hardcode에서 pydantic Settings 클래스로 리팩토링"
Composer가 두 파일 동시 수정, diff로 리뷰 가능.
Rules for AI
프로젝트 루트에 .cursorrules.
- 항상 type hint 사용.
- Docstring은 Google 스타일.
- Scanpy 관련 함수는 utils.scanpy_helpers 모듈로 격리.
- Test는 pytest, 커버리지 80%+.
- Bio 도메인 용어는 원어(영어) 유지, 주석은 한국어.이 규칙들이 매 대화의 시스템 프롬프트에 자동 포함.
Vibe Coding — 새로운 워크플로
Vibe Coding — 개발자가 세세한 코드 대신 의도·감각을 자연어로 표현하고 에이전트가 구현. 최근 확산되는 워크플로.
전통적 개발:
문서 읽기 → 코드 작성 → 실행 → 디버그 → 반복Vibe Coding:
자연어 요청 → 에이전트 실행 → 결과 검토 → 조정바이오 예시.
"seaborn으로 8개 유전자 발현 히트맵 그려. 유전자는 hierarchical clustering, 샘플은 원본 순서 유지. 색상은 diverging, 중심을 mean에. 결측치는 회색으로."
이 한 문장이 20~30줄 코드로 즉시 구현. 결과가 마음에 안 들면 다시 자연어로 수정.
적합한 케이스.
- 반복적 분석 스크립트 (explore-plot-refine 사이클).
- 임시 시각화·데이터 탐색.
- 프로토타입·MVP.
- 스크립트 자동화.
부적합한 케이스.
- 정확성 결정적: 임상·규제 관련. 코드 검토 필수.
- 아키텍처 결정: 시스템 설계는 인간 판단 중심.
- 보안 민감: 인증·암호화·인젝션 방어 등.
핵심 원칙. 에이전트가 짠 코드를 반드시 실행·테스트하고 결과 검토. Vibe만 봐서는 안 됨. 편 #11의 환각이 코드에서도 발생.
프로젝트 컨텍스트 관리
큰 프로젝트에서 에이전트가 전체 맥락을 이해하도록 하는 게 중요.
CLAUDE.md (Claude Code)
프로젝트 루트에 CLAUDE.md. 에이전트가 매 세션 시작 시 자동 참조.
내용 예시.
# 프로젝트 컨텍스트
## 프로젝트 목적
이 리포지토리는 단일 세포 RNA 시퀀싱 데이터의 자동화 분석 파이프라인.
## 주요 구조
- `data/`: 원본 h5ad 파일 (git 제외).
- `src/`: 파이프라인 코드.
- `notebooks/`: 탐색적 분석.
- `results/`: 실행 결과.
## 코딩 스타일
- Type hint 필수.
- Docstring: Google 스타일.
- 새 스크립트는 `src/scripts/` 아래.
## 데이터 규약
- 세포 유형 라벨은 CellTypist 명명법 우선.
- 유전자 심볼은 HGNC 최신.
## 자주 하는 작업
- 새 샘플 추가: `python src/scripts/add_sample.py {sample_id}`.
- QC 리포트 재생성: `snakemake qc_report`.
## 주의사항
- `data/raw/`는 절대 수정 금지.
- git push 전 반드시 pre-commit 실행.에이전트가 이 문서를 참조해 프로젝트 규약을 준수.
.cursorrules (Cursor)
Cursor는 .cursorrules 파일. 형식이 조금 다르지만 목적 동일.
다른 도구도 유사
Windsurf(.windsurfrules), Continue(config.json) 등 각자 규칙 파일. 프로젝트 컨텍스트 파일은 편 #7의 시스템 프롬프트를 프로젝트 지속형으로 확장한 것.
MCP 서버 통합
편 #9에서 다룬 MCP가 코딩 에이전트에서 특히 유용.
유용한 MCP 서버
Filesystem: 파일 시스템 접근 (기본). GitHub: 리포지토리·이슈·PR 조작. Slack: 팀 커뮤니케이션. Postgres: 데이터베이스 쿼리. Puppeteer: 웹 브라우저 자동화. Memory: 세션 간 지식 유지. Notion: Notion 페이지 읽기·쓰기.
바이오 특화 MCP 서버 (커스텀).
- PubMed MCP: 논문 검색·상세 조회.
- UniProt MCP: 단백질 정보.
- PDB MCP: 구조 데이터.
- 실험실 LIMS MCP: 내부 실험 관리.
MCP 서버 설정 (Claude Code 예시)
~/.claude/mcp.json:
{
"mcpServers": {
"pubmed": {
"command": "python",
"args": ["/path/to/pubmed_mcp_server.py"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"]
}
}
}에이전트가 자동으로 이 서버들의 도구를 인식·사용.
Best Practices
좋은 대화 패턴
1. 명확한 목표.
Bad: "이 코드 좀 봐줘." Good: "이 함수의 시간 복잡도가 O(n^2)인 것 같아. O(n log n)으로 개선 가능한지 봐줘."
2. 컨텍스트 제공.
Bad: "왜 안 돼?" Good: "이 스크립트가 3번째 샘플에서 crash. 로그는 여기: (붙여넣기)"
3. 검증 요구.
Bad: "리팩토링해줘."
Good: "리팩토링 후 기존 테스트 통과하는지 확인해줘. pytest tests/."
4. 계획 먼저.
Bad: "새 기능 구현해줘." Good: "새 기능 구현 계획 먼저. 이후 승인 받고 진행."
Claude Code의 Plan mode가 이걸 강제. 계획 승인 후 실행.
실수 방지
1. 파괴적 작업 확인. 파일 삭제·git force push·데이터 삭제 등은 명시 확인.
2. 테스트 자동 실행. 코드 변경 후 자동으로 테스트 실행. 실패 시 인간 개입.
3. Git commit 리뷰. 에이전트가 커밋하기 전 diff 리뷰.
4. 비용 인식. Claude Opus·GPT-4o는 토큰당 요금. 큰 세션의 예상 비용 확인.
팀 사용
공유 규칙: CLAUDE.md · .cursorrules를 git 관리.
세션 로그: 중요 결정은 문서화.
교육: 팀원에게 좋은 대화 패턴 공유.
감사: 에이전트가 만든 코드도 인간 리뷰 필수.
언제 어떤 도구를 쓰나
개인 실험·분석: Cursor + Claude Sonnet · Windsurf. IDE 익숙하면 편. 대량 자동화·CLI 워크플로: Claude Code. 터미널 세션 유지. 팀 협업 코딩: Cursor 또는 Copilot. IDE 협업 기능. MLE·연구: Cursor + Claude Code 조합. 노트북·CLI 병행. 바이오 파이프라인 (Snakemake·Nextflow): Claude Code. HPC SSH 세션에서. 신속 프로토타입: Windsurf Cascade·Cursor Composer. 대형 리팩토링: Cursor Composer 또는 Claude Code plan mode.
바이오 응용 시나리오
시나리오 1 — Snakemake 워크플로 자동화
랩의 새 실험 파이프라인을 Snakemake로 구축.
Claude Code 사용:
CLAUDE.md에 랩 표준(입력 형식·출력 규약·리소스 제한) 명시.- "이 sample sheet 기반으로 Snakemake workflow 만들어. rules는 QC·align·variant call·annotation. cluster submission 지원."
- 에이전트가 rules 파일 생성, config.yaml, cluster config 작성.
- Test run으로 검증.
- 문서 작성.
시나리오 2 — Kaggle Bio 대회
Kaggle 바이오 이미지 분류 대회 참가.
Cursor 사용:
- 데이터 탐색 (Jupyter + Cursor).
- 베이스라인 모델 (
torchvisionResNet + fine-tuning). - 데이터 augmentation 실험 (Cmd+K로 augmentation 조합 여러 개 시도).
- Ensemble·TTA 구현.
- Submission 파이프라인.
편 #12의 PyTorch 지식과 Cursor의 실시간 편집 결합.
시나리오 3 — 논문 코드 재현
최근 논문의 방법을 여러분의 데이터로 적용.
Claude Code + WebFetch:
- 논문 GitHub 링크 확인.
- 코드 리포지토리 clone.
- 환경 세팅 (requirements·conda env).
- 여러분의 데이터로 각색.
- 결과 검증.
에이전트가 논문 method 섹션을 읽고 코드와 대조. 차이 발견 시 논문 저자의 issue·PR도 참조.
핵심 정리
- AI 코딩 에이전트 = 편 #9 에이전트의 개발 환경 특화 응용.
- 주요 도구: Claude Code (CLI)·Cursor (IDE)·Windsurf·GitHub Copilot.
- 터미널 vs IDE 워크플로 선택. 프로젝트 성격·개인 취향에 따라.
- Vibe Coding: 자연어로 의도 표현. 반드시 결과 검증.
- 프로젝트 컨텍스트 파일 (
CLAUDE.md·.cursorrules)로 규약 지속. - MCP 서버로 커스텀 도구 통합. 바이오 특화 서버 구축.
- Best practices: 명확한 목표·컨텍스트·검증 요구·계획 먼저. 파괴적 작업 확인.
- 바이오 실무: Snakemake 파이프라인·Kaggle 대회·논문 재현 등에 활용.
다음 개념
- 편 #15
bio-ai-integration— Phase 4. 지금까지의 편 #1~14를 바이오 연구실 실무 워크플로에 통합.
📐 부록 — 전문가를 위한 실전 팁
난이도: 매우 어려움 (Very Hard) 대상: AI 코딩 에이전트 운영·프로덕션 도입 배경 독자
A.1 에이전트 문맥 관리 (Claude Code 관점)
Claude Code의 문맥은 편 #10에서 다룬 원리 적용.
세션 압축. 대화가 길어지면 자동 compaction. 오래된 도구 결과를 요약으로 대체.
Skills. 특정 도메인 로직을 프로젝트별 커스텀으로 정의. 예: bio-analysis skill이 scRNA-seq 표준 파이프라인 지식을 포함.
Subagents. 큰 태스크를 서브 에이전트에 위임. 각 서브가 별도 문맥 창. 편 #9 multi-agent 패턴.
A.2 Cursor의 Codebase Indexing
프로젝트 전체를 인덱싱.
절차:
- 각 파일을 청크로 나눔 (편 #8 chunking 원리).
- 임베딩 계산 (Cursor 자체 모델 또는 OpenAI).
- 벡터 DB에 저장 (로컬 또는 클라우드).
- 채팅 시 관련 코드 자동 검색·문맥 삽입.
@ 문법. @file.py, @Codebase, @Docs로 명시적 참조.
A.3 Prompt Caching 활용
편 #10 A.4에서 다룬 prompt caching이 코딩 에이전트에서 특히 유용.
- CLAUDE.md·시스템 프롬프트가 매 세션 반복 → 캐시.
- 큰 파일 반복 읽기 → 캐시.
- Anthropic ephemeral cache 자동 적용.
효과: 큰 프로젝트 세션의 비용·지연 절감.
A.4 Tool Use Loop 최적화
각 에이전트 스텝의 코스트가 곱해짐. 최적화 지점.
- Parallel tool calls: 독립 도구 호출 병렬화. Claude가 최근 지원.
- Tool result compression: 큰 결과(예: 파일 목록) 요약 후 문맥에.
- Early exit: 충분한 정보 수집 시 loop break.
- Retry with backoff: 도구 실패 시 지수 백오프.
A.5 코드 안전성 검증
에이전트가 만든 코드는 자동 검증 층 필수.
Static analysis: pyright·ruff·mypy. 타입·스타일·잠재 버그.
Test execution: pytest. 기존 테스트 통과 확인.
Security scan: bandit·safety. 취약점.
Diff review: 대량 변경은 인간이 최종 리뷰.
Claude Code의 hooks·pre-commit 통합으로 자동화.
A.6 Multi-Repo·Monorepo 전략
Monorepo. 대형 조직 표준. Bazel·Nx·Turborepo. 에이전트가 관련 부분만 인덱싱하도록 .gitignore·.cursorignore 활용.
Multi-Repo. 각 리포마다 별도 세션. 크로스 리포 변경은 순차 처리.
A.7 프롬프트 인젝션 방어 (코드 문맥)
편 #7의 인젝션 위험이 코드에서도 발생.
- README·이슈·주석에 심어진 악성 지시.
- 웹 검색 결과의 injection.
- 오픈소스 의존성 코드 안의 지시.
방어:
- 유저 요청과 파일 내용 명확 구분.
- 파일 내용의 "시스템 지시"는 무시하도록 훈련.
- Shell 실행 결과도 데이터로만.
Claude Code·Cursor 모두 훈련 시 이 위협 학습.
A.8 성능 벤치마크
SWE-Bench. 실제 GitHub 이슈 해결률. 편 #9 A.10. HumanEval·MBPP. 함수 구현 정답률. Code Reasoning benchmarks: 코드 이해·리팩토링 태스크.
2025년 기준 Claude Sonnet·Opus, GPT-4o·o3, Gemini 2.5·3 등이 상위. 실제 사용 만족도는 벤치마크 순위와 다를 수 있음.
A.9 팀 도입 전략
단계 1: 개인 사용 (12인). Cursor·Copilot로 시작.
단계 2: 팀 파일럿 (510인). 공유 규칙·workflow 정의.
단계 3: 조직 배포. 라이선스·거버넌스·감사.
리스크 관리:
- IP 유출 방지 (엔터프라이즈 플랜).
- 잘못된 코드 배포 방지 (강제 리뷰).
- 스킬 저하 방지 (지속 학습·페어링).
A.10 미래 방향
Autonomous engineering agents. 이슈만 주면 PR까지 자율 완성 (Devin 계열).
Long-horizon planning. 며칠·주 단위 프로젝트 자율 관리.
Multi-modal understanding. 스크린샷·다이어그램·비디오도 이해.
Self-improvement. 자기 코드 리뷰·개선 반복.
Bio-specific agents. 바이오 도메인 지식 내장. 실험 설계·분석·논문 작성 통합.
참고 자료
본 편의 콘텐츠·시나리오·비유·수치는 모두 BioPlayground 자체 개발이며, 아래는 개념 학습에 도움이 되는 외부 참고 자료입니다.
- Claude Code: claude.com/claude-code (Anthropic 공식)
- Cursor: cursor.com
- Windsurf: codeium.com/windsurf
- GitHub Copilot: github.com/features/copilot
- Zed: zed.dev
- Continue.dev: continue.dev
- Aider: aider.chat
- Devin (Cognition): cognition.ai
- MCP: modelcontextprotocol.io
- SWE-Bench: swebench.com
- AI Coding Best Practices: Anthropic·Cursor·GitHub 각 공식 가이드
- Simon Willison Blog: simonwillison.net/tags/llms — AI 코딩 트렌드 뉴스레터
편 #14로 AI 코딩 에이전트 지형이 정리되었습니다. 편 #15에서 지금까지의 모든 편을 바이오 연구실의 실제 워크플로에 통합하는 방법을 정리합니다.