Show HN: I build a strace clone for macOS
5 days ago
- #macOS
- #LLDB
- #debugging
- A system call tracer for macOS using the LLDB debugger API.
- Works with SIP enabled, unlike dtruss.
- Pure Python implementation with no kernel extensions or compiled components.
- Supports multiple output formats: JSON Lines and strace-compatible text output.
- Features syscall filtering by name or category.
- Automatically decodes flags, error codes, and struct fields.
- Includes color output with syntax highlighting.
- Provides summary statistics with time/call/error counts.
- Requires macOS 12+, Apple Silicon (ARM64) or Intel (x86_64), and Xcode Command Line Tools.
- Must use macOS system Python for LLDB bindings.
- Supports basic usage, output to file, JSON output, and syscall filtering.
- Current status: Beta, with core functionality working but some features in development.
- MIT License, contributions welcome.