Skip to main content

AI-powered code audit and remediation. Turns vibe-coded MVPs into production-ready software.

Project description

FORGE

Framework for Orchestrated Remediation & Governance Engine

AI-powered codebase audit engine. 3 LLM agents + Opengrep SAST + 47 deterministic checks. ~$0.21 per scan.

Quick Start

# Install
pip install vibe2prod

# Scan a repo (code stays local — only LLM API calls leave your machine)
vibe2prod scan ./my-app

# Register as MCP server in Claude Code
claude mcp add forge -e OPENROUTER_API_KEY=your-key -- python -m forge.mcp_server

Get an OpenRouter API key at openrouter.ai (free signup). Scans also work without a key (Opengrep-only mode, no LLM agents).

The /forge Skill

After scanning, use the /forge skill in Claude Code to autonomously fix findings. It reads the scan report, prioritizes issues, and applies fixes with micro-commits.

Full CLI documentation: vibe2prod.net/cli

Architecture (v3)

Step 1: Codebase Analyst (LLM)     Map architecture, entry points, auth flows, data structures
   |
Step 2: Opengrep SAST              49 custom rules + community rules (deterministic)
   |
Step 3: Security Auditor (LLM)     3 parallel passes against OWASP ASVS rubric
   |
Step 4: Fix Strategist (LLM)       Prioritized remediation plan with dependencies
   |
Step 5: Evaluation (deterministic)  47 checks across 7 dimensions → composite score + quality gate
   |
Post:   Fingerprint → Calibrate → Suppress → Baseline → Report

Agents

# Agent Model LLM Calls Role
1 Codebase Analyst MiniMax M2.5 1 Map architecture, files, dependencies
2 Security Auditor Haiku 4.5 3 (parallel) OWASP ASVS security scan (auth, data, infra)
3 Fix Strategist Haiku 4.5 1 Prioritize findings, create execution plan

Total: 5 LLM calls per scan.

Evaluation (Zero LLM Cost)

47 deterministic checks across 7 dimensions:

Dimension Weight Checks
Security 30% 12 (OWASP Top 10, injection, secrets, etc.)
Reliability 20% 7
Maintainability 15% 5
Test Quality 15% 7
Performance 10% 5
Documentation 5% 6
Operations 5% 5

Produces a composite score with band ratings: A (80+), B (60-79), C (40-59), D (20-39), F (0-19). Same code always produces the same score.

CLI

vibe2prod scan ./repo              # Full pipeline
vibe2prod report ./repo            # View last report
vibe2prod status ./repo            # Real-time progress
vibe2prod config set/get           # Configuration
vibe2prod setup                    # Interactive setup + Claude Code MCP registration
vibe2prod update                   # Self-update + skill/hook sync

SDK

from forge.standalone import run_standalone

result = await run_standalone(
    repo_path="./my-app",
    config={"mode": "full", "quality_gate_profile": "forge-way"}
)
print(result.total_findings, result.evaluation["scores"]["composite"])

Key Features

Finding Management

  • Content-based fingerprinting (SHA-256) for stable finding identity across scans
  • Cross-scan baseline tracking with delta reports (new/recurring/fixed/regressed)
  • .forgeignore suppression system (YAML v2 schema) with pattern matching, expiry dates, and audit trail
  • Severity calibration: OWASP boost, architecture cap, confidence weighting

Quality Gates

  • Configurable profiles: forge-way (default), strict, startup
  • Pass/fail against thresholds (critical/high/medium counts)
  • AIVSS scoring for agentic AI risk assessment (OWASP AIVSS v0.5)
  • OWASP ASVS level mapping, STRIDE threat coverage, NIST SSDF compliance

Reporting

  • HTML, JSON, and text report formats
  • Real-time status tracking (live_status.json)
  • Cost and time budgeting with circuit breakers
  • Webhook event emission for CI/CD integration

Configuration

config = {
    "mode": "full",                    # full | discovery
    "models": {
        "default": "anthropic/claude-haiku-4.5",
        "analyst": "minimax/minimax-m2.5",
    },
    "quality_gate_profile": "forge-way",  # forge-way | strict | startup
    "enable_parallel_audit": True,
    "opengrep_enabled": True,
    "max_cost_usd": 0.50,             # Cost budget (0 = no limit)
    "max_duration_seconds": 600,       # Time budget (0 = no limit)
}

Model resolution: built-in defaults → models.defaultmodels.<role>

Requirements

  • Python 3.10+
  • OpenRouter API key (optional — Opengrep-only mode works without one)

Project Structure

forge/
├── cli.py                    # Typer CLI: scan, report, status, config, setup
├── standalone.py             # run_standalone() — primary SDK entry point
├── phases.py                 # Pipeline orchestration
├── mcp_server.py             # MCP server (forge_scan, forge_status tools)
├── config.py                 # ForgeConfig + model routing
├── schemas.py                # Pydantic models: Finding, ForgeResult, etc.
├── reasoners/
│   └── discovery.py          # Codebase Analyst + Security Auditor
├── prompts/                  # Agent prompt templates (OWASP ASVS rubric)
├── execution/
│   ├── opengrep_runner.py    # Opengrep SAST integration
│   ├── fingerprint.py        # SHA-256 content-based finding IDs
│   ├── baseline.py           # Cross-scan delta comparison
│   ├── forgeignore.py        # .forgeignore parser + suppression matching
│   ├── severity.py           # Severity calibration
│   ├── quality_gate.py       # Pass/fail gate
│   └── report_rendering.py   # HTML/JSON report generation
├── evaluation/
│   ├── dimensions.py         # 7-dimension scoring + weights
│   ├── checks/               # 47 deterministic checks
│   ├── compliance.py         # OWASP ASVS/STRIDE/NIST mapping
│   └── aivss.py              # OWASP AIVSS scoring
├── rules/                    # 49 custom Opengrep YAML rules
└── graph/                    # Tree-sitter AST analysis

Part of Vibe2Prod

FORGE is the audit engine behind vibe2prod.net. The web platform adds a dashboard, GitHub integration, team management, and wallet-based billing on top of this engine. Source: christopher-igweze/vibe2prod.

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

vibe2prod-1.5.1.tar.gz (242.6 kB view details)

Uploaded Source

Built Distribution

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

vibe2prod-1.5.1-py3-none-any.whl (299.0 kB view details)

Uploaded Python 3

File details

Details for the file vibe2prod-1.5.1.tar.gz.

File metadata

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

File hashes

Hashes for vibe2prod-1.5.1.tar.gz
Algorithm Hash digest
SHA256 873512886c56f5f1487700d1eeb20b16714ed807d7bd163edce67da320add4be
MD5 671d155f171b19bce46c11ff29f482f4
BLAKE2b-256 12ca50eaea8d5783cce74db0686f023250cc395ee9f51b4ccc25a283548aa9bc

See more details on using hashes here.

File details

Details for the file vibe2prod-1.5.1-py3-none-any.whl.

File metadata

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

File hashes

Hashes for vibe2prod-1.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c468b8bf759b7d88ca2dfda61db00cc8b08c9ef1951af9ca745d84c62b150dba
MD5 7ce7b58ee0dfb0fbc1c319e79a968507
BLAKE2b-256 cc59fe613022c19a849b3615fcee12e9c714ebc231d073aabb437d0789b9d401

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