Request Access
Guide

Skills

A skill teaches OxCode how to approach one kind of work. It shapes the plan, not just the wording of the answer, and OxCode will often choose the right one for you.

What a skill is

A skill is a set of instructions for one kind of work: reviewing code, designing an API, writing tests, teaching. On disk it is a folder containing a SKILL.md file, and the markdown in that file is the prompt OxCode reads.

The important part is where it lands. A skill does not only change the tone of the final answer, it reaches the stage that writes the plan, the stages that carry out each step, and the summary at the end. A design skill on write me a REST endpoint changes what the plan contains, not just how the result is described.

Skills are optional. With none armed, OxCode runs as the general agent it has always been.

Automatic selection

You usually do not have to pick one. When a request clearly matches an installed skill, OxCode arms that skill for the run and says so on screen, so a run never behaves differently without telling you why.

It only chooses from what you have installed, so the more relevant skills you have, the more often this is useful. If it picks one you did not want, say so in the same conversation and it will switch or drop it.

If nothing you have installed fits the request, OxCode says that too rather than forcing a poor match, and mentions it once per session rather than on every message.

Choosing one yourself

You can arm a skill directly from the composer in the chat panel. A skill you choose stays armed for the conversation until you change it, and takes precedence over automatic selection.

Choose one yourself when the request is ambiguous but you know what you want, for example asking for a code review of a file you have just written rather than a fix.

The Skills panel

Everything to do with skills lives behind four Command Palette entries.

CommandWhat it does
OxCode: Skills and PluginsOpens the panel showing everything installed, where it came from, and whether it is enabled.
OxCode: Install PluginInstalls a single plugin from a source you already have.
OxCode: Add Skill MarketplacePoints OxCode at another source, so everything in it becomes installable.
OxCode: Disable PluginTurns one off without uninstalling it.

A plugin can carry more than one skill, so installing one entry may add several to the picker.

Installing skills

Our own catalogue is wired in by default and needs no setup:

# already configured, nothing to add
https://github.com/Cyborg-Network/oxcode-skills

It is still being filled out, so do not wait on it. To add any other source, run OxCode: Add Skill Marketplace and give it the URL. Everything in that source then appears in OxCode: Install Plugin.

Some catalogues publish a copy-and-paste install prompt instead of a URL. You can paste that straight into the chat and OxCode will handle it as an install rather than treating it as a coding task.

Third-party sources

OxCode reads the same skill format Claude Code uses, so skills written for it load here without changes. These work today.

A skill you install is a prompt that will shape how OxCode works on your code. Read one before installing it, the same way you would read a dependency you are about to add.

Writing your own

A skill is a folder with a SKILL.md file in it. Put it in either place and OxCode picks it up:

LocationScope
<project>/.oxcode/skills/This project only. Commit it and your team gets it.
~/.oxcode/skills/Every project you work on.

The file is frontmatter followed by a markdown body, and the body is the prompt. Write it as instructions to an engineer, not as a description of the skill.

# .oxcode/skills/api-design/SKILL.md
---
name: API design
description: Designing and reviewing HTTP APIs, resources, and error contracts.
command: api-design
label: API design
hint: Resources, status codes, and error shapes
icon: bolt
capability: Reasoning
---

Design the resource before the route...
KeyRequiredWhat it is
nameYesThe skill name. Shared with the Claude Code format.
descriptionYesWhat the skill is for. This is what OxCode reads when deciding whether to arm it automatically, so write it as the situation it fits.
commandNoThe short name you type to arm it.
labelNoHow it appears in the picker.
hintNoThe one-line subtitle a person reads under the label.
iconNoThe icon shown beside it.
capabilityNoWhat kind of thinking the work needs: Coding, Teaching, Deep analysis, Reasoning, or Auto.

Two rules worth knowing. The frontmatter is flat key: value pairs only, so indented blocks and key: | style values are rejected with an error naming the key rather than being half-read. And a skill file must never name a model: use capability instead, which stays correct as the model fleet changes and does not require you to know it.

Because only name and description are required, a skill written for Claude Code loads here as it is, and the optional keys fill in with defaults.

One at a time

One skill is active per run. Arming a second replaces the first rather than combining them.

This is deliberate for now. Two skills that both describe how to approach the work can contradict each other, and a contradictory prompt makes an agent quietly drop instructions rather than choose between them.

The answer we are building is not several skills at once but one skill per step: on a full-stack task, the backend step uses the API design skill and the frontend step uses the frontend skill. That fits how OxCode already runs a plan, and no step ever holds two sets of instructions. Coming soon

Troubleshooting

  • It armed the wrong skill. Say so in the same conversation. Automatic selection is a suggestion and always announces itself, so you can correct it in one message.
  • A skill I installed is not in the picker. Open OxCode: Skills and Plugins and check it is enabled. A plugin can be installed and switched off.
  • My own skill is not loading. Check the folder contains a file named exactly SKILL.md, and that the frontmatter has no indented or multi-line values. A parse error names the key that caused it.
  • Nothing was armed at all. That is normal. If none of your installed skills fits the request, OxCode runs as the general agent and says once per session that it had no good match.