본문으로 건너뛰기

© 2026 Molayo

r/ClaudeAI분석2026. 06. 26. 00:23

레포지토리의 컨벤션을 학습하여 모든 수정 전 모델에 전달하는 Claude Code 플러그인을 만들었습니다 (TS / Ruby / Python)

요약

Claude Code가 프로젝트의 코딩 컨벤션을 준수하도록 돕는 'chameleon' 플러그인을 소개합니다. AST를 활용해 레포지토리의 패턴을 학습하고, 모델이 수정 작업을 수행하기 전 실제 예시와 안티 패턴을 컨텍스트로 주입합니다.

핵심 포인트

  • AST 기반으로 TS, Ruby, Python 레포지토리 컨벤션 학습
  • 모델이 추측 대신 실제 코드베이스의 관용구를 따르도록 유도
  • 사용자 선택에 따른 권고(Advisory) 방식 지원
  • 개인정보 보호를 위해 오프라인 경로 및 텔레메트리 미사용
  • 직접 성능을 검증할 수 있는 A/B 평가 하네스 제공

여러분 중 많은 분들처럼 저도 Claude Code를 매일 사용합니다. Claude가 작성하는 코드는 보통 잘 작동하지만, 저희 코드베이스에서는 계속해서 사소하게 잘못된 일들을 저질렀습니다. 예를 들어, 자체 HTTP 래퍼(wrapper)를 표준으로 사용하고 있는데 axios를 임포트하거나, 이미 존재하는 날짜 헬퍼(date helper)를 다시 작성하거나, 다른 모든 서비스가 상속받는 베이스 클래스(base class)를 무시하는 서비스를 구축하는 식이었죠. 리뷰 단계에서 매번 걸리곤 했습니다.

그래서 저는 chameleon을 만들었습니다. 이 도구는 실제 AST(Abstract Syntax Tree, 추상 구문 트리)를 사용하여 레포지토리를 파싱하고(TypeScript 컴파일러, Ruby의 Prism, Python의 libcst 사용), 각 파일 유형에 대한 컨벤션(conventions)을 학습합니다. 그런 다음 Claude가 파일을 수정하기 전에, 여러분의 코드베이스에서 가져온 실제 예시와 팀의 관용구(idioms), 그리고 피해야 할 안티 패턴(anti-pattern)을 주입합니다. 모델은 추측하는 대신 여러분의 레포지토리가 실제로 어떻게 작동하는지를 그대로 복사하게 됩니다.

이 도구가 무엇인지 솔직하게 말씀드리자면:

  • 기본적으로는 권고(Advisory) 방식입니다. 넌지시 알려주는 방식이며, 강제 차단(hard blocking)은 사용자가 선택할 수 있습니다.
  • 주요 경로는 오프라인입니다. 기본적으로 텔레메트리(telemetry)나 레포지토리 코드 실행을 하지 않습니다.
  • 턴(turn)당 추가 토큰과 약간의 지연 시간(latency)이 발생합니다(컨텍스트를 주입하고 턴 종료 후 리뷰를 실행하기 때문입니다).
    이것이 트레이드오프(tradeoff)입니다.
  • 현재는 TS/JS, Ruby, 그리고 Python만 지원합니다.
  • "Claude를 X% 더 좋게 만든다"라는 발표된 수치는 없으며, 지어내지도 않을 것입니다. A/B 평가 하네스(eval harness)가 함께 제공되니, 여러분의 레포지토리에 적용해서 직접 확인해 보세요.

MIT 라이선스입니다. 설치는 두 줄이면 됩니다:
/plugin marketplace add crisnahine/chameleon /plugin install chameleon@chameleon
GitHub: https://github.com/crisnahine/chameleon
Claude Plugin Hub: https://www.claudepluginhub.com/plugins/crisnahine-chameleon

저는 제작자입니다. 진심으로 피드백을 기다리고 있으며, 특히 무엇이 고장 나거나 불편한지에 대해 알려주세요. 가감 없이 비판해 주셔도 좋습니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 r/ClaudeAI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0