Skip to content

v0.5.3

Choose a tag to compare

@github-actions github-actions released this 27 Oct 21:09
· 11 commits to main since this release
eb3df63

A quieter mod (the state is one padlock and a counter under the prompt), /pii doctor and /pii try, and two fixes found by an independent review.

Fixed

  • Mod: a pause confirmed, or a start-up answer given, after its session had ended could pause masking or arm unprotected sending in the next session; an answer now counts only in the session it was asked in.
  • Mod: a start-up report that was not an object (a malformed answer from the sidecar) ended the wait for the sidecar and left the mod stuck starting; it is now ignored and polling goes on.

Changed

  • Mod: /pii doctor reports one plain-text line per check, with a fix for every failure: sidecar/token proof, gateway and library releases, model revision and file pins, actual backend, token presence, policy loading, mod state and the last safe failure reason. Local checks still run when the sidecar is down.
  • Mod: /pii try <text> previews the current policy through a random throwaway sidecar session, closes it on success and failure, and shows sanitized text with counts by type. command.run rewrites the stored arguments to the sanitized sample or a fixed redaction, so the original arguments are not passed onward; the menu does not collect preview text.
  • Gateway: the authenticated sidecar status also reports gateway and nullpii versions, the actual loaded backend (including CPU fallback), and non-sensitive model revision/file-pin diagnostics. The core exposes only the runtime metadata needed for that report.
  • Mod: the line under the prompt while nullpii is on is a padlock and a counter of the values masked so far (🔒 8), which rises as the mod works; the "nullpii is on" toast at the end of a start is gone, since the line shows it.
  • Mod: the padlock beside the band is one row tall instead of two, and its red (paused) and amber (starting) are brighter, so the open shackle reads on a dark terminal. The name is no longer repeated: the band above the prompt starts with the state (nothing masked yet, 12 masked (…), starting · downloading the model, paused: …, blocking: …) beside the on/off button, and the line under the prompt says on · 8 masked after the nullpii: Claude Code writes in front of it.
  • Mod: the masking state is drawn in one place, and only the room it needs. While nullpii is on and nothing needs saying, the mod draws nothing above the prompt, and the line under it carries the state alone, in a few characters with a padlock glyph so it reads without colour: 🔒 8 (a padlock and the count of values masked so far), ⏳ starting · downloading the model 54%, ⚠ not protected yet · installing its packages, 🔓 paused, ⚠ blocking. The band above the prompt is drawn only when there is something to know or do (nullpii starting, a prompt of that start going out unprotected, masking paused, a policy change waiting for the person's word, the mod blocking), and its on/off button stays in reach while it is. While the band is not drawn, /pii pause and the /pii menu pause and resume, with every guard unchanged: the pause asks first, only the person's own run can pause, it lasts for the session, and a first start's progress is shown as whole percent of the model download.

Notes

  • A session that is resumed (--resume, -c) starts with a new vault: the placeholders already in its history cannot be turned back into values, so a file Claude writes with an old placeholder holds the placeholder. Files already written are not affected, and nothing unmasked reaches Claude. The vault is never saved to disk, so this is by design; new data in the resumed session is masked as usual.