Agents - Agents SDK now supports the latest Pi 1.4 release
- Announced
- Tags
- Agents
- Severity
- info, set by
reef/rss-rule-v1 - Source
- https://developers.cloudflare.com/changelog/post/2026-10-22-pi-harness-pi-1-4/
<p>Agents SDK v0.30.0 runs <a href="https://developers.cloudflare.com/agents/harnesses/pi/"><code>PiHarness</code></a> on <a href="https://github.com/earendil-works/pi/blob/v1.4.0/packages/durable/CHANGELOG.md#140---2026-10-21" target="_blank" rel="noopener">Pi 1.4<span class="external-link"> ↗︎</span></a>, and makes it recover more reliably from evictions, crashes, and storage errors.</p> <ul> <li><strong>Hibernation while Pi's tasks sleep.</strong> <code>PiHarness</code> passes Pi's new <code>onWake</code> callback to your harness factory. While a task sleeps, such as during a model retry backoff, the Durable Object can hibernate until the task is due instead of staying in memory.</li> <li><strong>Parked tasks.</strong> Pi 1.4 parks a task that keeps crashing the object instead of restarting it forever. Parked operations show as <code>parked</code> in <code>pending()</code>, and <code>session.retry()</code> runs them again.</li> <li><strong>Recovery from storage errors.</strong> <code>PiHarness</code> reopens Pi after a storage error instead of failing every call until the object restarts. Its wake-up job retries failed steps with a backoff instead of being dropped.</li> <li><strong>Retried model streams.</strong> <code>agents/models/pi-ai</code> reports a cut-off or idle model stream as a transient error, so Pi retries the turn instead of failing it.</li> </ul> <div tabindex="-1" class="heading-wrapper level-h4"><h4 id="upgrade">Upgrade</h4><a class="anchor-link" href="#upgrade"><span aria-hidden="true" class="anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span></a></div> <p>The <a href="https://github.com/cloudflare/agents/blob/main/packages/agents/CHANGELOG.md#0300" target="_blank" rel="noopener">Agents SDK v0.30.0 changelog<span class="external-link"> ↗︎</span></a> has step-by-step upgrade instructions. Point your coding agent at them and upgrade today:</p> <button type="button" data-nb-button class="group inline-flex w-max shrink-0 items-center justify-center rounded-full font-medium whitespace-nowrap no-underline shadow-xs transition-colors select-none focus-visible:outline-2 focus-visible:outline-ring focus-visible:outline-offset-2 disabled:cursor-not-allowed disabled:opacity-50 bg-card text-foreground ring ring-border hover:bg-accent hover:ring-border-strong h-10 gap-2 px-4 text-sm copy-prompt-btn group/copy cursor-copy" data-prompt="Upgrade my Pi harness agent to Agents SDK v0.30.0 and Pi 1.4 by following the upgrade steps at https://github.com/cloudflare/agents/blob/main/packages/agents/CHANGELOG.md#0300. Refer to https://developers.cloudflare.com/agents/harnesses/pi/ for the current PiHarness API." data-tooltip="Upgrade to Pi 1.4"><span class="inline-flex items-center gap-2.5 text-base font-medium"><span class="relative flex h-5 shrink-0 items-center justify-start gap-[3px]" aria-hidden="true"><img src="https://developers.cloudflare.com/icons/agents/claude/light.svg" alt="" class="block h-5 w-5 dark:hidden" loading="lazy" decoding="async"><img src="https://developers.cloudflare.com/icons/agents/claude/dark.svg" alt="" class="hidden h-5 w-5 dark:block" loading="lazy" decoding="async"><img src="https://developers.cloudflare.com/icons/agents/codex/light.svg" alt="" class="block h-5 w-5 dark:hidden" loading="lazy" decoding="async"><img src="https://developers.cloudflare.com/icons/agents/codex/dark.svg" alt="" class="hidden h-5 w-5 dark:block" loading="lazy" decoding="async"><img src="https://developers.cloudflare.com/icons/agents/cursor/light.svg" alt="" class="block h-5 w-5 dark:hidden" loading="lazy" decoding="async"><img src="https://developers.cloudflare.com/icons/agents/cursor/dark.svg" alt="" class="hidden h-5 w-5 dark:block" loading="lazy" decoding="async"><img src="https://developers.cloudflare.com/icons/agents/opencode/light.svg" alt="" class="block h-5 w-5 dark:hidden" loading="lazy" decoding="async"><img src="https://developers.cloudflare.com/icons/agents/opencode/dark.svg" alt="" class="hidden h-5 w-5 dark:block" loading="lazy" decoding="async"></span><span class="group-data-[copied=true]/copy:hidden">Copy prompt</span><span class="hidden group-data-[copied=true]/copy:inline">Prompt copied!</span></span></button><script type="module" src="https://developers.cloudflare.com/home/runner/work/cloudflare-docs/cloudflare-docs/src/components/CopyPromptButton.astro?astro&type=script&index=0&lang.ts"></script> <p>Pi 1.4 migrates the session storage in the object's SQLite database to a schema that Pi 1.3 cannot open, so a deployment cannot roll back past this upgrade. Refer to the <a href="https://github.com/earendil-works/pi/blob/v1.4.0/packages/durable/CHANGELOG.md#140---2026-10-21" target="_blank" rel="noopener">Pi Durable 1.4.0 changelog<span class="external-link"> ↗︎</span></a> for Pi's own breaking changes.</p>
The text above is the source's. reef added the severity, the dates it could read from the text, and the endpoints and scopes named in code.