Skip to content

CloakScan v1.5.0

Latest

Choose a tag to compare

@benthompsondev benthompsondev released this 12 Jul 04:14
· 5 commits to main since this release

CloakScan finds and redacts secrets, credentials, and personal data in text before you share it. Everything runs on your device — no cloud, no account, no telemetry.

v1.5.0 completes the portfolio workflow. The pieces from v1.3 and v1.4 now run as one loop: scan → pick suggested terms → build a Cloak List → save, use it, and rescan in one click → compare the two sanitized outputs → export the review files.

What's new

  • Save, use this list & rescan. When the Cloak List editor opens from Build Portfolio Cloak List, the primary button now saves the list, enables it in your active configuration, takes you back to Scan, and rescans the same text — one click instead of five steps. The rules are strict: a built-in profile is never modified (using a list forks it into the session-only Unsaved configuration), a named profile updates only itself, and nothing about the flow flips a persistence opt-in. Save list only is still there.

  • Compare output modes. A compact panel shows Safe-share and Portfolio-code side by side, built from the findings the scan already produced — opening or switching never reruns detectors. Only sanitized text is shown (there is deliberately no "before" column), you can copy either version or make one the main preview, and a changed-line count says how much the modes really differ.

  • Portfolio Export Kit. Three files, generated on click and never stored:

    • cloakscan-portfolio.ps1 — the Portfolio-code sanitized output, nothing else.
    • cloakscan-findings-summary.txt — aggregate counts only: app version, output mode, detector/finding/replacement counts, category and severity breakdowns, readiness state. The builder receives counts, not findings, so no matched value, term, configuration name, or source excerpt can reach the file.
    • cloakscan-review-checklist.md — a fixed manual-review checklist (names, domains, hosts, paths, usernames, comments, identifiers, sample data, credentials, and a parse/test pass). It says plainly that automated scanning is not a guarantee.

    If readiness still has open warnings, exporting takes an explicit Export anyway — it is never a sign-off.

  • Clear session now also wipes the new surfaces: the pending Cloak List seed, the comparison panel, and export confirmations, alongside source, findings, output, suggestions, and session terms. Saved profiles, Cloak Lists, and preferences stay.

Desktop

The export command accepts a suggested filename — only from an exact four-name allowlist (cloakscan-clean.txt plus the three kit files). Arbitrary names, other extensions, path separators, traversal, and absolute paths are rejected before the dialog opens. You still pick the real destination in the native save dialog, and no new filesystem capability was added.

Privacy

Nothing changed in the model: no backend, no telemetry, no upload, no new storage key. The comparison and export kit compute everything in memory from the current scan and keep nothing. Mapping terms still persist only behind both opt-ins (Remember preferences plus the per-list save-terms toggle). Secrets, credentials, emails, URLs, hosts, IPs, GUIDs, paths, and connection strings stay bracket placeholders in Portfolio-code output and in both comparison panes — locked in by tests.

Try it

Live browser demo (no install): https://benthompsondev.github.io/cloakscan/

Validation

Local gate green on this release: 0 npm-audit vulnerabilities, ESLint clean, 691 unit tests, production build, 77 end-to-end tests (including the full workflow, named-profile isolation, and export-privacy sentinel checks), the desktop Rust suite (9 tests, including hostile-filename rejection), cargo fmt, and cargo clippy with warnings denied. CI (CI + Deploy live demo) passed on the release commit.