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 공부에 도움이 된다면 레포에 ⭐를 달고, 댓글에 기능 아이디어를 공유해 주세요!