惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
B
Blog
Jina AI
Jina AI
N
Netflix TechBlog - Medium
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园_首页
Hugging Face - Blog
Hugging Face - Blog
博客园 - 聂微东
美团技术团队
Google DeepMind News
Google DeepMind News
WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志
U
Unit 42
The Cloudflare Blog
V
V2EX
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
小众软件
小众软件
罗磊的独立博客
Microsoft Security Blog
Microsoft Security Blog
Apple Machine Learning Research
Apple Machine Learning Research
I
InfoQ
GbyAI
GbyAI
腾讯CDC
MongoDB | Blog
MongoDB | Blog

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
GitHub - sophia486/pii-gui
unusual_typo · 2026-06-18 · via Hacker News: Show HN

Find and redact personal information in documents — entirely on your device.

Load a PDF, markdown, or text file, detect PII with built-in rules or local ONNX models, review every match, and export a safely redacted copy. No document content ever leaves your machine.

License: AGPL v3 Built with Tauri Platforms Stars

Example · Features · Detection Backends · Setup · Development · Roadmap

PII GUI — Local-first PII redaction

PII GUI is a Tauri 2 desktop app (React 19 + TypeScript frontend, Rust backend) for local-first PII detection and redaction. Detection runs on-device with regex rules or quantized ONNX models; the only network access is the optional one-time model download.

Example

PII GUI supports two local workflows.

Text <-> PII Redact PDF
Text -> PII: detect names, emails, phone numbers, URLs, dates, IDs, and secrets before exporting a redacted copy. PII -> Text: restore reviewed placeholders back into readable text when you need a reversible local review workflow. Burn approved redactions into exported PDFs so hidden text is not recoverable from the output file.
Text to PII workbench showing highlighted PII and redacted output, covering both directions PDF redaction workbench showing a resume with detected PII and the redacted PDF output

Features

  • Local inference only — PII detection runs entirely on-device. The only network access is the optional one-time model download from Hugging Face.
  • PDF, Markdown, and plain-text input — PDFs are parsed with pdf.js, preserving per-character positions so detections are highlighted directly on the rendered page.
  • Custom rules — add your own regex or exact-match filters on top of any backend.
  • Review before redacting — toggle individual matches on or off in the workbench before export.
  • True PDF redaction — exported PDFs burn opaque rectangles into the rendered pages with pdf-lib, so redacted text is not recoverable from the output file.
  • Task history and persistence — tabs, custom rules, and filter results survive restarts via a local SQLite database and on-disk result files.
  • Long-document support — input is split into token-bounded, page-aware chunks and processed through a task queue.
  • Localized UI — English, Korean, and Japanese.

Detection Backends

Backend Best for
Regex (built-in) Instant baseline detection of emails, phones, URLs, dates, account numbers, and secrets
OpenAI Privacy Filter Long English documents and broad privacy-taxonomy detection
BardsAI EU PII European-language text where names, addresses, and ID-like entities matter

Detection taxonomy

Matches are labeled with a fixed privacy taxonomy:

account_number · private_address · private_email · private_person · private_phone · private_url · private_date · secret

Requirements

  • Node.js 24+
  • pnpm
  • Rust and Cargo
  • Tauri v2 platform prerequisites for your OS

Setup

Download the latest installer for macOS, Windows, or Linux from the Releases page.

On first launch, the onboarding flow lets you pick a default backend. Regex works immediately; the ONNX models are optional downloads (fetched from Hugging Face into the app data directory, and removable at any time from Settings).

Install from source:

Local release signing values are optional for development. If you need updater signing locally, copy the environment template and fill in your own key:

How it works

Document (PDF / md / txt)
  → text extraction (pdf.js, per-character boxes for PDFs)
  → token-bounded, page-aware chunking
  → task queue → Rust `redact_text` command
  → regex / ONNX inference (ort + tokenizers)
  → matches + redacted text
  → review & toggle matches in the UI
  → export (burned-in PDF redaction or redacted text)

The frontend (React) handles document parsing, chunking, review, and export. The Rust backend (src-tauri/) owns the detection engines, model lifecycle (download / verify / delete), and file I/O — all writes are confined to the Tauri app data directory.

Development

Run from source

cd tauri
pnpm install
pnpm tauri dev

Build

cd tauri
pnpm tauri build

Tests

cd tauri
pnpm test:unit              # frontend unit tests (vitest)
pnpm build                  # typecheck + frontend build

cd src-tauri
cargo test                  # Rust backend tests

Roadmap

  • Local regex detection and review workflow
  • Optional ONNX backend wiring for OpenAI Privacy Filter and BardsAI EU PII
  • Burned-in PDF redaction export
  • Local tab, custom-rule, and result persistence
  • Broader import/export QA for large PDFs and multilingual documents
  • Accessibility and keyboard-only review pass
  • Integration with coding agents (Codex, Claude Code, Cursor)

Project structure

tauri/                      # the desktop app
  src/                      # React frontend
    App.tsx                 # orchestrator: tabs, routing, workbench
    components/             # PDF preview, shadcn/Radix UI primitives
    lib/
      pdf-document.ts       # pdf.js text + char-box extraction
      pii-text-chunks.ts    # token-bounded chunking
      pii-task-queue.ts     # detection task queue
      redaction-policy.ts   # match merge/select/restore logic
      pdf-redacted-export.ts# burned-in PDF redaction export
      app-persistence.ts    # SQLite + result-file persistence
      i18n.ts               # en / ko / ja UI copy
  src-tauri/                # Rust backend
    src/lib.rs              # Tauri commands: redact_text, model lifecycle, file I/O
    src/redact_engine.rs    # regex / ONNX / BardsAI detection backends
docs/assets/                # README thumbnail and screenshot assets
.github/workflows/release.yml  # cross-platform release builds

Contributing

Contributions are welcome!

  • Bug reports & feature requests — open an issue with steps to reproduce or a short description of the use case.
  • Pull requests — keep changes small and focused. Before submitting, run the checks for the area you touched:
    • Frontend: pnpm test:unit and pnpm build from tauri/
    • Rust backend: cargo test from tauri/src-tauri/
  • Detection quality — false positives/negatives are especially useful to report; include the backend (regex / Privacy Filter / BardsAI) and a minimal, PII-free sample that reproduces the issue.
  • Benchmarks — keep local benchmark scripts and outputs out of commits; /benchmarks/ is ignored.

License

PII GUI is licensed under the GNU Affero General Public License v3.0.

Acknowledgements

PII GUI builds on several open-source projects and model releases:

Verification

Run the smallest check that proves the change, then widen as needed:

cd tauri && pnpm test:unit
cd tauri && pnpm build
cd tauri/src-tauri && cargo check
git diff --check

For packaging, run pnpm tauri build on the target platform before making release claims.