Sondă de proces · nativă macOS
Ce rulează acum pe mașina ta — și de când.
Vede ce sesiuni Claude Code sunt vii pe Mac-ul tău, pe toate conturile — și spune „nu știu” când nu poate confirma, în loc să ghicească.
Un next dev pornit acum trei ore, un server MCP lăsat de ieri, un port ocupat de un proces pe care nu-l mai recunoști. Verificarea manuală înseamnă ps, lsof, kill — și o presupunere: dacă există un proces cu acel PID, presupui că e cel de azi, deși PID-urile se reciclează.
O sondă care nu poate confirma reciclarea și răspunde oricum „viu” nu măsoară nimic — doar ghicește, cu încredere.
Vede sesiunile Claude Code de pe toate conturile configurate ale mașinii, nu doar contul implicit
Verdict ternar per sesiune — viu, mort sau necunoscut — niciodată un „da”/„nu” ghicit
Confirmă reciclarea de PID comparând momentul real de pornire al procesului cu cel înregistrat, nu doar dacă există un proces cu acel număr
Pictogramă în bara de meniu, pentru o privire fără să deschizi fereastra
Istoric local, append-only, al identității fiecărei sesiuni — fără cont, fără cloud
Un server MCP care citește direct de pe disc și răspunde chiar și cu aplicația închisă
Culorile de mai jos sunt exact cele din aplicație — „necunoscut” are propria culoare, niciodată pe cea de „mort”.
Procesul există și procStart se potrivește cu ce e înregistrat — reciclarea de PID e exclusă.
Niciun proces cu acel PID, sau unul cu alt procStart: PID-ul a fost reciclat de alt proces.
Procesul există, dar reciclarea nu poate fi exclusă — lipsește baseline-ul sau ps n-a putut fi citit. Nu devine niciodată un „viu” ghicit.
Sources/VitalsCore/Liveness.swift, Theme.swift
Fiecare citește dintr-un fișier anume sau dintr-o măsurătoare live pe flota reală.
Ambele ramuri „n-am putut măsura” din funcția de verdict întorc .unknown — nu un „viu” ghicit ca înainte de 4 sep 2026.
Sources/VitalsCore/Liveness.swift — verdict(for:)
procStart se compară ca dată, nu ca șir — un fix care a reparat un verdict fals „mort” raportat 21 din 30 de zile, pentru zilele 1-9 ale lunii.
Sources/VitalsCore/Liveness.swift — compareProcStart; docs/HANDOFF.md, 3 sep
Enumerarea conturilor găsește toate conturile Claude Code configurate pe mașină, cu sursa fiecăruia — alias, variabilă de mediu, sau director orfan. Găsește și un cont numit doar de un alias de shell, care încă n-are folder pe disc.
Sources/VitalsCore/Accounts.swift
Podul MCP citește direct de pe disc, nu printr-un socket către aplicație — răspunde chiar dacă fereastra Vitals nu e deschisă.
Package.swift — comentariul țintei VitalsMCP
Un mecanism testat nu e același lucru cu o funcție livrată. Iată exact unde se termină una și începe cealaltă.
WatchTarget/TargetProbe/TargetReconciler aplică același verdict ternar oricărui PID, comandă sau port — testat, cu evenimentul „reoccupied” care spune „portul 3000 e alt proces decât azi-dimineață”.
Sources/VitalsCore/{WatchTarget,TargetProbe,TargetReconciler}.swift
vitals-tool watch pid:<pid> / cmd:<pattern> / port:<port> întoarce verdictul o singură dată, la cerere. Nu există o buclă care să repete sondarea singură.
REZULTAT.md — „TargetReconciler nu e integrat într-o buclă de scanare”
Panoul principal grupează sesiunile pe cont și afișează verdictul lor — niciun proces non-Claude nu apare acolo azi.
Sources/Vitals/RootView.swift; docs/HANDOFF.md, 4 sep
Nimic din secțiunea asta nu e o promisiune de supraveghere de porturi ca funcție a interfeței — azi nu e.
Pentru că uneori chiar nu se poate confirma dacă procesul de acum e cel de la pornire — lipsește baseline-ul, sau ps n-a putut fi citit. Un verdict ghicit ar fi mai liniștitor și mai fals. „Necunoscut” nu se transformă niciodată în „mort”, nici nu se ascunde ca „0 sesiuni”.
Mecanismul care ar face asta există și e testat — dar nu rulează încă în fereastra aplicației. Azi, fereastra arată doar sesiuni Claude Code; verdictul generic e accesibil manual, din linia de comandă.
Magazinul e local, SQLite, append-only. Serverul MCP citește direct de pe disc, nu printr-un apel de rețea.
Cere macOS 14 sau mai nou — cerința declarată de pachet.
Da. Aplicația verifică licența, iar build-ul servit e semnat cu Developer ID și notarizat de Apple — Gatekeeper îl acceptă la prima deschidere, fără avertisment.
Aplicația verifică licența — cheia publică Ed25519 și verificatorul sunt în binarul care se descarcă de pe pagina asta, semnat cu Developer ID și notarizat de Apple. Se deschide cu un dublu-clic obișnuit, de prima dată.
+ TVA, calculat la finalizare după țara ta
Deschide aplicația, mergi la Preferințe → Licență și lipește cheia primită pe email.