Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,10 @@
# Search Provider Configuration

# SEARCH_PROVIDER=perplexity
# PERPLEXITY_API_KEY=pplx-0000000000000000
# PERPLEXITY_API_KEY=pplx-0000000000000000

# Observability Configuration (optional)
# OBSERVABILITY_BACKEND=langfuse
# LANGFUSE_PUBLIC_KEY=pk-lf-0000000000000000
# LANGFUSE_SECRET_KEY=sk-lf-0000000000000000
# LANGFUSE_BASE_URL=https://cloud.langfuse.com
18 changes: 18 additions & 0 deletions CONFIGURATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,24 @@ SEARCH_PROVIDER=perplexity
PERPLEXITY_API_KEY=pplx-...
```

### Observability

VectorLint can optionally emit AI execution telemetry to Langfuse. The first implementation is scoped to the Vercel AI SDK calls made through `VercelAIProvider`.

**Example configuration for Langfuse:**

```bash
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
```

- Observability is best-effort and non-blocking.
- If initialization or shutdown fails, VectorLint logs a warning and continues.
- Prompts and outputs are recorded when Langfuse observability is enabled.

### False-Positive Filtering (PAT)

VectorLint uses PAT (Pay A Tax) style gate checks to reduce false positives. The model may return many raw candidates, but only candidates that pass deterministic gate checks are surfaced in CLI output.
Expand Down
22 changes: 22 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ Install globally from npm:
npm install -g vectorlint
```

VectorLint currently requires Node.js `20.6+`.

Verify installation:

```bash
Expand Down Expand Up @@ -123,6 +125,26 @@ VectorLint is bundled with a `VectorLint` preset containing rules for AI pattern

👉 **[Learn how to create custom rules →](./CREATING_RULES.md)**

### 4. Optional: Enable Langfuse observability

VectorLint can emit AI execution telemetry through Langfuse without hardcoding Langfuse into the provider layer. This is best-effort instrumentation for the Vercel AI SDK calls used by `VercelAIProvider`.

Add these environment variables to your global config or local `.env` file:

```toml
[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.

## Agent Mode

Agent mode is for reviews that need context from several files such as
Expand Down
Loading
Loading