Skip to content

Integration: Neo CLI works with Lightpanda as headless backendΒ #1908

@4ier

Description

@4ier

Hey team! πŸ‘‹

I maintain Neo β€” a CLI tool that turns any web app into an AI-callable API via CDP. Think of it as a developer-facing bridge between AI agents and web applications.

Just shipped Lightpanda support in Neo v1.4.1 (PR). All core commands work out of the box:

Command What it does Status
neo connect Attach to CDP server βœ…
neo open <url> Navigate to page βœ…
neo read Extract readable text βœ…
neo snapshot Full accessibility tree with @ref mapping βœ…
neo click @ref Click by a11y ref βœ…
neo eval Run JS in page context βœ…

Setup

npm install -g @4ier/neo
# ~/.neo/config.json
{
  "chromePath": "/path/to/lightpanda",
  "browserType": "lightpanda",
  "cdpPort": 9222
}

Then neo start launches Lightpanda's CDP server, and all Neo commands work against it.

CDP compatibility notes

A few things I handled during integration that might be useful for your docs:

  1. /json/list not implemented β€” Neo falls back to Target.createTarget + Target.attachToTarget. Works great.
  2. params key required in CDP messages β€” Sending {id, method} without params returns InvalidParams. Adding params: {} fixes it. This differs from Chrome which accepts missing params.
  3. Context tied to WebSocket lifetime β€” Each WS connection gets its own browsing context. Neo uses a persistent connection pool to handle this.

These are minor and easy to work around. The CDP core (Runtime, DOM, Accessibility, Input, Network, Page, Target) is solid. Impressive work for a from-scratch browser! πŸš€

Use case

Neo + Lightpanda is a great combo for AI agents that need fast, low-memory web interaction β€” exactly the scenario Lightpanda is built for. Happy to add Lightpanda to Neo's README as a recommended backend if you're interested.

Repo: https://github.com/4ier/neo

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions