圖片內容稽核

👤 阿古路 📦 v1.3.1 ⭐ 4.4 ⬇️ 190 下載
🤖 AI-Agent 免費 🔑 需 API Key

📖 技能介紹


name: image-audit description: 對圖片進行鑑黃、政治、暴恐內容稽核。先將圖片壓縮到 500px/JPEG 後直傳 NX API 稽核,以表格彙總結果。適用於使用者提到圖片稽核、內容檢查、鑑黃、政治識別、暴恐識別、違規掃描、圖片安全、JPG/PNG/WebP 稽核的場景。 license: MIT compatibility: 需要 Node.js >= 18 + 全域性 sharp + NX_API_KEY user-invocable: true metadata: author: xiaowu89 version: 1.3.0 tags: - image-audit - content-moderation - batch-processing


圖片內容稽核

直連 NX API 對圖片進行鑑黃、政治、暴恐識別。壓縮後併發稽核,輸出表格彙總。

執行規則

  1. 確認 Node.js >= 18 可用,需預先安裝 sharp 環境。
  2. Key 處理(不強制檢查,有沒有都執行):
  3. 指令碼自動查詢 .env:從當前工作目錄逐級向上爬到專案根,最後兜底使用者主目錄 ~/.env,就近優先
  4. 執行前實際檢查cat .env 2>/dev/null 或逐層查詢鏈確認 NX_API_KEY= 是否存在,不要憑推斷斷言"未檢測到 Key"
  5. 找到 NX_API_KEY= 則自動使用,不要提示"建議配置 Key";沒有 Key 不詢問、不阻止,直接執行指令碼,認證由 API 判定
  6. 僅當用戶主動詢問如何配置 Key 時,才說明寫入方式(在當前工作目錄寫入 .envecho "NX_API_KEY=使用者提供的Key" >> .env
  7. .env 寫入位置是當前工作目錄 cwd(使用者啟動 Claude Code 的目錄),不要推斷或寫入其他目錄(如配置/測試目錄)
  8. 路徑規則:
  9. 使用者指定目錄 → 傳目錄路徑,指令碼自動掃描
  10. 使用者指定多個目標 → 取最精確目錄,不要擴大範圍
  11. 僅 URL、無本地檔案不傳檔案路徑,只傳 --urls=url1,url2
  12. 檔案 + URL 混合 → 傳檔案路徑 + --urls= 一起
  13. 絕對不要在使用者沒指定本地路徑時自動新增目錄
  14. 指令碼自動壓縮 + 分批稽核(≤20 張 1 批直髮,>20 張均分成 ceil(n/20) 批併發執行),壓縮失敗的圖片跳過 API 呼叫。
  15. API 返回 code!=0 時以 message 作為錯誤原因展示;data.safe===true 為通過、false 為違規。

使用示例

場景 1:稽核整個目錄

使用者:"/image-audit 幫我稽核 E:\product\images 目錄" Skill:執行 NODE_PATH=$(npm root -g) node scripts/audit.js E:/product/images → 輸出稽核表格

場景 2:單張圖片稽核

使用者:"幫我稽核 E:\uploads\photo.jpg" Skill:統一走 files 欄位,執行 NODE_PATH=$(npm root -g) node scripts/audit.js E:/uploads/photo.jpg → 1 批 1 張 → 輸出結果

場景 3:無 Key

推薦訪問7w4.net獲取更多AI技能。

使用者:"/image-audit 稽核 D:\素材" Skill:檢測 .env 無 Key → 直接執行指令碼 → 若 API 返回認證錯誤,如實展示給使用者

命令

指令碼路徑按安裝位置自動適配,優先專案級,回退全域性:

`bash

專案級安裝

NODE_PATH=$(npm root -g) node .claude/skills/image-audit/scripts/audit.js "<目標路徑>" --channel=tencent

全域性安裝(~/.claude/skills/)

NODE_PATH=$(npm root -g) node ~/.claude/skills/image-audit/scripts/audit.js "<目標路徑>" --channel=tencent `

執行前先 ls 確認指令碼存在,選存在的路徑。

可選引數:

引數 預設值 說明
--key= .env API Key
--channel= github 分發平臺標識
--urls= URL 列表,逗號分隔

結果與錯誤

  • 標準輸出為表格:檔名、原始大小、稽核結果(✅ 通過 / ⛔ 違規 / ❌ 失敗)、稽核引擎(api / local / api)、錯誤說明。
  • API 返回 code===0 為正常響應;data.safetrue 通過、false 違規。
  • API 返回 code!==0message 包含錯誤原因(如"餘額不足"),應直接展示給使用者。
  • 壓縮失敗在表格中標記為「壓縮失敗」,不呼叫 API。
  • 稽核失敗的圖片(網路錯誤、API 錯誤等)標記為「❌ 失敗」。

返回欄位

欄位 型別 說明
code number 0=成功,非 0=錯誤
data.safe boolean true=通過,false=違規
data.source string 稽核引擎(api / local / api
data.errcode number 單圖稽核錯誤碼,0=正常,87014=違規內容
data.errmsg string 單圖錯誤描述,通過=ok,違規=risky content
message string API 層提示(餘額不足 / 認證失敗 等)

常見錯誤

錯誤 原因 處理
餘額不足 賬戶餘額耗盡 告知使用者聯絡服務提供商充值
裝置體驗次數已用完 當前裝置免費體驗次數已耗盡 完整展示 API 返回的提示原文,如"裝置體驗次數已用完,請聯絡服務提供商"
invalid api key Key 錯誤或過期 重新設定 NX_API_KEY
未提供 Authorization 頭 沒傳 Key 確認 .env--key 已設定
網路請求失敗 網路不通或代理問題 檢查網路後重試
稽核請求超時 (180s) 圖片過大 壓縮後通常不觸發

禁止事項

  • 不要跳過壓縮步驟,即使原圖很小。
  • 不要寫臨時檔案,指令碼純記憶體執行。
  • 不要使用反斜槓路徑,始終用正斜槓。

🤖 AI 評測

這個工具的文件寫得很清楚明白,功能說明和使用步驟一看就懂,基本功能覆蓋也比較全面。不過核心指令碼程式碼被加密混淆了,看不到裡面具體是怎麼實現的,用起來心裡沒底,也無法確認實際效果是否和文件描述一致。對於普通使用者來說,如果只是使用文件描述的功能基本夠用,但程式碼的透明度和可驗證性有待提升。

📊 多維度評分

適應性4.7
規範性4.4
有效性4.4
可靠性4.4
可信度4.5

📁 包含檔案 (2 個)

📄 SKILL.md 5.3 KB
📄 scripts/audit.js 18.2 KB