haops_discover
Searches documentation metadata to find relevant sections by scope and keywords, returning summaries for quick topic discovery.
Instructions
Metadata-index discovery (ADR-029 P2b): find which doc sections cover a topic BEFORE reading full bodies.
PRIMARY USAGE — filter by scope then pinpoint:
relevantTo (controlled vocab) — SCOPE filter: narrows to sections tagged for your role/task. Roles: architect | dev | qa | devops Task-types: rag | helpdesk | auth | mobile | git | testing | memory | deploy | docs | notifications | livekit | email | distribution | communication Pass one or several values; sections matching ANY value are returned.
q (free text, case-insensitive, forgiving) — PINPOINT filter: searched over title + summary. Combine with relevantTo for best results.
SECONDARY USAGE — exact tag match (brittle, prefer relevantTo): covers — exact agentMetadata.covers tag match (e.g. "auth-and-roles"). Fails silently if tag is misspelled or not yet indexed. Use only when you know the exact tag.
RETURNS thin rows per matching doc section: { entityType, entityId, title, summary, covers, relevantTo, sectionStatus, stale } Feed entityId into haops_get_doc_section to retrieve the full body.
Example — find RAG-related docs scoped to dev role: { projectSlug: "fdev", relevantTo: ["rag", "dev"], q: "metadata index" }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Free-text search over title + summary (case-insensitive, max 512 chars). Combine with relevantTo for precision. | |
| limit | No | Maximum results to return (1–200, default 25). | |
| covers | No | Exact agentMetadata.covers tag filter (brittle — fails silently if tag is wrong). Use relevantTo + q instead when possible. | |
| relevantTo | No | Scope filter — controlled vocab: roles (architect/dev/qa/devops) + task-types (rag/helpdesk/auth/mobile/git/testing/memory/deploy/docs/notifications/livekit/email/distribution/communication). Sections matching ANY value are returned. | |
| entityTypes | No | Entity types to search. Default: ["doc_section"]. Reserved for future extension. | |
| projectSlug | Yes | The project slug (URL identifier) |