Claude Code가 커밋·PR에 세션 URL을 기본으로 붙이는 문제
Claude Session URL appended to commit messages and PR descriptions by default
TL;DR Highlight
Claude Code가 커밋과 PR에 세션 URL을 기본으로 붙여, 끄는 설정을 찾는 사용자가 늘었다
Who Should Read
Claude Code로 커밋·PR을 만들다 git 기록에 낯선 claude.ai 세션 링크가 섞여 당황한 개발자
Core Mechanics
- 커밋·PR 맨 아래에 세션 링크가 붙는다
- Claude Code가 만든 커밋 메시지와 PR 설명 끝에 https://claude.ai/code/session_... 링크가 자동으로 들어간다.
- 이슈 작성자는 온보딩에 안내도 경고도 없었다고 말한다.
- 이슈 요구는 "기본값을 opt-in으로"였다
- 온보딩에서 한 번 물어보거나, 첫 커밋 때 "다시 묻지 않기"를 주자는 제안이다.
- Co-Authored-By 트레일러만 남기고 링크는 없애자는 대안도 나왔다.
- 끄는 설정은 있다
- ~/.claude/settings.json의 attribution에 "sessionUrl": false를 넣으면 링크만 빠진다.
- 이 설정은 Co-Authored-By 트레일러는 그대로 둔다.
- attribution.commit을 빈 문자열로 둬도 안 먹혔다
- 이슈 본문과 한 댓글 작성자는 attribution.commit = ""만으로는 링크가 사라지지 않는다고 보고했다.
- 환경변수 CLAUDE_CODE_SUPPRESS_SESSION_ATTRIBUTION=1을 쓰라는 방법도 올라왔다.
- 웹·Remote Control 세션이 더 곤란하다
- 유지보수 측 답변은 링크가 웹과 Remote Control 세션에서만 붙는다는 것이다.
- 이슈 작성자는 웹 세션이 매번 새 컨테이너라 ~/.claude/settings.json이 유지되지 않는다고 지적했다.
Community Reactions
- 링크가 기본으로 있는 게 좋다는 의견
- 동료 PR에 세션 링크가 있는 걸 보며, 세션 공개 여부는 직접 통제할 수 있어 괜찮다는 의견이 있었다.
- 예전에 세션 ID를 커밋에 붙이는 스크립트를 직접 만들었고, 옛 커밋 디버깅에 도움이 된다는 경험도 있었다.
- 링크 수명(linkrot)을 걱정하는 의견
- 이 링크가 몇십 년 뒤에도 열릴지 믿기 어렵다는 의견이 있었다.
- git이 자기완결적 저장소여야 하므로 독점 URL보다 레포 안의 공개 포맷이 낫다는 의견도 있었다.
- 기본값 변경 방식이 문제라는 의견
- 신규 사용자에게는 좋은 기본값이지만 기존 사용자에게 묻지 않고 켠 것이 문제라는 의견이 있었다.
- Anthropic이 새 기능을 자동 업데이트로 기본 켜짐으로 내보내는 경향 때문에 다른 하네스 전환을 고민한다는 댓글도 있었다.
- 끄는 방법을 직접 적용한 경험
- 한 댓글은 이 환경변수가 CC 2.1.202(2026년 7월 8일)에서 추가됐다고 소개했다.
- 같은 댓글은 ~/.claude/CLAUDE.md에 "커밋 메시지에 Co-Authored-By나 Claude 언급을 넣지 말라"는 규칙을 넣어 잘 동작했다고 했다.
- 귀속 방식은 CLAUDE.md로 정하자는 의견
- 벤더 관례에 기대지 말고 CLAUDE.md에 AI 기여 표기 방법을 직접 적어두자는 의견이 있었다.
How to Apply
- settings.json에 sessionUrl false 넣기
- 오늘 ~/.claude/settings.json을 열어 attribution 안에 "sessionUrl": false를 추가하라.
- 커밋·PR 문구까지 끄려면 commit과 pr도 빈 문자열로 둬라.
- 안 먹히면 env에 CLAUDE_CODE_SUPPRESS_SESSION_ATTRIBUTION을 "1"로 넣어라.
- 웹·Remote Control 쓰는 레포에 설정 커밋하기
- 웹 세션은 홈 설정이 유지되지 않으니 레포 루트의 .claude/settings.json에 같은 attribution 설정을 커밋하라.
- 새 레포를 만들 때마다 이 파일을 넣는 템플릿을 만들어라.
- 푸시 전에 커밋 메시지 확인하기
- Claude에게 "커밋 메시지 초안만 쓰고 내가 검토하기 전에는 커밋하지 마"라고 지시하라.
- 푸시 전에 git log -1 --format=%B로 마지막 줄의 Claude-Session 트레일러를 확인하라.
- 귀속 규칙을 CLAUDE.md에 명시하기
- 팀이 원하는 표기 방식(링크 포함 여부, Assisted-by 등)을 프로젝트 CLAUDE.md에 적어라.
- 세션 링크 대신 남길 정보가 있다면 형식까지 적어라.
Try It
# Claude Code 터미널에서 그대로 붙여넣기 (설정 점검용 프롬프트)
~/.claude/settings.json과 현재 레포의 .claude/settings.json을 읽어줘.
두 파일에 attribution.sessionUrl이 false로 설정돼 있는지 확인해줘.
없으면 아래 내용을 기존 설정을 지우지 말고 병합해서 제안해줘. 파일은 내가 승인하기 전에는 수정하지 마.
{ "attribution": { "commit": "", "pr": "", "sessionUrl": false } }
그리고 최근 커밋 5개의 메시지 끝에 Claude-Session 트레일러나 claude.ai/code/session_ 링크가 있는지 git log로 확인해서 알려줘.
이어서 해 볼 것: 설정 후 테스트 커밋을 하나 만들어 링크가 빠졌는지 확인하고, 안 빠지면 env에 CLAUDE_CODE_SUPPRESS_SESSION_ATTRIBUTION=1을 추가해 다시 시도해 봐.Terminology
관련 논문
같은 시뮬레이션, 다른 근거: 도구 출력을 파일로 넘기면 LLM 에이전트 정확도가 어디서 깎이나
긴 툴 출력을 파일로 넘기자 GPT-5.1은 정확도 11.3%p 하락, 정식 출력 지정하니 회복
가짜 뉴스가 진짜 폭락을: LLM 트레이딩 에이전트 대상 정보 주입 공격
가짜 헤드라인 한 줄로 LLM 트레이딩 에이전트 62%를 조종했다(프롬프트 주입은 14%)
Harness Engineering 101: LLM은 뇌, harness는 몸
에이전트는 JSON 배열을 관리하는 루프이고, 16개 챕터로 직접 만들어 본다
Harness²: 에이전트 harness를 스스로 고쳐 쓰는 재귀 최적화 프레임워크
모델은 고정하고 harness를 재귀로 고쳤더니 벤치마크 점수가 최대 11.8%p 올랐다
해고된 Savannah 경찰관, ICE 요원 남편에게 Flock 계정 공유
경찰관이 Flock 계정을 남편(ICE 요원)에게 공유했고, 감사에서 983건 검색이 드러나 해고됐다
tmux와 Claude Code: 세션, send-keys, 그리고 한계선
tmux로 Claude Code 여러 개를 돌리면 편하지만 에이전트 4개쯤에서 한계가 온다
Hybrid Reasoning Agents: 잠재 공간에서 생각하고 텍스트로 행동하는 LLM 에이전트
잠재 공간 추론과 텍스트 도구 호출을 섞었더니 성능 10.4%↑, 토큰 최대 54.7%↓