typescript-lsp

Use the TypeScript language server (`typescript-language-server`) for precise code intelligence in the `clickhouse-js` repository: go-to-definition, find…

npx skills add https://github.com/clickhouse/clickhouse-js --skill typescript-lsp

TypeScript Language Server in clickhouse-js

typescript-language-server is declared as a root devDependency, so after npm install (see the setup skill) it is available via npx and uses the workspace-local typescript (6.x) compiler, matching CI exactly.

Starting the server

From the repo root:

npx typescript-language-server --stdio

It speaks LSP (JSON-RPC, Content-Length-framed) over stdio. There is no extra configuration: each packages/* workspace, tests/clickhouse-test-runner, examples/node, and examples/web has its own tsconfig.json, and the server picks the nearest one per opened file automatically.

Protocol essentials

  1. Send initialize with rootUri/workspaceFolders pointing at the repo root, then the initialized notification.
  2. Send textDocument/didOpen with the full file text for every file you want to query (the server reads dependencies from disk on its own; only files you query positions in need to be opened).
  3. Positions are 0-based (line and character).

Verified capabilities (typescript-language-server 5.x, TS 6.x)

RequestNotes
textDocument/hoverReturns the full inferred signature + JSDoc markdown
textDocument/definitionResolves across workspace packages via source, not dist/
textDocument/referencesWithin the opened file's project
workspace/symbole.g. query ClickHouseClient finds class + re-exports
textDocument/completionContext-aware member completions
DiagnosticsPush only (textDocument/publishDiagnostics notifications, sent ~1–3s after didOpen). The pull textDocument/diagnostic request is not supported (-32601) — wait for the push notification instead.

Tips

  • If your environment provides built-in LSP/code-intelligence tooling, point it at npx typescript-language-server --stdio with the repo root as the workspace folder.
  • For one-off scripted queries, spawn the server from Node, frame messages with Content-Length: <bytes>\r\n\r\n<json>, and match responses by id.
  • A full workspace typecheck is still npm run build && npm run typecheck (build first — some workspaces import compiled dist/ outputs); the LSP is for targeted, interactive queries, not for CI-equivalent validation.

Больше skills от clickhouse

edit-changelog
clickhouse
Редактировать автоматически сгенерированный журнал изменений релиза ClickHouse в форму, которая фиксируется в CHANGELOG.md. Использовать, когда у пользователя есть вывод…
official
code-review
clickhouse
Проверка изменений в clickhouse-java на корректность, совместимость, стабильность API и отсутствие тестов. Используется при ревью пул-реквестов, коммитов, диффов, патчей,…
official
fix-release-pr
clickhouse
Fix CI failures and address code-review comments on a pull request that targets the protected `release` branch of `ClickHouse/clickhouse-js`. Release PRs are…
official
release
clickhouse
Drive a package release of `ClickHouse/clickhouse-js` end to end: bump the version, sync the protected `release` branch from `main`, watch the npm publish…
official
setup
clickhouse
Используйте этот навык перед запуском любого из скриптов npm run test:*, npm run lint, npm run typecheck или npm run build в свежей копии репозитория (или после извлечения изменений, затрагивающих файлы package.json).
official
clickhousectl-cloud-deploy
clickhouse
Используйте, когда пользователь хочет развернуть ClickHouse в облаке, перейти в продакшн, использовать ClickHouse Cloud, разместить управляемый сервис ClickHouse или мигрировать с локального…
official
chdb-datastore
clickhouse
DataStore — это ленивая замена pandas на основе ClickHouse. Ваш существующий код pandas работает без изменений, но операции компилируются в оптимизированный SQL и выполняются только тогда, когда нужны результаты (например, print(), len(), итерация).
official
chdb-sql
clickhouse
Запускайте ClickHouse SQL напрямую в Python — сервер не требуется. Выполняйте запросы к локальным файлам, удалённым базам данных и облачным хранилищам с полной мощью ClickHouse SQL.
official