Skip to main content

AI-powered code security vulnerability scanner

Project description

๐Ÿ›ก๏ธ Pluto - AI-Powered Code Security Analyzer

โ•ญโ”€โ”€โ”€โ”€โ”€[By 0xSaikat]โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚                                                     โ”‚
โ”‚         ____  __      __                            โ”‚
โ”‚        / __ \/ /_  __/ /_____                       โ”‚
โ”‚       / /_/ / / / / / __/ __ \                      โ”‚
โ”‚      / ____/ / /_/ / /_/ /_/ /                      โ”‚
โ”‚     /_/   /_/\__,_/\__/\____/   V-1.0               โ”‚
โ”‚                                                     โ”‚
โ”‚     AI-Powered Code Security Analyzer               โ”‚
โ”‚                                                     โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€[hackbit.org]โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

PyPI version License: MIT Python 3.7+

Pluto is a powerful CLI tool that uses AI to detect security vulnerabilities in your code.

Features โ€ข Installation โ€ข Usage โ€ข Examples โ€ข Contributing


๐Ÿš€ Features

  • ๐Ÿค– Multiple AI Providers: Claude, OpenAI, Ollama (local)
  • ๐Ÿ“ Flexible Input: Analyze files, directories, or GitHub repositories
  • ๐Ÿ“Š Multiple Report Formats: Terminal, PDF, JSON, Markdown
  • ๐Ÿ”’ Privacy-First: Local analysis with Ollama support
  • ๐ŸŽฏ Severity Filtering: Focus on CRITICAL, HIGH, MEDIUM, or LOW issues
  • ๐ŸŒ Multi-Language Support: Python, JavaScript, Java, C/C++, Go, Rust, PHP, Ruby, and more

๐Ÿ” Security Checks

Pluto detects:

  • SQL Injection
  • XSS (Cross-Site Scripting)
  • Authentication/Authorization flaws
  • Hardcoded secrets & credentials
  • Insecure cryptography
  • Path traversal
  • Command injection
  • CSRF vulnerabilities
  • Insecure dependencies
  • And many more...

๐Ÿ“ฆ Installation

From PyPI (Recommended)

pip install pluto-ai

From Source

git clone https://github.com/0xsaikat/pluto.git
cd pluto
pip install -e .

โš™๏ธ Setup

For Claude (Recommended)

export ANTHROPIC_API_KEY='your-api-key-here'

Get your API key from: https://console.anthropic.com/

For OpenAI

export OPENAI_API_KEY='your-api-key-here'

For Ollama (Local, Free)

# Install Ollama from https://ollama.ai
ollama pull phi
ollama serve

๐Ÿ’ป Usage

Basic Commands

# Analyze a single file
pluto scan -code app.py

# Analyze entire directory
pluto scan -dir ./src --report pdf --output security_report

# Analyze GitHub repository
pluto scan -git https://github.com/user/repo --provider claude

# Use local AI (Ollama)
pluto scan -code app.py --provider ollama --model phi

# Filter by severity
pluto scan -dir ./src --min-severity HIGH

Command Options

Options:
  -code, --code-file PATH         Analyze a single code file
  -dir, --directory PATH          Analyze entire directory
  -git, --git-repo TEXT           Analyze GitHub repository
  --provider [claude|openai|ollama]  AI provider (default: claude)
  --model TEXT                    Model name
  --report [terminal|pdf|json|markdown]  Report format (default: terminal)
  --output TEXT                   Output file name
  --min-severity [LOW|MEDIUM|HIGH|CRITICAL]  Minimum severity level
  --help                          Show this message and exit

๐Ÿ“š Examples

Quick Security Scan

pluto scan -code myapp.py

Full Project Audit

pluto scan -dir ./backend --provider claude --report pdf --output project_audit

GitHub Repository Analysis

pluto scan -git https://github.com/user/vulnerable-app --report json

Local Private Scan

pluto scan -code sensitive_code.py --provider ollama --model phi

CI/CD Integration

pluto scan -dir ./src --report json --output results.json --min-severity HIGH

๐Ÿ“Š Report Formats

  • Terminal: Colorful, real-time output with severity highlighting
  • PDF: Professional report with logo, charts, and detailed findings
  • JSON: Machine-readable format for automation and CI/CD
  • Markdown: Documentation-friendly format

๐ŸŽจ Supported Languages

Python โ€ข JavaScript โ€ข TypeScript โ€ข Java โ€ข C/C++ โ€ข Go โ€ข Rust โ€ข PHP โ€ข Ruby โ€ข Swift โ€ข Kotlin

๐Ÿ”ง Configuration

Create a .plutorc file in your project root:

provider: claude
model: claude-sonnet-4-20250514
min_severity: MEDIUM
report_format: pdf
output_dir: ./security-reports

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ‘จโ€๐Ÿ’ป Author

0xSaikat

๐Ÿ™ Acknowledgments

  • Powered by Claude (Anthropic), OpenAI, and Ollama
  • Built with โค๏ธ for the security community

โš ๏ธ Disclaimer

Pluto is a security analysis tool intended for educational and legitimate security testing purposes only. Always ensure you have permission before scanning code or repositories you don't own.


Made with ๐Ÿ›ก๏ธ by 0xSaikat | hackbit.org

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

pluto_ai-1.0.0.tar.gz (88.9 kB view details)

Uploaded Source

Built Distribution

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

pluto_ai-1.0.0-py3-none-any.whl (43.4 kB view details)

Uploaded Python 3

File details

Details for the file pluto_ai-1.0.0.tar.gz.

File metadata

  • Download URL: pluto_ai-1.0.0.tar.gz
  • Upload date:
  • Size: 88.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for pluto_ai-1.0.0.tar.gz
Algorithm Hash digest
SHA256 c9fa9bf11cb67d9bfec256fe5c7bfc135162c2b9dac53547e8a5cd73b1401ba8
MD5 70898c088fe9d5cf7b73a81c3c4e6187
BLAKE2b-256 f092d36d5c006c7d4903034855a94f96461eedf741fe206458a2a72dbc1311cc

See more details on using hashes here.

File details

Details for the file pluto_ai-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pluto_ai-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 43.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for pluto_ai-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f493615115e62f98fee612fc8b3981ecb7b4c8db9e9c3eea3971891e2901b5ff
MD5 7bb8a4812bc968c05b32c34ac4cb10c9
BLAKE2b-256 a4c0992ed8da0c4e2464a4a9c860a12feade7974ab2cdaa416f6f1e91059fe2e

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