업데이트 내역/Vitals 1.11
Vitals 1.11: 개발자를 위한 Vitals
간단한 답
Vitals 1.11은 개발자를 위한 업데이트입니다. 프로젝트 탭이 개발자 탭이 되었고, 프로젝트, 포트, 열린 파일, 컨테이너, Homebrew 다섯 섹션이 있습니다. 실행 중인 것을 시작된 프로젝트별로, 사용 중인 모든 포트를 무엇이 잡고 있는지와 누가 접속할 수 있는지와 함께, 디스크 추출을 막고 있는 앱, 그리고 Homebrew가 설치했지만 한 번도 실행되지 않는 것을 보여 줍니다. 같은 답을 vitals 명령어와 AI 어시스턴트에서도 얻을 수 있습니다. 직접 허락하기 전에는 아무것도 중단, 종료, 제거되지 않습니다.
실행 중인 것을 위한 탭 하나
개발자 탭이 프로젝트 탭을 대신하고, 컨테이너도 그 안으로 들어갑니다. 상단에 다섯 섹션이 각각 개수와 함께 있습니다: 프로젝트, 포트, 열린 파일, 컨테이너, Homebrew.
프로젝트는 모든 프로세스를 시작된 프로젝트 아래에 나열하고, 터미널이나 Codex처럼 그것을 시작한 앱, 포트, CPU와 메모리를 함께 보여 줍니다. 유휴 상태로 남은 개발 서버는 중단… 버튼, 중단하면 확보되는 것과 함께 짚어 줍니다. 프로젝트를 열면 각 프로세스가 상위 프로세스 아래에 보입니다.
컨테이너 섹션은 Docker나 다른 컨테이너 엔진이 실행 중일 때 나타납니다.
사용 중인 모든 포트와 누가 접속할 수 있는지
포트는 Mac에서 무언가가 수신 대기 중인 모든 포트를 그룹으로 나눠 나열합니다. 내 프로젝트, 유휴 개발 서버, Homebrew 서비스, 그리고 앱, 프로그램 및 macOS입니다. 행마다 무엇이 포트를 잡고 있는지, 어디에서 실행되는지, 얼마나 오래 실행 중인지 표시됩니다.
포트마다 누가 접속할 수 있는지도 표시됩니다. 이 Mac은 이 Mac의 프로그램만 접속할 수 있다는 뜻입니다. 네트워크는 네트워크의 다른 기기도 접속할 수 있다는 뜻이며, 개발 서버라면 알아 둘 만합니다.
- 브라우저에서 열기는 localhost에서 포트를 엽니다.
- 종료는 먼저 물어본 뒤 포트를 잡고 있는 것을 중단합니다.
- 24015~24034처럼 프로그램 하나가 잡고 있는 범위는 한 행으로 표시됩니다.
추출되지 않는 디스크 추출하기
macOS는 디스크가 사용 중이라고만 하고 무엇이 쓰고 있는지는 말하지 않습니다. 열린 파일은 모든 디스크를 카드로 보여 주며, 얼마나 찼는지, 열린 파일 수, 그리고 사용 중 또는 추출 가능이 표시됩니다. 디스크 아래에는 디스크를 잡고 있는 앱이 각각 열어 둔 파일, 쓰기용으로 열린 파일과 함께 나옵니다.
- 01 개발자 탭을 열고 열린 파일을 선택합니다. Vitals가 첫 번째 외장 디스크를 미리 선택해 둡니다.
- 02 추출을 클릭합니다. 디스크가 사용 중이면 Vitals가 종료할 앱을 알려 주고 묻습니다.
- 03 승인하면 ⌘Q와 같은 방식으로 앱을 종료하고, 디스크를 추출한 뒤 연결을 해제해도 안전하다고 알려 줍니다.
파일 하나를 찾으려면 ⌘F를 누르고 이름의 일부를 입력합니다. 어느 디스크에 있든 그 파일을 열고 있는 것이 나열되므로, 휴지통에서 항목이 사용 중이라고 할 때도 답을 찾을 수 있습니다.
Homebrew: 설치된 것과 한 번도 실행되지 않는 것
Homebrew는 직접 이름을 지정해 설치한 패키지를 버전, 디스크에서 차지하는 크기, 그 패키지의 프로그램이 실행되는 것을 Vitals가 마지막으로 본 시점과 함께 나열합니다. 실행 기록 없음은 설치해 놓고 한 번도 실행하지 않은 패키지 목록이며, 모두 합한 공간이 함께 표시됩니다.
- 업데이트는 설치된 버전과 새 버전을 보여 주며, 각각에 업그레이드, 전체에는 모두 업그레이드…가 있습니다.
- 확보 가능은 Homebrew의 오래된 버전과 다운로드가 차지하는 공간입니다. 정리…를 누르면 지워집니다.
- 종속 항목 포함을 켜면 다른 패키지가 필요로 하는 패키지도 각각 무엇이 필요로 하는지와 함께 추가됩니다.
‘시작’과 ‘중단’이 있는 Homebrew 서비스
서비스는 모든 Homebrew 서비스를 실행 중인지, 로그인할 때 시작되는지, root로 실행되는지와 함께 나열합니다. 서비스마다 시작, 중단, 다시 시작이 있고, 서비스의 포트는 포트 섹션에 있습니다.
멈춘 명령과 유휴 터미널
코딩 에이전트가 시작한 명령이 가끔 멈추는데, 에이전트는 아무 말 없이 그 명령을 기다립니다. 명령이 10분 동안 CPU도 디스크도 쓰지 않으면 에이전트 탭에서 그 세션에 멈춤이 표시되고, 명령 옆에 종료가 있습니다. 에이전트가 시작한 개발 서버나 도구 서버는 멈춘 것으로 보지 않습니다.
실행 중인 것이 없고 1시간 동안 아무것도 입력되거나 출력되지 않은 채 열려 있는 터미널 윈도우는 프로젝트 아래에 유휴 터미널로 나열되며, 각각에 끝 버튼이 있습니다.
메모리 리포트, 그리고 모든 탭에서 내보내기
Vitals가 보여 주는 것을 다른 곳으로 가져가는 두 가지 방법.
- 앱의 내보내기 메뉴에 있는 메모리 리포트는 앱 개발자를 위한 폴더를 다운로드에 만듭니다. 앱의 현재 메모리와 최고치를 시간별, 일별로, 각 프로세스, 차트, CSV로 된 수치가 담깁니다. macOS 로그에서 그 앱의 줄을 더할 수도 있습니다. Vitals는 아무것도 보내지 않으며, 폴더는 버그 리포트에 첨부할 수 있도록 내 Mac에 남습니다.
- 이제 모든 탭의 도구 막대에 내보내기가 있고, 이미지로 저장과 이미지 복사를 고를 수 있습니다. 에이전트 탭 이미지에서는 세션이 빠지고, 계정 이메일은 첫 글자만 표시됩니다.
터미널에서
vitals 명령어에도 새 섹션이 들어가며, 표로 보거나 --json으로 JSON을 받을 수 있습니다.
$ vitals ports $ vitals files $ vitals homebrew $ vitals homebrew --not-seen $ vitals homebrew --updates AI 어시스턴트에게 물어보기
Claude, Codex, Cursor는 새 도구 세 가지 ports, open_files, homebrew로 Vitals에 포트, 열린 파일, Homebrew를 물어볼 수 있습니다. 도구마다 설정 → 연동의 ‘공유할 내용’에 스위치가 따로 있습니다. 포트를 먼저 확인하는 어시스턴트는 서버를 새로 띄우지 않고 이미 실행 중인 개발 서버를 쓸 수 있습니다.
- 포트 3000에 무엇이 있고, 다른 기기가 접속할 수 있나요?
- 무엇이 외장 디스크 추출을 막고 있나요?
- 한 번도 실행하지 않은 Homebrew 패키지는 무엇인가요?
- 이 프로젝트의 개발 서버가 이미 실행 중인가요?
Vitals가 읽을 항목 선택
설정에 새 측정 페이지가 생겼고, 스위치가 세 개 있습니다: 온도 및 팬 읽기, 컨테이너 읽기, 유휴 개발 서버 감시. 하나를 끄면 Vitals는 그 항목을 아예 읽지 않으므로, 다른 앱이 팬을 제어하는 Mac이나 Docker를 전혀 쓰지 않는 Mac에 알맞습니다.
자주 묻는 질문
1.11은 무료 업데이트인가요?
네. Vitals에서 업데이트 확인을 선택하세요. 개발자 탭은 모든 라이선스에 포함됩니다.
개발자가 아닌데, 달라지는 것이 있나요?
나머지 Vitals는 그대로입니다. 열린 파일은 외장 디스크가 추출되지 않아 곤란한 사람 누구에게나 쓸모 있고, 포트는 Mac의 어떤 프로그램에 다른 기기가 접속할 수 있는지 보여 줍니다.
프로젝트 탭과 컨테이너 탭은 어디로 갔나요?
이제 둘 다 개발자 탭 상단에 있는 섹션입니다. 드롭다운에서도 개발자 탭 아래에 있습니다.
Vitals가 Homebrew에서 알아서 무언가를 바꾸나요?
아니요. brew가 알려 주는 것을 읽기만 합니다. brew 명령은 직접 클릭할 때만 실행합니다. ‘업그레이드’, ‘정리’, ‘제거’, 또는 서비스의 ‘시작’, ‘중단’, ‘다시 시작’입니다.
열려 있는 게 분명한 파일이 열린 파일에 나오지 않는 이유는 무엇인가요?
어떤 앱은 파일을 메모리로 읽어 들인 뒤 바로 닫으므로, 아무것도 그 파일을 잡고 있지 않습니다. Spotlight처럼 macOS 자체가 잡고 있는 파일을 보려면 설정 → 권한에서 전체 시스템 지표를 켜야 합니다.
실수로 무언가를 종료할 수도 있나요?
‘종료 후 추출’은 무엇을 종료할지 알려 주고 승인을 기다립니다. 앱은 ⌘Q와 같은 방식으로 종료되므로, 저장하지 않은 작업이 있는 앱은 저장할지 물어볼 수 있습니다.
1.11의 모든 변경 사항
Vitals 1.11은 무료 업데이트입니다. Vitals에서 업데이트 확인을 선택하거나 vitalsmac.com에서 다운로드하세요.
- 새 기능 개발자 탭. 프로젝트 탭이 개발자 탭이 되었고, 상단에 프로젝트, 포트, 열린 파일, 컨테이너, Homebrew 다섯 섹션이 있습니다. 드롭다운에는 프로젝트, 포트, 컨테이너가 있습니다.
- 새 기능 포트. Mac에서 사용 중인 모든 포트를 무엇이 잡고 있는지와 함께 보여 줍니다. 내 프로젝트, 앱, Homebrew 서비스 또는 macOS입니다. 포트마다 이 Mac만 접속할 수 있는지, 네트워크에서도 접속할 수 있는지가 표시되고, ‘브라우저에서 열기’와 ‘종료’가 있습니다. 유휴 상태로 남은 개발 서버는 따로 짚어 줍니다.
- 새 기능 열린 파일. 모든 디스크를 카드로 보여 주며, 그 디스크에 파일을 열어 둔 앱과 추출할 수 있는지가 함께 표시됩니다. 디스크가 추출되지 않으면 ‘종료 후 추출’이 무엇이 잡고 있는지 알려 주고, 묻고, 그것들을 종료한 다음 디스크를 추출합니다. 파일 이름으로 필터링하면 무엇이 그 파일을 열고 있는지 볼 수 있습니다.
- 새 기능 Homebrew. 모든 패키지를 크기, 마지막 실행 시점과 함께 보여 줍니다. 실행 기록이 없는 패키지는 차지하는 공간과 함께, 업데이트는 ‘업그레이드’와 ‘모두 업그레이드’와 함께 나오고, 정리하면 확보될 공간, 그리고 서비스마다 ‘시작’, ‘중단’, ‘다시 시작’이 있습니다.
- 새 기능 누구의 프로세스인지. 프로젝트에는 프로세스를 시작한 앱(Codex나 터미널 등)이 표시되고, 각 프로세스는 상위 프로세스 아래에 나열됩니다. 하위 프로세스가 있는 프로세스는 접을 수 있고, 필터로 이름, 프로세스, 포트를 입력해 프로젝트를 찾을 수 있습니다.
- 새 기능 멈춘 명령과 유휴 터미널. 코딩 에이전트가 시작한 명령이 10분 동안 아무것도 하지 않으면 그 세션에 ‘멈춤’이 표시되고, 옆에 ‘종료’가 있습니다. 실행 중인 것이 없고 1시간 동안 아무것도 입력하지 않은 터미널 윈도우는 프로젝트 아래에 ‘끝’ 버튼과 함께 나열됩니다.
- 새 기능 메모리 리포트. 앱의 내보내기 메뉴에서 앱 개발자를 위한 리포트를 만들 수 있습니다. 현재 메모리와 최고치를 시간별, 일별로, 각 프로세스, 차트, CSV로 된 수치, 그리고 원하면 macOS 로그에서 그 앱의 줄까지 담깁니다. 다운로드에 폴더로 저장되며, Vitals는 아무것도 보내지 않습니다.
- 새 기능 모든 탭에서 내보내기. 도구 막대의 내보내기 버튼이 모든 탭에 있습니다. 윈도우에 보이는 그대로의 탭을 ‘이미지로 저장’하거나 ‘이미지 복사’할 수 있습니다. 에이전트 탭 이미지에서는 세션이 빠지고, 계정 이메일은 첫 글자만 표시됩니다.
- 새 기능 터미널과 어시스턴트에서도. vitals ports, vitals homebrew, vitals files가 터미널에서 같은 답을 보여 줍니다. Claude, Codex, Cursor는 모든 포트와 누가 접속할 수 있는지, Homebrew, 열린 파일, 배터리 사용 시간, 일별 또는 주별 데이터 전송량을 물어볼 수 있습니다.
- 새 기능 설정 → 측정. Vitals가 읽는 항목을 고르는 페이지입니다. ‘온도 및 팬 읽기’, ‘컨테이너 읽기’, ‘유휴 개발 서버 감시’가 있습니다. 하나를 끄면 Vitals는 그 항목을 아예 읽지 않으므로, 다른 앱이 팬을 제어하는 Mac이나 Docker를 쓰지 않는 Mac에 알맞습니다.
- 개선 드롭다운에서 펼친 앱의 프로세스가 앱의 열에 맞춰 정렬되고, 각각 윈도우에서와 같은 이름으로 표시되며, 클릭하면 프로세스 인스펙터에서 열립니다.
- 개선 앱 목록이 있는 탭에서는 목록을 스크롤하는 동안 차트와 카드가 접히고, 목록 맨 위로 돌아오면 다시 나타납니다.
- 개선 오래 사용한 뒤에도 Vitals가 메모리를 덜 씁니다. 탭을 바꿀 때마다 남던 메모리가 이제 해제됩니다.
- 수정 어시스턴트가 무언가를 종료하겠다고 요청했을 때 ‘종료’나 ‘종료 안 함’으로 답하면 Vitals 윈도우가 앞으로 나왔습니다. 이제는 하던 곳에 그대로 머뭅니다.
- 수정 설정의 메뉴 막대 미리보기에서 수치 두 개가 겹쳐 보일 수 있었습니다.