Omni Scanner

io.github.Pantheon-LadderWorks由 GitHub 帳號 Pantheon-LadderWorks 發布v0.7.3更新於 Nov 3, 2026

Codebase observatory with 56+ scanners for git health, architecture, and documentation.

概覽

AI 產生的概覽

Omni Scanner 是本地 MCP 伺服器,把 55 個唯讀程式碼庫掃描器以工具形式提供給 AI 助理,用於 git 健康、架構、文件與相依性分析。

可以做什麼
  • 對目標目錄執行靜態與架構掃描器,檢查契約、相依性、匯入、邊界、耦合與漂移
  • 編目專案、CLI 指令、核心與 MCP 伺服器,並分析 Python、Node.js、Rust 等語言生態
  • 檢視 git 狀態、提交歷史、開發速度與 PR 遙測,並搜尋檔案、文字與正規表達式模式
  • 評估文件內聚性、內容深度與知識圖譜,並進行設定驅動的資料庫掃描
  • 繪製專案星圖、檢查治理合規性並產生結構化報告
適用情境
適合讓助理稽核或梳理陌生的程式碼庫、檢查架構邊界與文件漂移,或在不修改任何檔案的前提下產生治理與健康報告。
執行需求
以本機 Python 程序執行(Python 3.8+),從 omni-governance 的 PyPI 套件安裝;核心相依套件為 pyyaml 與 pydantic。選用的 Federation 模式需要 federation_heart 後端。設定可來自 omni.yml 或環境變數,例如 OMNI_ROOT、OMNI_REPO_INVENTORY、OMNI_WORKSPACES 與 OMNI_DB_CONFIG_PATH。
安裝前請注意
掃描器自稱唯讀,但 builders 會寫入指定目錄的產物,omni init 也會產生新專案骨架。Federation 模式會把資料送到外部治理後端,並需要專有的 federation_heart 套件;部分掃描器不在開源版本中。指向敏感目錄前請先確認設定路徑。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Omni Scanner,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

🔱 Omni — The All-Seeing Eye

[Omni Header]

The Federation Governance Tricorder — A modular, extensible observation engine that scans, maps, and guards codebases at galactic scale.

"Never trust documentation, trust reality." — ACE

Omni is a Python-powered passive observation platform that discovers the truth about your code. It doesn't modify files or break builds — it sees, maps, and reports. Think of it as a tricorder for your codebase: point it at any directory and it reveals structure, dependencies, health, drift, and compliance in seconds.


✨ At a Glance

DimensionReading
🔍 Scanner Categories12 (from static analysis to git archaeology)
📦 Total Scanners55 instruments across all categories
⚡ CLI Commands14 verbs for every observation need
🧠 MCP ServerExposes all scanners as AI-callable tools
🏛️ Pillars4 orchestration subsystems (Cartography, Intel, Gatekeeper, Registry)
🔌 Federation ModeOptional deep integration with a governance backend
🦴 Standalone ModeWorks anywhere — no backend required

🚀 Quick Start

New Here? Check out the Beginner's Guide: Zero to Hero for a step-by-step setup tutorial.

Install

bash
# Recommended: Install from PyPIpip install omni-governance
# Or install from source:# pip install -e .

Your First Scan

bash
# Scan the current directory with all static scannersomni scan .
# Run a specific scanneromni scan . --scanner surfaces
# See what Omni knows about itselfomni introspect

Explore the Ecosystem

bash
# Map your entire project constellationomni map
# Check governance complianceomni gate .
# Generate a full reportomni report . --format markdown

🏗️ Architecture — The Trinity

Omni follows the Trinity Architecture — three layers with strict separation of concerns:

                    ┌──────────────────────────┐                    │        CLI (cli.py)       │  ← User interface                    │     14 verbs, 1 brain     │                    └────────────┬─────────────┘                                 │              ┌──────────────────┼──────────────────┐              │                  │                  │    ┌─────────▼──────┐  ┌───────▼────────┐  ┌──────▼───────┐    │  🧠 CORE       │  │  🏛️ PILLARS    │  │  📚 LIB      │    │  Identity      │  │  Cartography   │  │  I/O, Render │    │  Registry      │  │  Intel         │  │  Reporting   │    │  Gate          │  │  Gatekeeper    │  │  Tree, TAP   │    │  Paths         │  │  Registry      │  │  Requirements│    └─────────┬──────┘  └───────┬────────┘  └──────────────┘              │                 │    ┌─────────▼─────────────────▼──────────────────────────┐    │              🔍 SCANNERS (55 Instruments)            │    │   12 categories • Dynamic plugin loading             │    │   Each scanner: scan(target: Path) → dict            │    └──────────────────────────────────────────────────────┘              │    ┌─────────▼──────┐    │  🔧 BUILDERS   │  ← The only layer that writes    │  Registry Gen  │    │  Report Gen    │    └────────────────┘

Read-Only Guarantee: Scanners never modify source files. Only Builders write, and only to designated artifact directories.

For the full architectural deep-dive, see ARCHITECTURE.md.


🔍 Scanner Categories

Omni's 55 scanners are organized into 12 categories. Each scanner implements the universal scan(target: Path) → dict contract and is auto-discovered via SCANNER_MANIFEST.yaml files.

Open Source Scanners (Included in Build)

CategoryScannersPurpose
📁 static9Filesystem analysis — contracts, deps, docs, events, hooks, imports, surfaces, tools, UUIDs
🏗️ architecture4Structural enforcement — import boundaries, coupling detection, drift analysis, compliance
🔎 discovery8Component cataloging — projects, CLI commands, cores, MCP servers, archives, census
🌐 polyglot4Language ecosystems — Python packages, Node.js, Rust crates, generic (Go/Java/.NET/Docker)
📚 library6Document intelligence — cohesion analysis, content depth, knowledge graphs, rituals
🔀 git5Repository intelligence — status, velocity, commit history, PR telemetry, utilities
🔍 search3Pattern matching — file search, text search, regex pattern search with context
🗄️ db1Generic configuration-driven database scanning

Federation-Exclusive Scanners (Not in Open Source Build)

These scanners require the Federation Heart backend and are part of the proprietary governance layer. They appear in omni introspect when the Heart is available but are not distributed with the open-source release.

CategoryScannersPurpose
🛡️ health6Runtime health — Federation, CMP, pillar, station, tunnel, and system status
🗃️ database5CMP entity scanning — agents, artifacts, conversations, entities, projects
⚓ fleet1Fleet registry generation and validation
🔥 phoenix3Git history resurrection — archive scanning, orphan detection, temporal gap analysis

Each category has its own README with detailed scanner documentation. See the Scanner Architecture Guide for the complete reference.


🏛️ The Four Pillars

Pillars are orchestration subsystems that coordinate multiple scanners and produce higher-level intelligence:

PillarRoleKey Capability
🗺️ CartographyEcosystem MapperMaps project constellations and dependency webs
🕵️ IntelIntelligence GathererAggregates multi-scanner data into actionable insights
⚖️ GatekeeperPolicy EnforcerValidates compliance, catches drift, flags violations
📋 RegistryRegistry OperatorParses, validates, and manages PROJECT_REGISTRY_V1.yaml

See Pillars Architecture for the deep dive.


⚡ CLI Command Reference

CommandPurpose
omni scanRun scanners against a target directory
omni inspectDeep inspection of a single project
omni gatePolicy enforcement and compliance checks
omni mapEcosystem cartography and dependency mapping
omni treeDirectory tree visualization
omni auditProvenance, dependency, and lock auditing
omni registryRegistry operations and event scanning
omni libraryGrand Librarian document intelligence
omni canonCanon validation and discovery
omni reportGenerate structured reports
omni initScaffold new Federation-compliant projects
omni introspectSelf-inspection — shows all scanners, drift, capabilities
omni interpretInterpret and explain scan results
omni inspect-treeCombined tree + inspection

🔌 Federation Mode vs. Standalone

Omni operates in two modes, transparently:

Standalone Mode (Default)

No external dependencies. Configuration from omni.yml and environment variables. All open-source scanners work perfectly. Ideal for individual developers and open-source projects.

Federation Mode (Optional)

When federation_heart is installed, Omni gains:

  • CartographyPillar — Canonical path resolution across the entire Federation
  • Constitution — Governance rule enforcement from a central authority
  • CMP Integration — Project identity resolution against the Canonical Master Project database
  • Runtime Health — Live status of Federation services, stations, and tunnels

The integration is handled by a single shim (omni/config/settings.py) that bridges to the Heart when available and falls back gracefully when it's not.


🧠 MCP Server

Omni includes a Model Context Protocol (MCP) server that exposes all 55 scanners as AI-callable tools. Any MCP-compatible AI assistant can invoke Omni's scanners programmatically.

Quick Start (npx)

The absolute easiest way to use the MCP Server is via npx (requires Node.js):

bash
npx -y @modelcontextprotocol/inspector mcp-server-omni-governance

Run from Source

bash
# The MCP server auto-discovers all registered scannerspython -m mcp_server.omni_mcp_server

See MCP Server Documentation for setup and configuration.


📁 Project Structure

omni/├── README.md              ← You are here├── ARCHITECTURE.md        ← Full architectural deep-dive├── CONTRIBUTING.md        ← How to add scanners and contribute├── CHANGELOG.md           ← Version history├── ROADMAP.md             ← Future plans├── pyproject.toml         ← Package definition├── omni/│   ├── cli.py             ← CLI entry point (14 commands)│   ├── core/              ← Brain — identity, registry, gate, paths│   ├── config/            ← Configuration & Federation Heart bridge│   ├── scanners/          ← 55 scanners across 12 categories│   ├── pillars/           ← 4 orchestration subsystems│   ├── lib/               ← Shared utilities (I/O, rendering, reporting)│   ├── builders/          ← Registry and report generators│   ├── scaffold/          ← Project templates│   └── templates/         ← Jinja2 report templates├── mcp_server/            ← MCP server exposing scanners as AI tools├── scripts/               ← Operational scripts├── tests/                 ← Test suite (pytest)├── docs/                  ← Historical docs and plans└── contracts/             ← Crown Contracts (C-TOOLS-OMNI-*)

🔧 Configuration

Omni follows a strict configuration hierarchy (highest priority wins):

  1. CLI flags (e.g., --scanner surfaces)
  2. Environment variables (e.g., OMNI_ROOT)
  3. omni.yml (project-level configuration)
  4. Built-in defaults (sensible fallbacks)

Key environment variables:

VariablePurpose
OMNI_ROOTOverride root path for scanning
OMNI_REPO_INVENTORYPath to repository inventory JSON
OMNI_WORKSPACESWorkspace root paths
OMNI_DB_CONFIG_PATHDatabase configuration directory

See Configuration Guide for full details.


🧪 Testing

bash
# Run all testspytest tests/ -v
# With coveragepytest tests/ --cov=omni --cov-report=html

See Test Suite Documentation for fixtures, standards, and CI setup.


🤝 Contributing

We welcome new scanners, pillars, and improvements. The scanner plugin system makes it straightforward to add new observation capabilities:

  1. Create a scanner file with a scan(target: Path) → dict function
  2. Register it in the category's SCANNER_MANIFEST.yaml
  3. Add tests and documentation

See CONTRIBUTING.md for the full guide.


📜 Requirements

  • Python: 3.8+
  • Dependencies: pyyaml, pydantic (core); federation_heart (optional, for Federation mode)
  • OS: Windows, macOS, Linux

📋 License

Open source. See LICENSE for details.


The All-Seeing Eye observes. The Code writes the Code.
Omni v0.7.0 — Pantheon LadderWorks

來源:README.md,提交 83609f2

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.7.3最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分