skills/find-skills-combo/SKILL.md
Discover and recommend **combinations** of agent skills to complete complex, multi-faceted tasks. Provides two recommendation strategies — **Maximum Quality** (best skill per subtask) and **Minimum Dependencies** (fewest installs). Use this skill whenever the user wants to find skills, asks "how do I do X", "find a skill for X", or describes a task that likely requires multiple capabilities working together. Also use when the user mentions composing workflows, building pipelines, or needs help across several domains at once — even if they only say "find me a skill". This skill supersedes simple single-skill search by decomposing the task into subtasks and assembling an optimal skill portfolio.
npx skillsauth add agentscope-ai/openjudge find-skills-comboInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Discover and install skill combinations from the open agent skills ecosystem. Unlike single-skill search, this skill decomposes complex tasks into subtasks, searches for candidates per subtask, evaluates coverage, and recommends two strategies: Maximum Quality (best skill per subtask, highest output quality) and Minimum Dependencies (fewest installs, lean setup). Users pick the strategy that fits their priorities.
Use this skill when the user:
Fallback: If the task is genuinely single-domain and simple (one clear capability), skip the decomposition — run a single npx skills find query, present results, and offer to install. Don't over-engineer simple requests.
The Skills CLI (npx skills) is the package manager for the open agent skills ecosystem.
Key commands:
npx skills find [query] — Search for skills by keywordnpx skills add <package> — Install a skill from GitHub or other sourcesnpx skills add <package> -g -y — Install globally, skip confirmationnpx skills check — Check for skill updatesnpx skills update — Update all installed skillsBrowse skills at: https://skills.sh/
For complex tasks, follow all five phases in order. For simple tasks, see the Fallback section above.
Break the user's request into independent subtasks. Each subtask represents a distinct capability needed to complete the overall task.
Step 1: Extract Task-Specific Constraints
Before decomposing, scan the user's request for task-specific constraints — these are requirements that narrow the problem space and must be preserved in the subtasks. Look for:
Collect these into a Constraints List — a flat list of non-negotiable requirements extracted verbatim (or near-verbatim) from the user's request. Every subtask you create must trace back to at least one constraint, and no constraint should be orphaned.
Step 2: Decompose into Subtasks
Constraints:
Output format (present this to the user for confirmation):
Constraints List:
[verbatim constraint from user][verbatim constraint from user]| ID | Subtask | Completion Criteria | Constraints | |----|---------|---------------------|-------------| | S1 | ... | ... | C1, C3 | | S2 | ... | ... | C2 |
Before proceeding to Phase 2, briefly show the user the decomposition and constraints list: "I've identified N constraints and broken this into M subtasks — does this look right?" If they want to adjust, iterate. Don't spend too long here — a reasonable decomposition is better than a perfect one.
For each subtask, the goal is precision over recall — find the skills that most closely match the subtask's specific requirements, not just loosely related ones.
Step 1: Subtask Intent Analysis
Before generating keywords, write a one-sentence intent statement for each subtask that captures:
This intent statement is the anchor for keyword generation — every keyword group must map back to it. Constraints ensure the intent stays grounded in the user's actual context rather than drifting to generic descriptions.
| ID | Subtask | Constraints | Intent Statement | |----|---------|-------------|-----------------| | S1 | ... | C1, C3 | "Calculate portfolio risk metrics (Sharpe, beta, drawdown) under GAAP standards and output a summary table" | | S2 | ... | C2 | "Generate interactive Mermaid-based charts from time-series data in a Svelte SPA" |
Step 2: Keyword Generation (Precision-First)
For each subtask, generate 2–3 keyword groups using different precision levels:
sharpe ratio beta drawdown calculator)portfolio risk analysis metrics)quantitative finance)Priority rule: Always run exact-match first. Only fall back to broader keywords if the precise search returns too few results (< 3 candidates).
Step 3: Search Execution
| Subtask | Exact-Match | Functional-Match | Domain-Match (if needed) |
|---------|-------------|------------------|--------------------------|
| S1 | sharpe ratio beta drawdown | portfolio risk metrics | quantitative finance |
| S2 | interactive chart time-series dashboard | data visualization web | — |
npx skills find "<exact-match-keywords>"
Check result counts. For any subtask with < 3 candidates from exact-match, run the functional-match search. If still < 3, run domain-match.
Merge and deduplicate results. For each candidate, record:
Step 4: Relevance Pre-Filter
Before passing candidates to Phase 3, do a quick relevance check per candidate:
Keep the top 3–5 candidates per subtask after filtering. Fewer but more precise candidates produce better evaluations in Phase 3.
Build a Subtask × Candidate coverage matrix with two extra columns for combination planning.
For each candidate skill:
Output the matrix:
| Candidate | S1 | S2 | S3 | Breadth | Peak | |-----------|----|----|-----|---------|------| | Skill A | High: ... | Low | High: ... | 2 | 1 | | Skill B | Medium: ... | High: ... | Low | 2 | 1 | | Skill C | Low | High: ... | Medium: ... | 2 | 1 | | Skill D | Low | Low | High: ... | 1 | 1 |
Pruning: Drop candidates that are Low across all subtasks — they are noise.
Produce exactly two recommended strategies targeting different user priorities.
Strategy A — Maximum Quality (追求最强效果)
Goal: Every subtask gets its best-fit skill. Accept more installs to maximize output quality.
Algorithm:
This strategy is for users who want the highest-quality result and don't mind installing several skills.
Strategy B — Minimum Dependencies (最少外部依赖)
Goal: Cover all subtasks with as few skills as possible. Accept Medium coverage where it avoids adding an extra skill.
Algorithm:
This strategy is for users who want to keep their environment lean and are comfortable with "good enough" coverage on some subtasks.
For both strategies, document:
Coverage gap check: If any subtask has no High or Medium candidate in either strategy, flag it: "⚠ Subtask SX has no strong skill coverage — you may need to handle this manually or create a custom skill."
Conflict detection: If two skills in Strategy A overlap significantly on the same subtask, note it: "Skills X and Y both cover S2 — you only need one; keeping the higher-rated one."
Structure the final output with these sections:
1. Task Decomposition Summary
Show the subtask table from Phase 1 (brief, since the user already confirmed it).
2. Side-by-Side Comparison
Start with a quick comparison table so the user can choose a strategy immediately:
| | Strategy A: Maximum Quality | Strategy B: Minimum Dependencies |
|---|---|---|
| Skills to install | N skills | M skills |
| All-High coverage | X of Y subtasks | P of Y subtasks |
| Trade-offs | More installs | Some subtasks at Medium |
| Best for | Critical/production tasks | Quick exploration, lean setup |
3. Strategy A — Maximum Quality (Recommended for critical tasks)
Every subtask gets its best-fit skill for the highest-quality output.
| Subtask | Handled By | Coverage |
|---------|-----------|----------|
| S1 | skill-name-a | High |
| S2 | skill-name-b | High |
| S3 | skill-name-c | High |
### Install (N skills)
```bash
npx skills add owner/repo@skill-a -g -y
npx skills add owner/repo@skill-b -g -y
npx skills add owner/repo@skill-c -g -y
```
4. Strategy B — Minimum Dependencies (Recommended for lean setup)
Cover all subtasks with the fewest skills possible.
| Subtask | Handled By | Coverage | vs Strategy A |
|---------|-----------|----------|---------------|
| S1 | skill-name-a | High | Same |
| S2 | skill-name-a | Medium | ↓ High → Medium |
| S3 | skill-name-a | Medium | ↓ High → Medium |
### Install (M skills)
```bash
npx skills add owner/repo@skill-a -g -y
```
The vs Strategy A column makes the trade-off transparent — users see exactly what they give up by installing fewer skills.
5. Coverage Gaps & Risks
npx skills init)6. Next Steps
Ask the user:
When the task is straightforward (single domain, one clear capability):
npx skills find [query] with 1–2 relevant keyword setsThis is the same behavior as the basic find-skills workflow — no decomposition needed.
When generating keywords, draw from these domains:
| Category | Example Keywords | |----------|-----------------| | Web Development | react, nextjs, typescript, css, tailwind | | Testing | testing, jest, playwright, e2e | | DevOps | deploy, docker, kubernetes, ci-cd | | Documentation | docs, readme, changelog, api-docs | | Code Quality | review, lint, refactor, best-practices | | Design | ui, ux, design-system, accessibility | | Data & Analytics | data, visualization, charts, analysis | | Finance | portfolio, trading, risk, investment | | Productivity | workflow, automation, git |
https://skills.sh/<owner>/<repo>/<skill-name> for descriptions.vs Strategy A column in Strategy B is the most important part of the output. It turns an abstract choice into a concrete comparison.If a subtask has no relevant skills:
npx skills init my-custom-skilltools
Generate text, images, video, speech, and music via the MiniMax AI platform. Covers text generation (MiniMax-M3 model), image generation (image-01), video generation (Hailuo-2.3), speech synthesis (speech-2.8-hd, 300+ voices), music generation (music-2.6 with lyrics, cover, and instrumental), and web search. Use when the user needs to create AI-generated multimedia content, produce narrated audio from text, compose music, or search the web through MiniMax AI services.
development
Build RL reward signals using the OpenJudge framework. Covers choosing between pointwise and pairwise reward strategies based on RL algorithm, task type, and cost; aggregating multi-dimensional pointwise scores into a scalar reward; pairwise tournament reward for GRPO on subjective tasks (net win rate across group rollouts); generating preference pairs for DPO/RLAIF; and normalizing scores for training stability. Use when building reward models, scoring rollouts for GRPO/REINFORCE, generating preference data for DPO, or doing Best-of-N selection.
tools
Benchmark LLM reference recommendation capabilities by verifying every cited paper against Crossref, PubMed, arXiv, and DBLP. Measures hallucination rate, per-field accuracy (title/author/year/DOI), discipline breakdown, and year constraint compliance. Supports tool-augmented (ReAct + web search) mode. Use when the user asks to evaluate, benchmark, or compare models on academic reference hallucination, literature recommendation quality, or citation accuracy.
testing
Review academic papers for correctness, quality, and novelty using OpenJudge's multi-stage pipeline. Supports PDF files and LaTeX source packages (.tar.gz/.zip). Covers 10 disciplines: cs, medicine, physics, chemistry, biology, economics, psychology, environmental_science, mathematics, social_sciences. Use when the user asks to review, evaluate, critique, or assess a research paper, check references, or verify a BibTeX file.