whatisgithub

What is chisel?

facebook/chisel — explained in plain English

Analysis updated 2026-06-24

9,182PythonAudience · developerComplexity · 2/5LicenseSetup · easy

In one sentence

Extra debugger commands for Xcode's built-in LLDB debugger that help iOS and Mac developers inspect views, toggle visibility, and diagnose layout problems without recompiling the app.

Mindmap

mindmap
  root((chisel))
    What it does
      Extra LLDB commands
      Visual debugging
      No recompile needed
    Commands
      Print view tree
      Show or hide views
      Color borders
      Open images
    Setup
      Homebrew install
      lldbinit config
    Audience
      iOS developers
      Mac developers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Print a tree of all visible UI elements in the current app window while paused at a debugger breakpoint.

USE CASE 2

Show or hide a specific view on screen without stopping and recompiling the app.

USE CASE 3

Add a colored border around any view element to see its exact position and size during layout debugging.

USE CASE 4

Open an in-memory image object directly in Preview on your Mac to inspect pixel contents while debugging.

What is it built with?

PythonLLDBXcode

How does it compare?

facebook/chiselgoogle/adk-samplesplatformio/platformio-core
Stars9,1829,1989,203
LanguagePythonPythonPython
Setup difficultyeasymoderatemoderate
Complexity2/53/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Requires Homebrew and a one-line addition to ~/.lldbinit, only works with Xcode's LLDB on macOS.

Use freely for any purpose including commercial, as long as you keep the copyright notice.

So what is it?

Chisel is a set of extra commands for LLDB, which is the built-in debugger that Xcode uses when you are developing iOS or Mac apps. When an app is paused at a breakpoint, LLDB lets you inspect what is happening inside it. Chisel extends that capability with additional commands that are specifically useful for inspecting visual elements like views, layers, and colors on screen. The commands cover a range of practical tasks. You can print a tree of all the visible interface elements in the current window, show or hide a specific element without restarting the app, add a colored border around a view to see exactly where it is on screen, open an image object directly in Preview on your Mac, find views whose class names match a search pattern, or set a watchpoint on a specific variable inside an object. Many of these actions are things that would otherwise require writing code and recompiling, so having them as debugger commands saves time during development. Installing Chisel requires Homebrew, which is a package manager for Mac. After installation, you add one line to a configuration file that LLDB reads at startup, and the commands become available every time Xcode launches. The repository also explains how to write your own custom commands using Python and load them through the same mechanism. Chisel was created by Facebook and is released under the MIT license. It is aimed at iOS and Mac developers who use Xcode and want a faster way to diagnose layout problems and inspect the state of their app while it is running.

Copy-paste prompts

Prompt 1
Using Chisel with LLDB in Xcode, show me how to find all views of a specific class type that are currently visible on screen.
Prompt 2
How do I install Chisel via Homebrew and add the one line to ~/.lldbinit so the extra commands load every time Xcode opens?
Prompt 3
I want to write a custom Chisel command in Python that prints the accessibility labels of all buttons currently on screen. Show me the Chisel plugin format I need to follow.
Prompt 4
Help me use Chisel's border command to debug a layout issue where a UIView is not appearing where I expect it on an iPhone screen.

Frequently asked questions

What is chisel?

Extra debugger commands for Xcode's built-in LLDB debugger that help iOS and Mac developers inspect views, toggle visibility, and diagnose layout problems without recompiling the app.

What language is chisel written in?

Mainly Python. The stack also includes Python, LLDB, Xcode.

What license does chisel use?

Use freely for any purpose including commercial, as long as you keep the copyright notice.

How hard is chisel to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is chisel for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.