Token导航 LogoToken导航

Agent Skill · 研究检索

solution-explorer(解决方案浏览器)

solution-explorer 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

solution-explorer 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为执行命令;许可证信息还不明确,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 65,745。

总安装 275周安装 11GitHub Stars 35下载 89核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:solution-explorer(解决方案浏览器)
来源仓库:https://github.com/petekp/claude-code-setup
仓库路径:skills/solution-explorer
安装命令:
npx skills add https://github.com/petekp/claude-code-setup --skill solution-explorer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/petekp/claude-code-setup --skill solution-explorer

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

用于查找、检索和筛选相关信息。适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。适合根据关键词或任务场景快速定位候选结果。通过 npx skills add 命令从 claude-code-setup 仓库安装。使用前建议确认权限和维护状态。

solution-explorer 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

来源仓库内路径:skills/solution-explorer

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/petekp/claude-code-setup --skill solution-expl…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要执行命令,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

solution-explorer 怎么安装?

在终端执行 npx skills add https://github.com/petekp/claude-code-setup --skill solution-explorer。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

solution-explorer 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

solution-explorer 需要什么权限?

权限级别是执行命令。安装流程涉及命令执行,可能通过 npx skills add https://github.com/petekp/claude-code-setup --skill solution-explorer 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

solution-explorer 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

solution-explorer 用的人多吗?

公开数据是累计安装 275 次,近一周安装 11 次,下载 89 次,GitHub 35 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

solution-explorer 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。

先想清楚的地方

  • 需要执行命令,装到常用环境前要先评估影响面。
  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 不能接受 Skill 在你机器上执行命令的人。
  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
solution-explorer

解决方案浏览器 · 本页

27535执行命令未明确有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Solution Explorer

Why This Exists

LLMs satisfice. When asked to implement something, they pattern-match to the most common approach and start building immediately. This is a local maximum — the most obvious solution is rarely the best one across all dimensions that matter. A senior engineer surveys the full landscape of possibilities before committing. This skill forces that discipline.

The underlying dynamic: LLMs are trained on the most frequently written patterns, so they converge on popular approaches. But popular doesn't mean optimal for your specific context, constraints, and goals. The best solution might be an uncommon pattern, a creative combination, or a reframing of the problem entirely.

Before You Begin: Calibrate the Exploration

Not every decision deserves the same depth of exploration. Before diving in, assess the decision's weight to right-size the process:

Full exploration (all 5 phases) — Use when:

  • The decision is hard to reverse (architecture, data model, core abstractions)
  • Multiple paradigms genuinely exist and the right one isn't clear
  • The feature will be lived with for months or years
  • Getting it wrong means significant rework

Abbreviated exploration (Phases 1-3, skip prototyping) — Use when:

  • The problem space is well-understood but there are still 2-3 viable approaches
  • Analysis alone can identify a clear winner
  • The decision is medium-stakes (meaningful but recoverable)

Quick exploration (problem framing + rapid paradigm scan) — Use when:

  • The feature is small but you sense there might be a better approach than the obvious one
  • Time is tight but you want to at least check you're not missing something
  • Write a condensed PROBLEM_BRIEF and SOLUTION_MAP (skip the other artifacts)

When in doubt, start with the full process. You can always abbreviate once you see the landscape — but you can't un-skip exploration you never did.

The Process

Two phases, mirroring how good engineering actually works:

  1. Diverge — Map the problem space, then exhaustively explore the solution space
  2. Converge — Analyze, prototype finalists, select with evidence

All artifacts go in .claude/explorations/<feature-name>/.


Phase 1: Frame the Problem

Before exploring solutions, deeply understand what you're actually solving. LLMs often solve the stated problem rather than the real problem, because they match on keywords rather than understanding the underlying need.

Steps

  1. Restate the problem in your own words. Not the user's phrasing — your understanding of the underlying need. What capability is missing? What pain point exists? Ask the user to confirm or correct your understanding.
  2. Map the dimensions. What are the axes along which solutions can vary? Consider:

- Performance characteristics (latency, throughput, memory footprint) - Complexity budget (how much complexity is this problem worth?) - Integration surface (what existing systems, APIs, data stores must it work with?) - User experience requirements (responsiveness, offline support, error states) - Maintenance trajectory (who maintains this? how often will it change?) - Scale expectations (current load and realistic future growth)

  1. Define success criteria. Be specific and rankable:

- MUST — non-negotiable requirements (failing any = approach eliminated) - SHOULD — important but with room for tradeoffs - NICE — differentiators between otherwise equivalent approaches

  1. Surface assumptions. What are you taking for granted? List at least 3 assumptions and verify each with the user. Unexamined assumptions are where "obviously correct" approaches turn out to be wrong. Common hidden assumptions: deployment platform, expected scale, team expertise, security requirements, backward compatibility needs.

Output: PROBLEM_BRIEF.md

# Problem Brief: <feature name>

## Problem statement
<your restatement of the underlying need>

## Dimensions
<axes along which solutions vary, with current understanding of each>

## Success criteria
### Must
### Should
### Nice

## Assumptions
1. <assumption> — status: confirmed / unconfirmed / rejected
2. ...

## Constraints
<hard limits from the codebase, infrastructure, team, or timeline>

Phase 2: Explore the Solution Space

This is where most LLMs fail. They generate 2-3 options that are superficial variations of the same theme — different libraries implementing the same strategy. Genuine exploration means thinking across paradigms: fundamentally different strategies for solving the problem.

What's a paradigm?

A paradigm is a high-level strategy that makes qualitatively different tradeoffs. Approaches within the same paradigm share core assumptions; approaches across paradigms don't. Each paradigm represents a different *bet* about what matters most.

Example for "implement collaborative editing":

  • Paradigm: Operational Transform — bet: correctness through mathematical transforms is worth the complexity
  • Paradigm: CRDTs — bet: conflict-free data structures eliminate coordination overhead
  • Paradigm: Server-authoritative — bet: simplicity of a single source of truth outweighs latency costs
  • Paradigm: Turn-based locking — bet: concurrent editing isn't actually needed if sections are granular enough

These aren't just different libraries — they're fundamentally different bets about what matters most.

Steps

  1. Identify paradigms. Brainstorm high-level strategies. Aim for at least 3 distinct paradigms. If you only see 1-2, you haven't looked broadly enough — try these frame-shifts:

- What if the constraint was opposite? (high scale → low scale, real-time → batch) - How do other industries solve analogous problems? - What if you had zero dependencies? What if you could use any dependency? - What existed before the currently popular approach?

  1. Research each paradigm substantively. This means more than listing it — for each paradigm, gather enough information to understand its core tradeoffs, not just its existence. Specifically: Use web search, documentation lookups, and codebase exploration. Gather real data, not speculation. Parallel research: If subagents are available, research paradigms concurrently — each paradigm is an independent research task. Spawn one research agent per paradigm with a focused brief: "Research [paradigm name] for [problem]. Find libraries, patterns, failure modes, and real-world usage. Save findings to [path]."

- What libraries, frameworks, or services implement this paradigm? - What are the established patterns and best practices? - Who has solved this before and what did they learn? - What are the known failure modes and scaling cliffs?

  1. Generate concrete approaches. Within each paradigm, identify 1-3 specific implementations. Each approach needs:

- How it works — concrete description, not hand-waving - What you gain — specific advantages in context of the problem dimensions - What you give up — honest assessment of costs and limitations - Where it shines — the ideal context for this approach - Known risks — failure modes, scaling cliffs, maintenance burdens - Complexity — simple / moderate / complex (relative to this project's standards)

  1. Hunt for the non-obvious. After your initial exploration, deliberately look for what you might have missed. The best solutions often come from this step:

- Can the problem be reframed to make it trivial? (Sometimes the best "implementation" is realizing you don't need one, or that the real problem is something adjacent.) - Is there a hybrid that combines strengths of multiple paradigms? - What would you recommend under extreme constraints? "Ship in 2 hours" vs "must run for 10 years" vs "budget is $0" — each constraint surfaces different solutions. - What would someone from a completely different domain do? A game developer? A distributed systems researcher? A hardware engineer? A spreadsheet power user? - Is there a managed service that eliminates the problem entirely? Sometimes the best code is no code. - What's the laziest possible solution that still meets the MUST criteria? Laziness is an underrated engineering virtue — it often reveals the simplest viable path.

Output: SOLUTION_MAP.md

# Solution Map: <feature name>

## Paradigm 1: <name>
**Core bet:** <what this paradigm assumes matters most>
<brief description of the strategy>

### Approach 1a: <name>
- **How it works:** ...
- **Gains:** ...
- **Gives up:** ...
- **Shines when:** ...
- **Risks:** ...
- **Complexity:** simple | moderate | complex

### Approach 1b: <name>
...

## Paradigm 2: <name>
**Core bet:** <what this paradigm assumes matters most>
...

## Paradigm 3: <name>
**Core bet:** <what this paradigm assumes matters most>
...

## Non-obvious options
<creative, unconventional, or hybrid approaches>

## Eliminated early
<approaches considered but dismissed, with documented reasoning>

Minimum Exploration Gate

Do not proceed to Phase 3 until ALL of the following are true:

  • At least 3 distinct paradigms explored with substantive analysis (each has a documented core bet, at least one concrete approach with tradeoffs, and research-backed information — not just a name and one-sentence description)
  • At least 5 total approaches documented across those paradigms, each with the full gains/gives-up/risks breakdown
  • Research conducted — real information gathered from web search, docs, or codebase exploration, not just brainstorming from training data
  • Non-obvious section genuinely attempted with at least one creative reframing or hybrid approach

If you feel like skipping ahead because one approach seems "obviously best" — that's the satisficing instinct this skill exists to counter. Document why it seems obvious, then keep exploring. The goal isn't to waste time; it's to build justified confidence. If the obvious answer is truly best, the exploration will confirm it quickly and you'll have evidence for why.


Phase 3: Analyze and Narrow

Now converge. Evaluate approaches against the success criteria from Phase 1 to identify 2-3 finalists worth prototyping.

Steps

  1. Build a tradeoff matrix. Compare all approaches (not just your favorites) against each success criterion. Use concrete assessments ("~200ms p95 latency" or "adds ~500 lines of code"), not vague ratings ("good" / "medium"). The matrix should cover every approach that wasn't eliminated early — this forces honest comparison rather than cherry-picking.
  2. Eliminate on dealbreakers. Which approaches fail a MUST criterion? Remove them, documenting the specific criterion they failed and why. Every elimination should be traceable to evidence.
  3. Rank the survivors. For SHOULD and NICE criteria, compare how approaches perform. Note where you're genuinely uncertain — these uncertainties are what prototyping should resolve.
  4. Select 2-3 finalists. Choose approaches that are genuinely different from each other. If your finalists are all from the same paradigm, reconsider whether you explored broadly enough. The point of prototyping is to compare across paradigms, not to A/B test minor variations.
  5. Name the key differentiator. What single question, if answered, would make the choice clear? This is what prototyping targets. Having a focused question prevents prototypes from turning into full implementations.

Output: ANALYSIS.md

# Analysis: <feature name>

## Tradeoff Matrix

| Criterion | Approach A | Approach B | Approach C | ... |
|-----------|-----------|-----------|-----------|-----|
| MUST: ... | ✅ / ❌    | ...       | ...       |     |
| SHOULD: . | <detail>  | ...       | ...       |     |
| NICE: ... | <detail>  | ...       | ...       |     |

## Eliminated
- <Approach X>: eliminated because <specific MUST failure with evidence>
- ...

## Finalists
1. **<name>** — from Paradigm X. Selected because...
2. **<name>** — from Paradigm Y. Selected because...
3. **<name>** (optional) — from Paradigm Z. Selected because...

## Key differentiator
<the single question that prototyping needs to answer>

## Open risks
<unknowns that could affect the decision>

Phase 4: Prototype and Compare

Build minimal prototypes of the finalists. The goal is to answer the key differentiating question, not to build complete implementations.

What "minimal" means

A prototype should be the smallest amount of code that tests the key differentiator identified in Phase 3. Specifically:

  • If the differentiator is performance, build just enough to benchmark (a hot loop, a simulated load)
  • If it's developer experience, build just enough to feel the ergonomics (a typical use case, not exhaustive coverage)
  • If it's complexity, build just enough to see the wiring (integration points, not full features)
  • If it's feasibility, build just enough to prove it works (happy path only)

Each prototype should typically be 50-200 lines of code. If you're writing more, you're probably building an implementation, not testing a hypothesis.

Steps

  1. Define comparison criteria BEFORE writing code. What will you measure? What will you observe? Write these down first. This prevents post-hoc rationalization — the natural tendency to justify whatever you already built. Be specific: "response time under 100 concurrent requests" not "good performance."
  2. Build minimal prototypes. Share test harnesses, data fixtures, and scaffolding across prototypes where possible. Put prototypes in .claude/explorations/<feature-name>/prototypes/.
  3. Run the comparison. Execute the comparison plan you defined in step 1. Record results concretely — numbers, observations, code complexity metrics. Not vibes.
  4. Check for surprises. Did prototyping reveal anything the analysis missed? New tradeoffs? Hidden complexity? An approach that looked simple but has a nasty edge case? Surprises from prototyping are some of the most valuable outputs of this entire process — they represent things you couldn't have known without building.

Output: COMPARISON.md

# Prototype Comparison: <feature name>

## Comparison criteria (defined before prototyping)
1. <what's being measured and how>
2. ...

## Results

### Prototype A: <name>
- Location: `prototypes/a/`
- Criterion 1: <concrete result>
- Criterion 2: <concrete result>
- Surprises: <anything unexpected>

### Prototype B: <name>
- Location: `prototypes/b/`
- ...

## Verdict
<which prototype answered the key differentiating question, and how>

## Updated understanding
<new insights from prototyping that weren't visible during analysis>

Phase 5: Decide and Plan

Select the winner based on accumulated evidence and create an implementation plan.

Steps

  1. Make the decision. State which approach wins and why. Reference specific evidence: prototype results, research findings, tradeoff analysis. The reasoning should be traceable back through your artifacts — someone reading DECISION.md should be able to follow the chain of evidence through COMPARISON.md → ANALYSIS.md → SOLUTION_MAP.md → PROBLEM_BRIEF.md.
  2. Document what was NOT chosen and why. This is as important as documenting what was chosen. Future-you will wonder "why didn't we just use X?" — the answer should be in the decision record. Each rejected alternative needs a specific, evidence-based reason, not "it wasn't as good."
  3. Outline implementation steps. Based on the winning approach, create a concrete plan. If the exploration surfaced risks, include mitigations.

Output: DECISION.md

# Decision: <feature name>

## Selected approach
**<name>** — <one-line description>

## Evidence for this choice
- <evidence from prototyping>
- <evidence from research>
- <evidence from analysis>

## Why not the alternatives
- **<Alternative A>**: <specific reason with evidence — not "it wasn't as good">
- **<Alternative B>**: <specific reason with evidence>

## Implementation plan
1. <step>
2. <step>
...

## Known risks and mitigations
- Risk: <what could go wrong>
  Mitigation: <how to handle it>

Session Protocol

Exploration may span multiple sessions, especially for complex features.

Starting a session

  1. Check .claude/explorations/ for existing exploration artifacts
  2. If found, read them in order: PROBLEM_BRIEF → SOLUTION_MAP → ANALYSIS → COMPARISON → DECISION
  3. Resume from where the last session left off

Ending a session mid-exploration

Write HANDOFF.md:

# Handoff: <feature name>

## Current phase
<which phase, and where within it>

## Completed
<what's been done, with pointers to artifacts>

## Next steps
<exact actions to resume — not vague, but specific>

## Open questions for the user
<anything blocking that needs user input>

平台分布

Codex

36.32%
按下载量换算32

Claude

30.14%
按下载量换算27

Cursor

17.67%
按下载量换算16

Gemini CLI

8.5%
按下载量换算8

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/petekp/claude-code-setup --skill solution-explorer 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills