Skip to main content

Redline

Compliance documentation linter with deterministic, regulation-traceable rules. Every flag traces to a specific rule, which traces to a specific regulation paragraph. Zero LLM cost at runtime. Runs locally.

Upload 200 internal policy docs to ChatGPT? That violates your DLP policy. Run Redline locally instead.

The Problem

Compliance teams review documents manually. $200-$500/hour. Inconsistent. Slow. LLM-based review is non-deterministic, produces no audit trail, and creates DLP risk when documents contain sensitive information.

Redline generates deterministic rules from regulations once (LLM reads the regulation, outputs regex/keyword/structural rules). Those rules run in milliseconds on every document thereafter. Each flag is traceable to a regulation paragraph. Auditors can verify the rule set. Compliance teams get consistency.

How It Works

[Regulation text]
    -> redline generate (LLM reads regulation once)
    -> Deterministic Vale rules (regex, keywords, structural checks)
    -> Human review + version tag
    -> redline lint (runs in milliseconds, zero LLM cost)
    -> Findings traceable to regulation paragraphs

Install

pip install redline-compliance

Requires Vale installed separately.

Quick Start

# Lint a document against all loaded regulations
redline lint policies/aml-policy.md

# Lint with AI semantic analysis (BYOK, optional)
redline lint policies/aml-policy.md --ai

# Generate rules from a new regulation
redline generate regulation-text.md --id SOC2 --authority AICPA

# Generate a gap report
redline report policies/aml-policy.md --format json

# Browse available regulations
redline regulations list

# Initialize config
redline init

Supported Regulations

Regulation Rules Domain
BSA/AML 6 rules Financial crime
SEC Marketing Rule 6 rules Investment advisors
FINRA Communications 5 rules Broker-dealers
SOX Section 404 5 rules Internal controls
SOC2 Trust Services 10 rules Security/compliance
GDPR 10 rules Data protection

Plus common quality rules (plain language, sentence length, date formats, passive voice).

Rule Generation Pipeline

The differentiator: LLM generates rules, rules run deterministically.

# Point at any regulation text
redline generate hipaa-security-rule.md --id HIPAA --authority HHS

# Preview without writing files
redline generate hipaa-security-rule.md --id HIPAA --dry-run

# Output:
#   vale-packages/FinCompliance/HIPAAVagueAccessControls.yml
#   regulations/hipaa/hipaa.yml
#   regulations/hipaa/hipaa_audit_trail.json

Each generated rule set includes:

  • Vale rule files — deterministic, run in milliseconds
  • Regulation YAML — maps rules to requirements with paragraph references
  • Audit trail — which model generated which rule, when, from what source

Audit Trail

Every finding is traceable:

Finding: "adequate controls" flagged at line 47
  Rule: FinCompliance.SOC2VagueAccessControls
  Requirement: SOC2-CC6-01
  Regulation: SOC 2 Trust Services Criteria, CC6.1
  Authority: AICPA
  Severity: error
  Source: deterministic (confidence: 1.0)

An auditor can verify: the rule exists, it maps to CC6.1, and the token matched. No black box.

Architecture

redline/
├── cli/redline/
│   ├── cli.py          # Typer CLI: lint, report, generate, regulations, init
│   ├── runner.py       # Vale subprocess orchestrator + finding mapper
│   ├── generator.py    # LLM-to-Vale rule generation pipeline
│   ├── ai.py           # BYOK Claude semantic analysis (optional)
│   ├── registry.py     # Regulation YAML loader + Vale rule index
│   ├── report.py       # Gap report generation (JSON, Markdown)
│   └── config.py       # .redline.yml config loader
├── vale-packages/FinCompliance/  # 42+ Vale rules
├── regulations/                   # YAML requirement definitions
│   ├── bsa-aml/                  # BSA/AML, CDD, CTR, SAR
│   ├── sec/                      # SEC Marketing Rule
│   ├── finra/                    # FINRA Communications
│   ├── sox/                      # SOX Section 404
│   ├── soc2/                     # SOC2 Trust Services (NEW)
│   └── gdpr/                     # GDPR (NEW)
├── regulations-source/           # Source regulation texts
├── fixtures/                     # Test documents (passing + failing)
└── tests/                        # 49 tests

AI Semantic Analysis (Optional)

For requirements that can't be checked with patterns (e.g., "does this risk assessment methodology cover all required areas?"), Redline uses BYOK Claude with:

  • 7 structured prompts per regulatory domain
  • Confidence gating (default 0.7 threshold)
  • Hallucination rejection (quoted text must appear in document)
  • Findings marked as source: ai with confidence scores
export ANTHROPIC_API_KEY=sk-...
redline lint policies/aml-policy.md --ai

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

redline_compliance-0.2.0.tar.gz (64.9 kB view details)

Uploaded Source

Built Distribution

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

redline_compliance-0.2.0-py3-none-any.whl (19.8 kB view details)

Uploaded Python 3

File details

Details for the file redline_compliance-0.2.0.tar.gz.

File metadata

  • Download URL: redline_compliance-0.2.0.tar.gz
  • Upload date:
  • Size: 64.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for redline_compliance-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6cc8566740bce82af875d92594ff77bbaab6925f190b3cf8d901c64787685468
MD5 e3bfdd17730cfe60d86f51871a5c13b9
BLAKE2b-256 8f08a17afb7924dbf90fc9ae6f7753352619fc20c5093d78af0181cbc9fa05e0

See more details on using hashes here.

File details

Details for the file redline_compliance-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for redline_compliance-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6c3fc5376a69c08ffe66d74543bb7842d6e463c4e07b03bf266e50c0d267a79b
MD5 87f355df8feb882ffbc34d4210bfff2d
BLAKE2b-256 48ba34c95416bb81d762133efed51fd87893aec0854f1d794ebf2c73c4a1257a

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.0

2 files

This release

0.2.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page