What’s new in Playcode

151 updates in the last 90 days.

New features, improvements and fixes, newest first.

RSSJSON FeedMarkdown for agents

Our rocket on its pad beside a tall board of update cards: the builder pins a fresh card at the top, Play fits a new part to the rocket, and two passing suits stop to stare.

November 2026

ImprovedPublish

New Cloud apps: you become the admin with a link from Playcode

In a new Cloud app, signing up no longer makes anyone the admin, not even the first account. You become the admin through an owner link that Playcode gives you in the chat: open it while signed in to your app, and your account owns the app. The link works once, for 30 minutes. Ask in the chat for a new one at any time.

  • After you turn a static site into a full-stack app, Playcode's next reply tells you how to reach its admin at /dashboard, and offers a small Admin link in your landing's footer.
  • Your live app has its own sign-in. The first publish signs everyone out of the live app and clears its admins, so an account from the development copy is not an admin there. Playcode gives you a second link to claim the live app.
  • Sign-in protects your users. After several wrong passwords, the form makes the next try wait. A forgot-password page sends a reset link that works once.

Try it: Give me the owner link for my app.

FixedPublish

Videos and images with #t= or ?v= in their link now go live

A video tag like <video src="clip.mp4#t=1"> shows the first frame as a preview, and an image link can carry a version, like logo.png?v=2. Playcode left such a link as you wrote it, so your published site could not find the file and showed nothing.

Now the build finds the file and keeps the #t=1 or ?v=2 on its link, so the video or image shows on your live site.

ImprovedBuild

Playcode AI shrinks videos up to 150 MB

A video straight from a phone is often over 100 MB. Playcode AI could look at, cut or shrink a video only up to 80 MB, so a bigger one went into your site as it was, and your visitors waited for it to load.

Now it works with every video you can attach to the chat, up to 150 MB. Attach the video and ask for a smaller version for your website.

Try it: Make this video smaller for my website.

FixedBuild

Playcode AI sees 3D pages in its screenshots

When Playcode AI took a screenshot of a 3D page, such as a game built with three.js, it saw the page's "WebGL is not supported" message instead of the scene, and could take that message for a bug in your page.

Now its screenshots show the 3D scene, and so do the thumbnails of 3D projects.

FixedPublish

Publish works while the preview is still loading

If you pressed Publish right after you opened a project, while the preview was still loading, your live site could come out blank. Publishing again fixed it.

Now Publish waits for the preview to finish loading, then builds your site. If a built page would still be broken, Playcode stops the publish and says so, and your live site stays as it was.

FixedBuild

A delete in the chat names what goes, in your language

When you ask Playcode AI to delete something - a project, a chat, a checkpoint, a saved card - it asks you to confirm in the chat first. That card showed a long internal ID and an English sentence, so with several projects you could not tell which one would go.

Now the card names it the way you know it: the project's title, the card's brand and last four digits, the checkpoint's time. It says what goes with it and that this cannot be undone, in your language. The reply your click sends names it too.

NewAdd to your app

Your Cloud app has its own Assistant

New Cloud apps now start with an Assistant for the app's admins, at /assistant, second in the admin sidebar. Ask it about your business in plain words, such as "How many new leads came in today?", and it answers from your app's own data.

  • It works through your app's operations. Every feature of a new Cloud app is an operation: its pages and the Assistant call the same route, with the same checks. When Playcode adds a feature to your app, it adds it as an operation, so the Assistant can use it.
  • It shows where each answer came from: the operation, the filter and the result, under the answer.
  • Every change waits for you. The Assistant proposes a change on a card that shows the exact change and the record as it is now. Nothing changes until you press Apply. Before a delete, the card says what goes.
  • What customers write stays data. A lead's message that says "ignore your instructions" cannot make the Assistant act on its own, and a card says when its proposal came after reading what a customer wrote.
  • Activity lists every change to your app's data: what changed, who made it, when, and whether it came from a page or the Assistant.
  • It uses AI credits only when an admin asks it something. Opening the page costs nothing.

Try it: Add an operation to my app so its Assistant can cancel a booking.

NewDevelopers

Playcode SDK 0.8: your app's features as operations

@playcode/sdk 0.8 (npm) is out. New Cloud apps start on it. In an older app, ask the agent to update the SDK: it reads the upgrade steps in the SDK's changelog first.

  • Your app's operations. @playcode/sdk/operations describes each feature once, as a route with a description. Your pages, an assistant with four tools, and an MCP client with an app token call the same route through one executor. A lint checks every route, and operationsContract proves your app keeps its half: Your app's operations.
  • Each change waits for a person. operationCard() builds the card from the exact arguments and your app's own reads, never from the model's words. Customer-written text reaches the model inside marked blocks, and one run asks a person about at most 3 changes and 3 sends.
  • An approval check sees the run. Its second argument lists the calls the run already put to a person. Past your own line it answers { cap }, and the run ends with the new finish: "cap".
  • A run keeps its session. Pass session to agent.handler(), run() or start(). Every tool call reads it, so a sign-out stops the run at its next call.
  • What each agent spent. A named agent's model calls carry its name, so your app's AI usage reads by agent.
  • Results for your page. A tool result can carry data that your page shows and no model reads.

Before you upgrade: a store with its own tables needs two new nullable columns, session on runs and sources on threads, and agentStoreContract checks both. A page that switches on finish adds the cap case.

Read the docs

Try it: Update my app's Playcode SDK to the latest version.

FixedBuild

Try again restarts a preview that could not start

Sometimes the preview cannot start, most often on a slow or unstable connection. It then shows Preview couldn't start with a Try again button.

Try again used to reuse the part that had failed. The preview then said "Your page can't be shown yet" and blamed your code, so Fix it sent Playcode AI to change files that had nothing wrong with them. Only a reload of the page helped.

Now Try again starts the preview fresh, and your page shows as soon as it loads.

NewAdd to your app

See and change your app's AI limits

Your Cloud app's AI features now have their own page: Settings, AI, inside your project.

For your published app and for its development copy, it shows:

  • the daily AI limit: your own, or Playcode's default of 50 credits a day
  • what the app's AI used today
  • the optional monthly AI budget

When a limit stops the app's AI, the page says so, with the time it stopped and when it starts again. Raise limit starts it again within 30 seconds.

You can also ask Playcode in your project's chat, for example "Who used the live app's AI today?". The Ask button puts the question in the chat for you.

Read the docs

Try it: Set a daily AI limit of 20 credits for the live app.

FixedBuild

The preview keeps working when you stay on the page

When the editor asked whether to leave the page and you chose to stay, the preview stopped getting your changes. When the preview started again, it said "Your page can't be shown yet", and Publish could fail. Only a reload of the page fixed it.

Now the preview keeps getting your changes after you stay, and Publish builds your files.

October 2026

ImprovedBuild

Choose build quality, redesigned

Choose build quality has a new design. On paid plans it opens already set to Standard, the level we recommend for building, and it says so.

  • A picture for each level: it changes as you choose, and the window stays open so you can see it.
  • Economy says what it is for: only a question or a small change. When you choose it, a warning in the window says what happens on bigger work. It replaces the confirmation that asked before.
  • Cost you can compare: Standard's model shows three cost dots and Ultra's four. Before, both showed three.
  • Effort shows what is sent: on Economy the button names a level only when you chose one for the chat.

Which level to use, and why we recommend Standard: Models and modes.

Read the docs

FixedBuild

A picture you send while the agent works now reaches it at once

When you send a screenshot or another picture while the agent is working, the agent now sees it as soon as it finishes its current step, and takes it into account in the work it is doing.

Before, the agent saw the picture only after your next message, and a picture sent without words could stop its work with an error.

FixedPublish

Removed environment variables now leave your running app

When you remove an environment variable from a Cloud project, in Settings > Environment or through the agent, the running app now loses it too. Before, a variable could stay in the app after you removed it, for example a payment key you had switched off.

After every change, Playcode also checks the running app itself:

  • If a value does not reach the app, the agent says which part of the app runs without it and what sets another value.
  • If a removed variable is still in the app, the agent says so and what still sets it.

ImprovedBuild

Background tasks talk to you through the chat

When the agent hands work to a background task, you now follow it and answer it in the chat:

  • The task's card stays in sight in the chat while the task works or waits, instead of folding into the agent's steps.
  • When a task pauses at its credit budget, the chat shows a pause card: what the task finished, what is left, and one Continue button. Before, you had to open the task and find the button inside it.
  • A task's own view is now read-only, with a Back to chat button. To change a task, write to the agent in the chat. Before, words typed inside a task never reached the agent, and it could undo what you asked for.

ImprovedPublish

Archiving a Cloud project stops its computers

When you archive a Cloud project, its computers now stop. Its live site goes offline, and its Cloud slot frees up for another project. The code, the database and the files stay, and their storage is still billed.

Playcode asks before it archives a Cloud project, wherever you archive it from.

Restore brings the project back:

  • With a free Cloud slot, its computers start and the site comes back online.
  • With every slot taken, Playcode shows your Cloud projects, so you can free a slot or move up to a bigger plan.

Open an archived project and nothing starts until you choose Restore. Cloud projects you archived earlier stop too.

ImprovedBuild

Claude Opus 5.5 shows its thinking as it works

On a hard request, Claude Opus 5.5, the Standard model, can think for several minutes before it writes anything. Until now the chat showed nothing in that time, and after four minutes it said the chat had stalled.

  • Now: a Thinking line appears within seconds. Open it to read a summary of what the agent is working through, while it works.
  • No false stall notice: while the agent writes - a long answer, a big file, a long think - the chat no longer says it stalled.

FixedBuild

The agent finds every file of a Browser project

In a Browser project, the agent's file search sometimes found nothing, and the agent said the project had no files. The files were there.

  • Before: the agent could tell you it found no files, and work as if the project were new.
  • Now: the agent's search finds every file of the project.

RemovedAccount and billing

Invite a friend has ended

The Invite a friend program has ended. The invite row is gone from the menu, and invite-a-friend links now open the Playcode home page. Links that invite people to a workspace work as before.

Credits you or your friends already received stay in your account. Inviting no longer earns credits when a friend subscribes.

FixedBuild

A message sent right after a reply gets an answer

Sometimes the chat still showed the agent at work after its reply had ended. A message you sent then waited for an answer that never came.

  • Before: the message stayed unanswered until you edited it or sent it again.
  • Now: before such a message goes, the chat checks with Playcode whether the agent still works on a reply. If the reply has ended, your message starts a new one.

FixedPublish

Files you delete leave your published site

When you deleted a file from a static project, such as an image or a page, it stayed on your published site after the next Publish. Its old address kept working, on your own domain too.

Now each Publish puts exactly the files of your project live. A file you delete leaves your site the next time you publish.

Published before this change? Publish once more to clear the files that earlier publishes left behind.

NewBuild

GPT-6.1 Terra joins Standard, and your apps can call it

GPT-6.1 Terra, OpenAI's new everyday model between GPT-6 Luna and GPT-6.1 Sol, joins the Standard level: open its model list and find it under More models…. It holds a 1M-token context window and reads images.

  • For your apps too. Apps you host on Playcode can call GPT-6.1 Terra through Playcode AI Gateway, and choose how much it reasons, from none to maximum effort.

Read the docs

ImprovedBuild

The agent searches inside large files you attach

The agent can now search inside a large file you attach or paste, instead of reading it from the start.

  • Big data files. Ask what is in a large JSON, CSV or exported page, and the agent searches it for the parts you need. It does not have to read the whole file, or copy it into your project first.
  • Everything on one line. When a file keeps its data on one long line, like minified code or an export, the agent now sees every match on that line, not just its beginning.

This works for text files up to 10 MB.

Try it: List the name of every item in the file I attached.

FixedBuild

A change that did not apply shows as Failed

When the agent tries to change a file and the change does not go through, the chat now marks that step Failed in red.

  • Before: a failed edit looked like a finished one, with line counts and a preview of the change, while the file stayed the same.
  • Now: the step shows Failed and no line counts. Open it and it says the step did not go through. Steps that worked look as before.

FixedPublish

A replaced image shows in the preview and goes live with the next publish

When the agent replaces an image in a static project and keeps its file name, the preview and the next Publish now use the new image.

  • Before: the editor kept the old image until you reloaded the page. A publish in that time put the old image on your live site, though the project already held the new one.
  • Now: the preview shows the new image at once, and the next publish puts it live.

The same holds when you undo the agent's change to an image: the preview and the next publish use the restored one.

ImprovedBuild

The agent can take single files out of a ZIP

The agent can now open one file of a ZIP you attach, without unpacking the whole archive.

  • Just the files you need. Ask for a README, a config file or one page, and the agent reads it straight from the archive and copies it into your project exactly as it is.
  • When the images do not fit. If an archive's images need more storage than you have left, the agent can still bring over its text files: they do not count toward your storage.

The agent opens text files this way. Images and other binary files still come in with an unpack.

Try it: From my ZIP, I only need the README and package.json in the project root.

NewAdd to your app

Kimi K3.1 Pro for your apps, and a shorter Standard list

Apps you host on Playcode can now call Kimi K3.1 Pro, Moonshot's newest model, and Kimi K3.1 Pro Highspeed, the same model served about two to three times faster at twice the price, through Playcode AI Gateway. Both hold a 1M-token context window and always reason before they answer.

  • Kimi leaves the Standard model picker. Under More models… you now find Grok 4.7 and Gemini 3.8 Flash. A chat already set to Kimi K3 keeps working on it.

NewAccount and billing

See what each answer used

On a paid plan, every finished answer in the chat now shows what it used, in credits, right under it.

  • The same number as your Usage page. It counts the work behind that answer the way the Usage page counts it.
  • The agent knows it too. Ask what the last change used, and it tells you the same number.

Read the docs

Try it: What did that last change use?

ImprovedBuild

GPT-6 Luna is the new Economy model

Economy builds now run on GPT-6 Luna. On the customer tasks we tested side by side, it completed more of what we asked than Gemini 3 Flash and used far fewer credits, so the same credits go further. It is not in a hurry: a build can take longer than you are used to.

  • Your saved choice moves with it. If you had picked Gemini 3 Flash as your Economy model, that pick now points at GPT-6 Luna.
  • Economy has one model now. Its card shows GPT-6 Luna and no longer opens a list of models. Standard and Ultra still let you pick a model.
  • The summaries that keep long chats going now run on GPT-6 Luna too.

FixedBuild

Tailwind classes with CSS variables and functions now style your page

Tailwind classes that hold a CSS variable, a function or quotes now get their styles, in the preview and on your published site.

  • Before: classes such as bg-[var(--accent)], text-[clamp(2rem,5vw,4rem)], shadow-[04px12px_rgba(0,0,0,0.1)], bg-[url('/hero.jpg')] and data-[state=open]:bg-red-500 had no effect, and nothing said so. A band could lose its color, or a title its size.
  • Now: these classes work as written. The preview shows them the next time you open your project.
  • Your published site changes when you publish again. If it uses such classes, look at the preview first: it shows the design your code describes, which can differ from what is live now.