Provely finds LangChain, LangGraph, LlamaIndex, OpenAI Agents, Vercel AI, OpenAI SDK, Anthropic SDK by itself, in TypeScript and Python. You add two lines. You write no guard call and import no adapter.

agent.ts
import { Provely } from '@provely/sdk';

new Provely();
agent.py
from provely import Provely

Provely()

Each plugin loads only when its package is present. The core holds no framework code, so an app pays only for the framework it uses.

What did the grid measure?

The grid runs the same failure cases on 15 paths, in 4 columns. Each column is one language, for the frameworks or for the plain SDKs.

A case passes in a column only when it passes on every path of that column.
ColumnPathsPassFailNot countedNot applicableHead
TypeScript frameworksLangChain, LangGraph, LlamaIndex, OpenAI Agents, Vercel AI generateText, Vercel AI streamText27 of 27 (1 passes under guard_mode: enforce; observe records only; rules cases not yet measured)00082acaae6
Python frameworksLangChain, LangGraph, LlamaIndex, OpenAI Agents26 of 27 (1 passes under guard_mode: enforce; observe records only; rules cases counted apart)1009f9131ba
TypeScript plain SDKsOpenAI Chat Completions, OpenAI Responses, Anthropic Messages24 of 27 (1 passes under guard_mode: enforce; observe records only; rules cases not yet measured)300d1aa85ea
Python plain SDKsOpenAI Chat Completions, Anthropic Messages23 of 27 (1 passes under guard_mode: enforce; observe records only; rules cases not yet measured)400d1aa85ea

A fail is a case that did not pass on at least one path. "Not counted" is a case where the framework coped alone and Provely made no fix, so it is not a pass. An inapplicable case is left out of the total.

The invented-value case passes under guard_mode: enforce; observe records only. Under observe, the default, Provely records the value and the write runs.

Measured on 2026-10-17 at commit 82acaae6. Measured on 2026-10-17 at commit 9f9131ba. Measured on 2026-10-17 at commit d1aa85ea.

Source: tests/zero-code grid · retrieved 2026-10-17

Which rules cases pass?

Python frameworks, at commit d4fe6faf, 2026-10-17. A case passes only when it passes on every path.
Casepy/langchainpy/langgraphpy/llamaindexpy/openai-agents
ZC-PLAN-01passpasspasspass
ZC-PLAN-02passpasspasspass
ZC-PLAN-03failfailpasspass
ZC-PLAN-04passpasspasspass
ZC-PLAN-05passpasspasspass
ZC-PLAN-06passpasspasspass

5 of 6 rules cases pass on every path.

Rules cases: not yet measured at the current heads. This holds for: TypeScript frameworks, TypeScript plain SDKs, Python plain SDKs.