What the model gets
After every
write_file and edit_file, the file’s diagnostics end the result, so the model reads the error before it runs anything.
Install one
A language server comes from a plugin. The official marketplace carries one per language; install the server binary yourself, then the plugin.
When one of those binaries is on PATH and the working directory holds its language, Humboldt says so once at the start of a session, with the install command. Nothing starts until you install the plugin.
Your own
.lsp.json, with the server’s own options:
settings answers the server’s workspace/configuration requests section by section and is sent once as workspace/didChangeConfiguration; initializationOptions rides on initialize. diagnostics = false keeps navigation and stops the lines after every write.
Behaviour
- A server starts on the first question about one of its files, in the working directory, and stops with the session.
- It runs with the reach of its own process. The sandbox does not extend to it.
- Every call is on the session transcript.
meta.lsplists the servers, the plugin each came from, and the files they served. - A server that is missing, dies or does not answer says so on the tool result. The session goes on.
- Sub-agents and unattended Harbor runs do not get these tools.