native-app-performance
Profiluj wydajność aplikacji macOS i iOS bezpośrednio z terminala, bez otwierania Instruments.
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Umiejętność do analizy wydajności natywnych aplikacji Apple. Nagrywaj Time Profiler za pomocą xctrace, ekstrahuj próbki czasu, symbolizuj stos wywołań i identyfikuj wąskie gardła w kodzie — wszystko z linii poleceń. Idealna, gdy chcesz znaleźć funkcje zużywające najwięcej czasu procesora bez uruchamiania graficznego interfejsu Instruments. Obsługuje zarówno dołączanie do uruchomionej aplikacji, jak i uruchamianie jej z profilerem od razu.
Jak używać
Zainstaluj umiejętność, dodając katalog native-app-performance do swojego konfigu Claude (np. ~/.claude/skills/).
Aby nagrać profil wydajności, wybierz jedną z dwóch metod: jeśli aplikacja już działa, użyj komendy attach z identyfikatorem procesu; jeśli chcesz uruchomić aplikację z profilerem, użyj komendy launch ze ścieżką do binarka. W obu przypadkach xctrace zapisze plik .trace na dysku.
Ekstrahuj próbki czasu z pliku trace za pomocą skryptu extract_time_samples.py, podając ścieżkę do nagraniaego pliku trace. Skrypt wygeneruje plik XML zawierający dane czasowe.
Pobierz adres ładowania sekcji __TEXT z uruchomionej aplikacji za pomocą vmmap i identyfikatora procesu — ten adres jest potrzebny do prawidłowej symbolizacji stosu wywołań (ASLR zmienia adresy przy każdym uruchomieniu).
Uruchom skrypt top_hotspots.py, przekazując plik XML z próbkami, ścieżkę do binarka aplikacji, adres ładowania i liczbę top funkcji do wyświetlenia (np. top 30). Skrypt zwróci ranking funkcji zużywających najwięcej czasu CPU.
Przeanalizuj wyniki — funkcje na górze listy to wąskie gardła. Upewnij się, że podczas nagrywania profilatora wyzwoliłeś powolną operację (otwarcie menu, odświeżenie danych itp.), aby uchwycić istotne dane.