평면적인 명령 기록 파일을 넘어서
Atuin은 셸 히스토리를 구조화해 시각, 종료 상태, 디렉터리, 호스트 같은 문맥으로 검색하게 해. 로컬 저장과 선택적 동기화를 제공하지만, 명령 기록에는 경로와 인자에 포함된 민감한 값이 들어갈 수 있어.
설치
brew install atuin
atuin import auto # 기존 zsh 명령 기록 가져오기
echo 'eval "$(atuin init zsh)"' >> ~/.zshrc
exec zsh초기화 줄을 적용하면 Ctrl+R이 Atuin 검색 화면을 열어. 기존 zsh 명령 기록은 atuin import auto를 실행할 때 한 번 가져와.
문맥으로 명령 기록 좁히기
- 디렉터리 필터로 현재 프로젝트에서 실행한 명령만 볼 수 있어.
- 호스트 필터로 특정 컴퓨터에서 실행한 명령만 고를 수 있어.
- 종료 상태로 성공하거나 실패한 명령을 구분할 수 있어.
- 시간대 통계로 자주 실행한 명령을 확인할 수 있어.
- 선택적 동기화는 종단 간 암호화를 사용하며 자체 서버나 Atuin 서비스에 연결할 수 있어.
명령 기록 동기화하기
atuin register -u me -e me@example.com
atuin login -u me
atuin sync # 원격과 양방향 동기화
atuin sync -f # 전체 동기화를 강제로 실행동기화는 암호화와 계정 복구 방식, 암호화 키를 보관할 책임을 함께 이해한 뒤 켜. 암호화된 저장소라도 클라이언트에 남은 평문 히스토리와 화면 노출까지 사라지는 것은 아니야.
동기화보다 먼저 제외 규칙
여러 머신에서 히스토리를 공유하기 전에 토큰, 비밀번호, 일회성 인증 URL처럼 기록되면 안 되는 입력을 어떻게 제외할지 정해. 비밀은 애초에 명령줄 인자로 넣지 않고 표준 입력이나 안전한 자격 증명 저장소를 사용하는 편이 나아.
검색이 좋아질수록 보존 범위도 커져
디렉터리와 호스트 정보가 붙으면 예전 명령을 찾기 쉬워지지만 프로젝트 이름, 서버 이름, 작업 시간도 함께 남아. 보존 기간, 삭제 방법, 백업 위치를 확인해. 생산성 데이터 역시 운영해야 할 데이터야.
Ctrl+R 소유자는 하나만
fzf와 Atuin을 함께 설치하면 둘 다 같은 키 바인딩을 바꾸려 할 수 있어. 초기화 순서에 우연히 맡기지 말고 어느 도구가 히스토리 검색을 소유할지 정해. 예상과 다른 화면이 뜰 때는 셸 설정에서 두 초기화 줄의 순서와 중복을 확인하자.
명령 기록은 민감한 데이터야
히스토리에는 경로, 호스트 이름, 인자, 실수로 붙여 넣은 비밀이 남을 수 있어. 가져오기와 동기화 전에 필터, 보존 기간, 암호화 키 복구 방법을 확인해.