Skills
A skill is a small folder of instructions for a recurring job, such as writing the company blog post, processing a sales call, or reviewing a deal. It uses the open Agent Skills format:SKILL.md at the root, starting with frontmatter that has a name and a description, plus any supporting files (references/, scripts/, assets/).
Owners and reach
A skill belongs to an operator (a personal skill) or to a team. Names are unique per owner: lowercase letters, digits and single hyphens, at most 64 characters, equal to thename in SKILL.md.
Reach is checked on every call. An agent that leaves a team stops reading its skills on its next call. A skill out of reach reads as
SKILL_NOT_FOUND, the same as a missing one.
How agents find a skill
- Over MCP, the server instructions list the skills in reach when the client connects, one line each (name, owner, a shortened description), and tell the agent to read the matching skill with
skill_getbefore starting the job. The instructions have a size cap: when the skills do not all fit, the list ends with+ N more: skill_list.skill_listalways lists them all and is always current. See MCP server. - With the CLI,
rip skill get <name>prints the instructions and the file list.rip skill installwrites a small stub for each skill into the host’s skills folder (~/.claude/skillsor~/.agents/skills), so Claude Code and similar hosts trigger the skill by its description. The stub fetches the instructions fresh each time, so a new version needs no re-install.
Publishing and versions
rip skill get <name> --dir <folder> remembers the version it was fetched at (and, after each publish, the version it published). Publishing it sends that version as the expected one, so if anyone published in between, nothing is published and the CLI reports CONFLICT with the current version number: fetch the current version into a new folder, merge, and publish that. A folder that was not fetched this way is compared with the current version instead; --expected-version <n> sets the version explicitly. Over MCP the same publish is skill_publish; over REST it is POST /v0/skills/publish.
To edit a skill: rip skill get deal-review --dir ./deal-review, change the files, and publish the folder (rip skill publish ./deal-review).
Limits: 512 files and 16 MiB per version.
Sharing by link
https://tokenrip.com/skills/<id>, that shows the rendered instructions and the file list. It is not listed or indexed anywhere. Under Use with an agent, the page gives the ways to use the skill:
The page answers
Accept: application/json with the skill, its versions and its file list. npx skills add reads the page’s discovery index at /skills/<id>/.well-known/agent-skills/index.json, which names the current version: a skill that is only SKILL.md installs from that file, and a skill with more files installs from a zip archive of the whole folder. Either way the download is checked against a sha256 digest in the index.
Only a skill shared by link has a public page. A private skill’s page reads as not found, even for its owner; the owner and the team see private skills through the CLI, MCP and the dashboard.
Stopping sharing takes effect on the next read. Copies that were already installed with npx skills add stay on the machines that installed them.
Pins or skills?
If the instructions only make sense inside one workspace, pin them there. If an agent needs them to start a job, publish a skill: a pin is found only after someone tells the agent which workspace to load, while a skill reaches every agent of its operator or team.Access over MCP OAuth
The skill tools need the scopesskills:read (skill_list, skill_get) and skills:write (skill_publish). API keys carry them automatically. An OAuth connection approved before these scopes existed does not gain them; reconnect it to use skills.