search-provider

Implement a pluggable Provider system for multi-source Android search.

49|3|Updated Nov 7, 2025
One-click install
npx skills add https://github.com/mrndstvndv/Search --skill search-provider
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: search-provider
Source: https://github.com/mrndstvndv/Search/tree/main/.opencode/skill/search-provider
Command: npx skills add https://github.com/mrndstvndv/Search --skill search-provider

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

The Provider System abstracts search sources behind a single interface, enabling a scalable, pluggable architecture for multi-source results in an Android app.

Core Features & Use Cases

  • Interface-driven design with a Provider contract (id, displayName, refreshSignal, initialize, canHandle, query, dispose).
  • Eight built-in providers (AppList, WebSearch, FileSearch, Contacts, Calculator, Settings, TextUtils, Termux) and a simple lifecycle orchestrated in MainActivity.
  • Use cases include centralized search across apps, files, and system data with consistent UX and lifecycle management.

Quick Start

Register your new provider in MainActivity to enable it in the multi-source search pipeline.

Frequently Asked Questions about search-provider

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

FAQPage Schema
How do I implement multi-source search in an Android app?

Multi-source search in Android is implemented using a pluggable Provider system. It abstracts various search sources behind a single interface, enabling a scalable architecture for multi-source results with a consistent lifecycle managed in MainActivity.

What does a pluggable search provider interface look like in Android?

A pluggable search provider interface defines a contract with an id, displayName, and refreshSignal, alongside lifecycle methods including initialize, canHandle, query, and dispose. This enforces consistent resource setup, filtering, querying, and cleanup across all sources.

How do I add a new search source to an existing Android search pipeline?

To add a new search source, implement the Provider contract with the required lifecycle methods, then register your new provider in MainActivity. This enables it in the multi-source search pipeline alongside built-in sources like AppList and FileSearch.

What built-in search sources can I use for centralized Android search?

You can use eight built-in search sources for centralized Android search: AppList, WebSearch, FileSearch, Contacts, Calculator, Settings, TextUtils, and Termux. These allow consistent searching across apps, files, and system data.

When does an Android search provider need to clean up resources?

An Android search provider needs to clean up resources during the dispose phase of its lifecycle. This disposal routine is enforced by the Provider contract to release heavy resources initialized earlier when the search session ends or the provider is no longer needed.

Can I use this pluggable search system for searching contacts and files on Android?

Yes, you can search contacts and files on Android using the built-in Contacts and FileSearch providers. They integrate into the unified search pipeline, allowing users to query system data and local files through one consistent interface.