Repository navigation
Countercheck v0.3.0
·
107 commits
to DEV
since this release
Immutable
release. Only release title and notes can be modified.
- Native Windows support (Windows 10/11, x86_64):
countercheck.exeruns without WSL. Install with
pip install countercheck,uvx countercheckorirm .../install.ps1 | iex(checks the SHA-256 against
SHA256SUMS.txtbefore installing). What works:verify,show,init,report,ui, the three hooks
(claude-stop,hermes-pre-verify,session-start) with Windows paths, every check type. Checks run with Git for
Windows'shby default (a missingshfails the check with a plain message); each check runs in a Job Object,
so a timeout kills the whole process tree and background leftovers stop when the check ends;linkfolders become directory junctions; symlinks Windows refuses are written as text files with the
target, like git does. Paths and the tree hash use/, so the same work gives the same receipt paths and tree
hash on Windows and Unix. CI tests every change on Windows. What doesn't, yet: no sandbox on Windows (checks
run as a normal process; the receipt saysnone (no sandbox on Windows yet),--sandbox seatbeltis a plain
error); no ARM64 build (the x86_64 one runs under emulation); no winget or scoop. shelloption on a check:"sh"(default),"pwsh"(PowerShell 7, or Windows PowerShell) or"cmd"
(Windows). Validated when the check file is read.- Fixed: Windows line endings. A
$at the end of acoverage(orforbid) pattern now also matches before
\r\n; before,coveragereported items in CRLF files as missing. countercheck ui: a live page of the receipts that updates while an agent works. 127.0.0.1 only, a random
token in the address,Hostchecked (so other web pages and DNS rebinding can't read it), GET only, read-only, a
strict Content-Security-Policy with a per-page nonce. Port 7357, or any free port when taken (--portto choose);
a secondcountercheck uireuses the running one. No web framework: the Rust standard library only.countercheck report: one self-contained HTML page of every saved run (verdict, the agent's claim, each check
and its output, protected changes, seal status, a targets × checks grid for matrix checks). No scripts and no
outside resources (enforced by a Content-Security-Policy); every value is escaped, because receipts carry text from
the agent's files.--openopens it in the browser.
Install
| You use | Command |
|---|---|
| Python | pip install countercheck · uvx countercheck verify |
| macOS / Linux, Homebrew | brew install datacrate360/tap/countercheck |
| macOS / Linux, any shell | curl -fsSL https://raw.githubusercontent.com/datacrate360/countercheck/PROD/install.sh | sh |
| Windows 10/11, PowerShell | irm https://raw.githubusercontent.com/datacrate360/countercheck/PROD/install.ps1 | iex |
Windows needs Git for Windows. Every download is listed in SHA256SUMS.txt.