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.4.tar.gz (243.4 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.4-py3-none-any.whl (301.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for vibe2prod-1.5.4.tar.gz
Algorithm Hash digest
SHA256 8833aa14717d668c69050f7b07ebe1fa322107762245d6c3ac9433310449f1a5
MD5 6651dc0c3c8da2866a130b06ace064f1
BLAKE2b-256 74857dfb69f890bcbb3e77f7126378cefe8e8241a35d51dcdc8052b7338dd62e

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for vibe2prod-1.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 01610d8a3af7c9ee8768fec829dff8cf66c4f20b5a4c699e0005fc740af90ec4
MD5 289c0e95635d8695d61b868303ce7bee
BLAKE2b-256 6af4cb20ca3860bb623be9a0f14c1ffd57fa089a875f8bd6d403ffc0e37028dc

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