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.1.0.tar.gz (98.5 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.1.0-py3-none-any.whl (54.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pluto_ai-1.1.0.tar.gz
  • Upload date:
  • Size: 98.5 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.1.0.tar.gz
Algorithm Hash digest
SHA256 03061a8f85fa4a0172711482c58389e7b6c393b8d5fdc8abfec2626df171720f
MD5 23454405c18ae52650694b7e572e910d
BLAKE2b-256 4d536c3311b22749a4c5b631705968ded7a8688054678e2cd5b99f090e92e484

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pluto_ai-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 54.0 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 51feb291d5c4311ad270fb19e95dfdc25188fad406875f5f5be8677c581895c2
MD5 874f1d4d6f56160d9d546328e29d5a42
BLAKE2b-256 21a342ac12c4cf33089af6520662c9c9c17c4830ec74d541cf12b7fcb277bf32

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