Skip to main content

Supply-chain security, capability intelligence, and trust system for AI agents

Project description

Bastion AI

Supply-chain security, capability intelligence, and trust system for AI agents.

Bastion AI protects bot-first ecosystems by detecting malicious or risky skills/plugins/tools, tracking capability drift over time, and producing machine-readable security artifacts (Dynamic AIBOM).

Installation

pip install bastion-ai-security

For JavaScript/TypeScript analysis support:

pip install bastion-ai-security[js]

PyPI: https://pypi.org/project/bastion-ai-security/

Quick Start

Initialize a project

cd your-agent-project
bastion init

This creates a .bastion/ directory with project configuration and prepares for scanning.

Scan for risks

bastion scan

Bastion auto-discovers plugins, skills, and tools in your project and analyzes them for:

  • System execution — subprocess, os.system, child_process, etc.
  • Network access — requests, fetch, urllib, etc.
  • Secret/environment access — os.environ, process.env, dotenv, etc.
  • Dynamic code execution — eval, exec, Function constructor, etc.
  • Obfuscation patterns — base64+exec, encoded strings, etc.

Check project status

bastion status

Connect to Bastion Cloud

bastion connect

Enables continuous monitoring, trust scores, and dashboard access at https://bastion-ai-hub.replit.app.

How It Works

Plugin Discovery

Bastion automatically finds plugins by scanning:

  • Known framework directories (skills/, tools/, plugins/, extensions/)
  • Framework-specific patterns (OpenClaw, LangChain, AutoGPT, CrewAI)
  • File naming conventions (*_skill.py, *_tool.js, etc.)

Capability Analysis

Each discovered plugin is analyzed using:

  • Python: AST-based static analysis
  • JavaScript/TypeScript: esprima parsing with regex fallback

Risk Levels

Level Description
Critical System execution, dynamic code, obfuscation detected
High Network access, secret/env access detected
Medium New plugin without dangerous capabilities
Low No risky capabilities detected

Drift Detection

On subsequent scans, Bastion compares against the baseline to detect:

  • New plugins added since last scan
  • Modified plugins with changed capabilities
  • Removed plugins no longer present

Generated Artifacts

All artifacts are written to .bastion/:

File Description
security_state.json Overall security posture
capability_surface.json All plugin capabilities
drift_summary.json Changes since last scan
aibom.json Dynamic AI Bill of Materials
events.log.jsonl Rolling event log
baseline.json Baseline for drift comparison

CI/CD Usage

bastion init
bastion scan --ci

Exit codes:

  • 0 — No high-risk findings
  • 1 — High or Critical findings detected

Language Support

  • Python (.py)
  • JavaScript (.js, .jsx)
  • TypeScript (.ts, .tsx)

License

MIT

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

bastion_ai_security-0.1.3.tar.gz (19.4 kB view details)

Uploaded Source

Built Distribution

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

bastion_ai_security-0.1.3-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file bastion_ai_security-0.1.3.tar.gz.

File metadata

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

File hashes

Hashes for bastion_ai_security-0.1.3.tar.gz
Algorithm Hash digest
SHA256 bdd7149baab50f7a31e2466af830f23d44dad5601c6d11eef66aa3638b2d981a
MD5 f357f93e4d91b778dcd568b63f52c733
BLAKE2b-256 08f1d03e714e0944bd3929a931f19b9d1226f779666a60001dc48248a4a87a1c

See more details on using hashes here.

File details

Details for the file bastion_ai_security-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for bastion_ai_security-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f56433a33fb9fd160549bbf5b20ed233eeb27ecba4c9c930c0153b205195c922
MD5 0df6accf0d2586ba7b33f901331b7000
BLAKE2b-256 5799b8d356f930431024f7ba39a89b55a2f8d8ea7d343e9440a59fc1d00db1ec

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