
JetBrains Central CLI에서 Claude와 Codex를 사용해 보았다
요약
JetBrains Central CLI는 Claude, Codex, Gemini 등 다양한 AI 에이전트를 통합 관리할 수 있는 로컬 프록시 도구입니다. 터미널 환경에서 IDE 없이도 AI 에이전트를 실행하며, 인증과 결제를 JetBrains 계정으로 단일화하여 관리할 수 있습니다.
핵심 포인트
- Claude, Codex, Gemini CLI를 JetBrains Central을 통해 통합 관리
- 로컬 프록시 방식으로 작동하여 인증 및 결제 프로세스 단일화
- 터미널 환경에서 IDE 없이 AI 에이전트 실행 및 비용 가시화 가능
- JetBrains AI 구독을 통해 다양한 벤더의 AI 에이전트 활용
JetBrains Central이 2026년 3월 24일에 발표되어 Early Access로 등장했습니다.
Central이 다루는 것은 조직 내에서 늘어가는 AI 에이전트입니다. 공식 블로그의 표현에 따르면, 에이전트는 "can come from JetBrains or external ecosystems, including Claude Agent, Codex, Gemini CLI, or custom-built solutions"라고 되어 있어, JetBrains 제품에 국한되지 않습니다. 이들을 가로질러 실행·감시·관리하며, 결과와 비용을 가시화하는 것입니다.
JetBrains Central CLI는 그 입구를 터미널에 마련한 것입니다. 수중에 있는 claude나 codex를 그대로 사용하면서, 통신을 Central을 경유하도록 전환합니다. IDE를 열지 않고 터미널에서 작업하고 있을 때도 동일한 인증과 비용 관리 프레임워크에 올라타게 됩니다.
claude나 codex는 평소 각각의 벤더 서버에 직접 연결합니다.
claude → Anthropic
codex → OpenAI
gemini → Google
Central CLI는 이 사이에 로컬 프록시 (Local Proxy)로서 개입합니다.
claude → JetBrains Central → Anthropic
codex → JetBrains Central → OpenAI
gemini → JetBrains Central → Google
공식 문서의 표현으로는 「a proxy that lets you run supported AI coding agents through JetBrains Central」입니다 (Quickstart).
이 사이에 로컬 프록시로 들어감으로써, 인증과 결제가 JetBrains 측으로 집약됩니다. 사용하는 입장에서는 벤더별 계정 관리가 필요 없게 됩니다.
이번에는 JetBrains Central CLI를 설치하여 실제로 사용해 보았습니다.
공식 Quickstart의 Requirements에는 다음과 같습니다:
- JetBrains 계정과 유효한 AI 구독 (Subscription)
- macOS / Linux / Windows 중 하나
- 대응 에이전트 중 하나가 설치 완료됨 (Claude Code / Codex / Gemini CLI)
*.jetbrains.com/*.jetbrains.ai/*.grazie.ai로의 통신
Central CLI는 JetBrains의 AI 크레딧을 소비하며 작동하므로, 에이전트 측의 계약과는 별도로 JetBrains AI 구독이 필요합니다.
평소 ACP를 통해 Claude를 사용하는 경우, JetBrains AI 계약은 필요하지 않으며 Anthropic과의 계약만으로 작동합니다. Central CLI를 통하면 이 부분이 바뀌어, 결제처가 JetBrains 측으로 쏠리게 됩니다.
저의 경우에는 소속 조직의 워크스페이스가 AI 액세스 소스로 자동 선택되었습니다.
central access
Available AI access sources:
<조직명> (workspace, current)
Windows는 다음과 같습니다.
irm https://central-cli.labs.jb.gg/install.ps1 | iex
central --version
# central 1.2.0 (commit: 7f06e7ef..., built: 2026-07-23T13:02:07Z)
로그인은 브라우저로 이동합니다. JetBrains 계정으로 인증합니다.
central login
central status를 입력하면 설치된 에이전트를 자동으로 검출하여 나열해 줍니다.

Auth <조직명>
Proxy stopped
Version 1.2.0
...
제 환경에는 3개 모두 설치되어 있었습니다. Gemini CLI가 blocked by AI governance로 되어 있는 것은 소속 조직의 정책으로 허가되지 않았기 때문입니다. 조직 측의 설정이 그대로 CLI 표시로 나타납니다.
central run을 사용하면 지정한 에이전트(Agent)를 Central을 통해 실행할 수 있습니다. 설정 파일을 수정할 필요가 없으므로 부담 없이 시도해 볼 수 있습니다.
주제는 Spring Boot 데모 프로젝트입니다. OrderService와 그 테스트 코드를 읽게 하여, 테스트가 부족한 분기(Branch)를 찾아달라고 요청했습니다.
먼저 Claude Code부터 시작합니다.
central run claude -- -p "OrderService.java와 OrderServiceTest.java를 읽고, 테스트에서 커버되지 않은 분기를 3개 찾아줘. 각 1줄씩 일본어로."
- findOrder에서 ID가 존재하지 않을 때의 orElseThrow (IllegalArgumentException)가 미커버 상태.
- cancelOrder / shipOrder에 존재하지 않는 ID를 전달했을 때의 예외 전파가 미커버 상태.
- 이미 CANCELLED 상태인 주문을 shipOrder 하는 (또는 그 반대의) 상태 전이(State Transition)가 미커버 상태.
...
다음은 Codex입니다. 명령어는 에이전트 이름만 바꾸면 됩니다.
central run codex -- exec "OrderService.java와 OrderServiceTest.java를 읽고, 테스트에서 커버되지 않은 분기를 3개 찾아줘. 각 1줄씩 일본어로."
findOrder: 존재하지 않는 ID로 IllegalArgumentException을 송출하는 분기.
cancelOrder: 존재하지 않는 ID로 취소에 실패하는 분기.
shipOrder: 존재하지 않는 ID로 발송에 실패하는 분기.
동일한 질문이었지만 돌아온 답변은 달랐습니다.
Codex는 3가지 모두 '존재하지 않는 ID' 계열로 통일하여, 코드에서 기계적으로 도출할 수 있는 허점을 빠짐없이 나열했습니다. 반면 Claude는 세 번째 항목으로 상태 전이를 가져왔으며, 더 나아가 "애초에 Order 측에 가드(Guard)가 없으므로, 테스트를 작성하기 전에 사양(Specification)을 결정할 필요가 있다"라는 지적을 덧붙였습니다.
어느 쪽이 더 뛰어나다는 이야기가 아니라, 원하는 목적에 따라 성향이 다르다는 이야기입니다. 테스트의 허점을 기계적으로 찾아내고 싶을 때와 설계 판단까지 함께 고민하고 싶을 때, 선택하는 대상이 달라집니다.
저에게 인상적이었던 점은 이 전환에 필요한 것이 명령어 단 한 단어라는 점이었습니다. 키 변경도, 설정 파일 편집도, 구독 계약 변경도 필요 없습니다.
central run claude -- ...
central run codex -- ...
에이전트를 부담 없이 바꿀 수 있게 된 점이 좋습니다.
자주 사용하려면 central add를 사용합니다. 설정 파일에 접속 정보를 기록하므로, 이후에는 claude라고 입력하는 것만으로 Central을 경유하게 됩니다.
central add claude
Backup saved to C:\Users\<user>\.claude\settings.backup.<날짜/시간>.json
Claude Code wired via port 19516
설정 파일을 수정하기 전에 자동으로 백업을 생성해 줍니다. 우선 동작을 확인해보고 싶다면 앞서 언급한 central run부터 시작하는 것을 추천합니다. 이 방식은 설정을 건드리지 않습니다.
그 후 AI Chat의 Claude 에이전트에게 질문해 보았습니다. ACP를 통해 IDE 내에서 사용할 수 있는 에이전트입니다 (JetBrains의 ACP 해설).
그리고 central log를 확인해보니, AI Chat으로부터의 요청이 기록되어 있었습니다.
Jul 31 16:23:24 POST 200 4939ms /llm/anthropic/v1/messages?beta=true
터미널에서 입력한 central add claude가 IDE의 AI Chat에도 적용되어 있습니다. 동일한 설정 파일을 읽기 때문입니다.
즉, 터미널에서 작업하든 IDE의 AI Chat을 사용하든, 경로와 과금(Billing)이 한곳으로 모이게 됩니다.
central log는 벤더(Vendor)를 가리지 않고 하나의 리스트로 보여줍니다.
central log --status all --limit 30
Anthropic과 OpenAI로의 요청이 시간 순서대로 나열됩니다. 경로(Path) 또한 /llm/<벤더>/<원래의 API 경로> 형식을 따릅니다.
형식이 통일되므로, 어느 쪽을 호출했는지 한눈에 알 수 있습니다. 평소라면 별도의 관리 화면을 열어야 하지만, 이제는 단 하나의 명령어로 해결됩니다.
사용량 또한 하나의 프레임(枠)으로 통합됩니다.
central limit
이번 검증에서 추적한 추이입니다.
| 시점 | 소비 크레딧 |
|---|---|
| 로그인 직후 | 0.00 |
| ... |
반영은 즉시 이루어졌습니다. 요청(Request)을 보낸 직후에 확인하면 즉각 반영되어 있었습니다. 벤더(Vendor)가 다르더라도 동일한 프레임에서 차감되므로, "이번 달에 얼마나 사용했는지"를 한 곳에서 확인할 수 있습니다.
에이전트(Agent)를 하나로 한정할 필요가 없어졌다는 것이 이번 검증의 소감이었습니다.
지금까지는 "구분해서 사용하고 싶지만 계정을 늘리고 싶지는 않다"는 이유로, 막연하게 한쪽으로 치우쳐 사용해 왔습니다. Central CLI를 통하면 central login 한 번으로 양쪽 모두 사용할 수 있으며 전환도 간편합니다. 작업의 성격에 따라 에이전트를 선택할 수 있게 되었습니다.
터미널(Terminal)과 IDE의 설정이 공통된다는 점도 유용했습니다. central add claude를 한 번 실행하면, AI Chat의 Claude 에이전트도 동일한 경로를 따르게 됩니다.
테스트 순서로는 먼저 central run을 사용하는 것을 추천합니다. 설정 파일(Configuration file)을 건드리지 않고도 동작을 확인할 수 있습니다. 마음에 든다면 central add를 통해 상시 사용 모드로 전환할 수 있습니다.
저희 회사는 JetBrains 제품에 관한 질문이나 상담 등을 접수하고 있습니다. 저희의 X(구 Twitter) 또는 이메일로 연락해 주시기 바랍니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기