[00:00]
새로운 Claude Code 업데이트에는
[00:02]
반드시 알아야 할 매우 중요한
[00:03]
기능이 하나 있습니다. Claude Code에
[00:05]
직접 내장된 언어 서버 프로토콜
[00:07]
지원 기능으로, Claude Code가
[00:09]
여러분이 코드를 작성하는
[00:10]
언어와 직접 소통할 수 있게 해주죠.
[00:12]
전문 개발자들이 항상 코드 에디터를
[00:14]
사용해 기능적이고 작동하는 코드를
[00:16]
만들어온 방식과 똑같습니다.
[00:18]
이제 Claude Code에서도
[00:19]
직접 똑같이 할 수 있습니다.
[00:21]
어떻게 작동하는지 살펴보죠. 이 코드베이스에서
[00:25]
LM을 호출하는 데 사용되는 코드를
[00:28]
찾아달라고 요청해보겠습니다.
[00:29]
이것은 AI 기반 애플리케이션이거든요.
[00:31]
지금은 아직 언어 서버를
[00:32]
사용하지 않을 거예요. 언어 모델을
[00:35]
호출하는 데 사용하는 코드를
[00:36]
찾기 위해 일반적인 검색 도구를
[00:38]
사용할 것입니다. 이 경우에는
[00:40]
채팅과 완성과 관련된 텍스트를
[00:42]
찾으려고 하는데, 이는
[00:44]
AI 코드에서 매우 일반적이기 때문입니다.
[00:46]
OpenAI 참조를 찾으려고 하고 있어요.
[00:49]
그리고 이미 내 백엔드
[00:51]
전사 파일에서 66번째 줄에 있는
[00:53]
LLM 호출을 찾았습니다.
[00:54]
지금은 아직 언어 서버를
[00:56]
사용하지 않았지만, 언어 서버를 효과적으로
[01:00]
활용할 수 있는 한 가지 방법은
[01:01]
이런 질문을 할 때입니다.
[01:04]
코드베이스에서 이 함수가
[01:06]
사용되는 모든 참조를
[01:08]
찾아달라고 하는 것이죠.
[01:10]
이런 종류의 질문들은
[01:12]
실제로 코드가 저장소에서
[01:14]
어떻게 사용되는지 파악하고
[01:15]
AI 코드로 인해 발생했을 수 있는 버그를
[01:18]
수정하려고 할 때 매우 효과적입니다.
[01:20]
그래서 이제 이 질문을 해보겠지만,
[01:22]
LSP를 함께 추가해보겠습니다.
[01:24]
하지만 이제 문제가 보입니다.
[01:26]
이 심볼에서 언어 서버를
[01:27]
사용하려고 하지만, Python용 LSP 서버가
[01:29]
사용 불가능하다고 나오고
[01:31]
대신 Grep를 사용하겠다고 합니다.
[01:32]
Grep의 문제점은 실제로
[01:35]
프로그래밍하고 있는 언어에서
[01:36]
코드 참조를 빠르게 찾도록
[01:37]
제작된 언어 서버와 비교했을 때
[01:39]
올바른 파일 참조를 찾는 데
[01:42]
다소 효과가 떨어진다는 것입니다.
[01:44]
이제 LSP 서버를 구성하는
[01:46]
가장 간단한 방법은
[01:47]
/plugin을 입력하고 나서
[01:50]
여러분의 언어에 맞는 플러그인을
[01:52]
찾을 때까지 모든 플러그인을
[01:54]
확인해보는 것입니다.
[01:55]
제 경우에는
[01:57]
Python용을 찾고 싶습니다.
[01:59]
여기서 Pylright LSP를
[02:00]
찾을 수 있는 것을 보실 수 있죠.
[02:01]
저만을 위해 간단히 설치할 수 있습니다.
[02:03]
이것의 장점은
[02:05]
여러분이 작업할 대부분의
[02:08]
표준 언어가 지원된다는 것이지만,
[02:10]
만약 특별한 언어를 사용해서
[02:12]
자신만의 LSP 서버를 추가해야 한다면
[02:14]
올바른 문서를 찾을 수 있도록
[02:16]
설명란에 링크를 남겨두겠습니다.
[02:17]
제 경우에는
[02:19]
plugin을 다시 입력하면
[02:21]
Pylright LSP가 현재
[02:22]
설치되어 있는 것을 볼 수 있는데,
[02:24]
이는 Microsoft의 Python용
[02:25]
이 파일을 살펴보도록 요청하겠습니다. 그리고
[02:27]
여기서 LM 호출 함수를 찾아서
[02:30]
LSP를 사용해 파일 간 참조를 찾으라고 말하겠습니다.
[02:35]
이게 강력한 이유는
[02:39]
클로드 코드가
[02:40]
단순히 100개의 파일을 읽거나
[02:42]
일반적인 명령줄 도구를 사용하지 않기 때문입니다.
[02:45]
이제는 적절한 언어 서버를 사용해서
[02:47]
이 함수의 모든 참조를 찾습니다.
[02:49]
훨씬 더 효율적이죠.
[02:51]
특히 정말 큰 코드베이스에서 작업할 때는요.
[02:53]
이 경우에 보시면
[02:55]
참조 찾기를 사용하고 있고
[02:57]
즉시 두 개의 파일에서
[02:58]
세 개의 참조를 찾았습니다.
[03:00]
여기서 Control O를 눌러서
[03:02]
조금 더 확장해보겠습니다.
[03:04]
백엔드 app.py에서
[03:06]
108번째 줄에 있다고 찾아주는데, 바로 여기로
[03:09]
스크롤해서 확인할 수 있습니다.
[03:12]
실제로 LM과 함께 clean을 사용하고 있는데
[03:14]
이게 제 LM 호출 함수입니다.
[03:16]
마찬가지로 이 전사 파이썬 파일에서도
[03:18]
물론 56번째 줄에 정의가 있지만
[03:20]
이 파일 내부에서도 사용되고 있습니다.
[03:23]
구체적으로는 90번째 줄에서요.
[03:25]
같은 클래스 내부에서 자기 자신을
[03:27]
호출하고 있는 걸 볼 수 있습니다. 훌륭하네요.
[03:29]
모든 참조를 매우 빠르게 찾을 수 있습니다.
[03:31]
이를 통해 클로드 코드가 인간 개발자처럼
[03:33]
작동할 수 있게 됩니다. 왜냐하면
[03:34]
예를 들어 이 함수가 어디에
[03:36]
정의되어 있는지 알고 싶다면
[03:38]
Control을 누르고 클릭할 것입니다.
[03:40]
실제로 그렇게 하면 파일의 정의로
[03:42]
매우 빠르게 이동합니다.
[03:45]
저는 여러 파일을 단순히 검색하지 않습니다.
[03:47]
이런 종류의 단축키를 사용하고
[03:48]
클로드 코드도 이제 이런 단축키를 사용할 수 있습니다.
[03:50]
이 새로운 기능이 얼마나 강력한지
[03:52]
아직도 의심하신다면
[03:54]
지금 바로 말씀드릴 수 있는 건
[03:55]
제가 이미 몇 달간
[03:57]
이 기능을 사용해왔다는 것입니다.
[03:58]
저는 Serena MCP 서버를 사용해왔는데
[04:01]
이것은 이런 언어 서버들을
[04:03]
클로드 코드를 포함한 모든 종류의
[04:05]
AI 코드 에디터에 노출시킵니다.
[04:08]
이 MCP 서버는 매우 인기가 많습니다.
[04:10]
GitHub에서 17,000개가 넘는 스타를 받았고
[04:12]
저는 이를 더 큰 프로젝트에서 사용해왔습니다.
[04:14]
YouTube에서 보는 애완동물 프로젝트나 데모가 아니라요.
[04:17]
이것의 좋은 점은
[04:19]
이런 언어 서버들이
[04:20]
매우 잘 작동한다는 걸 알고 있다는 것입니다.
[04:22]
이제 이런 복잡한 MCP 서버를
[04:24]
설정할 필요도 없습니다.
[04:26]
간단한 플러그인을 사용해서 클로드 코드에
[04:29]
쉽게 설정할 수 있습니다. 다른 좋은 질문 예시는
[04:30]
이런 것입니다. 채팅 완성 생성이
[04:32]
어떤 매개변수를 예상하나요?
[04:34]
파이썬처럼 엄격하게 타입이
[04:35]
지정되지 않은 언어를 사용하고 있다면
[04:38]
클로드 코드는 코드를 만들 때
[04:39]
많은 오류를 만들 수 있습니다. 하지만 좋은 점은
[04:41]
저장소 전반에서 사용하는 코드를 찾으면서
[04:43]
언어 서버에 쿼리를 보내서
[04:45]
함수에 필요한 매개변수 종류를
[04:47]
더 잘 이해할 수 있다는 것입니다.
[04:49]
이제 필수 매개변수와
[04:51]
선택적 매개변수의 광범위한 목록과
[04:52]
매개변수 이름뿐만 아니라
[04:54]
설명까지 포함해서
[04:56]
반환해주는 걸 볼 수 있습니다.
[04:57]
어떻게 그렇게 했을까요?
[04:59]
실제로 저도 이걸 직접 할 수 있습니다.
[05:01]
채팅 완성 생성이 어디서
[05:03]
호출되는지 찾을 수 있습니다.
[05:05]
코드베이스에서 여기서 호출되고 있습니다.
[05:07]
create 단어 위에 마우스를 올려놓으면
[05:09]
실제로 함수에 대한
[05:11]
많은 정보를 노출한다는 걸 볼 수 있습니다.
[05:14]
본질적으로 클로드 코드는 이제
[05:16]
전문 개발자로서 제가 하는 것처럼 하고 있습니다.
[05:18]
따라서 함수 정의에 대한
[05:20]
훨씬 더 많은 정보를 읽고
[05:22]
저에게 다시 전달하거나 그것을 사용해서
[05:25]
훨씬 더 안전하고 신뢰할 수 있는 코드를
[05:28]
생성할 수 있습니다. 댓글로 가서
[05:30]
이 비디오에서 다루지 않은
[05:31]
다른 언어를 사용하고 있다면
[05:33]
반드시 공유해 주세요. 이렇게 하면
[05:34]
올바른 설정으로
[05:36]
서로 도울 수 있고
[05:38]
모두가 클로드 코드를 최대한 활용할 수 있습니다.
[05:39]
댓글에서 뵙겠습니다.