
Sem은 Git 변경 내역을 줄이 아니라 함수·클래스 같은 코드 단위로 보여주는 CLI 도구다. 제작자는 AI 에이전트가 원시 줄 단위 diff를 받을 때보다 Sem 출력을 받을 때 정확도가 2.3배 높았다고 주장한다. 벤치마크
sem diff는 코드 단위로 추가·수정·삭제된 항목을 표시하고, sem blame은 각 항목을 마지막으로 바꾼 커밋을 보여준다. sem impact는 함수의 의존 항목과 영향을 받는 테스트를 포함해 영향 범위를 찾고, sem log는 특정 코드 항목의 변경 이력을 확인한다. sem entities는 경로에 있는 함수·클래스·메서드·타입을 줄 범위와 함께 나열한다. sem context는 대상 항목과 의존·피의존 항목을 토큰 예산에 맞춰 묶어 AI 프롬프트에 넣을 수 있도록 한다. 모든 명령은 기계가 읽을 수 있는 --json 출력도 지원한다. 명령어 전체 안내
제작자에 따르면 Sem은 설정 파일이나 플러그인 없이 Git 저장소에서 사용할 수 있고, 26개 프로그래밍 언어와 5개 데이터 형식을 지원한다. Homebrew로 설치하고 설정하려면 다음 명령을 실행한다.
brew install sem-cli
sem setup
sem setup은 래퍼 스크립트를 만들고 전역 Git 설정의 diff.external을 sem으로 지정하며, 사전 커밋 훅을 설치한다. 설정을 되돌릴 때는 sem unsetup을 실행한다. 원문은 GitHub 저장소에서 다음 방식으로 설치하는 방법도 안내한다.
cargo install --git https://github.com/Ataraxy-Labs/sem sem-cli
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요