MINARA

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 anymore

Minara 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>                   # uninstall

All 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-reports

Minara 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 tokens

The 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.invoices

Override 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_name

Use 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 3f1e2d4

Tags, branches, or commit SHAs — anything git checkout accepts.

License detection — important

Every skill is scanned for a LICENSE file. The installer prints one of:

OutcomeMeaning
MIT / Apache-2.0 / other SPDXPermissive open source — safe to use
UNKNOWNLICENSE file exists but doesn't match a known SPDX identifier
⚠️ NONENo LICENSE file — proceed with caution
⚠️ PROPRIETARYDetected 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/pdf/pptx skills 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 list
acme.tax_reports           v0.3.1  MIT           ~420 tok
community.chart_generator  main    Apache-2.0    ~680 tok
local.my_workflow          —       UNKNOWN       ~210 tok

Columns: 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 skill

Minara 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:  unchanged

If 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_reports

Removes 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.

On this page