# sow-tools Shared NWN build tooling for Shadows Over Westgate. This repository owns the Go-based `sow-toolkit` binary used by the separate module and assets repositories. ## Build Build the development binary into `tools/sow-toolkit`: ```bash ./build-tool.sh ``` Or run directly with Go: ```bash GOCACHE="$PWD/.cache/go-build" go run ./cmd/nwn-tool --help ``` ## Repository Layout ```text cmd/nwn-tool/ CLI entrypoint internal/app/ command wiring and console UX internal/erf/ ERF/MOD/HAK reading and writing internal/gff/ canonical GFF JSON and binary conversion internal/pipeline/ build, extract, compare, and manifest workflows internal/project/ config loading and repo scanning internal/validator/validation and diagnostics tools/ built development binary output ``` ## Intended Consumers - `sow-module` uses `sow-toolkit` for `build-module`, `extract`, `validate`, `compare`, and `apply-hak-manifest` - `sow-assets` uses `sow-toolkit` for `build-haks` and validation During development, sibling repositories can point at `../sow-tools/tools/sow-toolkit`. For pinned releases, each consumer repo can instead carry its own copy at `tools/sow-toolkit`. ## Release Automation This repo publishes a Linux `sow-toolkit` release artifact through Gitea Actions as `sow-toolkit-linux-amd64.tar.gz`. Consumer repos can fetch that binary into their local `tools/` directory with their `install-tool.sh` helper.