프로젝트 소개

Stoa는 로컬 우선 AI 에이전트 인벤토리 및 위험 스캐너입니다. 런타임 후크, 업로드 또는 계정 없이 Python, JavaScript 및 TypeScript 저장소를 정적으로 분석하여 AI 에이전트 코드를 찾고, 해당 에이전트가 도달할 수 있는 대상을 매핑하며, 고신뢰도 위험을 플래그 지정합니다. 탐지는 LangChain, LangGraph, CrewAI, AutoGen, LlamaIndex, OpenAI Agents SDK, PydanticAI, Bedrock Agents, Semantic Kernel, LiteLLM 및 원시 제공자 호출과 같은 일반적인 에이전트 프레임워크 및 패턴을 포괄합니다. 각 후보에는 탐지 이유를 보여주는 가중치 증거가 함께 제공됩니다. 스캐너는 또한 제공자, 프레임워크, 통합 및 기능(예: 결제 액세스, 데이터베이스 읽기 및 Slack 메시징이 있는 에이전트)을 매핑합니다. 위험 검사에는 하드코딩된 자격 증명, 하드코딩된 비밀번호, 보간된 SQL, 무시된 예외, 안전하지 않은 HTTP, 누락된 요청 시간 초과 및 제어 검토 프롬프트가 포함됩니다. AI 에이전트 보안 규칙 세트는 OWASP LLM Top 10에 매핑되며, 기본적으로 활성화된 tree-sitter AST 계층을 통한 데이터 흐름 분석을 제공합니다. 게이트 자격이 있는 규칙의 고신뢰도 결과만 스캔을 실패시킬 수 있습니다. 기본적으로 게이트는 새로 도입된 중요 결과에 적용되므로 기존 부채가 관련 없는 풀 리퀘스트를 차단하지 않습니다. 출력은 로컬입니다. 7개 화면이 있는 자체 포함된 HTML 대시보드, 레거시 HTML 보고서 및 결정론적 버전 관리 JSON 레지스트리입니다. 대시보드는 데이터를 이스케이프 처리하여 포함하고, Content-Security-Policy로 인라인 스크립트를 고정하며, 네트워크 요청을 하지 않습니다. CLI는 git 베이스에 대한 diff 인식 스캔, GitHub 주석, 작업 요약, SARIF 스타일 차원 태그, 명시적 규칙 ID가 있는 억제 주석, stoa.toml 및 .stoaignore를 통한 구성을 지원합니다. 추가 기능으로는 레지스트리 간 에이전트 기능 드리프트 비교, 강제 없이 관찰된 증거를 추가하는 섀도우 모드의 선택적 런타임 추적 오버레이, 선언된 비즈니스 컨텍스트에 의해 구동되는 예상 재정적 손실/보험 평가 보기가 있습니다. 비밀은 직렬화 전에 수정되며, 프로젝트는 거짓 양성, 파일 내 데이터 흐름 분석만 지원, Python, JavaScript 및 TypeScript로 제한된 지원을 포함한 한계를 문서화합니다.