클로드 CLI v2.1.154, 로컬 vLLM 중단 — 한 줄 패치로 해결

Claude CLI v2.1.154는 워크플로우 지원을 도입했지만, 그 과정에서 세 가지 새로운 API 메시지 역할(ctx, msg, system)을 추가하여 로컬 vLLM 서버와의 호환성을 깨뜨렸습니다. 해결책은 vLLM의 Anthropic 프로토콜 정의에 한 줄을 변경하는 것입니다.
문제점
Claude CLI 버전 ≥2.1.154부터는 user와 assistant 외의 역할이 포함된 메시지를 전송합니다. vLLM의 Anthropic API 엔드포인트는 기존 두 역할만 허용했기 때문에, 로컬 vLLM 인스턴스를 가리키는 CLI 요청이 실패했습니다.
한 줄 패치
패치는 vllm/entrypoints/anthropic/protocol.py의 role 필드를 업데이트하여 새 역할을 허용합니다:
--- a/vllm/entrypoints/anthropic/protocol.py
+++ b/vllm/entrypoints/anthropic/protocol.py
@@ -65,7 +65,7 @@ class AnthropicContentBlock(BaseModel):
class AnthropicMessage(BaseModel):
"""메시지 구조"""
- role: Literal["user", "assistant"]
+ role: Literal["user", "assistant", "ctx", "msg", "system"]이게 전부입니다. 이 변경 사항을 적용한 후에는 최신 Claude CLI 워크플로우를 MiniMax-M2.7(저자가 테스트한 유일한 모델)과 같은 vLLM 기반 로컬 모델에서 사용할 수 있습니다.
vLLM에서 로컬 Anthropic 호환 엔드포인트를 실행 중이라면, 이 패치를 적용하여 Claude CLI ≥2.1.154에서 계속 작동하도록 하세요.
📖 전체 소스 읽기: r/LocalLLaMA
👀 See Also

프론트엔드 개발자가 Claude AI를 사용할 때 갖춰야 할 덜 명확한 5가지 에이전트 스킬
프론트엔드 개발자가 Claude AI 에이전트의 생산성과 코드 품질을 향상시키는 5가지 구체적인 Skill을 공유합니다: Playwright, 고급 TypeScript 타입, LyteNyte Grid, Tailwind CSS 패턴, PNPM Skill.

텔레그램 vs 디스코드 vs 왓츠앱: 당신의 OpenClaw 채널 선택하기
없음

OpenClaw 예약/크론잡 작업이 실패하는 이유
OpenClaw에서 에이전트에게 예약 작업을 요청하면 종종 OpenClaw의 프롬프트-인-크론 기능 대신 셸 또는 파이썬 스크립트를 생성합니다. 이로 인해 작업이 비에이전트 방식이 되어 비효율적입니다.

클로드는 코딩을 못하는 게 아니다 — 컨텍스트 설정이 문제다
Claude를 몇 달간 사용한 한 개발자는 모델 자체보다 컨텍스트 구조화 방식에 문제가 있다고 주장합니다. 주요 개선점: 지침과 로직 분리, 컨텍스트 노이즈 제거, 안정적인 패턴 사용.