skills/search-first/SKILL.md
Research-before-coding workflow. Search for existing tools, libraries, and patterns before writing custom code. Use whenever adding new functionality.
npx skillsauth add a2mus/ecc-antigravity search-firstInstall 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.
Use this skill BEFORE writing any new code when:
1. NEED ANALYSIS
└─ Define what functionality is needed
└─ Identify language/framework constraints
2. PARALLEL SEARCH
├─ PyPI / npm — existing packages
├─ MCP servers — check mcp_config.json
├─ Repo — grep/search existing codebase first
└─ GitHub / Web — maintained OSS alternatives
3. EVALUATE CANDIDATES
Score each on: functionality, maintenance, community,
documentation, license, dependency weight
4. DECIDE
├─ Adopt as-is (exact match, well-maintained, MIT/Apache)
├─ Extend/Wrap (partial match, good foundation)
├─ Compose (combine 2-3 small packages)
└─ Build Custom (only if nothing suitable found)
5. IMPLEMENT
Install package / configure MCP / write minimal code
| Signal | Action | |--------|--------| | Exact match, well-maintained, MIT/Apache | Adopt — install and use directly | | Partial match, good foundation | Extend — install + write thin wrapper | | Multiple weak matches | Compose — combine 2-3 small packages | | Nothing suitable | Build — write custom, informed by research |
Before writing ANY utility or new functionality, run through:
grep/rg~/.gemini/antigravity/mcp_config.json~/.gemini/skills/httpx, requestspydanticpython-decouple, dynaconfclick, typerpytest, pytest-qgisky, gotzodjest, vitesteslint, prettierExample 1: "Add YAML config loading"
Need: Load YAML config files
Search: PyPI "yaml python"
Found: PyYAML (score: 10/10)
Action: ADOPT — pip install pyyaml
Result: Zero custom code
Example 2: "Add HTTP retries"
Need: HTTP client with retry and timeout
Search: PyPI "httpx retry"
Found: httpx + tenacity (score: 9/10)
Action: ADOPT — use httpx with tenacity retry decorator
Result: Battle-tested, zero custom retry logic
development
Test-Driven Development workflow. Enforces RED → GREEN → REFACTOR cycle with 80% coverage gate. Use for all new features and bug fixes.
testing
Security audit checklist and workflow. Run before commits, PRs, or deploying. Covers secrets detection, input validation, OWASP Top 10, and dependency scanning.
development
Comprehensive Python idioms, best practices, and patterns. Covers dataclasses, type hints, async, error handling, testing, and QGIS-specific patterns.
development
React and Next.js patterns — component architecture, state management, data fetching, performance optimization, accessibility, and TypeScript conventions for web apps.