TypeSafe Jev로 grep을 만들어봤습니다. Jev는 텍스트를 생성하지 않고 예/아니오 확률만 돌려주는 모델인데, 코드 검색에 써보면 어떨까 싶었어요.
코드를 청크로 나누고 각각 “이 설명에 해당하나?”를 묻습니다. 한 요청에 16개씩 묶어서 보내고, 결과는 grep처럼 file:line으로 보여줍니다.
그 중 키 기능은 다음과 같아요
- --diff: “에러를 잡고 아무 처리 없이 무시하는 코드” 같은 규칙을 영어 한 문장으로 적어두면, PR에 해당 코드가 들어왔는지 확인합니다. 종료 코드도 grep과 같아서(0 매치 / 1 없음 / 2 오류) CI에 붙여 PR을 막는 데 쓸 수 있습니다.
- --tests: diff를 보고 돌려볼 테스트 파일을 골라줍니다. hono, zod, fastify, flask, requests의 실제 커밋 60개로 확인해봤는데, 전체 테스트의 12%를 골라 작성자가 수정한 테스트의 92%를 찾아냈습니다. 파일 이름이나 import만으로 찾았을 때는 43%였고요. 60개 커밋을 돌리는 데 총 $0.11, 커밋당 약 1초가 들었습니다.
다만 작성자가 수정한 테스트를 얼마나 찾는지 본 결과라, 필요한 테스트를 92% 골라준다는 뜻은 아닙니다. 라이브러리 전반에 걸친 큰 통합 테스트는 놓치기도 하고, 검색 대상 코드 청크가 TypeSafe API로 전송된다는 점도 있습니다.
벤치 방법과 커밋별 결과, 한계는 레포의 bench/tests/에 정리해뒀습니다.
설치는 npm i -g jevgrep && jgrep init으로 하면 됩니다.
github repo: https://github.com/kyu1204/jgrep

3 days ago
13





![[동아시론/김필남]AI 금지와 허용 사이, 대학이 지켜야 할 역할](https://dimg.donga.com/wps/NEWS/IMAGE/2026/08/28/134567080.1.png)
![황재균, 폭염에 은퇴식 취소..온가족 총출동 "은퇴 선언도 취소해"[전참시]](https://image.starnewskorea.com/cdn-cgi/image/f=auto,w=1200,h=2924,fit=cover,q=high,sharpen=2/21/2026/08/2026082916573843525_1.jpg)
![[오늘과 내일/우경임]열 나는데 체온계 눈금만 고치는 수능 개편](https://dimg.donga.com/wps/NEWS/IMAGE/2026/08/28/134567087.1.png)
![금주 432시간..랄랄, 10kg 제대로 뺐다 "마운자로·위고비 NO"[스타이슈]](https://image.starnewskorea.com/cdn-cgi/image/f=auto,w=1200,h=678,fit=cover,q=high,sharpen=2/21/2026/08/2026083107152654706_2.jpg)
English (US) ·