skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
kevintsai1202/humanizer-zh-tw103 installs

text-watermark-cleaner-zh-tw

清理使用者擁有或獲授權文字中的不可見 Unicode、zero-width、tag characters、異形空白與文字型 AI provenance/watermark,並提供統計式改寫的 best-effort 流程。適用於繁體中文、簡體中文、英文、Markdown、HTML 與純文字;當使用者說「去文字浮水印」、「去 Claude 浮水印」、「清理不可見字元」、「清除 AI provenance」或要求檢查文字標記時使用。文字浮水印與檔案 C2PA/EXIF metadata、可見圖片浮水印是不同問題,後兩者不由本 skill 直接處理。

How do I install this agent skill?

npx skills add https://github.com/kevintsai1202/humanizer-zh-tw --skill text-watermark-cleaner-zh-tw
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    This skill provides a set of tools to identify and remove invisible Unicode characters (watermarks) and AI-generated stylometric markers from text. It incorporates several security best practices, including input size limits to prevent Denial of Service, magic-byte checks to avoid corrupting binary files, and atomic file operations to mitigate symlink attacks. No malicious behavior, unauthorized data access, or exfiltration patterns were detected.

  • Socketpass

    No alerts

  • Snykpass

    Risk: LOW · No issues

What does this agent skill do?

文字浮水印清理(繁體中文)

工作邊界

只處理使用者擁有或獲授權的內容。把結果描述為「清理可驗證的文字載體」或「降低統計相似度」,不可宣稱內容已證明為人類撰寫、不可偵測或已破解 Claude 的私有演算法。

文字型標記分成兩層:

  • Layer A:確定性文字衛生處理。檢查並清理高可信的不可見 Unicode、zero-width、tag characters、異形空白與部分 homoglyph。這一層可用前後統計驗證。
  • Layer B:統計式標記降低。透過改變 token、詞序、連接詞、句界與句長來改寫。這不是解碼器;沒有 vendor detector 或相同 key/config 時,不能證明標記已移除。

不要把「去 AI 味」和「去文字浮水印」當成同一個動作。只有使用者明確要求浮水印或 provenance 清理時才執行本 skill;單純要求文字更自然時,使用 humanizer-zh-tw。

模式選擇

  • inspect:只檢查並報告,不修改內容。
  • layer-a:只做不可見文字清理,預設保守模式。
  • layer-b:只做一次統計式改寫;需明確同意可能的語意與語氣漂移。
  • full:inspect → Layer A → Layer B(可選)→ Layer A → after inspect。

如果使用者同時要求去 AI 味與去浮水印,採用:

保護非 prose 區段 → inspect → Layer A → humanizer-zh-tw → 可選 Layer B → Layer A → after inspect

執行流程

1. 先分類與保護內容

先確認輸入是貼上文字、.txt、.md 還是 .html。在任何改寫前,保護下列內容,除非使用者明確要求修改:

  • Markdown fenced code、inline code、HTML tag、attribute、script、style。
  • URL、檔案路徑、API 名稱、變數名、錯誤碼、版本號與其他技術識別字。
  • 數字、日期、專有名詞、引用、參考文獻、法律/學術/平台必要揭露。
  • 使用者要求逐字保留的句子。

不要把 DOCX、PDF、圖片、音訊、影片或 ZIP/Office 容器當成純文字讀寫。這些檔案需要另外的容器或 metadata 工具;否則可能破壞二進位內容。

2. Inspect first

本技能優先使用內附的本地 deterministic scripts;它們是從 guillaumemeyer/watermarks-remover 的 service/scripts 擷取,並保留上游 MIT 授權。Windows PowerShell 執行方式:

$skillRoot = (Resolve-Path .\text-watermark-cleaner-zh-tw).Path
& "$skillRoot\scripts\run-text-watermark.ps1" `
  -Mode Inspect -InputPath .\article.md -Json

需要較嚴格的檢查時才加上 -Aggressive 或 -StripEmojiGlue。若要同時取得統計式報告,可加 -Stylometry;這是分析訊號,不是 Claude 官方 detector。

若部署環境提供相容的 watermarks-remover HTTP service,也可先檢查:

GET  $WATERMARKS_SERVICE_URL/health
GET  $WATERMARKS_SERVICE_URL/capabilities
POST $WATERMARKS_SERVICE_URL/inspect

服務不可達時,不要假裝完成服務端清理;可使用本地腳本完成 Layer A,並在報告中分別標示「本地腳本已驗證」與「服務端未驗證」。聊天中的文字沒有可保證的 post-send Unicode filter;只能進行受保護的模型內處理,並在報告中標示限制。

3. 執行 Layer A

使用內附 scripts/run-text-watermark.ps1 -Mode Clean、服務的 /clean 或等效 deterministic cleaner,並保留原檔,預設產生 *.cleaned.*。本地入口範例:

& "$skillRoot\scripts\run-text-watermark.ps1" `
  -Mode Clean -InputPath .\article.md -OutputPath .\article.cleaned.md -Stats

採用保守選項:

  • 不預設套用 NFKC。
  • 不預設把所有特殊空白改成半形空白。
  • 不預設使用 aggressive homoglyph mapping。
  • 不預設刪除合法 RTL/LTR 控制、emoji glue、CJK variation selector 或其他有排版/語意作用的不可見字元。

本地 wrapper 預設加入 --no-normalize-spaces;只有使用者明確接受版面、方向性或多語文字形可能改變時,才啟用 -Aggressive、-NormalizeSpaces、-Nfkc 或 -StripBidi。不要使用 --force-text 處理 DOCX、PDF 或其他二進位容器。

4. 執行 Layer B(可選)

只有在使用者明確選擇 layer-b 或 full 時執行。若來源疑似為 Claude,優先使用本地模型或不同供應商;不要把同一來源模型的輸出當成獨立驗證。

改寫要求:

  • 改變詞彙、功能詞、子句順序、連接詞、句界與句長。
  • 保留所有事實、數字、名稱、引用、技術識別字、必要揭露與原作者真正的觀點。
  • 不新增第一人稱經驗、對話、來源、回饋、數據或背景故事。
  • 不為了增加變化而翻譯、改成簡體、改寫引用或改動程式碼。
  • 預設只做一輪;若使用者要求更強改寫,先提醒語意與文風漂移風險。

改寫後再跑一次 Layer A;Layer B 的結果只能標示為 best-effort。若有相同 watermark key/config 的研究性 detector,才可報告該特定設定的 before/after,不能外推成 Claude 官方偵測結果。

5. 交付報告

分開報告三種結果:

  1. 可驗證:刪除/替換哪些 Unicode、數量多少、metadata 是否仍存在。
  2. Best-effort:文字是否經過統計式改寫、改寫輪數與使用的 backend。
  3. 尚未建立:官方 Claude detector、秘密 key watermark、可見像素浮水印、soft binding 或「人類作者身份」。

如果沒有實際 inspect/after evidence,就寫「未驗證」,不要用文字看起來更自然來代替證據。

繁體中文規則

繁體中文是本 skill 的主體語境;英文技術名詞只用於觸發與服務介面。詳細的中文保護規則見 references/chinese-text.md。

  • 保留繁體字、全形標點、中文引號「」與『』,不要擅自翻譯或簡繁轉換。
  • 不把中文沒有空格誤判為異常,也不把 U+3000、NBSP 或窄不換行空白一律改掉。
  • 保留 emoji 組合、CJK variation selector、合法中文排版與引用格式。
  • 中文可讀性以本地語感判斷;不要用英文 token 數、MATTR 或句長閾值單獨判定浮水印。
  • 「此外」「值得注意的是」「在……背景下」「這不僅……而且……」等屬於語氣修訂範圍,不是 Layer A 的證據;需要時交給 humanizer-zh-tw,不要把它們當作已偵測到 watermark。

失敗處理

  • 原檔、輸出檔與報告分開保存;除非使用者明確要求,不要 in-place 覆寫。
  • 清理前後都無差異時,回報 no actionable text marks found,不要製造新的檔案變更。
  • 格式未知、檔案過大、service 不可達或 detector 未設定時,清楚回報原因並停止該層,不要靜默 fallback。
  • 任何必要揭露、作者聲明、引用或合規文字都必須保留。

本地資源與來源

  • scripts/common.py、scripts/text_unicode.py、scripts/clean_text.py、scripts/inspect_text.py 與 scripts/score_stylometry.py 來自上游 watermarks-remover 的 service/scripts。
  • scripts/run-text-watermark.ps1 是本 repo 的 Windows PowerShell 入口,負責傳入 UTF-8、保守清理選項與 .cleaned 輸出路徑。
  • 上游授權副本見 scripts/LICENSE-watermarks-remover.txt;擷取版本為 commit 4a0fbc312f2e5138c35d270d9db284cc07689930。

典型請求

  • 「請只檢查這段繁中是否有不可見文字標記,不要改內容。」→ inspect
  • 「請清理這個 Markdown 的 zero-width 字元,保留程式碼與引用。」→ layer-a
  • 「請降低這段 Claude 文字的統計式標記,允許輕微改寫,但不要新增事實。」→ layer-b
  • 「先去浮水印,再幫我去 AI 味。」→ full,並依序執行保護、Layer A、humanizer、可選 Layer B、Layer A。

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/kevintsai1202/humanizer-zh-tw/text-watermark-cleaner-zh-tw">View text-watermark-cleaner-zh-tw on skillZs</a>