Automic VaultAutomic Vault

brew

Install llnode with Homebrew

LLDB plugin for live/post-mortem debugging of node.js apps. Version 4.0.0 via Homebrew; verified 2026-06-25.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install llnode

local Homebrew formula metadata

overview

Package summary

LLDB plugin for live/post-mortem debugging of node.js apps

Commands and aliases

  • llnode

history

Project history and usage

llnode is the Node.js project's LLDB plugin for inspecting JavaScript state inside live Node.js processes and core dumps. It matters to package-manager users because it gives native debugger workflows a Node- and V8-aware command set for post-mortem debugging, memory investigation, and crash analysis.

Project history

The llnode repository was created under the Node.js GitHub organization in November 2015, and its official package metadata describes it as an LLDB plugin for Node.js and V8 that exposes JavaScript state from processes and core dumps. Early tags in the official repository show a 1.0.0 line by 2016, while later releases tracked changes in Node.js, V8, and LLVM's LLDB APIs.

The project's design is intentionally tied to LLDB. Its README documents a shortcut executable that starts LLDB with the plugin loaded, direct plugin loading inside LLDB, and optional automatic loading through ~/.lldbinit. Its commands add V8-aware operations such as JavaScript backtraces, object inspection, reference finding, active handle listing, and source listing on top of LLDB's standard native-debugging facilities.

Adoption history

Node.js's Diagnostics Working Group named llnode in February 2017 alongside node-report as one of the experimental tools that had landed in Node.js Foundation diagnostics work for post-mortem analysis. That placed llnode in the same ecosystem as async_hooks, inspector, tracing, and other efforts to make production Node.js failures easier to investigate.

The official README documents installation through npm and Homebrew, with platform notes for macOS, Linux, FreeBSD, Windows, and Termux. Release notes show continuing maintenance around supported Node.js lines: v3.0.0 added Node.js 12 support and dropped older Node.js and LLDB support, v3.2.0 added Node.js 14 support, and v4.0.0 updated support for Node.js 14, 16, and 18 while dropping earlier unsupported versions.

How it is used

Package users install llnode when they need to load a Node.js core dump with the exact node executable that produced it, attach LLDB to a live process, or run a Node.js program under LLDB until it aborts. Once loaded, llnode's v8 subcommands expose JavaScript frames, values, source, object counts, references, active handles, and active requests.

llnode is especially useful for failures that are hard to debug through the regular inspector path: native addon crashes, production core dumps, memory leaks, and post-crash analysis where the process is no longer running. Its README also warns that it supports official active Node.js builds and depends on an appropriate LLDB installation, which is why package-manager integration is practical rather than cosmetic.

Why package nerds care

For package nerds, llnode is the bridge between a high-level JavaScript runtime and a low-level debugger. It packages C++ plugin code, Node.js build tooling, LLDB headers and libraries, and V8 layout knowledge into a command-line tool that can be installed before the incident happens.

It also illustrates a maintenance problem common to runtime-introspection packages: every major Node.js, V8, and LLVM/LLDB change can move internal structures or APIs. The package is valuable precisely because it absorbs that churn for users who just need to open a core dump and ask what JavaScript objects were alive.

Timeline

  • 2015-11-06: The nodejs/llnode repository is created on GitHub.
  • 2016-04: The official repository has a v1.0.0 tag line.
  • 2017-02: The Node.js Diagnostics Working Group lists llnode as a post-mortem analysis tool.
  • 2018-09-25: llnode v2.0.0 is released.
  • 2020-01-21: llnode v3.0.0 adds Node.js 12 support and drops older Node.js and LLDB support.
  • 2020-05-04: llnode v3.2.0 adds Node.js 14 support.
  • 2022-09-14: llnode v4.0.0 updates support for Node.js 14, 16, and 18.

Related projects

  • llnode depends on LLDB from the LLVM project and on Node.js/V8 runtime internals.
  • It sits beside other Node.js diagnostics work such as node-report, async_hooks, inspector, node-inspect, and tracing tools.
  • For package users, Homebrew's llvm package can provide newer LLDB tooling used by llnode.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 13 platform targets.
  • Build metadata lists 2 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.

Configuration files

Config paths the tool may read or write during local use.

Unix
~/.lldbinit

executables

Installed executables

CommandKindExposureNote
llnodecliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-10
manager version4.0.0
manager updated2026-06-25
local dataok
upstreamcurrent
latest detectedv4.0.0

https://github.com/nodejs/llnode

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:llnode
Version4.0.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/llnode
Homepagehttps://github.com/nodejs/llnode
Repositoryhttps://github.com/nodejs/llnode
Upstream docshttps://github.com/nodejs/llnode#readme
LicenseMIT
Source archivehttps://github.com/nodejs/llnode/archive/refs/tags/v4.0.0.tar.gz
Last updated2026-06-25T13:37:48+02:00
Pulseupdated
Build dependenciesllvm, node
Uses from macOSllvm
Bottleavailable (on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared
Caveats`brew install llnode` does not link the plugin to LLDB PlugIns dir. To load this plugin in LLDB, one will need to either * Type `plugin load $HOMEBREW_PREFIX/opt/llnode/lib/llnode/llnode.dylib` on each run of lldb * Install plugin into PlugIns dir manually (macOS only): mkdir -p "$HOME/Library/Application Support/LLDB/PlugIns" ln -sf '$HOMEBREW_PREFIX/opt/llnode/lib/llnode/llnode.dylib' "$HOME/Library/Application Support/LLDB/PlugIns/"

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namellnode
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated configuration and credential file locations
  • curated package history
  • package relationship graph
  • package version freshness
  • package-page enrichment