# 필수 터미널 도구 터미널에서 사용하는 유용한 CLI 도구 모음 ## 지원 도구 - [tmux](https://github.com/tmux/tmux) - 터미널 멀티플렉서 - [bottom](https://github.com/ClementTsang/bottom) - 호스트 모니터링 - [lazygit](https://github.com/jesseduffield/lazygit) - Git 터미널 UI - [ctop](https://github.com/bcicen/ctop) - 컨테이너 모니터링 - [uv](https://docs.astral.sh/uv/) - Python 패키지 관리자 - [pi](https://pi.dev/) - CLI AI 코딩 어시스턴트 + 추천 패키지 일괄 설치 ## 설치 ### MacOS / Linux **tmux:** ```bash curl -fsSL "https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-tmux.sh?ref_type=heads" | bash ``` **bottom:** ```bash curl -fsSL "https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-bottom.sh?ref_type=heads" | bash ``` **lazygit:** ```bash curl -fsSL "https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-lazygit.sh?ref_type=heads" | bash ``` **ctop:** ```bash curl -fsSL "https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-ctop.sh?ref_type=heads" | bash ``` **uv:** ```bash curl -LsSf https://astral.sh/uv/install.sh | sh ``` **pi (Pi Coding Agent + 추천 패키지):** ```bash curl -fsSL "https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-pi.sh?ref_type=heads" | bash ``` ### Windows (PowerShell): **tmux:** ```powershell powershell -ExecutionPolicy Bypass -c "$t=\"$env:TEMP\install-tmux.ps1\"; iwr -useb 'https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-tmux.ps1' -OutFile $t; & $t" ``` **bottom:** ```powershell powershell -ExecutionPolicy Bypass -c "$t=\"$env:TEMP\install-bottom.ps1\"; iwr -useb 'https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-bottom.ps1' -OutFile $t; & $t" ``` **lazygit:** ```powershell powershell -ExecutionPolicy Bypass -c "$t=\"$env:TEMP\install-lazygit.ps1\"; iwr -useb 'https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-lazygit.ps1' -OutFile $t; & $t" ``` **ctop:** ```powershell powershell -ExecutionPolicy Bypass -c "$t=\"$env:TEMP\install-ctop.ps1\"; iwr -useb 'https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-ctop.ps1' -OutFile $t; & $t" ``` **uv:** ```powershell powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" ``` **pi (Pi Coding Agent + 추천 패키지):** ```powershell powershell -ExecutionPolicy Bypass -c "$t=\"$env:TEMP\install-pi.ps1\"; iwr -useb 'https://gl.isitsoft.kr/publicproj/install-sh/-/raw/main/install-pi.ps1' -OutFile $t; & $t" ``` ## 도구별 사용법 ### tmux 터미널 멀티플렉서입니다. 하나의 터미널에서 여러 세션과 창을 관리할 수 있습니다. - **세션 관리** — 백그라운드 세션 유지, detach/attach - **창 분할** — 수평/수직 분할로 여러 패널 동시 작업 - **vim 스타일 이동** — h/j/k/l로 패널 간 이동 - **마우스 지원** — 마우스로 패널 선택 및 스크롤 ```bash tmux # 새 세션 시작 tmux new -s # 이름 지정 세션 시작 tmux attach -t # 세션 접속 tmux ls # 세션 목록 ``` | 단축키 | 동작 | | ---------------- | ------------------------ | | `Ctrl-a` | Prefix key (기본 Ctrl-b) | | `Prefix \|` | 수평 분할 | | `Prefix -` | 수직 분할 | | `Prefix h/j/k/l` | 패널 이동 (vim 스타일) | | `Prefix r` | .tmux.conf 다시 로드 | | `Prefix Space` | 레이아웃 전환 | | `Prefix o` | 패널 회전 | | `Prefix ,` | 창 이름 변경 | | `Prefix &` | 창 닫기 | > `install-tmux` 스크립트는 `.tmux.conf`를 홈 디렉토리에 자동 배포합니다. 기존 파일이 있으면 백업 후 덮어씁니다. ### bottom 호스트 모니터링 터미널 UI 도구입니다. - **CPU, 메모리, 디스크, 네트워크** 실시간 모니터링 - **프로세스 관리** (CPU/메모리 사용률별 정렬, 검색, 종료) - **온도 센서 모니터링** - **GPU 모니터링** (NVIDIA/AMD 지원) ```bash btm ``` | 단축키 | 동작 | | ----------- | -------------------- | | `q` / `Esc` | 종료 | | `F1` ~ `F5` | 탭 전환 | | `↑` `↓` | 프로세스 선택 | | `k` | 선택한 프로세스 종료 | | `/` | 검색 | ### lazygit Git을 위한 터미널 UI 도구입니다. - **편리한 단축키**로 모든 git 작업 수행 - **커밋, 브랜치, stash, rebase** 시각적 관리 - **diff 뷰**로 변경사항 확인 - **merge conflict** 해결 도구 ```bash lazygit ``` | 단축키 | 동작 | | --------------- | ------------------ | | `q` | 종료 | | `↓` `↑` `→` `←` | 화면 간 이동 | | `Space` | 파일 Stage/Unstage | | `c` | 커밋 작성 | | `P` `p` | Push / Pull | | `?` | 도움말 | ### ctop Docker/Podman 컨테이너 모니터링 터미널 UI 도구입니다. - **실시간 컨테이너 메트릭** (CPU, 메모리, 네트워크, I/O) - **컨테이너별 상태** 표시 및 필터링 - **컨테이너 로그** 바로 보기 - **정지/시작/재시작** 등 컨테이너 관리 ```bash ctop ``` | 단축키 | 동작 | | ----------- | ------------------ | | `q` / `Esc` | 종료 | | `↑` `↓` | 컨테이너 선택 | | `l` | 컨테이너 로그 보기 | | `a` | 모든 컨테이너 표시 | | `f` | 필터 | | `S` | 정지 | | `R` | 재시작 | > **macOS Apple Silicon 참고**: ctop은 native arm64 빌드를 제공하지 않습니다. Rosetta 2를 통해 amd64 바이너리로 실행됩니다. ### Pi Coding Agent CLI 기반 AI 코딩 어시스턴트입니다. `install-pi` 스크립트는 Pi 본체와 함께 다음 추천 패키지를 일괄 설치합니다. | 패키지 | 설명 | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- | | [pi-subagents](https://pi.dev/packages/pi-subagents) | 하위 에이전트에 작업 위임 — 코드 리뷰, 스카우팅, 구현, 병렬 감사, 오케스트레이션, 백그라운드 작업 | | [context-mode](https://pi.dev/packages/context-mode) | 컨텍스트 윈도우 보호 — 샌드박스 도구, 세션 연속성, BM25 지식 베이스, think-in-code 패러다임 | | [pi-mcp-adapter](https://pi.dev/packages/pi-mcp-adapter) | MCP 서버를 Pi에서 사용 — 수백 개 툴 정의 대신 하나의 프록시 툴로 | | [pi-web-access](https://pi.dev/packages/pi-web-access) | 웹 검색, 콘텐츠 추출, 영상 이해 — 설정 없는 Exa 검색, Perplexity, Gemini, YouTube | | [@plannotator/pi-extension](https://pi.dev/packages/@plannotator/pi-extension) | 파일 기반 플랜 모드 — 브라우저 UI로 에이전트 플랜 검토, 주석, 승인 | | [@juicesharp/rpiv-ask-user-question](https://pi.dev/packages/@juicesharp/rpiv-ask-user-question) | 구조화된 질문 도구 — 에이전트가 추측 대신 사용자에게 질문 | | [pi-lens](https://pi.dev/packages/pi-lens) | 실시간 코드 피드백 — LSP 진단, 린터, 포맷터, 타입 체킹, 구조 분석, 읽기 전 수정 가드 | | [@juicesharp/rpiv-todo](https://pi.dev/packages/@juicesharp/rpiv-todo) | 세션 간 유지되는 투두 리스트 — /reload 및 compaction 후에도 작업 보존, 의존성追踪 | | [pi-simplify](https://pi.dev/packages/pi-simplify) | 변경된 코드의 명확성, 일관성, 유지보수성 개선 제안 | | [@juicesharp/rpiv-advisor](https://pi.dev/packages/@juicesharp/rpiv-advisor) | 더 강력한 리뷰어 모델의 제2의 의견 제공 | | [@juicesharp/rpiv-pi](https://pi.dev/packages/@juicesharp/rpiv-pi) | 스킬 기반 개발 워크플로우 — 탐색, 조사, 설계, 계획, 구현, 검증 파이프라인 | | [@samfp/pi-memory](https://pi.dev/packages/@samfp/pi-memory) | 영구 메모리 — 세션 간 교정, 선호도, 프로젝트 패턴 학습 | | [pi-btw](https://pi.dev/packages/pi-btw) | 메인 에이전트 실행을 중단하지 않는 병렬 사이드 대화 (/btw) | | [pi-docparser](https://pi.dev/packages/pi-docparser) | 문서 파싱 도구 — PDF, 오피스 문서, 스프레드시트, 이미지, OCR | | [pi-ollama-cloud](https://pi.dev/packages/pi-ollama-cloud?name=ollama) | Ollama Cloud 제공자 플러그인 — 동적 모델 발견, 웹 검색/패치 도구, 로컬 서버 불필요 | > **Ollama Cloud 사용 시**: `~/.pi/agent/auth.json`에 API 키를 설정하세요. 자세한 내용은 [pi-ollama-cloud 문서](https://pi.dev/packages/pi-ollama-cloud?name=ollama)를 참조하세요. > ~/.pi/agent/auth.json에 "api.key" : "YOUR_API_KEY" 형태로 추가한다. ```json { "anthropic": { ... }, "ollama-cloud": { "type": "api_key", "key": "..." } } ``` **pi** 사용법 ```bash pi # 대화형 세션 시작 pi -p "질문" # 단일 질문 (print 모드) pi --help # 도움말 pi list # 설치된 패키지 목록 ``` --- _GitLab: https://gitlab.com/publicproj/install-sh_