Windows analysis

glaurung types

Regenerate Windows API prototypes from pinned metadata.

writes files or project state 2 worked examples

use it for

This is a maintainer command for generated type data. Offline mode uses the pinned local inputs and avoids network access.

Run glaurung types --help on your installed version before putting the command in a script. Glaurung is still pre-1.0.

input
Pinned Windows metadata, optional overlays, and optional local SDK/WDK headers.
output
Generated Windows API prototypes and type data used by analysis.
mode
writes state. sync rewrites generated Windows prototype data.

command shape

syntax

short form
$ glaurung types sync [--offline]

The installed parser is authoritative: glaurung types --help

run it

examples

Inspect the sync surface

types is a maintainer command. Read the nested help before touching generated files.

run

from the engine checkout
$ glaurung types sync --help

output

captured result captured help, shortened
usage: glaurung types sync [options]

--source-lock SOURCE_LOCK
--overlay OVERLAY
--output OUTPUT
--generated-dir GENERATED_DIR
--cache-dir CACHE_DIR
--header HEADERS
--clang CLANG
--offline
--no-overlays

captured help, shortened.

Read the result: The command can rewrite generated repository data. A normal reverse-engineering session does not need it.

Regenerate from cached inputs

Offline mode is reproducible only when every locked input is already present in the cache.

run

from the engine checkout
$ glaurung types sync --offline --output /tmp/windows-prototypes.json

output

captured result captured with an empty metadata cache, 2026-08-31
Error: cached package missing for offline sync: ~/.cache/glaurung/windows-api-metadata/microsoft.windows.sdk.win32metadata.70.0.11-preview.nupkg

captured with an empty metadata cache, 2026-08-31.

Read the result: Offline means no fallback download. Populate the pinned package cache first, or rerun without --offline when network access is intentional.

used above

important options

--offline
Refuse network access and use cached inputs only.
--source-lock PATH
Choose the pinned metadata lock file.
--header PATH
Add a local header through Clang AST JSON; repeat as needed.
--output PATH
Choose the generated prototype output.
--no-overlays
Skip Glaurung's curated semantic overlays.

These are the flags used by the examples. Run glaurung types --help for the complete parser help.

before you rely on it

checks

keep working

related commands

← all 40 commands