duriantaco/skylos

Open source local-first PR scanner that finds dead code, security bugs, secrets, quality regressions, and AI-code mistakes before merge. For first timers refer to https://duriantaco.github.io/skylos/repo-map/

解決的問題

Skylos 是一個以本地為首要的靜態分析工具,旨在於程式碼合併至程式碼庫之前,偵測錯誤、安全漏洞以及 AI 生成程式碼的錯誤。它解決了在多種語言(包括 Python、TypeScript、JavaScript、Java、Go、Kotlin、PHP、Rust、Dart、C# 和 Shell)中,統一檢測死程式碼、金鑰、相依性 CVE,以及常見的 LLM 幻覺(例如虛構的 API 或遺漏的防護)的需求。

工作原理

Skylos 作為預設在本機執行的靜態分析 CLI 工具。它在不執行程式碼的情況下分析程式碼,使用框架感知的檢測技術識別死程式碼和安全弱點。它提供專門針對 AI 輔助開發的工作流程,包括 skylos verify 用於檢查特定程式碼範圍內的幻覺,以及 skylos defend 用於盤點 LLM 集成並驗證其防護措施是否符合 OWASP 等標準。它還支援「AI 幻覺合約」,用於為生成的程式碼定義專案特定的真實。

適用對象

專為希望將自動化程式碼品質與安全檢查整合至本機工作流程或 CI/CD 流水線(如 GitHub Actions)中的開發者與安全團隊設計。特別適用於需要對 AI 代理行為與防護措施進行決定性驗證的團隊,例如開發 AI 代理與 LLM 驅動應用的團隊。

主要亮點

  • AI 專用檢查:偵測 AI 生成程式碼中常見的幻覺,如虛構的安全呼叫、虛假的套件 API 和不可能的相依性版本。
  • 代理驗證:盤點 LLM 集成並評分其防護措施(如提示注入暴露、輸出驗證),無需在迴圈中使用模型。
  • 多語言支援:廣泛涵蓋主流語言及部署設定(Kubernetes、Docker Compose)。
  • MCP 集成:提供 MCP 工具(verify_changeverify_agent),使 Claude 或 Cursor 等編碼代理可在人工審查前自我修正程式碼。
  • 死程式碼檢測:針對 FastAPI、Django、Flask 等框架進行感知分析,發現未使用的函數與類別。
  • 代理行為測試:基於合約對執行中的代理進行決定性測試,驗證工具選擇與回應準確性。

相關

  • 專案
  • 專案
  • 專案
  • Dispatch
  • 專案