molecule-core/docs/guides/skill-catalog.md
documentation-specialist 26afbbfdf4
Some checks failed
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 5s
CI / Detect changes (pull_request) Successful in 5s
E2E API Smoke Test / detect-changes (pull_request) Successful in 6s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 6s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 6s
Runtime PR-Built Compatibility / detect-changes (pull_request) Successful in 5s
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 5s
CI / Platform (Go) (pull_request) Successful in 3s
CI / Canvas (Next.js) (pull_request) Successful in 5s
CI / Python Lint & Test (pull_request) Successful in 3s
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 4s
CI / Shellcheck (E2E scripts) (pull_request) Successful in 8s
CI / Canvas Deploy Reminder (pull_request) Has been skipped
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 4s
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Successful in 4s
Runtime PR-Built Compatibility / PR-built wheel + import smoke (pull_request) Successful in 3s
Ops Scripts Tests / Ops scripts (unittest) (pull_request) Failing after 12s
CodeQL / Analyze (${{ matrix.language }}) (go) (pull_request) Failing after 51s
CodeQL / Analyze (${{ matrix.language }}) (javascript-typescript) (pull_request) Failing after 1m20s
CodeQL / Analyze (${{ matrix.language }}) (python) (pull_request) Failing after 1m20s
docs(internal): bulk-sed molecule-core .md docs → Gitea (#37 final molecule-core sweep)
Mass-sed across 17 files / 38 active refs in molecule-core .md docs
(README + CONTRIBUTING + docs/architecture/ + docs/blog/ + docs/guides/
+ docs/integrations/ + docs/quickstart.md + scripts/README.md).

Driver: /tmp/sweep_core.py — same pattern set as the
internal-marketing bulk-sed (PR #50). 4 url-substitution patterns +
SKIP_PATTERN preserves /pull/<n> /issues/<n> /commit/<sha>
/releases/... historical refs.

Files NOT touched in this PR:
- docs/workspace-runtime-package.md — owned by molecule-core#15
  (workspace-runtime source-edit per #41). Reverted my bulk-sed of
  that file to avoid merge conflict.
- 2 Go-import-path refs in docs/memory-plugins/testing-your-plugin.md
  (github.com/Molecule-AI/molecule-monorepo/platform/internal/...) —
  Q5 cross-repo Go-module migration territory.
- 1 GitHub Gist link in docs/guides/external-workspace-quickstart.md
  (gist.github.com/molecule-ai/...) — no Gitea equivalent;
  consistent with the same handling in docs#1.

Manual fixes (2):
- docs/blog/2026-04-20-chrome-devtools-mcp-seo/index.md:306 —
  GitHub Discussions (no Gitea equivalent) → issue tracker link
- docs/guides/external-workspace-quickstart.md:218 — tracking-issue
  ?q= query-string url (regex didn't catch) → reformulated text +
  Gitea search-by-query approach

Pattern matches my docs#1 (public docs site) PR + internal#50
(internal/marketing bulk-sed). Standard substitutions:
- https://github.com/Molecule-AI/<repo> → https://git.moleculesai.app/molecule-ai/<repo>
- /blob/<branch>/ + /tree/<branch>/ → /src/branch/<branch>/

Refs: molecule-ai/internal#37, molecule-ai/internal#38
2026-05-07 01:27:50 -07:00

5.9 KiB

Skill Catalog

Skills extend what a workspace agent can do — from browser automation and TTS to research tools and custom API integrations. This page covers available skill types, how to install them, and how to manage their versions.

Note: Molecule AI does not ship a hosted skill marketplace. All skills are installed from local packages, GitHub URLs, or community bundles. See Skill Lifecycle for how to publish and distribute skills within your org.

Available Skill Types

The skills ecosystem covers the same capabilities as Hermes Tool Gateway and more:

Category Skill What it does Provider options
Browser browser-automation Chrome DevTools Protocol via MCP — navigate, query DOM, screenshot, fill forms. Same engine as Hermes' built-in browser tool. Built-in (CDP); swap via skill version
TTS tts Text-to-speech generation. Streams audio to output. OpenAI, ElevenLabs, or self-hosted
Image gen image-generation Generates images from text prompts. OpenAI DALL·E, Stability AI, or self-hosted
Web search web-search Structured web search with result parsing. Brave, SerpAPI, or custom
Research arxiv-research Searches and summarizes arXiv papers. Community bundle
Code code-analysis Static analysis, diff review, complexity scoring. Built-in
SEO seo-audit Lighthouse audit + GSC keyword extraction. Built-in
Social social-post Formats and posts to social channels. Built-in

All skills are open source. Source is visible — inspect the SKILL.md and tools/ before installing.

Installing a Skill

From the built-in catalog

# Install browser automation
molecule skills install browser-automation

# Install TTS with a specific provider
molecule skills install tts --provider openai

# Install a specific version
molecule skills install browser-automation --version 1.2.0

From GitHub

molecule skills install \
  https://github.com/acme/molecule-skills/tree/main/browser-automation

From a community bundle

Community skills are hosted on GitHub and referenced by slug:

molecule skills install arxiv-research --from community

Community skills are reviewed by the Molecule AI team before being listed. Submit a skill for review by opening a PR against molecule-ai/skills.

Installing via config.yaml

Skills can also be declared in the workspace config file:

skills:
  - name: browser-automation
    source: builtin
  - name: tts
    source: builtin
    config:
      provider: openai
  - name: arxiv-research
    source: community

On workspace boot, the runtime validates each skill and loads the SKILL.md + tools into the agent's context.

Version Management

Skills are versioned with semantic versioning. Pin to a known-good release to prevent unexpected behavior changes:

# Pin to a specific version
molecule skills install tts --version 1.1.0

# Upgrade to latest
molecule skills upgrade tts

# View installed version
molecule skills list

Upgrading is safe — the skill loader validates the new package on installation. If the new version has breaking changes, the workspace logs a warning and keeps the previous version active until you restart.

Custom Skills

Write a skill for your team's specific workflow:

# Scaffold a new skill
molecule skills init my-custom-skill

This creates:

skills/my-custom-skill/
+-- SKILL.md              # instructions + frontmatter
+-- tools/
|   +-- my_tool.py        # MCP tool using @tool decorator
+-- examples/             # few-shot examples
+-- templates/            # reference files

See Skills Reference for the full SKILL.md format and frontmatter schema.

Skill Lifecycle

Author writes SKILL.md + tools/
      |
      v
Install into workspace (local or GitHub)
      |
      v
Workspace loads skill on next boot / hot-reload
      |
      v
Agent sees skill in tool context
      |
      v
(Optional) Publish to org bundle or community

Publishing to your org: Bundle skills with workspace templates so every new workspace in a role gets the same capability set:

molecule skills bundle my-custom-skill --output ./org-templates/my-role/

Publishing to the community: Open a PR against molecule-ai/skills with a complete skill package. Community skills are reviewed for security and correctness before listing.

Removing a Skill

molecule skills uninstall browser-automation

Or remove from config.yaml and trigger a hot-reload by touching the file:

touch /configs/config.yaml

The workspace detects the change, rescans skills, and updates the Agent Card within ~3 seconds.

Troubleshooting

Skill not found: Check the skill name matches the catalog exactly. Skill names are lowercase with hyphens (browser-automation, not browser_automation or BrowserAutomation).

Skill loads but tools are missing: Verify the tools/ folder contains valid Python files with @tool-decorated functions. See Skills Reference — Tool Interface.

Provider auth error: Ensure the required environment variable (e.g. OPENAI_API_KEY) is set in the workspace config or secrets.