LeetCode CLI를 만들어 풀이 시간을 추적하고 솔루션 버전을 저장했습니다

발행: (2026년 1월 14일 오전 03:53 GMT+9)
4 min read
원문: Dev.to

Source: Dev.to

문제

LeetCode를 열심히 풀어본 사람이라면 다음과 같은 고통을 알 것입니다:

  • 브라우저와 에디터를 계속 오가야 함
  • 문제를 푸는 데 실제로 걸린 시간을 추적할 방법이 없음
  • 최적화 후에 기존의 완전 탐색 풀이를 잃어버림
  • 실전 인터뷰와 같은 타이머가 없어 압박감을 느끼기 어려움

이 모든 문제를 leetcode‑cli 를 만들어 해결했습니다 — 터미널만으로 전체 LeetCode 워크플로를 수행합니다.

기능

CLI 명령

# 문제 목록 보기 (난이도별 필터)
leetcode list -d medium

# 문제 보기
leetcode show 1

# 풀이 파일 생성
leetcode pick 1

# 로컬에서 테스트
leetcode test 1

# LeetCode에 제출
leetcode submit 1

파일 구조

leetcode/
├── Easy/
│   └── Array/
│       └── 1.two-sum.java
└── Medium/
    └── String/
        └── 3.longest-substring.java

타이머

# 기본 타이머 (Easy: 20 분, Medium: 40 분, Hard: 60 분)
leetcode timer 1

# 커스텀 타이머 (30 분)
leetcode timer 1 -m 30

# 풀이 시간 히스토리 보기
leetcode timer --stats

타이머는 각 세션을 기록해 주어 몇 주에 걸친 실력 향상을 측정할 수 있습니다.

스냅샷

# 버전 저장
leetcode snapshot save 1 "brute-force"

# ...솔루션 최적화...

leetcode snapshot save 1 "optimized"

# 두 스냅샷 비교
leetcode snapshot diff 1 1 2

# 이전 버전 복원
leetcode snapshot restore 1 brute-force

작동하는 풀이를 다시 잃어버릴 일은 없습니다.

협업

# 사람 1이 방 생성
leetcode collab host 1   # → 방 코드: ABC123

# 사람 2가 참여
leetcode collab join ABC123

# 두 사람 모두 풀이 후 비교
leetcode collab compare

친구와 함께 모의 인터뷰를 할 때 유용합니다.

워크스페이스

# 별도 컨텍스트 생성
leetcode workspace create interview -w ~/lc-interview
leetcode workspace create daily -w ~/lc-daily

# 워크스페이스 전환
leetcode workspace use interview

각 워크스페이스는 자체 설정, 타이머 히스토리, 스냅샷을 가집니다.

GitHub 동기화

# 원격 저장소 설정
leetcode config --repo https://github.com/you/leetcode-solutions.git

# 로컬 변경 사항 푸시
leetcode sync

설치

# npm을 통해
npm install -g @night-slayer18/leetcode-cli

또는 Docker로:

docker pull nightslayer/leetcode-cli:latest

빠른 시작

# 로그인 (LeetCode 쿠키 붙여넣기)
leetcode login

# 오늘의 챌린지 가져오기
leetcode daily

# 문제 #1 풀기 시작
leetcode pick 1

리소스

  • GitHub:
  • npm:
  • Documentation:

이 도구가 LeetCode 공부에 도움이 된다면 레포에 ⭐를 달고, 댓글에 기능 아이디어를 공유해 주세요!

Back to Blog

관련 글

더 보기 »