list_skills
Returns each skill with itsslug, name, description and the list of reference files it carries. A skill installed by an app also carries connector, the slug of the service that owns it, and readOnly: true.
get_skill
Reads one skill in full: itsbody, plus every reference file it carries with its size in bytes. The content of those files is not included, since a skill can bundle a corpus: read one with read_skill_file when the body points at it.
Response
connector and readOnly: true.
read_skill_file
Reads one 100,000-character page of a reference file bundled with a skill. One file per call.Character offset to start at. Omit it for the first page, then pass the returned
nextOffset to continue.{ slug, path, content, offset, nextOffset, totalChars, truncated }. truncated is true and nextOffset is non-null when another page remains. SKILL.md is not readable this way: it is the body get_skill already returns.
Reach for it before rewriting a reference file, since upsert_skill replaces a file whole.
upsert_skill
Creates a skill, or replaces the one with the same name.What makes the coworker decide to load this skill, so state when to use it. This is the only line the coworker sees before opening the skill.
The existing skill to update, when the name is changing too. Without it, a new name creates a second skill.
Reference documents the body can point to, which keeps the body short. Each entry needs
path and content, and is written whole. Files already on the skill and not listed again are kept.Reference files to delete, e.g.
["references/old.md"]. A path cannot be in both files and removeFiles.Request arguments
files are written in one atomic swap: if that write fails, nothing changed. removeFiles is checked before the write and applied after it, so a deletion that fails leaves the new body written and that file still in place.
A skill an app installed is refused, whether you name its slug or pass a name that lands on it. The error names the app that owns it.
An imported skill can carry up to 200 reference files. Each text file can be up to 10 MB, and the complete skill can be up to 50 MB including SKILL.md.
Editing an existing reference file is a round trip: get_skill to see what the skill carries, read_skill_file to get the current content, then upsert_skill with the new content for that path.