The Graphitron LSP, started by the dev goal of the Maven plugin (mvn graphitron:dev), parses GraphQL with a tree-sitter-based parser. That parser has two native pieces, and both ship with the LSP:
-
The GraphQL grammar (
tree_sitter_graphql). -
The tree-sitter runtime (
libtree-sitter, exporting thets_*symbols).
Both are bundled per-platform in the no.sikt:graphitron-tree-sitter-natives jar and extracted to temp files at startup. You do not install anything: there is no system dependency.
Supported host architectures
The bundled binaries cover four host platforms:
-
linux-x86_64 -
linux-aarch64 -
macos-aarch64 -
windows-x86_64
Intel-Mac (macos-x86_64) is not shipped. On an unsupported host the LSP fails fast at startup naming the os.name / os.arch it saw and the supported set.
Startup diagnostics
Because nothing is installed, the only native failure mode is the bundled runtime failing to load after it has been extracted from the jar. The LSP does not let the underlying UnsatisfiedLinkError surface raw; it reports a single startup error naming the temp path the runtime was extracted to. The usual causes:
-
noexectemp directory: the JVM’sjava.io.tmpdiris mountednoexec, so the extracted shared library cannot be loaded. Pointjava.io.tmpdirat an exec-capable directory (for example-Djava.io.tmpdir=$HOME/.cache/graphitron). -
Corrupt extract: the temp file was truncated or removed mid-session (an aggressive temp-cleaner, a full disk). Restart the LSP so it re-extracts.
-
Missing system C runtime: the host lacks a base C runtime the shared library links against. This is rare on the supported platforms; install your distribution’s base C runtime package.
See also
-
LSP inlay hints and classification hover: the editor-side config keys that surface Graphitron’s inference and classification layers.
-
Dev loop internals: native runtime dependency for the same "nothing to install" note in the context of the
dev-loop internals.