api-doctor:110條確定性AST規則,捕捉AI生成代碼中的不良API集成
api-doctor 是一個開源CLI工具,使用110條確定性AST規則掃描AI生成的代碼,以發現錯誤的API集成。它覆蓋安全性、正確性、可靠性和集成問題,支持Supabase、Auth0、Firebase等提供商。與基於AI的工具不同,它每次輸出相同,便於測試AI代碼。
近日,一款名為 api-doctor 的開源工具在Hacker News上引起了廣泛關注。該工具旨在解決AI生成代碼中常見的API集成錯誤問題。與傳統的基於AI的代碼審查工具不同,api-doctor 採用110條確定性AST(抽象語法樹)規則對代碼進行靜態分析,而非依賴可能產生不一致結果的AI提示。這意味着對於相同的輸入,它能保證一致的輸出結果,從而為開發者提供可靠且可重複的代碼審查體驗。
api-doctor 目前支持11個主流API提供商,包括Resend、Supabase、Auth0、Firebase、Lovable、Browserbase、OpenAI Computer Use、TipTap、ElevenLabs、Twilio和OpenAI Realtime,共覆蓋110條具體規則。這些規則被精心設計並分為四個關鍵類別:安全性(映射到CWE和OWASP標準,檢測硬編碼API密鑰、客户端包中的秘密、未驗證簽名前讀取的Webhook等)、正確性(檢測錯誤的端點或API使用,如通過批量發送營銷郵件、缺少取消訂閲鏈接、在生產環境中使用測試域名等)、可靠性(預防生產故障模式,如缺失冪等性鍵、未強制批量限制、未映射錯誤碼等)、以及集成(填補AI代理可能遺漏的接線缺口,如缺少標籤、未記錄請求ID、使用裸發件人地址而非“名稱”標準格式等)。
該工具的突出優勢在於其確定性。正如開發者所強調的:“你不能用AI來測試AI代碼。api-doctor打破了這一循環。相同的規則,相同的輸出,每次都是。不是模型調用,也不是提示詞。”這種設計使得測試AI生成代碼變得簡單而可靠。
在安裝與使用方面,api-doctor 主要作為一個CLI命令運行,用户只需在項目目錄中執行“npx @api-doctor/cli .”即可開始掃描。此外,它還可以作為代理技能集成到Claude Code、Cursor或Windsurf等開發環境中,通過“npx @api-doctor/cli install”命令進行安裝。
關於隱私與遙測,api-doctor 收集匿名使用數據以幫助開發者瞭解工具的實際效用。它通過PostHog收集CLI版本、Node.js版本、運行平台、運行上下文(本地、CI或代理)、檢測到的API提供商名稱、觸發的規則名稱(不含代碼)、評分和發現計數、項目運行之間的分數差異(本地存儲),以及哈希後的項目標識符。工具明確聲明永遠不會收集用户的代碼內容、原始文件路徑、項目名稱或個人身份信息。用户可以通過添加“--no-telemetry”標誌或設置環境變量“API_DOCTOR_TELEMETRY=0”或“DO_NOT_TRACK=1”來退出遙測。
api-doctor 採用MIT許可證開源,源代碼託管在GitHub上,並鼓勵社區貢獻新的提供商規則。該工具由Qualty開發,旨在幫助開發者在不完全信任AI生成代碼的情況下,快速發現並修復API集成問題。