# AGENTS.md

Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one

## Setup

```
bun install
```

## Commands

```
bun build       # produce a build
bun test        # run the test suite, must pass before any commit
bun typecheck   # type check without emitting
bun lint        # lint
bun ci:find
bun ci:status
bun ci:errors
bun ci:logs
```

## Layout

- `test/`      10310 source files
- `src/`       3166 source files
- `bench/`     303 source files
- `packages/`  199 source files
- `scripts/`   66 source files
- `misctools/` 7 source files

## Conventions

- Tests live alongside the code they cover, following `bench/expect-to-equal/expect-to-equal.test.js`.
- TypeScript is not in strict mode. Turning it on catches a whole class of mistakes before they run.
- CI defines what passing means. See `.github/workflows/auto-assign-types.yml`, and keep it green.
- TODO: add the two or three conventions a newcomer always gets wrong here.

## Gotchas

- `src/jsc/bindings/sqlite/sqlite3.c` is 9285KB. 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.
