Supported agents
Every supported agent reads native Agent Skills folders: <name>/SKILL.md with name and description front matter, and optional reference/, scripts/ and templates/. Six of them read the same shared folder, .agents/skills, so one copy serves Codex, Cursor, Gemini CLI, OpenCode, Windsurf and GitHub Copilot. Claude Code reads only .claude/skills. Locations were checked against each vendor’s documentation on 29 October 2026.
Default format: --format skills
Section titled “Default format: --format skills”| Agent | Target | Project scope (copy) | User scope (symlink) | Invoke |
|---|---|---|---|---|
| Claude Code | claude |
.claude/skills/<name>/ |
~/.claude/skills/<name> |
/task 123 |
| Codex CLI | codex |
.agents/skills/<name>/ |
~/.agents/skills/<name> |
$task 123, or pick from /skills |
| Cursor | cursor |
.agents/skills/<name>/ |
~/.agents/skills/<name> |
/task 123 in Agent chat |
| Gemini CLI | gemini |
.agents/skills/<name>/ + .gemini/commands/<name>.toml |
~/.agents/skills/<name> + ~/.gemini/commands/<name>.toml |
/task 123 |
| OpenCode | opencode |
.agents/skills/<name>/ + .opencode/commands/<name>.md |
~/.agents/skills/<name> + ~/.config/opencode/commands/<name>.md |
/task 123 |
| Windsurf | windsurf |
.agents/skills/<name>/ + .windsurf/workflows/<name>.md |
~/.agents/skills/<name> + ~/.codeium/windsurf/global_workflows/<name>.md |
/task 123 or @task |
| GitHub Copilot | copilot |
.agents/skills/<name>/ |
~/.agents/skills/<name> |
/task 123 in VS Code chat or Copilot CLI |
Gemini CLI, OpenCode and Windsurf load skills through a tool or an @mention rather than a slash command, so the installer also writes a thin command of a few lines: “use the <name> skill with these arguments”. It never duplicates the skill text, so git pull and agent-skills sync are enough to update.
Classic format: --format rules
Section titled “Classic format: --format rules”For older agent versions:
| Target | Written | Notes |
|---|---|---|
cursor |
.cursor/rules/<name>.mdc (“Agent Requested”) |
Project scope only |
windsurf |
.windsurf/rules/<name>.md (trigger: model_decision) |
Project scope only; the 12,000-character limit per file is checked |
copilot |
.github/instructions/<name>.instructions.md; user scope ~/.copilot/instructions/ |
No applyTo, so it is not attached to every request |
gemini |
.gemini/commands/<name>.toml with the whole skill inlined |
@{ and !{ are neutralised so Gemini never injects files or runs commands from skill text |
opencode |
.opencode/commands/<name>.md with the whole skill inlined |
|
claude, codex |
Same as skills |
They have no other format |
Known overlaps
Section titled “Known overlaps”- Cursor, OpenCode and Copilot also read
.claude/skillsat project scope. With Claude and one of those in the same project, a skill may show twice. Install Claude at user scope and the others at project scope, or the reverse. - Codex still loads the deprecated
~/.codex/skills. agent-skills never writes there, andagent-skills doctorwarns when old copies shadow the new ones.
Not fully verified
Section titled “Not fully verified”- Windsurf now prefers
.devin/{rules,workflows,skills}and reads.windsurf/*as a fallback. agent-skills writes.windsurf/*, which works in both the old and the renamed app, and the shared.agents/skills. - Gemini CLI restricts file tools to workspace folders. Skills linked at user scope are activated through
activate_skill, which grants access to the skill folder.
Agents in Skribly Agent
Section titled “Agents in Skribly Agent”Skribly Agent runs 13 agents, more than agent-skills supports. Aider, Amp, Factory Droid, Qwen Code, Goose, Crush and Kimi CLI run in Skribly but have no skill target. See Supported agents in Skribly Agent.