oma-search
Smart router for search queries across various documentation and code channels.
Install
mkdir -p .claude/skills/oma-search && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/13347" && unzip -o skill.zip -d .claude/skills/oma-search && rm skill.zipInstalls to .claude/skills/oma-search
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Intent-based search router with trust scoring. Routes queries to optimal channels (Context7 docs, native web search, gh/glab code search, Serena local) and attaches domain trust labels. Use for search, find, lookup, reference, docs, code search, and web research.Key capabilities
- →Classify information-seeking requests.
- →Route queries to the best search channel.
- →Attach trust labels to search results.
- →Return source-grounded results.
- →Support explicit flags to override intent classification.
- →Provide fallback explanations when primary routes fail.
How it works
The skill parses a query, classifies its intent, and dispatches it to an optimal search channel such as documentation, web, or code search, then applies trust scoring to the results.
Inputs & outputs
When to use oma-search
- →Find documentation
- →Perform web research
- →Search implementation patterns
About this skill
Search Agent - Intent-Based Search Router
Scheduling
Goal
Classify information-seeking requests, route them to the best search channel, attach trust labels, and return source-grounded results.
Intent signature
- User asks to search, find, look up, reference docs, inspect official documentation, search GitHub/GitLab code, or gather web research.
- Another skill needs reusable search infrastructure with trust scoring.
When to use
- Finding official library/framework documentation
- Web research for tutorials, examples, comparisons, and solutions
- Searching GitHub/GitLab code for implementation patterns
- Any query where the search channel is unclear (auto-routing)
- Other skills needing search infrastructure (shared invocation)
When NOT to use
- Local codebase exploration only -> use Serena MCP directly
- Git history or blame analysis -> use SCM Agent
- Full architecture research -> use Architecture Agent (may invoke this skill internally)
Expected inputs
- Query string, intent hint, or explicit flags such as
--docs,--code,--web,--strict,--wide,--gitlab - Optional required source type, recency, domain, or trust constraints
Expected outputs
- Ranked search results with route, source, trust label, and concise relevance summary
- Fallback explanation when primary route fails
- Source links or references suitable for the calling skill
Dependencies
- Context7 MCP for docs, runtime-native web search,
gh/glabfor code, Serena for local search resources/intent-rules.md,resources/trust-registry.md, execution protocol, examples, and checklist
Control-flow features
- Branches by classified intent, user flags, route success/failure, and trust constraints
- May call web/docs/code/local tools
- Scores domains at domain level only
Structural Flow
Entry
- Parse the query and flags.
- Classify the search intent.
- Select one best route unless ambiguity or flags justify more.
Scenes
- PREPARE: Parse query and classify route.
- ACT: Dispatch to docs, web, code, or local search.
- ACQUIRE: Collect search results and source metadata.
- VERIFY: Apply trust scoring and route-specific quality checks.
- FINALIZE: Present ranked results or fallback status.
Transitions
- If
--docs,--code,--web,--strict,--wide, or--gitlabis provided, flags override classifier. - If docs route fails, fall back to web.
- If web search needs fetch escalation, use
oma search fetchstrategies. - If query is purely local, use Serena MCP instead of web.
Failure and recovery
- If primary route fails, fall forward to the next appropriate route.
- If trust score is weak, label it instead of hiding uncertainty.
- If no reliable results exist, report that and suggest a narrower query.
Exit
- Success: results are routed, trust-scored, and source-grounded.
- Partial success: route failures or trust limitations are explicit.
Logical Operations
Actions
| Action | SSL primitive | Evidence |
|---|---|---|
| Parse query and flags | READ | User request |
| Classify intent | SELECT | Intent rules |
| Dispatch search route | CALL_TOOL | Docs, web, code, local tools |
| Collect results | READ | Search outputs |
| Score trust | VALIDATE | Trust registry |
| Rank and format | INFER | Relevance and trust |
| Report results | NOTIFY | Final answer |
Tools and instruments
- Context7 docs tools
- Runtime-native web search
gh search codeorglab api- Serena MCP for local project search
Canonical command path
gh search code "<query>"
glab api "/search?scope=blobs&search=<query>"
For docs and web routes, use the runtime's available official-docs or web-search tools after classifying intent; do not duplicate routes unless the intent is ambiguous.
Resource scope
| Scope | Resource target |
|---|---|
NETWORK | Web/docs/source-code search targets |
CODEBASE | Local files when local search is selected |
PROCESS | gh, glab, and CLI search commands |
MEMORY | Query classification, trust labels, selected results |
Preconditions
- Query and route constraints are clear enough to classify.
- Required search tools are available or fallback is possible.
Effects and side effects
- Performs external searches or local code searches.
- Produces ranked references that may influence downstream implementation or research.
Guardrails
- Classify intent before searching: every query goes through IntentClassifier first
- One query, one best route: avoid redundant multi-route unless intent is ambiguous
- Trust score every result: all non-local results get domain trust labels from the registry
- Flags override classifier: user-provided flags (
--docs,--code,--web,--strict,--wide,--gitlab) always take precedence - Fail forward: if primary route fails, fall back gracefully (docs->web, web->
oma search fetchstrategies) - No additional MCP required: Context7 for docs, runtime native for web, CLI for code, Serena for local
- Vendor-agnostic web search: use whatever the current runtime provides (WebSearch, Google, Bing)
- Domain-level trust only: do not attempt sub-path or page-level scoring
Routes
| Route | Primary Tool | Fallback | Trigger |
|---|---|---|---|
docs | Context7 MCP (resolve-library-id → query-docs) | web route | Official docs, API reference |
web | Runtime native search | oma search fetch (api/probe/impersonate/browser) | Tutorials, examples, solutions |
code | gh search code / glab api | (none) | Implementation patterns, repos |
local | Serena MCP (delegate) | (none) | Current project files, symbols |
Default Workflow
- Parse: Extract query, detect flags, classify intent
- Route: Dispatch to the appropriate search channel(s)
- Collect: Gather results from dispatched routes
- Score: Attach trust labels to each result domain
- Present: Format and rank results for the user
Invocation
Standalone
/oma-search "React Server Components streaming"
/oma-search --docs "Next.js middleware"
/oma-search --code "PKCE implementation"
/oma-search --strict "JWT refresh token rotation"
Shared Infrastructure (from other skills)
Other skills reference oma-search by specifying intent and query:
- State intent:
docs|web|code|local - Pass query string
- Use Trust Score in results to weigh source reliability
References
Follow resources/execution-protocol.md step by step.
See resources/examples.md for input/output examples.
Use resources/intent-rules.md for intent classification reference.
Use resources/trust-registry.md for domain trust scoring reference.
Before submitting, run resources/checklist.md.
Vendor-specific execution protocols are injected automatically by oma agent:spawn.
Source files live under ../_shared/runtime/execution-protocols/{vendor}.md.
- Execution steps:
resources/execution-protocol.md - Intent classification:
resources/intent-rules.md - Trust registry:
resources/trust-registry.md - Examples:
resources/examples.md - Checklist:
resources/checklist.md - Error recovery:
resources/error-playbook.md - Context loading:
../_shared/core/context-loading.md - Context budget:
../_shared/core/context-budget.md - Lessons learned:
../_shared/core/lessons-learned.md
When not to use it
- →For local codebase exploration only.
- →For Git history or blame analysis.
- →For full architecture research.
Limitations
- →It scores domains at the domain level only.
- →It does not attempt sub-path or page-level scoring.
- →It uses whatever the current runtime provides for web search.
How it compares
This skill automates the selection of the most appropriate search tool and adds a trust score to results, unlike manual searching which requires the user to choose a tool and evaluate credibility.
Compared to similar skills
oma-search side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| oma-search (this skill) | 0 | 1mo | Review | Intermediate |
| web-search | 33 | 9mo | Review | Beginner |
| perplexity | 14 | 6mo | No flags | Beginner |
| perplexity-search | 13 | 7mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
web-search
Igosuki
This skill should be used when users need to search the web for information, find current content, look up news articles, search for images, or find videos. It uses DuckDuckGo's search API to return results in clean, formatted output (text, markdown, or JSON). Use for research, fact-checking, finding recent information, or gathering web resources.
perplexity
davila7
Web search and research using Perplexity AI. Use when user says "search", "find", "look up", "ask", "research", or "what's the latest" for generic queries. NOT for library/framework docs (use Context7) or workspace questions.
perplexity-search
davila7
Perform AI-powered web searches with real-time information using Perplexity models via LiteLLM and OpenRouter. This skill should be used when conducting web searches for current information, finding recent scientific literature, getting grounded answers with source citations, or accessing information beyond the model's knowledge cutoff. Provides access to multiple Perplexity models including Sonar Pro, Sonar Pro Search (advanced agentic search), and Sonar Reasoning Pro through a single OpenRouter API key.
exa-search
benjaminjackson
Search the web for content matching a query with AI-powered semantic search. Use for finding relevant web pages, research papers, news articles, code repositories, or any web content by meaning rather than just keywords.
skill-gemini-google-maps-tool
dnvriend
Query Gemini with Google Maps grounding
exa-research
benjaminjackson
Use when the user mentions Exa research OR when the workflow benefits from complex, multi-step research and other exa-ai approaches are not yielding satisfactory results.