.ts file strips types without checking them —
that keeps execution fast. When you want the full type-checker, run meow check.
How it works
meow check delegates to the real TypeScript compiler (tsc) over the
generated shadow config, then parses its output and re-renders it as meow
diagnostics — so you get tsc’s correctness with meow’s presentation.
It needs the shadow config
meow check reads .meow/tsconfig.json. If it’s missing, meow tells you to
generate it:meow init runs meow sync for you; otherwise run it once (and after any
meow.config.json change). See the shadow config.It resolves tsc through meow x
meow runs
tsc via its own meow x — using
your locally installed TypeScript if you’ve added it, or fetching it ephemerally
if not. There’s no node_modules/.bin or $PATH hunt; the package graph
resolves the binary.Output
A clean run:meow check exits non-zero when there are type errors, so it drops straight into
CI and pre-commit hooks.
The generated config
The shadow.meow/tsconfig.json sets a strict-web-correct baseline so your editor
and meow check agree:
strict follows types.strict in your meow.config.json.
The meow:* modules and strict-web globals are wired in automatically, so
import { serve } from "meow:http" type-checks with nothing installed.
Lint next
Static analysis over the same shared syntax tree.