Conservative linting, formatting, and BEYOND runtime readback checks for Pangolin BEYOND PangoScript, plus the PangoLint MCP server (pangolint-mcp) that exposes the same curated knowledge to AI coding agents.
End-user manual: https://jd3lasers.github.io/PangoLint/manual.html is the end-to-end feature reference for diagnostics, sidebar, runtime integration, settings, commands, and troubleshooting, with screenshots of every feature. The source copy lives at
docs/manual.html.PangoScript reference browser: https://jd3lasers.github.io/PangoLint/reference/ is the published searchable command and Object Tree reference.
.BeyondCodelanguage support: TextMate grammar plus semantic tokens that distinguish curated commands from unknown identifiers, so typos are easy to spot.- 21 diagnostic codes: from real syntax errors (unclosed strings, unbalanced parens) to PangoScript-specific hints (unsupported
While/Loop,!=instead of<>,&&instead ofand,for x = a to binstead offor x = a, b, missing terminalexit, and more). Every code has aWhy?action that opens the bundled rule reference offline. - Catalog-aware completions, hover cards, and signature help: backed by the bundled PangoScript command catalog, Object Tree property data, tracked OSC control route links, and current-file
Gotolabel suggestions. Hovers show syntax form, parameters, safety tier, and a primary example. - Quick fixes: accept Levenshtein-ranked replacements for
unknown-commandwarnings andproperty-typohints, or register an unknown root as a user universe, zone alias, or master alias. - PangoLint sidebar: four stacked panels (Commands, Objects, Diagnostics, BEYOND Watcher). The Commands panel groups browsable commands and expression functions into categories with full-text search, inline detail panels,
Cmd+Enterinsert at cursor, and deep links into the bundled offline PangoScript reference site. The Objects panel browses FX Effects, Cue Types, Object Tree roots, and schema data with an OSC-address toggle. - Conservative formatter: preserves command order, strings, comments, labels, and any unknown syntax verbatim.
- 10 snippets:
loop,for,ifguard,oscread,oscfeedback,script,onclick,var,selectzone,zonewrite. - Color decorators: inline swatches for
ColorBGR,ColorRGB, and<Object>.Color = <int>literals. Click to open VS Code's color picker. - Label-aware navigation:
F12Go to Definition onGoto MyLabeljumps to the declaration. Cursor on any label highlights every other occurrence. - Optional, opt-in BEYOND runtime tools:
Test BEYOND Connection, fetch or set property values, pin properties to the BEYOND Watcher, validate every property path in the active file, and augment hover tooltips with live BEYOND values. Every write path is gated bypangolint.beyond.allowScriptExecutionplus a per-run confirm modal. - PangoLint MCP server (
pangolint-mcp): the same curated knowledge exposed to AI coding agents (Claude Desktop, Claude Code, Cursor, VS Code with MCP). See section 05 of the manual.
Install the VS Code extension from the VS Code Marketplace:
code --install-extension jd3lasersllc.pangolintMarketplace installs receive normal VS Code extension updates. To install the MCP server for AI coding agents:
npm install -g pangolint-mcp
pangolint-mcp --helpGitHub Release assets remain available as manual fallback downloads. To build and install a local VSIX from source:
npm ci
npm run package:vsix
code --install-extension pangolint-<version>.vsix --forceReload the VS Code window after installing. To uninstall:
code --uninstall-extension jd3lasersllc.pangolintTo enable runtime features, point PangoLint at your developer-local BEYOND:
Then run PangoLint: Test BEYOND Connection from the Command Palette. The connection check is readback-only (an OscOutTTS ping). It does not change projector, output, geometry, or zoning state. See section 04 of the manual for the full runtime workflow and safety gates.
// .vscode/settings.json
{
"[pangoscript]": {
"editor.defaultFormatter": "jd3lasersllc.pangolint",
"editor.formatOnSave": true
}
}PangoLint is licensed under the GNU General Public License v3.0 or later (see LICENSE). PangoLint is independent open-source software.
PangoLint is not affiliated with, endorsed by, or sponsored by Pangolin Laser Systems, Inc. "Pangolin", "BEYOND", and "PangoScript" are trademarks of Pangolin Laser Systems, Inc., used here nominatively to describe what PangoLint works with. Use of PangoLint with BEYOND requires a separate, valid Pangolin license.
The command and property metadata bundled with PangoLint is derived from BEYOND's documented exports and the public reference materials Pangolin publishes. Reference sources:
- Pangolin's official site: https://www.pangolin.com
- BEYOND product page: https://pangolin.com/pages/beyond
- Pangolin support and documentation hub: https://support.pangolin.com
If you are a Pangolin representative and have concerns about PangoLint's contents or scope, please open an issue at https://github.com/JD3Lasers/PangoLint/issues.
Build instructions, packaging gates, and public contribution guidance live in CONTRIBUTING.md.