콘텐츠로 이동

IDE 통합과 CI/CD 경계

Claude Code는 VS Code와 JetBrains용 공식 IDE 통합을 제공한다. 에디터에서 작업을 시작하고 변경을 검토하려는 개발자에게는 IDE 통합이 자연스럽다. 반면 사내 서비스, 배치 처리, 자체 승인 UI처럼 애플리케이션이 에이전트 루프를 소유해야 하는 경우에는 Agent SDK를 사용한다.

개발자의 편집기 작업 → IDE 통합 → Claude Code 세션
자동화 애플리케이션 → Agent SDK → 도구·세션·승인 정책
단발 스크립트·파이프라인 → CLI -p → 표준 출력과 종료 코드

IDE 확장의 내부 프로세스나 UI 이벤트를 SDK 계약으로 사용하지 않는다. 공개 문서에 명시된 설치·연결 방식과 CLI/SDK API를 경계로 삼으면 확장 업데이트에 덜 취약하다.

CLI의 print 모드는 한 번의 요청을 자동화 환경에 연결할 때 유용하다. 텍스트, JSON, stream-json 출력 중 파이프라인이 파싱할 형식을 선택할 수 있지만, 모델이 만든 자연어를 곧바로 배포·삭제 같은 결정으로 사용하면 안 된다.

Terminal window
claude -p --output-format json \
"변경된 파일을 읽고, 테스트를 추가하지 않고 위험 요인만 JSON으로 요약해 주세요."

CI에서는 읽기 전용 분석부터 시작하고, 변경·배포 단계는 사람이 검토한 구조화 결과와 별도 정책으로 보호한다. 비밀은 CI의 보안 저장소에서 주입하며, 출력과 artifact에 토큰·소스·개인정보가 남지 않도록 마스킹 규칙을 둔다.

Agent SDK가 필요한 경우에는 작업별 임시 디렉터리, 최소 allowedTools, 짧은 턴·비용 예산, 네트워크 정책을 설정한다. 실행 결과가 실패했거나 승인 절차를 통과하지 못하면 파이프라인을 멈추고 사람이 확인하게 한다.

| 제어점 | 최소 기준 | 이유 | | --- | --- | --- | | 작업공간 | PR 또는 임시 worktree | 기본 브랜치 오염 방지 | | 권한 | 읽기 전용에서 시작 | 예상 밖 파일·명령 실행 방지 | | 비밀 | 작업별 최소 범위 토큰 | 로그·MCP 도구 노출 축소 | | 결과 | 테스트와 diff를 별도 검증 | 모델의 요약만으로 성공 판단 금지 | | 감사 | 프롬프트·도구 실행·승인 기록 | 재현과 사고 조사 |

CI 작업은 보통 짧고 독립적이므로, 이전 세션의 묵시적 맥락을 이어 쓰기보다 입력 파일·버전·명령을 명시하는 편이 재현성이 좋다. 세션 재개가 필요하다면 세션 이력은 파일 변경이 아니라 대화 기록이라는 점을 기억하고, git diff와 테스트 결과를 별도의 artifact로 남긴다.

자동화의 목표는 ‘에이전트가 알아서 배포한다’가 아니라, 제한된 권한 안에서 반복 가능한 검사를 수행하고 사람이 검토할 근거를 만드는 것이다. 이 원칙은 IDE, CLI, SDK 중 어느 진입점을 선택해도 같다.


퀴즈를 불러오는 중...