Skip to main content

AI-powered Python security scanner โ€” 13 vuln types, AINA L3 causal chains, 100% recall

Project description

๐Ÿ›ก๏ธ aina-vibeguard

AI-powered Python security scanner โ€” 13 vulnerability types, AINA L3 causal chain analysis, 100% recall on 30 golden cases.

PyPI version Python 3.9+ License: MIT


What it detects

# Vulnerability Free Pro Premium
1 SQL Injection โœ… โœ… โœ…
2 Command Injection โœ… โœ… โœ…
3 Hardcoded Secrets โœ… โœ… โœ…
4 Path Traversal โœ… โœ… โœ…
5 SSRF โœ… โœ… โœ…
6 XSS โœ… โœ… โœ…
7 Insecure Deserialization โœ… โœ… โœ…
8 Weak Crypto (MD5/SHA1) โœ… โœ… โœ…
9 Open Redirect โœ… โœ… โœ…
10 Template Injection โœ… โœ… โœ…
11 Cross-function Taint (5-hop) โŒ โŒ โœ…
12 IDOR / CSRF / Mass Assignment โŒ โŒ โœ…
13 Sensitive Data Leak โŒ โŒ โœ…

30/30 golden test recall (100%) ยท AINA L3 causal chains trace attack paths from source to sink.


Install

pip install aina-vibeguard

Zero dependencies. Pure Python 3.9+.


Quick start

# 1. Set your API key (get one at vibeguard.dev)
aina-vibeguard config --key vg_pro_YOUR_KEY

# 2. Scan a file
aina-vibeguard scan myapp/views.py

# 3. Full output with L3 causal chains
aina-vibeguard scan myapp/views.py --verbose

# 4. [Premium] Scan entire project
aina-vibeguard scan-project ./myproject

No API key? Use a free key with 50 scans/day:

aina-vibeguard config --key vg_free_demo0001

Example output

๐Ÿ’Ž [PRO]  views.py
  ๐Ÿ”ด BLOCKED  blocks=2  warns=1
  scan_id: 8f3a1b2c-...
  hash: A3F9C2B1D4E5F6A7...  โœ…

  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  KIND                   SEVERITY  LINE  DETAIL
  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  ๐Ÿ”ด SQL_INJECTION       BLOCK     42    f-string in execute()
  ๐Ÿ”ด COMMAND_INJECTION   BLOCK     87    subprocess with shell=True + user input
  ๐ŸŸก HARDCODED_SECRET    WARN      15    API_KEY = "sk-..."

  ๐Ÿง  AINA L3 Causal Chains (2):
    โ€ข user_input โ†’ string_concat โ†’ execute() โ†’ database_read
    โ€ข user_input โ†’ shell_interpolation โ†’ subprocess.run โ†’ OS_command

Tier comparison

Feature Free Pro ($19/mo) Premium ($49/mo)
Scans per day 50 500 Unlimited
Max file size 100 KB 500 KB 1 MB (ZIP)
10 base vuln types โœ… โœ… โœ…
Full issue details โŒ โœ… โœ…
AINA L3 causal chains โŒ โœ… โœ…
Senior code analysis โŒ โœ… โœ…
Scan history (90 days) โŒ โœ… โœ…
PDF certificate โŒ โœ… โœ…
Cross-function taint โŒ โŒ โœ…
IDOR / CSRF detection โŒ โŒ โœ…
Sensitive data leak โŒ โŒ โœ…
Project ZIP scan โŒ โŒ โœ…

๐ŸŽซ Early Bird: First 100 Pro / 50 Premium slots at launch price. โ†’ aina-vibeguard slots to check availability.


Hash proof

Every Pro/Premium scan returns a tamper-proof hash you can verify client-side:

import hashlib, json

scan_id    = "8f3a1b2c-..."
blocks     = 2
block_types = {"SQL_INJECTION": 1, "COMMAND_INJECTION": 1}

payload = f"{scan_id}|{blocks}|{json.dumps(block_types, sort_keys=True)}"
result_hash = hashlib.sha256(payload.encode()).hexdigest()[:32].upper()
# โ†’ A3F9C2B1D4E5F6A7...

CI/CD integration

# .github/workflows/security.yml
- name: VibeGuard scan
  run: |
    pip install aina-vibeguard
    aina-vibeguard scan src/app.py
  env:
    VIBEGUARD_API_KEY: ${{ secrets.VIBEGUARD_API_KEY }}

Exit code 1 if any BLOCK-severity issues are found โ€” fails the pipeline automatically.


False positive feedback

aina-vibeguard feedback <scan_id> SQL_INJECTION --note "Parameterized query, safe"

Feedback is stored in the AINA L3 causal database and reduces future false positives.


Commands

Command Description
config --key KEY Save API key locally
scan FILE Scan a Python file
scan-project DIR [Premium] Scan project directory
status API status + tier info
slots Early bird slot availability
history Recent scan history
feedback SCAN_ID KIND Report false positive
docs Export learned patterns

How it works

VibeGuard is a cloud-native SAST (Static Application Security Testing) tool. Your code is sent to the VibeGuard API which runs:

  1. Structural analysis โ€” AST-based pattern matching for 13 vulnerability types
  2. AINA L3 causal chains โ€” Knowledge graph traversal traces taint from source to sink
  3. Senior code analysis โ€” GOD_OBJECT, N+1 queries, DEEP_NESTING detection
  4. [Premium] Inter-procedural taint โ€” 5-hop cross-function data flow

The API runs on Railway with a PostgreSQL-backed key store and self-improving causal database.


Privacy

  • Code snippets are processed server-side for analysis and not stored permanently
  • Scan metadata (hash, block counts) is stored 90 days for Pro/Premium history
  • No training on your code

Get a key

  1. Free โ€” vg_free_demo0001 (public demo, 50 scans/day shared)
  2. Pro / Premium โ€” vibeguard.dev/pricing

License

MIT ยฉ 2026 AINA Sovereign

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

aina_vibeguard-1.9.2.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

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

aina_vibeguard-1.9.2-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file aina_vibeguard-1.9.2.tar.gz.

File metadata

  • Download URL: aina_vibeguard-1.9.2.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.8

File hashes

Hashes for aina_vibeguard-1.9.2.tar.gz
Algorithm Hash digest
SHA256 e076d1baefd4e564f1a1abebe592eba5d151b8ef0a3f23ae7d14feb7c1d752d7
MD5 e45afd473055516a365efbb6f11882ae
BLAKE2b-256 0b23b358a9793d9a2ed19a6ac2334eebbf9944c738c4f65e718485ea2dce2750

See more details on using hashes here.

File details

Details for the file aina_vibeguard-1.9.2-py3-none-any.whl.

File metadata

  • Download URL: aina_vibeguard-1.9.2-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.8

File hashes

Hashes for aina_vibeguard-1.9.2-py3-none-any.whl
Algorithm Hash digest
SHA256 48f968b787b5aa19094e6607ea1a10afe4f97a8c9b33070d4f9f86c5a660e32f
MD5 d083e8d10b50f81f9bda5874c4248108
BLAKE2b-256 d97431d640bc7cd5f86836d0f1779173bacca372bad429c356d5663aaa1ab889

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