Nine package families · PHP reference · TypeScript + Python ports · v0.138.0
Prism is a cross-language provider API ecosystem. PHP and Laravel are the mature reference implementation across eighteen providers; TypeScript and Python carry the same contract, measured against one shared corpus. Build agents that carry conversations across requests, recall relevant context, and work with files, browsers and shared interfaces.
PHP / Laravel reference
Prism Harness · separate package
Laravel workers boot, serve, and disappear. Harness reconstructs durable sessions from storage, so a later request—or a different queue worker—finds the same thread, selected mode and model, and run state.
Address a session by participant and scope; no long-lived PHP object required.
Recover conversation history and session state in a fresh worker.
Serialize overlapping work; one run finishes before the next starts, and a timeout throws.
Record the complete exchange, including every tool step, for faithful replay.
New satellite capabilities
Browser and Human+ bind attachments to the same durable Harness identity, so a page an agent opened and a document a human approved resolve to one thread and one owner. Add either to a running application and existing sessions keep their history.
Nine families · one boundary
Bring durable sessions, memory, file workspaces and connected tools to your application. Apply provider fixes as they ship while keeping those capabilities in place.
One contract · more languages
TypeScript and Python ports implement every capability the PHP reference has — text, structured output, streaming, embeddings, media, audio and more — across Anthropic, Mistral and OpenAI. Both install from their own registry.
TypeScript
Node 20+, strict types, native promises.
Python
Python 3.10+, zero runtime dependencies.
prism-parity keeps the shared behavior measurable: one language-independent corpus runs the same fixture through all three languages and compares the bytes, and its manifest is built to admit the next port.
Capabilities
01
One request shape across 18 providers — Anthropic, OpenAI, Gemini, Ollama and more. Switch provider, keep your application code.
02
A chainable, Laravel-native interface for prompts, system messages, conversations, and multi-step generation.
03
Define typed tools the model can call — with automatic argument coercion, error handling, and multi-step loops.
04
Schema-validated responses mapped to type-safe objects, with native JSON Schema support per provider.
05
First-class streaming events, the Batches API for bulk workloads, and provider file management.
06
Fake any provider response, assert on requests, and ship AI features with a green test suite.
08NEW
Provider-agnostic withReasoning(), Anthropic adaptive thinking with output effort, and reasoning-token visibility in every Usage.
09NEW
Point the OpenAI provider at vLLM, LiteLLM, or any compatible backend via api_format — or route through OpenRouter and Requesty.
10NEW
Opt-in lifecycle events for every generation — token usage, cost, latency, and step/tool spans. Subscribe a Laravel listener for cost tracking, or drop in the OpenTelemetry bridge for traces in Arize Phoenix and any OTLP backend.
The fork
Keep building on Prism with maintained provider integrations and tested fixes. The [un]official takeover carries the project forward after its original maintainers went quiet in March 2026.
0.138.0
current core release
18
providers supported
1,800+
tests, phpstan clean
Pparticle-academy/prism is a drop-in replacement for prism-php/prism — the Prism\Prism namespace is unchanged. Security-patched, actively released, and documented right here, always in sync with the installed version.