Releases: wenkang-xie/pie-ai-agent
Release list
v1.3.1 — Separate-window setting can be turned back off
v1.3.1 — Separate-window setting can be turned back off
A fix for the separate-window mode added in v1.3.0.
Fixes
- Turning off "Open Pie in a separate window" now works. Once you opened Pie in its own window from the right-click menu, unticking the setting had no effect — every later toolbar click still opened a window. Forcing window mode also recorded that this browser can't show a side panel, and that verdict outlived the setting, so Pie never tried the side panel again. Switching back to automatic now clears it and re-checks on the next click. The reverse direction is fixed too: on browsers with a working side panel, turning the setting on from the settings page had no effect either, because the browser was still handling toolbar clicks itself.
v1.3.0 — Runs in more browsers, cheaper on long tasks
v1.3.0 — Runs in more browsers, cheaper on long tasks
This release gets Pie working in Chromium browsers where the side panel never showed up (Arc, most visibly), makes long multi-step tasks noticeably cheaper by keeping the model's prompt cache warm, adds a per-provider rate limit so you stop hitting your provider's ceiling mid-task, and puts a one-click problem report under the agent's replies.
Works in browsers without a working side panel
Some Chromium browsers accept Chrome's side-panel API but never actually display the panel — the call succeeds, and nothing appears. Pie now measures whether the panel really showed up instead of trusting the API's answer, and falls back to opening the same panel in its own window docked to the right edge of your browser window.
- Automatic, with a manual override — Pie sets the mode itself when it detects the problem. You can force either mode from the extension's right-click menu or Settings → Open Pie in a separate window; your choice always wins over detection.
- One panel per browser window, and a running task survives the panel losing focus.
- Chrome behavior is unchanged.
Long tasks cost less
Long-running tasks were re-sending context the provider could have served from cache. Three changes together lift the cache hit rate substantially on multi-step work:
- Prompt-cache breakpoints for the Anthropic-wire providers (Claude, DeepSeek, MiniMax, MiMo), so repeated context is billed at cache-read rates instead of full input rates.
- No more sliding history window — trimming the front of the history invalidated the cache on every turn, which cost more than the tokens it saved.
- Slimmer page reads —
read_pagewas spending most of a page snapshot on interactive-control markup. That payload is much smaller now, which shrinks every turn that follows it.
Rate limit control
- Requests per minute, per instance — set your provider's limit in the instance settings (empty means unlimited). When the limit is reached, requests queue and wait instead of failing, and the chat shows a countdown while Pie waits.
- Model list rows in provider settings are now proper rows with clearer per-model information.
Report a problem from the chat
- A report icon appears under the agent's last reply. It opens a drawer where you can describe what went wrong and send the report with the conversation attached — prompts, tool calls, and tool results — so the failure can actually be traced.
- What gets sent is spelled out in the drawer and in PRIVACY.md: the transcript includes page content the agent read during the task. Nothing is sent unless you press send.
- The old
report_issueskill, which asked you to paste details into a public GitHub issue by hand, is gone — this replaces it.
Context card rework
- The ring now shows context size, not cost. It previously read from the provider's raw input-token count, which excludes cached tokens on Anthropic-wire providers — at a 90% cache hit the ring showed a tenth of your real context.
- Cache hit rate for the session is shown below the total. Per-call ratios were misleading: the turn that reads a page always dips, which looked like a bug.
- An explainer next to the title covers why context shrinks after a task finishes — intermediate steps are replaced by a summary.
Fixes
open_urlno longer fails on cross-origin redirects — a plain apex-to-wwwredirect (or any server-side redirect that lands on a different origin) was reported as a navigation failure even though the tab had opened fine, leaving the agent unable to focus it. Redirects are now followed, the tab is pinned at the origin it actually landed on, and the observation records both ends of the redirect.- Expired subscriptions get the full sign-up flow again — when a subscription or redeemed plan lapsed, the settings page dead-ended on "no active subscription" with a single monthly-checkout button. It now shows the same monthly/yearly choice, first-period discount, and redemption-code entry that new users see.
- Stopping a task no longer locks the pinned-tab dropdown — after you pressed stop (or the service worker was killed mid-task), the session kept its task-time tab pin and greyed out the entire dropdown, including the "Auto" row you would have used to unlock it. The dropdown is now disabled only while a task is actually running; the pin left behind by a stopped task stays put for follow-ups but can be changed at any time.
v1.2.3 — Custom rules, and OpenAI back on track
v1.2.3 — Custom rules, and OpenAI back on track
This release adds a Custom rules page so the agent follows your standing instructions on every task, moves the OpenAI provider onto OpenAI's current API so the newest GPT‑5.x models work with tools again, and clears out the last places where the interface ignored your language.
Custom rules
A new Settings → Custom rules page gives you one free‑text field for standing instructions — tone, preferred sites, formatting habits, anything you'd otherwise repeat at the start of every chat. The agent reads them at the start of each task and, within safety bounds, follows them over its defaults.
- Set once, applies everywhere — rules are snapshotted when a task starts, so every task begins with your preferences in place. Edits take effect from the next task.
- Safety bounds stay put — rules can't unlock anything the agent couldn't already do: page content stays untrusted, and permission prompts still go through the panel.
OpenAI provider
- GPT‑5.x works with tools again — OpenAI's newest models rejected requests that combined tools with reasoning on the old chat‑completions endpoint, which broke agent tasks outright. The provider now speaks OpenAI's Responses API, where reasoning and tools coexist, so gpt‑5.x models work out of the box. Other OpenAI‑compatible providers are unaffected.
Speaks your language
- Auto‑generated session titles now follow your assistant language instead of always coming out in Chinese.
- Stop summaries ("Task cancelled" and friends) now render in your interface language — and re‑render if you switch languages later, even for old sessions.
- Recording step rows are now stored language‑neutral and worded at display time, so already‑captured steps follow a language switch too.
Fixes & more
- Session titles no longer get stuck — a timing race sometimes silently skipped title generation, leaving sessions on the fallback "New session" style title. Titles now generate reliably.
- Changelog after big updates — after a minor or major version update, Pie opens the website changelog once so you can see what's new. Patch updates stay silent.
v1.2.2 — Exports that don't lose rows
v1.2.2 — Exports that don't lose rows
Scraping a few thousand rows and asking for a CSV used to mean the agent read every row back and retyped it into the file — slow, expensive, and rows went missing along the way. Now the file is written straight from the collected data. Plus a quieter chat transcript for long tasks.
Exports go straight to the file
When the agent has collected rows into its scratchpad, exporting them no longer routes the data back through the model. It names the collection and the file is written directly from what was collected.
- Nothing gets dropped or rewritten — thousands of rows export exactly as they were captured, instead of being retyped from memory.
- Faster, and much cheaper — the data no longer passes through the conversation twice, so a large export is a single step instead of many round trips.
- CSV by default, JSON on request — ask for a
.jsonfilename and you get a JSON array; anything else is CSV, with proper escaping for commas, quotes, and line breaks. - Columns stay aligned — fields added partway through a scrape still get their own column instead of being silently left out.
Chat
- One header per task — a long task used to stamp a new
AGENTheader after every step, chopping the transcript into dozens of look-alike sections. Now the header appears once when the agent starts working, and the rest of the run reads as one continuous reply.
v1.2.1 — Fresh model lineups
v1.2.1 — Fresh model lineups
Every built-in provider's model list has been re-checked against its official docs and brought up to date, so the model picker reflects what each provider actually serves today. Plus a smoother first connection for Pie Link and a PDF detection fix.
Updated model lists
The curated list each provider shows in the model picker was refreshed — newly released models added, retired ones removed, and a few stale context-window numbers corrected:
- Anthropic — the Claude 5 family (Opus 5, Fable 5, Sonnet 5) alongside Opus 4.8 and Haiku 4.5. Their context windows are now recorded as 1M rather than 200K, which had been quietly shrinking long conversations earlier than necessary.
- OpenAI — GPT-5.6 Sol, Terra, and Luna join GPT-5.5 and the GPT-4o line.
- Google Gemini — Gemini 3.6 Flash, 3.5 Flash, and 3.5 Flash-Lite join Gemini 2.5 Pro.
- Moonshot (Kimi) — Kimi K3 and K2.7-Code on the pay-as-you-go endpoint.
- Bailian (Qwen) — the Qwen3.7 line: Max, Plus (image input), and Flash, all at 1M context.
- Zhipu (GLM) — GLM-5.2.
- MiMo (Xiaomi) — the retired V2 models are gone; MiMo-V2.5-Pro is now correctly marked as accepting image input, so you can attach screenshots to it.
Models a provider has retired were dropped from the list. If you were using one, the picker will ask you to choose again — and if you need a model that isn't listed, you can still add it by hand as a custom model.
Pie Link
- First-connect troubleshooting — when Pie Link is installed but Chrome can't reach it, the settings page now walks you through what to check instead of just showing a failed state.
- Capability hints when disconnected — with Pie Link off, the agent now knows what it could do with it connected, so it can tell you when a task would benefit from turning it on rather than silently giving up.
Fixes
- PDFs served without a
.pdfin the URL are now detected properly, so PDF reading works on links that don't advertise their file type.
v1.2.0 — Pie Link debut
v1.2.0 — Pie Link debut
The headline: Pie Link, a signed & notarized macOS companion (pie-link.pkg, v0.1.0) that connects Pie to your machine — hand tasks off to local coding agents, run skill scripts as real local processes, and manage everything from a menu bar app. Plus a redesigned top bar & settings, full-fidelity data extraction, and a batch of agent-loop refinements.
Pie Link (macOS companion)
Install once from the settings page (or grab pie-link.pkg from this release), and Pie gains local superpowers:
- Hand off to local agents — send a task from the side panel straight into Claude Code, Codex, Cursor, OpenCode, or Pi, as an app or terminal session. Detection resolves real install paths, so it works even for CLIs living outside the default PATH.
- Skills live on disk — skills are stored under
~/.pie/skills/(aligned with the Agent Skills layout), with~/.agents/skillsmounted as a shared read-only root. First connection offers an import wizard for existing skills. - Skill scripts run for real — scripts bundled with a skill execute as local CLI processes inside a default sandbox (write-limited to a per-session workspace, network off by default). First run asks for your approval with a capability envelope card; grants can be reviewed and revoked in settings, alongside a recent-execution audit trail.
- Menu bar app — shows connection status, what's running now, and recent executions with a dedicated activity/log window.
- Safe versioning — the extension and daemon handshake on connect; if your installed Pie Link is older than the extension expects, you get a soft upgrade hint while features degrade gracefully by capability.
- Guided install — the settings page walks you through install states and links to the intro page at pie.chat/link.
Pie Link is optional: everything else in Pie keeps working without it.
Redesigned top bar & settings
- Single-column, context-aware top bar with pinned tabs on a secondary row.
- Settings reorganized into a root page + focused subpages; Skills promoted to a top-level section; icons unified on lucide.
- Pie's face got a life of its own — status animations for wake, listening, thinking, acting, and done.
- Human-in-the-loop cards (model pick, CDP, file access, skill grants) now share one visual system.
Data extraction
extract_records— batch-extract structured records from a page at full fidelity, straight into the session scratchpad: fields are captured automatically, scrolling loops are built in, and results are cleaned with SQL — no lossy LLM transcription in the middle.
Chat & agent loop
- Rewind & edit — jump back to any earlier message, edit it, and resend from that point.
- One-click copy of a model reply, formatting preserved.
- Feedback form in settings, with optional recent logs attached.
- Long waits:
waitcap raised to 300s and now honors abort. - The soft step budget became a neutral periodic checkpoint instead of pressure to wrap up.
- New tabs opened by a click are now surfaced to the model so it can follow.
Fixes & reliability
- Pinned-tab bar no longer disappears while a message is being sent (session-meta lost-update race).
- Micro-app iframes that never go idle no longer hang
read_page/actions. - Provider names in the model picker are properly localized.
v1.1.4 — Cross-tab recording, and chat anywhere
v1.1.4 — Cross-tab recording, and chat anywhere
A maintenance release headlined by cross-tab recording, plus reliability fixes
across recording and the agent loop.
Cross-tab recording & replay
Recordings now span multiple tabs. If your workflow opens a link in a new tab,
switches between tabs, or spreads work across several pages, the recorder
captures it and replay follows along — no longer confined to a single tab.
Recording capture also got more thorough:
- Shadow-DOM inputs are captured (typing into web-component fields).
- Code editors — Monaco, CodeMirror, and TinyMCE — are recognized as editors
rather than missed. - Step labels show in full instead of being truncated to one line.
Chat on restricted or blank pages
The agent no longer hard-stops at start when the active tab is a restricted page
(chrome://, the Web Store) or has no page at all. You can begin a chat
anywhere; the loop advises rather than blocks, and you steer from there.
Fixes & reliability
- Tab fail-over: if the focused tab closes mid-task, the loop falls over to a
surviving pinned tab instead of stalling. - Recording reconnect: fixed recordings going unresponsive after the service
worker idled out, by routing port traffic through a single resilient connection. - Tool error hints: when
type/clicklands on an editor or canvas, the
agent now gets an actionable hint so it can self-correct.
v1.1.2 — Subscribe straight from pie.chat
v1.1.2 — Subscribe straight from pie.chat
A small enhancement to the subscription flow. When Pie is installed, clicking
Subscribe on the pie.chat membership page now opens Pie's side panel
directly on the official-subscription screen — no more hunting through
Settings. Without the extension installed, the button still falls back to the
Chrome Web Store, exactly as before.
There are no other functional changes to the extension.
v1.1.1 — Store listing & documentation refresh
v1.1.1 — Store listing & documentation refresh
A maintenance release. The only packaged change is a refreshed Chrome Web
Store short description in all six languages — now leading with what Pie
does for you (read pages & PDFs, automate tabs, bring your own key or
subscribe) instead of implementation detail.
Everything else in this release is repository documentation brought in line
with current features: the READMEs rewritten around real use cases, the
privacy policy updated for the optional Pie Official subscription, the store
launch copy refreshed for all markets, and the architecture notes corrected.
There are no functional changes to the extension itself.
v1.1.0 — Pie Official subscription, scheduled tasks, and a redesigned UI
v1.1.0 — Pie Official subscription, scheduled tasks, and a redesigned UI
The first feature release after 1.0. The headline is Pie Official — if you'd rather not bring your own API key, you can now sign in with Google, subscribe, and chat through models Pie hosts for you. This release also adds scheduled tasks that run in the background, a rebuilt UI with motion throughout, Traditional Chinese, and an agent that loads its tools on demand.
Pie Official — use Pie without an API key
A new Official account type sits alongside Bring-Your-Own-Key. Sign in with Google, pick a plan, and start chatting — no provider setup, no key to paste.
- Monthly or annual billing with side-by-side price cards; annual shows its savings, and pricing is rendered in your currency.
- First month half-price for new subscribers, applied automatically at checkout.
- Redemption codes — redeem a code for a fixed period of Pro, no card required.
- Account panel shows your plan, weekly-usage bar, renewal/cancel state, and a one-tap path to manage your subscription (Stripe portal) or sign in again if a payment lapses.
- Multiple models to choose from, each with a name, description, vision flag, and relative cost level.
Bring-Your-Own-Key works exactly as before — Official is purely additional.
Scheduled tasks
Set a task to run on a schedule and Pie carries it out in the background. Each run gets its own session, and the schedule survives the side panel being closed (it wakes the service worker via Chrome alarms). Three simple knobs cover one-off, interval, and time-of-day scheduling, with the model bound per schedule.
Redesigned UI with motion
A broad design-system pass unifies the interface and adds animation where it helps you follow what changed:
- Unified buttons (
Button/IconButton) across the side panel and settings, with consistent radii, icon sizes, and hover/active states from a shared token scale. - Animated primitives — dropdowns, the model picker, the session drawer, expand/collapse sections, popovers, and the thinking section all open and close smoothly (and honor reduce motion).
- Session list animates inserts, removals, and reordering.
Localization
- Traditional Chinese (zh-TW) for the full interface and as an assistant-reply language.
- Onboarding and activation surfaces are localized, and you can set the language Pie replies in independently of the UI language.
Agent improvements
- Progressive tool disclosure. The agent now starts with a core tool set and loads the rest on demand, keeping the prompt lean and laying groundwork for larger tool catalogs.
- Prompt-cache fix. The current task was moved out of the system prompt, so long, multi-turn tasks hit the provider's prompt cache far more often — meaningfully faster and cheaper on long-horizon work.
Fixes
- Composer: Enter no longer double-sends during IME composition (Chinese / Japanese / Korean input).