search-first

Searches package registries, MCP servers, and GitHub for existing solutions before writing custom code.

Updated Sep 3, 2026
One-click install
npx skills add https://github.com/CMiller838/meal-planner --skill search-first-cmiller838
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: search-first
Source: https://github.com/CMiller838/meal-planner/tree/main/.claude/skills/search-first
Command: npx skills add https://github.com/CMiller838/meal-planner --skill search-first-cmiller838

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Developers often write custom utilities and integrations without checking whether maintained libraries, MCP servers, or existing skills already solve the problem, leading to duplicated effort and unnecessary maintenance burden. ## Core Features & Use Cases - Structured Research Workflow: Runs a five-phase process covering need analysis, parallel search across npm/PyPI, MCP servers, and GitHub, candidate evaluation, and an adopt/extend/build decision. - Tool Availability Preflight: Verifies which search channels (ripgrep, package managers, GitHub CLI, MCP tools) are actually available and honestly reports skipped channels. - Decision Matrix: Maps search outcomes to concrete actions such as adopting a well-maintained package, extending a partial match, or building custom code only when nothing fits. - Use Case: When asked to add dead-link checking to a documentation site, the skill searches npm, finds textlint-rule-no-dead-link, and recommends installing it instead of writing a custom checker. ## Quick Start Before writing any new utility or integration, ask the assistant to run the search-first workflow to find existing packages, MCP servers, or skills that already solve the problem.

Frequently Asked Questions about search-first

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I check if a library exists before writing custom code?

Search package registries like npm or PyPI for your problem domain, then check GitHub for maintained implementations. The search-first workflow formalizes this with parallel searches across registries, MCP servers, and skills, followed by a scored evaluation of candidates.

When should I adopt a package versus build a custom solution?

Adopt when you find an exact match that is well-maintained with a permissive license like MIT or Apache. Extend when a partial match provides a good foundation, and build custom only when no suitable candidates exist after searching all channels.

What search channels does the research workflow cover?

The workflow covers repository search with ripgrep, package registries like npm and PyPI, MCP server configurations, local Claude skills directories, and GitHub code search. A preflight step verifies which channels are available and reports any that were skipped.

Can I use this workflow without the GitHub CLI installed?

Yes, the preflight check detects missing tools like the GitHub CLI and falls back to public web search or local git history. The workflow requires honest reporting of which channels were unavailable rather than claiming full coverage.

What are common mistakes when searching for existing solutions?

Common anti-patterns include writing code without searching, ignoring MCP servers that already provide the capability, silently skipping unavailable search channels, over-wrapping libraries until they lose value, and installing large packages for one small feature.