Skip to content

Create a plugin

A plugin is a git repository (or a folder) that Tyrn can install into your harnesses. Add a tyrn.json at its root to say what it contains. It is optional for a simple plugin, and required when you want to ship several items or add details like a description and icon.

What you can ship

Each entry in tyrn.json has a kind:

Kind What path points to
plugin A folder of skills, commands, hooks, MCP servers or agents.
skill A folder containing a skill.
connector A folder with a .mcp.json describing the app to connect.
subagent A single .md file.
role A single .json file naming a harness and its settings, plugins and subagents.

Make one

  1. Create a repository with your content, for example a plugin/ folder containing skills/.
  2. Add tyrn.json at the repository root:
tyrn.json
{
"schema": 1,
"items": [
{
"kind": "plugin",
"id": "my-tools",
"name": "My Tools",
"version": "0.1.0",
"description": "Skills for my team's workflow.",
"path": "plugin"
}
]
}
  1. Push it to git.
  2. In Tyrn, open Settings > Agents > Plugins, click Add plugin, and enter owner/repo or the git URL. Tyrn lists what it found. Click Install.
  3. Add the plugin to a session, role or harness default and try it.

Without a tyrn.json, Tyrn treats the repository as a single plugin and reads its name and version from the plugin files, when present.

Test locally

Add plugin accepts a local path, so you can try changes before pushing. If the source has a problem, Tyrn shows the reason, for example a missing path or a field that is too long.

Next steps