VectorLint is a content review harness that turns observable quality standards into measurable feedback for agents.
VectorLint reviews content against rules that describe observable traits. It returns structured, source-grounded findings and quality scores, giving agents repeatable signals they can use to revise content and review it again.
Install globally from npm:
npm install -g vectorlintVectorLint currently requires Node.js 20.6+.
Verify installation:
vectorlint --helpRun VectorLint without installing:
npx vectorlint path/to/article.mdDefine rules as Markdown files with YAML frontmatter. Each rule describes the observable traits that indicate content does not meet one of your standards.
Rules can identify prohibited terminology, unsupported claims, repetitive explanations, vague guidance, or other quality issues specific to your content.
VectorLint works best when each rule states what evidence counts as a finding instead of asking for a general judgment of whether the content is good.
👉 Learn how to create custom rules →
VectorLint turns review results into comparable quality signals. Agents can use those scores to measure whether revisions improve content across repeated review cycles.
For countable findings, VectorLint calculates scores from error density, or findings per 100 words. This makes results comparable across content of different lengths.
Every reported finding includes evidence from the reviewed content. VectorLint confirms that evidence can be located in the source and omits findings that cannot be grounded there.
Adjust finding sensitivity with:
CONFIDENCE_THRESHOLD=0.75- Default:
0.75 - Lower values surface more findings (higher recall, more noise)
- Higher values surface fewer findings (higher precision, fewer false positives)
If you want to review content against a single set of quality standards:
vectorlint init --quickThis creates a VECTORLINT.md file where you can define your quality standards.
Note: Before running a review, set up your credentials in either
~/.vectorlint/config.tomlor a local.envfile (see Step 3).
Then run:
vectorlint doc.mdFor a comprehensive setup (custom rule packs, specific targets), run:
vectorlint initThis creates:
- VectorLint Config (
.vectorlint.ini): Project-specific settings. - App Config (
~/.vectorlint/config.toml): Model provider API keys.
👉 Full configuration reference →
Open your global App Config (~/.vectorlint/config.toml) and uncomment the section for your preferred model provider (OpenAI, Anthropic, Gemini, or Azure).
[env]
LLM_PROVIDER = "openai"
OPENAI_API_KEY = "sk-..."Note: You can also use a local
.envfile in your project, which takes precedence over the global config.
Run a review:
vectorlint doc.mdVectorLint is bundled with a VectorLint preset containing rules for AI pattern detection, directness, and more. The init command configures this automatically.
👉 Learn how to create custom rules →
VectorLint can send model execution telemetry to Langfuse.
Add these environment variables to your global config or local .env file:
[env]
OBSERVABILITY_BACKEND = "langfuse"
LANGFUSE_PUBLIC_KEY = "pk-lf-..."
LANGFUSE_SECRET_KEY = "sk-lf-..."
# Optional for self-hosted Langfuse. Defaults to cloud.langfuse.com.
LANGFUSE_BASE_URL = "https://cloud.langfuse.com"Notes:
- Observability is non-blocking. If Langfuse setup fails, VectorLint continues without telemetry.
- Prompts and outputs are recorded when Langfuse observability is enabled.
- Do not send secrets, credentials, or PII unless your policy explicitly allows observability tooling to access that data.
VectorLint chooses a review strategy automatically. The default works for most content:
vectorlint doc.mdUse --model-call when you need to override that strategy for a particular
review. Choose single for normal, self-contained documents or agent for
large documents whose relevant context spans multiple sections.
See Model calls for selection guidance and examples.
We welcome your contributions! Whether it's adding new rules, fixing bugs, or improving documentation, please check out our Contributing Guidelines to get started.
- Creating Rules - Define observable quality standards in Markdown
- Configuration Guide - Complete reference for
.vectorlint.ini
