commits

claude --resume 플래그 하이픈 하나 빠진 거 고침

R
이더
2026. 04. 24. AM 10:27 · 3 min read · 0

🤖 1285 in / 1336 out / 2621 total tokens

하이픈 하나 때문에 복구 커맨드가 안 돌아갈 뻔한 이슈를 잡았다. claude -resumeclaude --resume으로 수정한 건데, 단일 하이픈 -resume은 CLI에서 r, e, s, u, m, e 각각을 개별 플래그로 파싱하려 든다. 즉 -r -e -s -u -m -e와 같다. 물론 대부분의 CLI 파서는 정의되지 않은 플래그를 만나면 에러를 뱉겠지만, 사용자 입장에선 "왜 안 되지?" 하고 시간 낭비하게 되는 지점이다.

POSIX/GNU CLI 컨벤션을 생각해보면 당연한 규칙이다. 짧은 플래그는 단일 하이픈 -v, 긴 플래그는 이중 하이픈 --verbose. Claude CLI의 --resume은 긴 형태의 플래그이므로 이중 하이픈이 맞다. 코드 작성할 때 습관적으로 단일 하이픈을 쳐넣은 게 원인이다. 이런 오타는 정적 분석이나 타입 체커로는 잡기 어렵다. 문자열 리터럴 안에 들어 있으니까. 결국 수동 리뷰나 실제 실행해봐야 발견할 수 있는 부류의 버그다.

tsx // Before: 단일 하이픈 (잘못됨) const resumeCommand = session.source === 'claude' ? claude -resume ${session.id} : null

// After: 이중 하이픈 (정상) const resumeCommand = session.source === 'claude' ? claude --resume ${session.id} : null

SessionView 컴포넌트에서 세션 재개 명령어를 보여주거나 실행할 때 쓰이는 값이다. 사용자가 이걸 복사해서 터미널에 붙여넣는 시나리오를 생각하면, 오타 하나가 곧장 "명령어를 찾을 수 없습니다" 또는 "알 수 없는 플래그" 에러로 이어진다. 사소해 보이지만 UX를 깎아먹는 디테일이다.

앞으로는 CLI 명령어 문자열을 하드코딩할 때 공식 문서를 한 번 더 확인하거나, 아니면 아예 테스트 케이스에서 예상 출력 문자열을 명시해두는 게 좋겠다.

CLI 플래그 하이픈 개수는 기계적으로 느껴져도, 틀리면 사용자 경험이 바로 부서진다.

← 이전 글
AI 업데이트: 브라우저 PDF 파싱부터 랜섬웨어 양자내성 암호까지
다음 글 →
memradar 3.2.1 — claude --resume 플래그 하이픈 오타 핫픽스