Communitygithub.com

cli-anything-nslogger

Interface de linha de comando para NSLogger — analise, filtre, exporte e monitore arquivos de log do NSLogger (.rawnsloggerdata / .nsloggerdata)

O que é cli-anything-nslogger?

O cli-anything-nslogger é uma ferramenta de linha de comando completa para o NSLogger, o visualizador de logs macOS para aplicativos iOS/macOS. Ele permite que desenvolvedores e agentes de IA (como Claude Code, Cursor e Codex) analisem, filtrem, exportem e monitorem arquivos de log no formato .rawnsloggerdata e .nsloggerdata diretamente do terminal. A ferramenta oferece subcomandos como `read` para exibir mensagens, `filter` para filtragem avançada por nível, tag, regex e thread, `export` para saída em texto, JSON ou CSV, `stats` para estatísticas resumidas, e `listen` para receber conexões ao vivo via Bonjour ou TCP/TLS. Também inclui um REPL interativo para exploração manual. O suporte nativo a Bonjour com o serviço `_nslogger-ssl._tcp` replica o comportamento da GUI do NSLogger, permitindo descoberta automática de dispositivos iOS. Com saída JSON padronizada e filtros poderosos, é ideal para integração em pipelines de análise automatizada de logs em sistemas macOS.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-nslogger

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que cli-anything-nslogger faz?

Um harness de CLI completo para o NSLogger, o visualizador de logs macOS para aplicativos iOS/macOS.

Instalação

cd nslogger/agent-harness
pip install -e .
# Verificar
cli-anything-nslogger --help

Referência de Comandos

generate — Criar arquivos de amostra para teste

cli-anything-nslogger generate sample.rawnsloggerdata --count 50

read — Exibir mensagens de um arquivo

# Todas as mensagens
cli-anything-nslogger read session.rawnsloggerdata

# Apenas erros (nível 0)
cli-anything-nslogger read session.rawnsloggerdata --level 0

# Filtrar por tag e busca textual
cli-anything-nslogger read session.rawnsloggerdata --tag Network --search "timeout"

# Primeiras 20 mensagens como JSON
cli-anything-nslogger read session.rawnsloggerdata --limit 20 --json

filter — Filtragem avançada

# Apenas erros e avisos
cli-anything-nslogger filter session.rawnsloggerdata --level 1

# Por tag
cli-anything-nslogger filter session.rawnsloggerdata --tag Auth --tag Network

# Busca com regex
cli-anything-nslogger filter session.rawnsloggerdata --regex "(timeout|failed|error)"

# Por thread
cli-anything-nslogger filter session.rawnsloggerdata --thread "main"

# Saída JSON
cli-anything-nslogger filter session.rawnsloggerdata --level 0 --json

export — Exportar para texto/JSON/CSV

# JSON para stdout
cli-anything-nslogger export session.rawnsloggerdata --format json

# CSV para arquivo
cli-anything-nslogger export session.rawnsloggerdata --format csv --output logs.csv

# Exportação filtrada em texto
cli-anything-nslogger export session.rawnsloggerdata --format text --level 1 --tag Network

stats — Estatísticas resumidas

# Resumo legível para humanos
cli-anything-nslogger stats session.rawnsloggerdata

# JSON para consumo por agente
cli-anything-nslogger stats session.rawnsloggerdata --json

Formato da saída JSON:

{
  "total": 342,
  "by_level": {"ERROR": 12, "WARNING": 34, "INFO": 200, "DEBUG": 96},
  "by_tag": {"Network": 89, "Auth": 45, "UI": 120},
  "by_thread": {"main": 200, "bg-queue": 142},
  "by_type": {"text": 340, "client_info": 1, "disconnect": 1},
  "clients": ["MyApp"],
  "first_timestamp": "2024-01-01T10:00:00+00:00",
  "last_timestamp": "2024-01-01T10:05:30+00:00",
  "duration_seconds": 330.0
}

listen — Receber conexões ao vivo

# Corresponde ao comportamento Bonjour da GUI do NSLogger.app para descoberta automática iOS
cli-anything-nslogger listen --bonjour --name bazinga --debug

# Espelhar logs ao vivo para um arquivo de texto mantendo a saída no stdout
cli-anything-nslogger listen --bonjour --name bazinga --output app.log

# Escrever linhas JSON legíveis por máquina
cli-anything-nslogger listen --bonjour --name bazinga --output app.jsonl --output-format jsonl

# Modo TCP/TLS direto para clientes configurados manualmente
cli-anything-nslogger listen --port 50000 --ssl --debug

# Mostrar apenas erros durante a escuta, saída como fluxo JSON
cli-anything-nslogger listen --bonjour --name bazinga --level 0 --json

# Executar até Ctrl-C
cli-anything-nslogger listen --bonjour --name bazinga

Use o modo Bonjour primeiro para aplicativos iOS, pois ele corresponde à GUI desktop do NSLogger: a CLI publica um NetService nativo do macOS com _nslogger-ssl._tcp e aceita frames TLS NSLogger. Use TCP/TLS direto apenas quando o aplicativo estiver configurado manualmente com o host e porta do Mac.

repl — REPL de Comandos Interativos

cli-anything-nslogger repl session.rawnsloggerdata
# Ou inicie executando cli-anything-nslogger sem subcomando.

Níveis de Log

ValorNomeUso
0ERRORFalhas irrecuperáveis
1WARNINGProblemas recuperáveis
2INFOOperação normal
3DEBUGDetalhes de desenvolvimento
4VERBOSERuído de rastreamento

Formato da Mensagem JSON

{
  "sequence": 42,
  "timestamp": "2024-01-01T10:01:23+00:00",
  "timestamp_ms": 456,
  "thread_id": "main",
  "tag": "Network",
  "level": 0,
  "level_name": "ERROR",
  "type": "text",
  "text": "Connection timed out after 30s",
  "image_width": 0,
  "image_height": 0,
  "client_name": "MyApp",
  "client_version": "2.1.0",
  "os_name": "iOS",
  "os_version": "17.0",
  "machine": "iPhone15,2"
}

Exemplos de Fluxo de Trabalho para Agentes

# 1. Inspecionar uma sessão de crash capturada
cli-anything-nslogger stats crash.rawnsloggerdata --json

# 2. Encontrar todos os erros nos 5 minutos antes do crash
cli-anything-nslogger filter crash.rawnsloggerdata --level 0 --json

# 3. Obter apenas falhas de rede
cli-anything-nslogger filter crash.rawnsloggerdata --tag Network --regex "fail|timeout|error" --json

# 4. Exportar log completo para análise offline
cli-anything-nslogger export crash.rawnsloggerdata --format json --output crash_log.json

# 5. Monitorar um aplicativo iOS ao vivo e manter uma cópia local
cli-anything-nslogger listen --bonjour --name bazinga --output app.log --debug

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

cli-anything-adguardhome

>-

cli-anything-anygen

>-

cli-anything-audacity

>-

cli-anything-blender

>-

cli-anything-browser

Browser automation CLI using DOMShell MCP server. Maps Chrome

cli-anything-calibre

>-

cli-anything-ccswitch

CLI interface for CC Switch — manage AI coding tool configurations from the terminal

cli-anything-chromadb

>-

cli-anything-cloudanalyzer

Command-line interface for CloudAnalyzer — Agent-friendly harness for CloudAnalyzer, a QA platform for mapping, localization, and perception outputs. Supports 27 commands across 8 groups: point cloud evaluation, trajectory evaluation, ground segmentation QA, config-driven quality gates, baseline evolution, processing, visualization, and interactive REPL.

cli-anything-cloudcompare

Command-line interface for CloudCompare — Agent-friendly harness for CloudCompare, the open-source 3D point cloud and mesh processing software. Supports 41 commands across 9 groups: project management, session control, point cloud operations (subsample, filter, segment, analyze), mesh operations, distance computation (C2C, C2M), transformations (ICP, matrix), export (LAS/LAZ/PLY/PCD/OBJ/STL/E57), and interactive REPL.

cli-anything-comfyui

>-

cli-anything-dify-workflow

Wrapper for the Dify workflow DSL CLI. Create, inspect, validate, edit, and export Dify workflow files through a CLI-Anything harness.

cli-anything-drawio

>-

cli-anything-eez-studio

Use EEZ Studio from the command line: inspect and modify native .eez-project files, edit LVGL screens/widgets, manage SCPI commands, and invoke the real EEZ Studio backend for LVGL builds.

cli-anything-eth2-quickstart

>-

cli-anything-exa

>-

cli-anything-firefly-iii

Firefly III CLI - Personal finance management via CLI-Anything

cli-anything-freecad

Complete CLI harness for FreeCAD parametric 3D CAD modeler (258 commands). Covers ALL workbenches: Part (29 primitives + boolean + mirror + loft + sweep), Sketcher (26 cmds: geometry + constraints + editing), PartDesign (38 cmds: pad/pocket/groove/fillet/chamfer/patterns/hole/datum), Assembly (11 cmds), Mesh (16 cmds), TechDraw (15 cmds: views + dimensions + PDF/SVG), Draft (33 cmds: 2D shapes + arrays + transforms), FEM (12 cmds), CAM/CNC (10 cmds), Surface (6 cmds), Spreadsheet (7 cmds), Import (13 formats), Export (17 formats), Measure (12 cmds), Materials (21 presets). Headless FreeCAD export to STEP/IGES/STL/OBJ/DXF/PDF/glTF/3MF.

cli-anything-gimp

>-

cli-anything-godot

>-

Habilidades Relacionadas