# Changelog (/docs/changelog)



The getpleach.com site changelog is **organized per
`@pleach/*` SKU** so readers can find the docs-side history for
the package they're using without scrolling past entries for
SKUs they don't ship. Each SKU page collects the site-content
changelog entries that materially touched that SKU's docs
surface — newest-first.

The per-SKU pages are not the runtime changelogs. The
canonical record of runtime behavior lives in the upstream
package `CHANGELOG.md` files and on each SKU's npmjs.org page.

If you'd rather read the chronological, multi-SKU narrative,
see the [combined view (legacy)](/docs/changelog/combined).

## Per-SKU pages [#per-sku-pages]

<Cards>
  <Card title="@pleach/core" href="/docs/changelog/core" description="Runtime substrate — SessionRuntime, plugin contract, audit ledger, hash chain, attestation." />

  <Card title="@pleach/tools" href="/docs/changelog/tools" description="Bundled tool definitions and registry helpers." />

  <Card title="@pleach/react" href="/docs/changelog/react" description="React adapter — useChat, ChatBox, createPleachRoute integration." />

  <Card title="@pleach/base-tools" href="/docs/changelog/base-tools" description="Base tool primitives the bundled tools build on." />

  <Card title="@pleach/replay" href="/docs/changelog/replay" description="Replay determinism — replayTurn, fromSnapshot, fork, hash-chain verifier." />

  <Card title="@pleach/sandbox" href="/docs/changelog/sandbox" description="Sandboxed code execution contract + in-memory fixture." />

  <Card title="@pleach/langchain" href="/docs/changelog/langchain" description="LangChain adapter — compose Pleach under an existing LangChain stack." />

  <Card title="@pleach/compliance" href="/docs/changelog/compliance" description="Scrubber bundles, redaction policies, profile-based compliance wiring." />

  <Card title="@pleach/compliance-contract" href="/docs/changelog/compliance-contract" description="Zero-dep contract sub-SKU breaking the core ↔ compliance type-graph cycle." />

  <Card title="@pleach/eval" href="/docs/changelog/eval" description="Eval harness — composes with @pleach/replay for offline behavior diffs." />

  <Card title="@pleach/gateway" href="/docs/changelog/gateway" description="Family-locked routing gateway — multi-tenant transport boundary." />

  <Card title="@pleach/mcp" href="/docs/changelog/mcp" description="Model Context Protocol integration — pluggable transports, initialize handshake." />

  <Card title="@pleach/coding-agent" href="/docs/changelog/coding-agent" description="Sandboxed coding-agent runtime — CodingAgentRuntime contract." />

  <Card title="@pleach/observe" href="/docs/changelog/observe" description="Brownfield audit-row SDK — Postgres, Supabase, OTel, Memory destinations." />

  <Card title="@pleach/recipes" href="/docs/changelog/recipes" description="Use-case-targeted factories — simpleChatbot, ragChatbot, compliantChatbot, and more." />
</Cards>

## Combined view [#combined-view]

<Cards>
  <Card title="Combined view (legacy)" href="/docs/changelog/combined" description="The original chronological, multi-SKU site-content changelog. Useful when you want to see what changed sitewide on a given date." />
</Cards>

## Format [#format]

Each per-SKU page follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
section conventions (`Added`, `Changed`, `Fixed`, etc.) under
dated headings. Newest entries appear first.

The mirror copy of the combined view at
[`/CHANGELOG.md`](https://github.com/pleachhq/getpleach/blob/main/CHANGELOG.md)
is the source of truth in the repo. When a site change tracks an
upstream pack, the entry cites the upstream commit so the linkage
is auditable.
