🤖 feat: add skills catalog search and read tools for Chat with Mux#2739
🤖 feat: add skills catalog search and read tools for Chat with Mux#2739ethanndickson merged 2 commits intomainfrom
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 04442952f3
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: de15144964
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 574f370819
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e5cb8511e2
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 82da987c68
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
|
Codex Review: Didn't find any major issues. 🎉 ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
8daf464 to
904f8c8
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 904f8c8c33
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
904f8c8 to
d4d6431
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d4d6431724
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
d4d6431 to
9cc89ec
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9cc89ece6d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
9cc89ec to
75ad85d
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 75ad85d7d9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
75ad85d to
7f4b8ff
Compare
|
@codex review |
7f4b8ff to
76cc991
Compare
|
Codex Review: Didn't find any major issues. 🎉 ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
76cc991 to
70fbc26
Compare
--- _Generated with `mux` • Model: `openai:gpt-5.3-codex` • Thinking: `xhigh` • Cost: `0.98`_ <!-- mux-attribution: model=openai:gpt-5.3-codex thinking=xhigh costs=50.98 -->
|
@codex review |
|
Codex Review: Didn't find any major issues. Can't wait for the next one! ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
@codex review |
|
Codex Review: Didn't find any major issues. Hooray! ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
Add
skills_catalog_searchandskills_catalog_readtools that allow the Chat with Mux agent to discover and preview skills from the skills.sh catalog, then install them via the existingagent_skill_writeflow.Closes #2325
Background
Users in Chat with Mux had no way to browse or discover community skills from the skills.sh catalog. The existing
agent_skill_*tools only manage locally-installed skills. This bridges the gap: search the catalog, preview a skill's content, and install it — all within the chat.Implementation
Two new tools:
skills_catalog_search— Queries the skills.sh API (/api/search?q=...&limit=...) with configurable limit (1–50, default 10). Returns parsedowner/repofrom the source URL, plus a skills.sh link for each result.skills_catalog_read— Shallow-clones the skill's GitHub repo into a temp directory, resolves theSKILL.mdby direct path or frontmatter-name scan (handles directory name ≠ skill name mismatches), parses it, and returns the frontmatter + body. Temp dirs are always cleaned up.Availability gating (two layers):
mux.md): Both tools added to themuxagent'stools.addallowlist, soresolveToolPolicyForAgent()enables them only for Chat with Mux.MUX_HELP_CHAT_WORKSPACE_IDworkspaces as defense-in-depth.Design choices:
vercel-labs/skillsCLI behavior and avoids GitHub API rate limits.parseSkillMarkdownwithoutdirectoryNameenforcement to handle catalog skills where directory name differs from frontmattername:.SKILLS_API_URLenv var override for testing/dev.Files changed
src/common/types/tools.tssrc/common/utils/tools/toolDefinitions.tssrc/common/utils/tools/tools.tsnonRuntimeToolssrc/node/builtinAgents/mux.mdtools.addallowlistsrc/node/services/tools/skillsCatalogFetch.tssrc/node/services/tools/skills_catalog_search.tssrc/node/services/tools/skills_catalog_read.tssrc/node/services/tools/skillsCatalogFetch.test.tssrc/node/services/tools/skills_catalog_search.test.tssrc/node/services/tools/skills_catalog_read.test.tsGenerated with
mux• Model:anthropic:claude-opus-4-6• Thinking:xhigh• Cost:$26.27