kit 6.6.2
Added
-
kit browser doctor— verification-readiness diagnostics. Reports which browser
strategy a repo actually gets (Playwright, system Chrome, CDP) or the blocker standing
in the way, pluskit browser status,kit browser cdp-url, and
kit browser playwright-envfor wiring test runners.--jsonon each. -
Secret findings you have reviewed can now be accepted by name —
.kit-secretsignore.
Git history is immutable, so a test fixture or doc placeholder committed once is a
finding forever, andsecrets scansat atwarnpermanently. A warning with no
reachable green state is one nobody reads, which is how a real finding gets missed.
Entries are<commit>:<file>:<detector>, one per line. Two properties keep it safe:
an entry names a single commit, so it can never wave through a future occurrence of
the same string, and a verified-live finding is never ignorable no matter what is
listed. Seedocs/COMMANDS.md→ "Secret findings".
Fixed
- The secrets scan now classifies example credentials instead of asking you to
re-review them every run. Findings whose own value proves they name nothing real —
an unreachable host (loopback, a bare compose/k8s service name,.internal,
example.com) or a placeholder secret (pass,password,changeme, a vendor's
published doc sample) — are counted in their own bucket rather than as reviewable
findings. Keyed strictly on the value, never the file path: a real credential pasted
into a test file is still flagged, and a verified-live finding is never waved through. npm testrefuses to run when build output holds cloud-sync duplicates. In a
synced checkout (iCloud Drive), a conflicted file gains a2twin; underdist/
that twin is a stale compiled test running old assertions against new code — it can
fail a correct change, or pass a broken one. The runner now names the files and stops
instead of reporting a verdict it cannot trust.- A skill installer's actual payload is now triaged, not just its wrapper.
npx skills@latest add <owner>/<repo>triaged only the npm wrapper, passed, then
cloned an untriaged third-party repo into~/.agents/skillsglobally — the same
fetch-and-execute blind spotcreate-*already closes, one level deeper. When a
fetched package is a known repo fetcher, itsowner/repoargument is now triaged too. - The gate no longer triages a registry package
npxwould never fetch.
npx tsc --noEmitwas 23% of kit guard's would-block observations, gating npm's
unrelated abandonedtscpackage — but npx resolves the plain positional from local
node_modules/.binfirst, so nothing is fetched. A plainnpx <name>/bunx <name>
whose binary exists locally is now dropped; a-p/--package/--fromtarget is
still always gated, because npx fetches that one unconditionally. - Concurrent agent startups no longer produce phantom
TRIAGE FAILEDverdicts.
The bundled triage skill was refreshed with an in-place truncate-then-write, so
several agents starting at once could read a half-writtentriage.pyand crash with
no real verdict behind it. The refresh is now atomic (write to a temp file, rename). - The memory store opens read-only when its WAL sidecars cannot be created. The
fallback was keyed on one SQLite error string, so a build that words the identical
precondition differently ("attempt to write a readonly database") never took it, and
checkMemoryInjectionreturned warn instead of pass. It now keys on the actual
precondition — sidecars missing — not on the wording. kit statuslinehelp distinguishes setup gaps from open action items, and states
that Codex receives the same line via SessionStart context rather than a status bar.
Full changelog: https://github.com/sandstream/kit/blob/v6.6.2/CHANGELOG.md
Verify this release:
git tag -v v6.6.2
npm audit signatures