Skip to main content
A skill is a reusable playbook that teaches an agent how to do a task your way. It is a SKILL.md file (plus optional references) with domain-specific instructions the agent loads on demand: your refund policy, your triage rules, your house style, or any other procedure you want to reuse without bloating the system prompt. Skills live in your project under src/skills/ and attach to the agents you build.

Example requests

Ask your coding agent for the procedure or house rules an agent should follow. It can capture them as a skill you reuse across agents.
“Build a skill for our weekly report format so any agent that writes one follows the same structure and sources.”
“Add a brand voice skill so the marketing agent writes announcements in our house style.”

How skills work

Skills live in your project under src/skills/, one folder per skill. Each folder has a SKILL.md; you attach the skill to an agent by its folder name.
src/agents/support.ts
Before a prompt runs, Keystroke materializes attached skills into the agent’s shared workspace at /workspace/agent/skills/{slug}/, advertises them in the system prompt, and exposes skill_view so the agent can load SKILL.md (and packed references) on demand. Keep clones and package installs out of /workspace/agent — that shared filesystem is for skills, files, and other cross-session shares. See Sandboxes.

When to use a skill

Skills and files both materialize into the workspace, but they play different roles: a skill is instructions (how to do something), while a file is context (a document to read).

Next steps

Create skills

Write a SKILL.md with clear task guidance.

Attach skills to agents

Attach skills to an agent by folder name.

Import skills

Reuse skills from external registries.

Files

Add static context documents to an agent workspace.