# AGENTS.md

TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

## Setup

```
npm ci
```

## Commands

```
npm run build               # produce a build
npm run test                # run the test suite, must pass before any commit
npm run lint                # lint
npm run format              # format
npm run build:watch
npm run build:watch:debug
npm run check:format
npm run generate
```

## Layout

- `tsc/`      17362 source files
- `packages/` 144 source files
- `tools/`    31 source files

## Conventions

- Tests live alongside the code they cover, following `packages/typescript/test/api.bench.ts`.
- CI defines what passing means. See `.github/workflows/accept-baselines-fix-lints.yaml`, and keep it green.
- TODO: add the two or three conventions a newcomer always gets wrong here.

## Gotchas

- `tsc/internal/fourslash/tests/codeFixClassImplementInterfaceNoTruncation_test.go` is 3935KB. It will not fit comfortably in context, so read it in parts.

---

Drafted by agentreadme.com from what is in this repository. Everything marked TODO
needs a human. Check it in as AGENTS.md at the root.
