Repolode
mrnugget

mrnugget/jev-shell-history

TypeSafe Jev API로 최근 기록을 순위화해 fish 스타일 자동 제안을 표시하는 zsh 플러그인입니다.

스타
119
포크
10
열린 이슈
4
마지막 커밋
지난달

어떤 프로젝트인가요?

jev-shell-history는 zsh에 fish 스타일 자동 제안을 추가합니다. 입력하는 동안 최근에 사용한 서로 다른 기록 항목을 살펴보고, 어떤 항목을 이어서 입력할 가능성이 가장 높은지 TypeSafe Jev API에 요청합니다. 가장 높은 점수의 항목이 점수와 함께 커서 뒤에 회색으로 표시되며, 오른쪽 화살표, ^E 또는 End를 누르면 입력됩니다.

플러그인은 두 가지 모드로 작동합니다. 접두사 모드에서는 입력한 텍스트로 시작하는 과거 명령이 있으면 해당 명령만 후보로 삼아 가장 높은 순위의 항목을 제안합니다. 접두사와 일치하는 항목이 없으면 퍼지 모드에서 API에 최근 기록 전체 중 가능성이 높은 명령을 고르도록 요청하며, 점수가 설정 가능한 기준을 넘을 때만 제안을 표시합니다. 키를 누를 때마다 백그라운드 요청이 하나씩 실행되고, 입력 버퍼가 바뀌면 오래된 응답은 버립니다.

설치하려면 zsh 5.9+, Node 22+ 및 TypeSafe API 키가 필요합니다. 기록 제한, 최소 글자 수, 점수 기준, 하이라이트 스타일, 모델 등의 동작은 환경 변수로 설정할 수 있습니다.

핵심 기능

  • 01입력하는 동안 최근 zsh 기록에서 가져온 회색 인라인 제안을 표시합니다.
  • 02emacs 및 vi 키맵에서 오른쪽 화살표, ^E 또는 End로 제안을 입력할 수 있습니다.
  • 03TypeSafe Jev API로 후보의 순위를 매기고 점수를 표시합니다.
  • 04입력 내용으로 시작하는 기록 항목이 없으면 퍼지 매칭으로 전환합니다.
  • 05프롬프트를 멈추지 않도록 요청을 백그라운드에서 실행합니다.

활용 사례

  • 이전에 실행한 긴 셸 명령이나 여러 플래그가 포함된 명령을 다시 입력할 때.
  • 과거 기록과 다른 문자로 시작하는 명령을 완성할 때.
  • 개인 컴퓨터에서 AI 기반 셸 제안을 시험해 볼 때.

빠른 시작

  1. 1

    저장소를 ~/.zsh/jev-shell-history에 클론합니다

    git clone <this repo> ~/.zsh/jev-shell-history
  2. 2

    npm 종속성을 설치합니다

    cd ~/.zsh/jev-shell-history && npm install
  3. 3

    ~/.zshrc에 TypeSafe API 키를 설정합니다

    export TYPESAFE_API_KEY=...
  4. 4

    ~/.zshrc에서 플러그인을 source합니다

    source ~/.zsh/jev-shell-history/zsh/jev-shell-history.plugin.zsh

사용 전 알아둘 점

  • 유료 플랜의 TypeSafe API 키가 필요하며, 명령 기록이 Jev API로 전송됩니다.
  • 키를 입력할 때마다 API 요청이 전송되며, 요청당 지연 시간은 약 0.7~0.9초입니다.
  • zsh 5.9 이상 및 Node 22 이상이 필요합니다.
  • README에 라이선스가 명시되어 있지 않습니다.

토픽

자주 묻는 질문

jev-shell-history은(는) 무엇인가요?
TypeSafe Jev API로 최근 기록을 순위화해 fish 스타일 자동 제안을 표시하는 zsh 플러그인입니다. jev-shell-history는 zsh에 fish 스타일 자동 제안을 추가합니다. 입력하는 동안 최근에 사용한 서로 다른 기록 항목을 살펴보고, 어떤 항목을 이어서 입력할 가능성이 가장 높은지 TypeSafe Jev API에 요청합니다. 가장 높은 점수의 항목이 점수와 함께 커서 뒤에 회색으로 표시되며, 오른쪽 화살표, ^E 또는 End를 누르면 입력됩니다.
jev-shell-history은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
jev-shell-history에는 명시된 라이선스가 없습니다. 코드는 공개되어 있지만 라이선스가 없으면 재사용 허가가 명확하지 않으므로, 사용 전에 작성자에게 문의하는 것이 좋습니다.
jev-shell-history은(는) 아직 유지보수되고 있나요?
6개월 이내 업데이트. jev-shell-history의 마지막 커밋은 2026년 9월 18일입니다.
jev-shell-history은(는) 어디에 사용할 수 있나요?
이전에 실행한 긴 셸 명령이나 여러 플래그가 포함된 명령을 다시 입력할 때. 과거 기록과 다른 문자로 시작하는 명령을 완성할 때. 개인 컴퓨터에서 AI 기반 셸 제안을 시험해 볼 때.
jev-shell-history는 어떻게 설치하나요?
저장소를 ~/.zsh/jev-shell-history에 클론합니다: git clone <this repo> ~/.zsh/jev-shell-history npm 종속성을 설치합니다: cd ~/.zsh/jev-shell-history && npm install ~/.zshrc에 TypeSafe API 키를 설정합니다: export TYPESAFE_API_KEY=... ~/.zshrc에서 플러그인을 source합니다: source ~/.zsh/jev-shell-history/zsh/jev-shell-history.plugin.zsh
jev-shell-history은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/mrnugget/jev-shell-history

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트