Install Skills
Extend Minara with external skill packages, just ask in chat
Minara ships with a large built-in skill catalog, but you can extend it
with external skills from any Git repository. External skills are
plain markdown (SKILL.md) + a small manifest, vendored into your
local install so the agent can activate them just like a built-in skill.
The easy way: just ask Minara
The recommended way to install a skill is to tell Minara in chat. The agent understands skill installation intents and will run the right command for you, showing the license check and registering the skill without you having to leave the REPL.
Example prompts:
install this skill: https://github.com/acme/minara-skill-tax-reports
add the coinglass skill from github
vendor https://github.com/some-org/skills-monorepo, the one under
skills/invoice-parser
I want the polymarket trading skill — find and install it
upgrade my coingecko skill to latest
remove the tax_reports skill, I don't need it anymoreMinara will confirm before running the install (external code installation is a tier-3 action), show you the detected license, and report the skill is registered. On the next session the new skill is available for activation.
This is the preferred flow because:
- The agent handles URL parsing, subpath detection, and license reasoning for you
- License warnings (
UNKNOWN,⚠️ NONE,⚠️ PROPRIETARY) are explained in context rather than as a cryptic prefix character - Follow-up ("now try it with ETH") flows naturally in the same conversation
The CLI way (if you prefer)
For scripting or non-interactive contexts, the same operations are
exposed through the minara skills command family:
minara skills list # show installed external skills
minara skills add <git-url> [options] # install a new skill
minara skills upgrade [<id>] # pull latest version
minara skills remove <id> # uninstallAll of these operate on the per-user skill directory
(~/.minara/skills/). They don't touch repo source; installed skills
survive npm install and aren't committed to the main codebase.
Add a skill (CLI)
The simplest form is a Git URL:
minara skills add https://github.com/acme/minara-skill-tax-reportsMinara clones the repo, detects the SKILL.md manifest, checks the
license, registers the skill, and prints a summary:
✓ Installed: acme.tax_reports
License: MIT (OK)
Tools: 0
Prompt: ~420 tokensThe skill is available on your next minara chat session — no restart
mid-REPL needed, but already-running sessions won't see it.
Multi-skill repos
A single Git repo can contain multiple skills under different
subdirectories. Pick one with --subpath:
minara skills add https://github.com/acme/skills-monorepo \
--subpath skills/tax-reports
minara skills add https://github.com/acme/skills-monorepo \
--subpath skills/invoice-parser \
--id acme.invoicesOverride the id
Installed skills get a default id derived from the repo path. Override
with --id:
minara skills add https://github.com/acme/foo --id acme.custom_nameUse this when two installed skills would otherwise collide, or when you want a shorter activation name.
Pin to a ref
minara skills add https://github.com/acme/foo --ref v1.2.0
minara skills add https://github.com/acme/foo --ref main
minara skills add https://github.com/acme/foo --ref 3f1e2d4Tags, branches, or commit SHAs — anything git checkout accepts.
License detection — important
Every skill is scanned for a LICENSE file. The installer prints one of:
| Outcome | Meaning |
|---|---|
MIT / Apache-2.0 / other SPDX | Permissive open source — safe to use |
UNKNOWN | LICENSE file exists but doesn't match a known SPDX identifier |
⚠️ NONE | No LICENSE file — proceed with caution |
⚠️ PROPRIETARY | Detected terms that forbid redistribution — installation is blocked |
Rule of thumb: if you see UNKNOWN or ⚠️ NONE, open the repo and
read the LICENSE before using the skill in production. A missing or
ambiguous license means you have no permission to use the code.
Past incident: Anthropic's official
docx/pptxskills ship under a license forbidding "retain copies outside the Services" — those cannot be vendored. Minara uses MIT-licensed alternatives (docx/pdf-lib/pptxgenjs) instead.
Inspect installed skills
minara skills listacme.tax_reports v0.3.1 MIT ~420 tok
community.chart_generator main Apache-2.0 ~680 tok
local.my_workflow — UNKNOWN ~210 tokColumns: id · pinned ref · detected license · prompt size.
Large skills (> 1500 tokens) are flagged — they bloat the system prompt
every turn if activation: "always", so audit their manifest before
keeping them installed.
Upgrade
minara skills upgrade # all skills
minara skills upgrade acme.tax_reports # one skillMinara pulls the latest version at the pinned ref (or HEAD if no ref
was pinned), re-verifies the license, and reports any prompt-size or
tool-surface changes:
↑ acme.tax_reports: v0.3.1 → v0.3.2
Prompt: 420 → 445 tokens (+5.9%)
Tools: unchangedIf an upgrade would change the license (e.g. MIT → proprietary), the upgrade is rejected — you keep the old version until you manually re-install.
Remove
minara skills remove acme.tax_reportsRemoves the clone from ~/.minara/skills/ and deregisters the skill.
The next REPL session won't see it.
Where skills come from
- Minara registry — curated skills maintained by the Minara team
- Cocoon-AI on GitHub — a growing library of public skills (Cocoon-AI organization)
- Your own Git host — internal skills for your team can live on any self-hosted Git server, as long as the Minara process can reach the URL
External skills use the same DomainSkill contract as built-in ones.
If you want to write a skill instead of just installing it, see
Contributing → Adding a Skill.
Troubleshooting
"License: ⚠️ NONE" — should I worry? It depends on the repo. Personal experiment → probably fine. Something you'd deploy to users → ask the author to add a LICENSE file.
"Skill failed to register"
Usually a malformed SKILL.md frontmatter. Run minara skills list
— failed skills are shown with the parse error so you can open an
issue against the upstream repo.
"Tool collision: name already registered"
Two installed skills declared the same tool name. Use --id to rename
one, or remove the duplicate.
"Not visible after adding"
External skills with requires_env won't appear until those env vars
are set. Check the skill's manifest for required environment
variables and add them to your .env.
Related
- Contributing → Adding a Skill — write a skill
- System Design → Skills System — how skills load and activate
- Reference →
minara skills— full flag list