PO

panbanda/omen

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

21 stars 12 forks 품질 82 트렌드 30Apache-2.0

SAST intelligence for AI agents. Complexity, hotspots, blast radius, and tech debt analysis over MCP.

개요

Call-graph reports expose call_resolutions (symbol) and input-wide resolution_summary (impact). These distinguish unique name candidates from ambiguous and unresolved calls. Unique candidates are not compiler-proven bindings; excluded edges do not establish that an edit is safe. See the improvement standard and measured results for limits and regression gates. Omen gives AI assistants the context they need: complexity hotspots, hidden dependencies, defect-prone files, and self-admitted debt. One command surfaces what's invisible. An omen is a sign of things to come - good or bad. Your codebase is full of omens: low complexity and clean architecture signal smooth sailing ahead, while high churn, technical debt, and code clones warn of trouble brewing. Omen surfaces these signals so you can act before that "temporary fix" celebrates its third anniversary in production.

README

원문 README의 일부입니다. 원문 보기.


Features

There are two types of complexity:

  • Cyclomatic Complexity counts the number of different paths through your code. Every if, for, while, or switch creates a new path. A function with cyclomatic complexity of 10 means there are 10 different ways to run through it. The higher the number, the more test cases you need to cover all scenarios.

  • Cognitive Complexity measures how hard code is for a human to read. It penalizes deeply nested code (like an if inside a for inside another if) more than flat code. Two functions can have the same cyclomatic complexity, but the one with deeper nesting will have higher cognitive complexity because it’s harder to keep track of.

Why it matters: Research shows that complex code has more bugs and takes longer to fix. McCabe’s original 1976 paper found that functions with complexity over 10 are significantly harder to maintain. SonarSource’s cognitive complexity builds on this by measuring what actually confuses developers.

[!TIP]

GitHub에서 전체 README 보기

설치

docker run --rm -v "$(pwd):/repo" ghcr.io/panbanda/omen:latest -p /repo all
MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →

설정

{ "mcpServers": { "omen": { "command": "omen", "args": ["mcp"] } } }