Skip to content

Setup Checklist

AI agents work better when the environment answers back quickly. Before you start prompting, make sure the project can actually surface errors.

ToolPurposeWhy It Matters
Language Server (LSP)Real-time type checking, error detectionAI sees mistakes instantly
LinterStyle issues, common bugsImmediate feedback on quality
FormatterConsistent styleAI doesn’t fight your preferences

Install the LSP for your language:

LanguageLSPInstall
TypeScripttypescript-language-servernpm i -g typescript-language-server typescript
Pythonmypyuv tool install mypy or pip install mypy
Gogoplsgo install golang.org/x/tools/gopls@latest
Rustrust-analyzerrustup component add rust-analyzer
C#OmniSharpIncluded with C# extension
LanguageLinterConfig File
TypeScriptESLinteslint.config.js
PythonRuffpyproject.toml or ruff.toml
Gogolangci-lint.golangci.yml
RustClippyclippy.toml
C#dotnet format.editorconfig
LanguageFormatterConfig File
TypeScriptPrettier.prettierrc
PythonRuff / Blackpyproject.toml
Gogofmt(built-in, no config)
Rustrustfmtrustfmt.toml
C#dotnet format.editorconfig

Run these before starting an AI session. If they fail, fix them first. Agents are bad at distinguishing their own mistakes from the ones you handed them.

Terminal window
# TypeScript
npm run lint && npm run typecheck
# Python
uv run ruff check . && uv run mypy .
# Go
go vet ./... && golangci-lint run
# Rust
cargo clippy
# C#
dotnet build

“Agents have no long-term memory. They rediscover ‘ghost errors’ every session, try to fix them, fail, and get confused.”

If the environment is already broken, the agent usually wastes time chasing ghosts.

Before your first AI session:

  • LSP installed and working (hover shows types, errors appear inline)
  • Linter configured and passing
  • Formatter configured (optional but recommended)
  • No pre-existing errors in files you’ll be editing

Environment ready? Start your first session →