Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Effect-TS/tsgo/llms.txt
Use this file to discover all available pages before exploring further.
Quick Start
Install and configure the Effect Language Service in minutes.
Editor Setup
Configure VS Code, Neovim, and other editors to use tsgo.
Diagnostics
Explore all Effect-specific diagnostics and their severities.
Refactors
Code actions to convert async/await, compose layers, and more.
What is Effect Language Service (tsgo)?
@effect/tsgo is a superset of TypeScript-Go — the high-performance Go-based TypeScript compiler — augmented with the full Effect Language Service. It ships as a single binary that replaces your editor’s TypeScript language server and adds:
- 50+ diagnostics catching Effect-specific correctness issues, anti-patterns, and style violations
- Quick fixes to automatically resolve many of those diagnostics in one keystroke
- Code refactors to convert async/await to Effect generators, compose layers, generate schemas, and more
- Smart completions for
Effect.gen, Schema classes, Service/Tag constructors, and directives - Layer graph visualization — hover over any
Layerto see a Mermaid dependency diagram
@effect/tsgo is currently in Alpha. Expect breaking changes between releases and some missing features compared to the previous TypeScript-based version.How it works
@effect/tsgo embeds a pinned version of typescript-go with a minimal patch set, then adds the Effect language service layer on top. Your editor talks to effect-tsgo as a standard TypeScript language server — you get all the speed of the Go compiler plus Effect-specific intelligence.
Use
effect-tsgo instead of tsgo, not alongside it. Running both in parallel produces duplicate diagnostics and degrades editor performance.Supported Effect versions
Effect V4 (smol)
Primary target. All diagnostics and refactors fully supported.
Effect V3
Supported for most diagnostics. Some V4-only rules are skipped automatically.
Get started
Run the setup wizard
@effect/tsgo, configures your tsconfig.json plugin, and guides you through editor setup.Configure your editor
Point your editor’s TypeScript language server at the
effect-tsgo binary. See the Editor Setup guide for step-by-step instructions.