Communitygithub.com

cli-anything-nslogger

NSLogger를 위한 CLI 도구 모음입니다. .rawnsloggerdata / .nsloggerdata 로그 파일을 파싱, 필터링, 내보내기 및 실시간 모니터링할 수 있습니다.

cli-anything-nslogger란 무엇인가요?

이 스킬은 macOS/iOS 앱용 로그 뷰어인 NSLogger를 완전히 CLI에서 제어할 수 있는 도구 모음입니다. 개발자와 AI 에이전트는 `generate`, `read`, `filter`, `export`, `stats`, `listen`, `repl` 등 다양한 명령을 통해 로그 파일을 생성, 읽기, 고급 필터링, 다양한 형식(JSON, CSV, 텍스트)으로 내보내기, 통계 요약, 실시간 Bonjour/TCP 연결 수신, 대화형 REPL 세션을 실행할 수 있습니다. 특히 `listen` 명령은 NSLogger.app GUI의 Bonjour 동작을 그대로 재현하여 iOS 앱의 자동 발견 및 실시간 로그 스트리밍을 지원합니다. AI 에이전트는 이 도구를 활용하여 크래시 로그 분석, 네트워크 오류 추적, 실시간 앱 모니터링 등 자동화된 디버깅 워크플로우를 구성할 수 있습니다.

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

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

cli-anything-nslogger은(는) 무엇을 하나요?

NSLogger를 위한 완전한 CLI 도구 모음입니다. NSLogger는 iOS/macOS 앱용 macOS 로그 뷰어입니다.

설치

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

명령어 레퍼런스

generate — 테스트용 샘플 파일 생성

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

read — 파일에서 메시지 읽기

# 모든 메시지
cli-anything-nslogger read session.rawnsloggerdata

# 오류만 (레벨 0)
cli-anything-nslogger read session.rawnsloggerdata --level 0

# 태그와 텍스트 검색으로 필터링
cli-anything-nslogger read session.rawnsloggerdata --tag Network --search "timeout"

# 처음 20개 메시지를 JSON으로
cli-anything-nslogger read session.rawnsloggerdata --limit 20 --json

filter — 고급 필터링

# 오류와 경고만
cli-anything-nslogger filter session.rawnsloggerdata --level 1

# 태그별
cli-anything-nslogger filter session.rawnsloggerdata --tag Auth --tag Network

# 정규식 검색
cli-anything-nslogger filter session.rawnsloggerdata --regex "(timeout|failed|error)"

# 스레드별
cli-anything-nslogger filter session.rawnsloggerdata --thread "main"

# JSON 출력
cli-anything-nslogger filter session.rawnsloggerdata --level 0 --json

export — 텍스트/JSON/CSV로 내보내기

# JSON을 stdout으로
cli-anything-nslogger export session.rawnsloggerdata --format json

# CSV를 파일로
cli-anything-nslogger export session.rawnsloggerdata --format csv --output logs.csv

# 필터링된 텍스트 내보내기
cli-anything-nslogger export session.rawnsloggerdata --format text --level 1 --tag Network

stats — 요약 통계

# 사람이 읽을 수 있는 요약
cli-anything-nslogger stats session.rawnsloggerdata

# 에이전트가 사용할 JSON
cli-anything-nslogger stats session.rawnsloggerdata --json

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 — 실시간 연결 수신

# iOS 자동 발견을 위해 NSLogger.app GUI Bonjour 동작과 일치
cli-anything-nslogger listen --bonjour --name bazinga --debug

# 실시간 로그를 텍스트 파일에 미러링하면서 stdout에도 출력
cli-anything-nslogger listen --bonjour --name bazinga --output app.log

# 기계가 읽을 수 있는 JSON Lines 쓰기
cli-anything-nslogger listen --bonjour --name bazinga --output app.jsonl --output-format jsonl

# 수동으로 설정된 클라이언트를 위한 직접 TCP/TLS 모드
cli-anything-nslogger listen --port 50000 --ssl --debug

# 수신 중 오류만 표시, JSON 스트림으로 출력
cli-anything-nslogger listen --bonjour --name bazinga --level 0 --json

# Ctrl-C까지 실행
cli-anything-nslogger listen --bonjour --name bazinga

iOS 앱의 경우 데스크탑 NSLogger GUI와 일치하므로 Bonjour 모드를 먼저 사용하세요. CLI는 기본 macOS NetService를 _nslogger-ssl._tcp로 게시하고 TLS NSLogger 프레임을 수락합니다. 앱이 Mac 호스트와 포트로 수동 구성된 경우에만 직접 TCP/TLS를 사용하세요.

repl — 대화형 명령 REPL

cli-anything-nslogger repl session.rawnsloggerdata
# 또는 하위 명령 없이 cli-anything-nslogger를 실행하여 시작합니다.

로그 레벨

값이름용도
0ERROR복구 불가능한 오류
1WARNING복구 가능한 문제
2INFO정상 작동
3DEBUG개발자 상세 정보
4VERBOSE추적 수준 노이즈

메시지 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"
}

에이전트 워크플로우 예제

# 1. 캡처된 크래시 세션 검사
cli-anything-nslogger stats crash.rawnsloggerdata --json

# 2. 크래시 5분 전의 모든 오류 찾기
cli-anything-nslogger filter crash.rawnsloggerdata --level 0 --json

# 3. 네트워크 오류만 가져오기
cli-anything-nslogger filter crash.rawnsloggerdata --tag Network --regex "fail|timeout|error" --json

# 4. 오프라인 분석을 위해 전체 로그 내보내기
cli-anything-nslogger export crash.rawnsloggerdata --format json --output crash_log.json

# 5. iOS 앱을 실시간 모니터링하고 로컬 복사본 유지
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

>-

관련 스킬