Skip to main content

AI SBOM generator with portable schema

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

Xelo

Xelo is an open-source AI SBOM generator for agentic and LLM-powered applications. It scans code and configuration, produces AI-BOM JSON, and can export CycloneDX-compatible output for security and compliance workflows.

Why Xelo

  • Detects AI-specific components (agents, models, tools, prompts, datastores, guardrails, auth, deployment artifacts).
  • Works on mixed Python and TypeScript repositories.
  • Recursively scans requirements.txt, pyproject.toml, and package.json files at any depth in the project tree.
  • Uses deterministic extraction by default.
  • Supports optional LLM enrichment when you explicitly enable it.

Supported Frameworks

Xelo detects components from the following AI/agent frameworks out of the box:

Python: LangChain, LangGraph, OpenAI Agents SDK, CrewAI (code + YAML configs), AutoGen (code + YAML configs), Google ADK, LlamaIndex, Agno, AWS BedrockAgentCore, Azure AI Agent Service, Guardrails AI, MCP Server, Semantic Kernel

TypeScript / JavaScript: LangChain.js, LangGraph.js, OpenAI Agents (TS), Azure AI Agents (TS), Agno (TS), MCP Server (TS)

Installation

pip install xelo

Install for development:

pip install -e ".[dev]"

Quickstart

Generate an AI-BOM from a local path:

xelo scan path ./my-repo --format json --output sbom.json

CLI alias: ai-sbom.

CLI Commands

Command Description
xelo scan path <PATH> Scan a local repository path
xelo scan repo <URL> Clone and scan a remote repository

Run xelo --help or xelo <command> --help for all flags.

Configuration

xelo scan can be configured via .env values and CLI flags. CLI flags take precedence.

Environment variables:

  • AISBOM_ENABLE_LLM=true|false
  • AISBOM_LLM_MODEL=<litellm model string>
  • AISBOM_LLM_BUDGET_TOKENS=<int>
  • AISBOM_LLM_API_KEY=<optional key>

Example enabling enrichment:

xelo scan path ./my-repo --enable-llm --llm-model gpt-4o-mini --output sbom.json

Development

pip install -e ".[dev]"
ruff check src tests
mypy src
pytest

Project Docs

License

Apache-2.0. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xelo-0.1.4.tar.gz (158.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xelo-0.1.4-py3-none-any.whl (171.2 kB view details)

Uploaded Python 3

File details

Details for the file xelo-0.1.4.tar.gz.

File metadata

  • Download URL: xelo-0.1.4.tar.gz
  • Upload date:
  • Size: 158.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for xelo-0.1.4.tar.gz
Algorithm Hash digest
SHA256 bd14a320cf3a2b5527176f0adf837d576197b8f63f8cc89b8c96959f822e4566
MD5 9f2260bacbd82b1afab57ce9341002ae
BLAKE2b-256 f940b5584261bb5c246fada17d20d4d5d837a2ec0fbaf4c503906bc31899859f

See more details on using hashes here.

File details

Details for the file xelo-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: xelo-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 171.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for xelo-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8e8a445da6f76b316f6965f77313c0b0cbbfe724e1a027846629f238dd9cf658
MD5 f458ff9e3374c78c40350d76a0730606
BLAKE2b-256 42958cc53119558d31b7cc8392c3dd6a8eff8b711c165b551e36f5377d00fe00

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page