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
- Create a repository with your content, for example a
plugin/folder containingskills/. - Add
tyrn.jsonat the repository root:
{ "schema": 1, "items": [ { "kind": "plugin", "id": "my-tools", "name": "My Tools", "version": "0.1.0", "description": "Skills for my team's workflow.", "path": "plugin" } ]}- Push it to git.
- In Tyrn, open Settings > Agents > Plugins, click Add plugin, and enter
owner/repoor the git URL. Tyrn lists what it found. Click Install. - 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.