v0.1.1
What changed
- feat: the scan says where it is — a measured progress line for the human at the terminal, silence for every pipe
- docs: the first stranger's walk teaches — macOS learns the verify-then-allow path, and the agenda hears that scan works in silence
- docs: the V4 agenda is harvested, and waits on purpose — Qwen unparks the provider door, the spec's one word comes right
- fix: the one sentence returns verbatim — the drift gate holds the README to the spec's word
- docs: the intro finds its footing — the image disclosure returns in Memnoc's voice, six small words settle
- rewritten parts of the readme
- docs: the record notes the ship — v0.1.0 is public, nine attested assets, every gate closed before the tag
What needs no key, and what needs Claude
scan, serve, diff and share need no key and no account: they never
open a non-loopback socket, and the dashboard is compiled in, so the one
downloaded file is the whole install. serve --open-code, which lets the
dashboard show a mapped file's source, is the same kind of thing — it
changes what your own browser can be told, never what leaves the host.
Two flags reach a model, and only these two: scan --enrich, which buys
prose for the map, and serve --ask, which answers questions about it.
Both need Claude, in one of two ways: your own API key
(--provider claude — ANTHROPIC_API_KEY or an ant auth login
profile, billed per token to that account), or the Claude CLI you are
already logged into (--provider cli:claude — drawing on that
subscription's allowance; CodeAtlas never handles the credential). What a
model receives on each path is bounded and documented in
docs/SECURITY.md, and it never includes your file contents. Without a
provider you still get the complete structural map — enrichment relabels
what the scan found, it never creates it.
The -sealed binary beside each default one is the build where this
section is enforced by the compiler: built --no-default-features, it
contains neither path to a model, every no-key command above works, and
--enrich and --ask refuse with a message saying the build has no
backend. It is the binary to hand a security review.
Artifacts
codeatlas-v0.1.1-aarch64-apple-darwin— 17092512 bytescodeatlas-v0.1.1-aarch64-apple-darwin-sealed— 14696976 bytescodeatlas-v0.1.1-aarch64-unknown-linux-musl— 18000544 bytescodeatlas-v0.1.1-aarch64-unknown-linux-musl-sealed— 15242272 bytescodeatlas-v0.1.1-checksums.txt— 880 bytescodeatlas-v0.1.1-x86_64-apple-darwin— 17456112 bytescodeatlas-v0.1.1-x86_64-apple-darwin-sealed— 14899504 bytescodeatlas-v0.1.1-x86_64-unknown-linux-musl— 18671152 bytescodeatlas-v0.1.1-x86_64-unknown-linux-musl-sealed— 15781520 bytes
Verify what you downloaded
Every artifact is listed in codeatlas-v0.1.1-checksums.txt; check the one you took:
sha256sum --check --ignore-missing codeatlas-v0.1.1-checksums.txt # Linux
shasum -a 256 --check --ignore-missing codeatlas-v0.1.1-checksums.txt # macOSEvery artifact carries a GitHub build-provenance attestation tying it to
the exact workflow run and commit that built it:
gh attestation verify codeatlas-v0.1.1-<target> --repo Memnoc/CodeAtlasOn macOS: these binaries are not Apple-signed or notarized, so a
browser-downloaded copy arrives quarantined and Gatekeeper refuses its
first run. Verify it with the two commands above, then clear the mark —
xattr -d com.apple.quarantine <the file> — or allow it under System
Settings → Privacy & Security. A curl download never receives the
quarantine mark.
How this software was built
CodeAtlas is built AI-assisted, under the Northstar engineering pipeline:
every change arrives as a spec'd, ticketed slice, is built test-first, and
is cross-checked against the spec and the house standards before it lands.
The decisions are a human's, recorded as ADRs in docs/adr/. The same
disclosure runs through the artifact: prose a model wrote inside a map
always says so — the annotation store carries one record naming the
provider, the model and the UTC date of the last run that wrote it, and
prose bought by earlier runs rides beneath that latest record; the
dashboard badges enriched prose where it renders it, and share redacts
it from the exported file. The security posture — what can reach a model,
what it receives, and the committed test behind each claim — is
docs/SECURITY.md.
Transparency
CodeAtlas's AI is strictly bring-your-own: --ask and enrichment call
Anthropic's Claude with credentials you supply, and nothing else in the
tool talks to a model — the sealed build cannot even be compiled to.
Wherever AI-written prose appears it says so: the dashboard badges
enriched text where it renders it, the annotation store carries a
machine-readable record naming the provider, the model and the UTC date
of the last run that wrote it, and share removes AI prose from the
exported file entirely. Interaction with the model is always labelled as
interaction with the model. This is stated as practice, verified by the
tests docs/SECURITY.md names — not as a reading of where any law's
lines fall — so a reader never has to guess which words a model wrote.