Follow the path from input to impact.

Rowan analyzes source code, dependencies, and model artifacts together. It follows data through code paths, identifies AI-specific security patterns, and shows the evidence behind each finding.

One report. Several kinds of evidence.

A pattern match is useful as a lead. A computed flow tells a different story. Rowan distinguishes them in the finding, so reviewers know where to start.

01

Trace dangerous flows

Opengrep supplies within-file dataflow. Rowan adds cross-file tracing for Python and JavaScript/TypeScript, with a bounded Go request-to-command and SQL path.

02

Read AI-specific surfaces

Rules cover model deserialization, agent tools, LLM output passed into dangerous APIs, prompt handling, and insecure framework configuration.

03

Check dependencies

Known package advisories are enriched with function-level reachability signals and exploit-probability data to help prioritize review.

04

Inspect model files

Static checks examine pickle-based checkpoints and other model formats for executable or suspicious content without loading the model.

See what supports a finding.

Findings carry an evidence tier, from a pattern-only lead to a computed taint flow. The default view emphasizes actionable items; an audit view retains the full set. Export to SARIF, JSON, HTML, or text, with baseline support for existing codebases.

Example evidence path

  1. Source Request parameter enters a route
  2. Propagation Value passes to a helper in another file
  3. Sink Helper calls a network client with that value

Illustrative flow. A finding still needs human review in the application’s context.

Built to be inspected and extended.

Rowan is MIT-licensed and public as an alpha. Install it from PyPI as rowan-sast. It uses Opengrep as its analysis engine, which rowan install-engine downloads and checks against a pinned hash.

pipx install rowan-sast
rowan install-engine
rowan scan ./your-project
Local CLIScan source on your machine or in CI.
Standard outputSARIF, JSON, HTML, and text, plus a GitHub Action for code scanning.
Optional LLM reviewrowan hunt works with a local model or a cloud key.