kit 1.28.0
Added
- GuardDog — local behavioral-malware heuristics for
kit check(#105, opt-in). The local-first replacement for the dropped cloud Socket scanner (#103): GuardDog (DataDog, OSS) flags malicious npm/PyPI packages via Semgrep-rules-on-source + metadata heuristics, runs locally, and doesn't upload your manifest. Opt-in (KIT_GUARDDOG=1) — it needs Semgrep andverifyfetches/scans each dep, too heavy for the default check; otherwise it surfaces as askipwith the enable hint. Resolved mise-first (pipx:guarddog). Pure, fixture-testedclassifyGuardDogis fail-closed: apassrequires a COMPLETE scan — zero indicators with rule-errors (e.g. missing Semgrep) is awarn("INCOMPLETE/UNVERIFIED"), never a false pass; real indicators always fail. (Triaged before adding:kit triage pip guarddog→ 100/100.)
Fixed
scanandair_gapno longer warn as "unknown section" in.kit.toml. Both are valid config sections (added to the zod schema in #65 / #85) but were missing from theKNOWN_SECTIONSallowlist, so[scan.tooling](#102) and[air_gap](#85) triggered a spurious "unknown section" warning on every command.
Full changelog: https://github.com/sandstream/kit/blob/v1.28.0/CHANGELOG.md
Verify this release:
git tag -v v1.28.0
npm audit signatures