danyuchn

Pii Guard — AI skill for Claude Code

AI community

繁體中文(台灣)個人資料去識別化工具,讓業務文件可以安全地送進 AI 處理 / Reversible Traditional-Chinese (Taiwan) PII de-identification for LLM workflows — fully local.

How to install Pii Guard

This entry records only its repository, not the path inside it, so there is no exact command to give. Open danyuchn/pii-guard and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Pii Guard does

繁體中文(台灣)個人資料去識別化工具,讓業務文件可以安全地送進 AI 處理 / Reversible Traditional-Chinese (Taiwan) PII de-identification for LLM workflows — fully local.

Alternatives in AI

  • Memmy Agent — 🍙 A personal AI agent & local memory hub for all AI agents, gives every AI one shared, fully controlled memor 1k ★
  • DontFeedTheAI — Transparent anonymization proxy for AI-assisted pentesting 654 ★
  • Hol Guard — Open-source antivirus for AI agents: block risky tools, secret access, prompt injection, malicious packages, M 485 ★

README

pii-guard

繁體中文(台灣)個人資料去識別化工具。把文件裡的個資換成可還原的代號,讓你能用雲端 AI 處理機敏文件,處理完再換回來。**偵測與還原全程在你自己的機器上跑。**


**English summary** — Reversible PII de-identification for Traditional Chinese (Taiwan) documents.

Most tools that strip PII before an LLM call are network gateways ([LiteLLM + Presidio](https://www.litellm.ai/), [PrivAiTe](https://github.com/crp4222/PrivAiTe), [AI Security Gateway](https://github.com/aisecuritygateway/aisecuritygateway)) and they work well. None of them handle Taiwanese PII: national ID and ARC numbers, 統一編號 business IDs, local phone formats, or Traditional Chinese personal and organisation names — which need CKIP's Chinese NER rather than an English model with the locale switched.

This fills that gap, and differs in one more way: it produces a **redacted file you can keep and hand to someone**, not a per-request proxy. Detection is Presidio + CKIP BERT + Taiwan regex; substitution and restoration are plain code, so restoration is exact. A bundled Claude Code skill runs the whole thing without letting the cloud agent read the original.

Everything below is in Traditional Chinese. Start at [安裝](#安裝).


為什麼還要一個?

處理「送進 LLM 之前先遮個資」的工具已經很多,而且做得好——但它們幾乎都是**網路層的 gateway**,攔在你的程式和模型供應商之間。

它們沒有處理的是**台灣的個資**:身分證與居留證字號、統一編號、本地電話格式,以及繁體中文的人名與組織名——後者需要中研院的 CKIP 中文 NER,不是英文模型換個語系就行。

這個專案補的是那一塊。另外還差一件事:**它產出的是一份你可以留存、可以交給別人的檔案**,不是逐次請求、用完即逝的代理。

實際輸出

下面是真的跑出來的,不是示意圖。輸入:

客戶:王小明
聯絡電話:0912345678
電子郵件:wang@example.com
身分證字號:A123456789
所屬公司:範例科技股份有限公司(統一編號 10000009)
通訊地址:臺北市中正區忠孝東路一段
案由:本季顧問合約續約,金額新臺幣 30 萬元,付款分兩期。

`uv run python -m pii_guard anonymize input.txt -o out.txt -m map.json` 之後:

客戶:
聯絡電話:
電子郵件:
身分證字號:
所屬公司:(統一編號 )
通訊地址:
案由:本季顧問合約續約,金額新臺幣 30 萬元,付款分兩期。

七項個資全部換成代號,**而金額、合約條款、日期原封不動**。這是刻意的——把那些也拿掉,文件就沒有送進 AI 的意義了。

對照表另存一份,AI 回答完之後用它換回真名,逐字精確。

人工補標介面

偵測層是機率性的,會有漏網,也會把不該遮的機構名遮掉。skill 因此提供一個在**你自己的瀏覽器**開的頁面:選取任何仍然裸露的文字就補遮(全文所有出現位置