---
description: Load Agent Skills from a Computer Workspace, R2, or code. Skills written to the Workspace are available on the agent's next turn.
title: "Agents SDK: Agent Skills are files in your agent's Workspace"
image: https://developers.cloudflare.com/changelog/post/2026-10-29-agent-skills-from-files/og.png?v=b5001e5223f0940c
---

[Skip to content](#main-content)

[View RSS feeds](https://developers.cloudflare.com/fundamentals/new-features/available-rss-feeds/) [ Subscribe to RSS](https://developers.cloudflare.com/changelog/rss/index.xml)

[Back to all posts](https://developers.cloudflare.com/changelog)

October 29, 2026

## Agents SDK: Agent Skills are files in your agent's Workspace

[Agents](https://developers.cloudflare.com/agents/)

Copy as Markdown| [View as Markdown](https://developers.cloudflare.com/changelog/post/2026-10-29-agent-skills-from-files/index.md)| [Agent setup](https://developers.cloudflare.com/agent-setup/)

[Agent Skills](https://developers.cloudflare.com/agents/skills/) in the [Cloudflare Agents SDK](https://developers.cloudflare.com/agents/) are now files. Write a folder with a `SKILL.md` into your agent's [Computer ↗︎](https://github.com/cloudflare/computer) Workspace, under `/workspace/.agents/skills/`, and the agent can use it on its next turn. You do not need a build step or a deploy, and the agent can write its own skills.

*src/server.jsjs*

```js
import { Think, skills } from "@cloudflare/think";

export class MyAgent extends Think {
	getSkills() {
		return [
			skills.workspace(this.workspace), // /workspace/.agents/skills
			skills.r2(this.env.SKILLS_BUCKET, { prefix: "skills/" }),
		];
	}
}
```

*src/server.tsts*

```ts
import { Think, skills } from "@cloudflare/think";

export class MyAgent extends Think<Env> {
	getSkills() {
		return [
			skills.workspace(this.workspace), // /workspace/.agents/skills
			skills.r2(this.env.SKILLS_BUCKET, { prefix: "skills/" }),
		];
	}
}
```

This release includes:

- **Three sources.** Load skills from a [Computer Workspace](https://developers.cloudflare.com/agents/skills/sources/computer/), an [R2 bucket](https://developers.cloudflare.com/agents/skills/sources/r2/), or [code](https://developers.cloudflare.com/agents/skills/sources/code/). Think lists every source again before each turn.
- **The open format.** Every `SKILL.md` is checked against the [Agent Skills specification ↗︎](https://agentskills.io/specification). As the specification's guide for agents recommends, a skill that breaks a rule still loads, with a logged warning. Use `parseSkill()` to check a skill before you write it.
- **Scripts in the Workspace.** Skill scripts are Workspace files, and the model runs them with the Workspace `exec` tool. Refer to [Execution](https://developers.cloudflare.com/agents/skills/execution/).
- **Skill tools for any harness.** Use the same `activate_skill` and `read_skill_resource` tools in Think, Pi Durable, or the AI SDK. Refer to [Skills tools](https://developers.cloudflare.com/agents/tools/skills/).
- **Warm prompt caches.** When a skill changes mid-conversation, Think sends the new catalog as a reminder instead of rebuilding the cached system prompt. An overridden `getSystemPrompt()` now stays at the top of the system prompt, above context blocks.

This is a breaking change for code that uses `agents/skills` directly. The `agents:skills` Vite import, `agents/skills/compile`, `SkillRegistry`, and Think's `skillWorkspace` are removed, and `runner()` moved to `agents/skills/runner`. Install [Agents SDK v0.32.0 ↗︎](https://github.com/cloudflare/agents/releases/tag/agents%400.32.0) and [Think v0.23.0 ↗︎](https://github.com/cloudflare/agents/releases/tag/%40cloudflare%2Fthink%400.23.0) or later. Refer to the [`computer-skills` ↗︎](https://github.com/cloudflare/agents/tree/main/examples/computer-skills) and [`r2-skills` ↗︎](https://github.com/cloudflare/agents/tree/main/examples/r2-skills) examples.

```json
{"@context":"https://schema.org","@type":"BlogPosting","@id":"https://developers.cloudflare.com/changelog/post/2026-10-29-agent-skills-from-files/#page","headline":"Agents SDK: Agent Skills are files in your agent's Workspace","description":"Load Agent Skills from a Computer Workspace, R2, or code. Skills written to the Workspace are available on the agent's next turn.","url":"https://developers.cloudflare.com/changelog/post/2026-10-29-agent-skills-from-files/","inLanguage":"en","image":"https://developers.cloudflare.com/changelog/post/2026-10-29-agent-skills-from-files/og.png?v=b5001e5223f0940c","dateModified":"2026-10-29","datePublished":"2026-10-29","publisher":{"@type":"Organization","name":"Cloudflare","description":"One platform for your apps, agents, and workforce. Build, secure, and scale without managing infrastructure","url":"https://www.cloudflare.com/","sameAs":["https://github.com/cloudflare","https://www.linkedin.com/company/cloudflare","https://x.com/cloudflare"],"logo":{"@type":"ImageObject","url":"https://developers.cloudflare.com/logo.svg"},"address":{"@type":"PostalAddress","streetAddress":"101 Townsend St","addressLocality":"San Francisco","addressRegion":"CA","postalCode":"94107","addressCountry":"US"},"contactPoint":[{"@type":"ContactPoint","contactType":"Customer Support","url":"https://support.cloudflare.com/","availableLanguage":["English"]},{"@type":"ContactPoint","contactType":"Sales","url":"https://www.cloudflare.com/contact/","availableLanguage":["English"]}]},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}
```
