Skip to content
| Marketplace
Sign in
Visual Studio Code>SCM Providers>Lazy Hoodie: CommitNew to Visual Studio Code? Get it now.
Lazy Hoodie: Commit

Lazy Hoodie: Commit

Lazy Hoodie

|
1 install
| (0) | Free
Generate commit messages with configurable AI providers.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info
    __                         __  __                ___                  ______                          _ __
   / /   ____ _____  __  __   / / / /___  ____  ____/ (_)__              / ____/___  ____ ___  ____ ___  (_) /_
  / /   / __ `/_  / / / / /  / /_/ / __ \/ __ \/ __  / / _ \   ______   / /   / __ \/ __ `__ \/ __ `__ \/ / __/
 / /___/ /_/ / / /_/ /_/ /  / __  / /_/ / /_/ / /_/ / /  __/  /_____/  / /___/ /_/ / / / / / / / / / / / / /_
/_____/\__,_/ /___/\__, /  /_/ /_/\____/\____/\__,_/_/\___/            \____/\____/_/ /_/ /_/_/ /_/ /_/_/\__/
                  /____/

Lazy Hoodie: Commit

귀찮은 커밋 메시지 작성은 AI에게 맡기고, 변경사항 검토와 개발에 집중하세요.

Lazy Hoodie: Commit은 Git의 staged 변경사항만 분석해 커밋 메시지를 생성하고, VS Code Source Control 입력창에 자동으로 채워주는 확장 프로그램입니다. 생성된 메시지는 사용자가 검토한 뒤 직접 커밋하므로, 확장 프로그램이 임의로 커밋을 실행하지 않습니다.

주요 기능

  • Source Control 패널에서 버튼 한 번으로 커밋 메시지 생성
  • git diff --cached 기반으로 실제 커밋 대상만 분석
  • Conventional Commits 또는 일반 커밋 형식 지원
  • 한국어 및 영어 메시지 생성
  • 여러 staged 파일의 대표 변경을 제목으로 요약
  • 여러 파일의 주요 변경사항을 본문의 불릿 목록으로 정리
  • 사용자 정의 커밋 규칙 지원
  • 큰 diff의 전송 길이 제한
  • VS Code SecretStorage를 이용한 provider별 API 키 보관
  • 생성 결과를 Source Control 입력창에 삽입하고 최종 커밋은 사용자에게 맡김

Provider 지원 현황

Provider 상태 비고
Google Gemini 지원 현재 실제 메시지 생성 가능
OpenAI 예정 설정 항목만 제공
Anthropic Claude 예정 설정 항목만 제공

현재 버전에서는 Gemini를 선택해야 실제 커밋 메시지를 생성할 수 있습니다.

요구 사항

  • Visual Studio Code 1.90.0 이상
  • Git이 설치되어 있고 터미널에서 git 명령을 사용할 수 있어야 함
  • Git 저장소가 VS Code workspace로 열려 있어야 함
  • Google Gemini API 키
  • 커밋할 변경사항이 staging area에 추가되어 있어야 함

시작하기

1. Gemini 선택

VS Code 설정을 엽니다.

Ctrl + ,

설정 검색창에서 Lazy Hoodie를 검색한 다음 Provider를 Gemini로 변경합니다.

settings.json에서 직접 설정할 수도 있습니다.

{
  "lazyHoodie.commit.provider": "gemini"
}

2. API 키 저장

Google AI Studio에서 Gemini API 키를 발급받습니다.

VS Code 명령 팔레트를 엽니다.

Ctrl + Shift + P

다음 명령을 실행합니다.

Lazy Hoodie: Set AI Provider API Key

입력창에 Gemini API 키를 입력하세요. 입력 내용은 비밀번호 형태로 가려지며, 일반 settings.json이 아닌 VS Code SecretStorage에 저장됩니다.

3. 변경사항 stage

Source Control 패널에서 커밋할 파일의 + 버튼을 누르거나 터미널에서 git add를 실행합니다.

git add src/example.ts

모든 변경사항을 stage하려면 다음 명령을 사용할 수 있습니다.

git add .

AI에는 staged diff가 전달됩니다. 비밀키, 개인정보 또는 외부 전송이 허용되지 않은 코드가 포함되지 않았는지 생성 전에 확인하세요.

4. 커밋 메시지 생성

Source Control 패널 상단의 반짝이 아이콘을 누릅니다.

명령 팔레트에서도 실행할 수 있습니다.

Lazy Hoodie: Generate Commit Message

생성이 완료되면 메시지가 Source Control 커밋 입력창에 자동으로 들어갑니다. 내용을 검토하고 필요하면 수정한 뒤 직접 커밋하세요.

생성 예시

단일 변경사항은 간결한 제목으로 생성할 수 있습니다.

fix(auth): 만료된 토큰의 재발급 처리 수정

여러 파일이 stage된 경우 대표 변경을 제목으로 작성하고 주요 내용을 본문에 정리합니다.

feat(board): 게시판 라우팅 구조 개선

- 상세 라우트에 브레드크럼 설정 추가
- 공통 라우트 메타데이터 타입 정리
- 관련 컴포넌트의 경로 참조 수정

서로 관련된 파일은 하나의 의미 있는 변경으로 묶습니다. 단순히 파일명을 나열하는 대신 무엇이 바뀌었는지를 설명하도록 요청합니다.

설정

Ctrl + ,을 누르고 Lazy Hoodie를 검색하거나 settings.json에서 직접 설정할 수 있습니다.

설정 기본값 설명
lazyHoodie.commit.provider openai 사용할 AI provider. 현재 실제 호출은 gemini만 지원
lazyHoodie.commit.models.gemini 빈 문자열 Gemini 모델 ID. 비워두면 확장의 기본 모델 사용
lazyHoodie.commit.models.openai 빈 문자열 향후 OpenAI provider에서 사용할 모델 ID
lazyHoodie.commit.models.claude 빈 문자열 향후 Claude provider에서 사용할 모델 ID
lazyHoodie.commit.language english 생성 언어: english 또는 korean
lazyHoodie.commit.format conventional conventional 또는 plain 형식
lazyHoodie.commit.includeBody false 단일 파일 변경에도 커밋 본문을 생성할지 여부
lazyHoodie.commit.multiFileBody true 여러 파일 변경을 대표 제목과 불릿 목록으로 생성
lazyHoodie.commit.subjectMaxLength 72 권장 커밋 제목 최대 길이
lazyHoodie.commit.instructions 빈 문자열 자유 형식의 추가 지침 한 개
lazyHoodie.commit.rules [] 순서대로 적용할 사용자 정의 규칙 목록
lazyHoodie.commit.maxDiffCharacters 30000 AI provider에 전달할 staged diff의 최대 문자 수

권장 설정 예시

{
  "lazyHoodie.commit.provider": "gemini",
  "lazyHoodie.commit.models.gemini": "",
  "lazyHoodie.commit.language": "korean",
  "lazyHoodie.commit.format": "conventional",
  "lazyHoodie.commit.includeBody": false,
  "lazyHoodie.commit.multiFileBody": true,
  "lazyHoodie.commit.subjectMaxLength": 72,
  "lazyHoodie.commit.maxDiffCharacters": 30000,
  "lazyHoodie.commit.rules": [
    "제목에 마침표를 사용하지 않는다.",
    "scope는 변경된 최상위 기능명을 사용한다.",
    "구현 세부사항보다 사용자에게 미치는 영향을 우선한다.",
    "본문 불릿은 최대 5개로 작성한다."
  ]
}

Conventional Commits

format을 conventional로 설정하면 다음 형태로 메시지를 생성합니다.

<type>(optional-scope): <subject>

기본으로 사용하는 type은 다음과 같습니다.

Type 용도
feat 새로운 기능
fix 버그 수정
docs 문서 변경
style 동작에 영향을 주지 않는 포맷 변경
refactor 기능 변화 없는 코드 구조 개선
perf 성능 개선
test 테스트 추가 또는 수정
build 빌드 시스템 또는 의존성 변경
ci CI 설정 변경
chore 기타 유지보수 작업
revert 이전 변경 되돌리기

명령

명령 설명
Lazy Hoodie: Generate Commit Message staged 변경사항으로 커밋 메시지 생성
Lazy Hoodie: Set AI Provider API Key 현재 선택한 provider의 API 키 저장 또는 교체
Lazy Hoodie: Clear AI Provider API Key 현재 선택한 provider의 저장된 API 키 삭제

API 키는 provider별로 따로 저장됩니다. Provider를 변경한 뒤 키 설정 명령을 실행하면 해당 provider의 키를 관리할 수 있습니다.

변경사항 처리 방식

Lazy Hoodie: Commit은 working tree 전체가 아닌 staging area만 분석합니다.

파일 수정
   ↓ git add
Staging Area
   ↓ Lazy Hoodie: Generate Commit Message
커밋 메시지 입력창
   ↓ 사용자 검토 및 커밋
Git Commit
  • staged된 수정 파일: 변경된 줄 분석
  • staged된 새 파일: 추가된 내용 분석
  • staged된 삭제 파일: 삭제된 내용 분석
  • staged된 이름 변경: Git diff에 포함된 rename 정보 분석
  • staged되지 않은 파일: 분석 대상에서 제외

diff가 maxDiffCharacters보다 크면 앞부분만 provider에 전달합니다. 이 경우 완료 알림에 원본 diff가 잘렸다는 안내가 표시되므로 생성 결과를 특히 주의해서 검토하세요.

개인정보와 보안

  • API 키는 VS Code SecretStorage에 provider별로 저장합니다.
  • API 키를 settings.json, 프롬프트 또는 로그에 기록하지 않습니다.
  • 실제 커밋은 자동으로 실행하지 않습니다.
  • 선택한 AI provider에는 staged diff, staged 파일명, 커밋 설정 및 사용자 규칙이 전송됩니다.
  • 민감한 파일을 stage했다면 생성 버튼을 누르기 전에 staging area에서 제외하세요.
  • API 사용량, 요금, 데이터 처리 정책은 선택한 provider의 정책을 따릅니다.

문제 해결

No staged changes found

커밋할 파일이 staging area에 없습니다. Source Control에서 파일 옆의 + 버튼을 누르거나 다음 명령을 실행하세요.

git add <file>

gemini API key is not configured

Provider가 Gemini인지 확인한 다음 명령 팔레트에서 아래 명령을 실행하세요.

Lazy Hoodie: Set AI Provider API Key

OpenAI provider is not implemented yet 또는 Claude provider is not implemented yet

현재 버전에서는 Gemini만 실제 호출을 지원합니다. 설정에서 provider를 Gemini로 변경하세요.

Source Control 입력창에 메시지가 들어가지 않음

  • VS Code 내장 Git 확장이 활성화되어 있는지 확인하세요.
  • 현재 workspace가 Git 저장소인지 확인하세요.
  • 여러 workspace가 열려 있다면 staged 변경사항이 있는 저장소를 선택하세요.
  • Extension Development Host로 테스트 중이라면 코드를 다시 컴파일하고 창을 재실행하세요.

diff가 너무 커서 생성 결과가 부정확함

서로 관련된 변경사항끼리 나누어 커밋하는 것이 가장 좋습니다. 필요하면 lazyHoodie.commit.maxDiffCharacters 값을 늘릴 수 있지만, 요청 크기와 provider 사용량도 함께 증가할 수 있습니다.

로컬 개발

저장소를 내려받은 뒤 의존성을 설치합니다.

npm install

타입 검사와 컴파일을 실행합니다.

npm run check
npm run compile

프로젝트 폴더를 VS Code로 열고 F5를 누르면 Extension Development Host가 실행됩니다.

Run Lazy Hoodie: Commit

소스 변경을 계속 감시하려면 다음 명령을 사용할 수 있습니다.

npm run watch

로드맵

  • OpenAI provider 구현
  • Anthropic Claude provider 구현
  • 생성 결과 미리보기 및 재생성
  • 커밋 메시지 후보 여러 개 제안
  • 프로젝트별 규칙 파일 지원
  • 테스트 및 Marketplace 배포 자동화

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft