Skip to main content

Claude Plugins

Osaurus can import full Claude plugins straight from a GitHub repository — not just skills, but the whole bundle: skills, scheduled agents, slash commands, MCP providers, and shared CLAUDE.md context. Everything lands tagged with a stable id so the bundle installs, updates, and uninstalls as a single unit.

Imported plugins live in the Plugins management tab alongside Osaurus's native plugins, each shown as a card with an Imported badge, a version pill, an Update button, and a Configure button when the plugin needs settings.

What gets imported

Plugin artifactBecomesWhere it shows up
skills/<name>/SKILL.mdA skillManagement → Skills
skills/<name>/scripts, references, assets, templatesSkill references/assetsAttached to the owning skill
agents/<name>.mdA schedule (disabled until a cadence is set)Management → Schedules
commands/<name>.mdA slash commandThe chat input
.mcp.json (HTTP/SSE)An MCP providerManagement → Providers (MCP)
.mcp.json (OAuth)An OAuth MCP provider (needs sign-in)Management → Providers (MCP)
CLAUDE.md, CONNECTORS.md, README.mdReference filesAttached to every imported skill

Once imported, skills, references, slash commands, and MCP tools are selected automatically through the same RAG search used for built-in skills — there's nothing extra to wire up. SKILL.md bodies that point at ${CLAUDE_PLUGIN_ROOT}/… paths or relative links are rewritten at import time to the local files Osaurus bundled.

Importing a plugin

  1. Open Management (⌘ ⇧ M) → Plugins.
  2. Click Import in the header.
  3. Enter the repository (owner/repo or a full URL).
  4. Choose which plugins — and which artifacts within each — to install.
  5. Click Install Selected.

If a plugin declares a userConfig block, Osaurus shows a Configure plugin settings sheet so you can fill in required values before its MCP servers start. Non-sensitive values are stored under ~/.osaurus/claude-plugins/; sensitive ones go to the macOS Keychain.

After install, a summary lists what landed and what needs a follow-up — schedules that need a cadence (click to jump straight into the schedule editor), MCP providers that need a real token or an OAuth sign-in, and any skipped or failed artifacts (one bad file never aborts the whole import).

Supported repository layouts

The importer recognizes every published Anthropic plugin shape:

Example repoLayoutResult
anthropics/skillsLegacy flat skill listSkills only
anthropics/claude-for-legalDirectory-based (source: "./dir")Full bundle
anthropics/financial-servicesDirectory-based with co-located scripts and sibling-skill depsFull bundle
anthropics/knowledge-work-pluginsDirectory-based with OAuth MCP + CONNECTORS.mdFull bundle (OAuth MCP needs sign-in)
anthropics/claude-plugins-communitySource-as-object pointing at external repos pinned by commitFull bundle

Orchestrator-style plugins that delegate to sibling skills ("invoke the comps-analysis skill…") are handled too — Osaurus detects the dependency and auto-selects the sibling plugins that own the referenced skills.

Managing installed plugins

Each imported plugin is a card in Plugins → Installed with live per-artifact counts (skills, schedules, commands, MCP servers). From the card or its detail view you can:

  • Update — appears when the source's version (or commit) is newer than what's installed; re-fetches and replaces the artifact set in place. Re-importing is idempotent, so you won't pile up duplicates.
  • Configure Settings — re-open the userConfig sheet.
  • View Details — full hero, keyword chips, per-artifact list, a lazily-fetched CHANGELOG, and an "import needs attention" banner for any follow-ups.
  • Uninstall — removes the skills, schedules, slash commands, and MCP providers in one shot, including Keychain-stored tokens and the plugin's data directory.

Variable substitution

For imported MCP servers, Osaurus applies the Claude Code variable rules to command lines, args, working directory, and environment:

TokenResolves to
${CLAUDE_PLUGIN_ROOT}The plugin's local read-only cache directory
${CLAUDE_PLUGIN_DATA}A per-plugin data directory, created on first use and removed on uninstall
${CLAUDE_PROJECT_DIR}Best-effort current workspace root
${user_config.KEY}A value from the plugin's userConfig (sensitive values are passed only through the subprocess environment)
${ENV_VAR}Host environment, limited to an allow-list (PATH, HOME, USER, …) plus names the plugin declares

Not honored yet

These manifest sections are detected and recorded but not executed — the detail view shows a "declared but not yet honored" notice so you're not surprised: hooks, lspServers, outputStyles, experimental themes/monitors, channels, bin/ PATH exports, and install scopes (Osaurus is single-host).

Skill-local scripts (Python helpers, etc.) are attached so the model can read them, but Osaurus does not execute them. Stdio MCP servers are imported (disabled) into the sandbox when available; otherwise they're listed as skipped.

Troubleshooting

"GitHub rate-limited this app." Unauthenticated GitHub requests share a 60-per-hour limit. The import sheet shows roughly when it resets — wait and retry.

"This repository has no plugins." Osaurus looks for .claude-plugin/marketplace.json in the repo's default branch (case-sensitive). If it's missing, there's nothing to import.


Related:

  • Skills — the skill format and how RAG selection works
  • Remote MCP Providers — manual MCP setup and transports
  • Schedules — recurring runs that imported agents map to
  • Agents — agents that use the imported skills and tools