typescript-lsp

작성자: clickhouse

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.

clickhouse의 다른 스킬

edit-changelog
clickhouse
자동 생성된 ClickHouse 릴리스 체인지로그를 CHANGELOG.md에 커밋되는 형식으로 편집합니다. 사용자가 다음의 출력을 가지고 있을 때 사용합니다…
official
code-review
clickhouse
clickhouse-java의 변경 사항을 정확성, 호환성, API 안정성 및 누락된 테스트 측면에서 검토합니다. 풀 리퀘스트, 커밋, diff, 패치 등을 검토할 때 사용합니다.
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
신규 체크아웃에서(또는 package.json 파일을 변경하는 풀을 받은 후) npm run test:*, npm run lint, npm run typecheck, npm run build 스크립트를 실행하기 전에 이 스킬을 사용하세요.
official
clickhousectl-cloud-deploy
clickhouse
사용자가 ClickHouse를 클라우드에 배포하거나, 프로덕션 환경으로 전환하거나, ClickHouse Cloud를 사용하거나, 관리형 ClickHouse 서비스를 호스팅하거나, 로컬에서 마이그레이션하려는 경우 사용합니다.
official
chdb-datastore
clickhouse
DataStore는 지연 실행 방식의 ClickHouse 기반 pandas 대체제입니다. 기존 pandas 코드를 변경 없이 그대로 사용할 수 있지만, 연산은 최적화된 SQL로 컴파일되어 결과가 필요할 때(예: print(), len(), 반복)에만 실행됩니다.
official
chdb-sql
clickhouse
Python에서 직접 ClickHouse SQL을 실행하세요 — 서버가 필요 없습니다. 로컬 파일, 원격 데이터베이스, 클라우드 스토리지를 완전한 ClickHouse SQL 기능으로 쿼리할 수 있습니다.
official