| name | hyperindex |
| description | Search and browse biodiversity records and hypercerts on the Hypersphere network. Use when users ask about existing observations, want to see community records, or search for species data. |
Hyperindex
When to Use
- User asks 'what have we recorded?' or 'show me our observations'
- User asks about a specific species across the network
- User wants to see hypercerts/bumicerts or impact certificates
- User asks 'how many records do we have?'
- User asks 'how many have I done?' or 'show me my observations'
How to Use
- For community records: use type='occurrences' with the community DID
- For species search: use type='search' with the species name
- For browsing: use type='occurrences' without a DID filter
- Keep limit reasonable (5-10 for display, up to 20 for counts)
User-specific queries
When a user asks about THEIR observations ('how many have I done?', 'show me mine'):
- Use type='occurrences' with the community DID
- Set recordedByContains to "tg:<user_telegram_id>" โ the user's Telegram ID is in every message you receive (e.g. tg:6224264108)
- This filters server-side โ fast and accurate, returns totalCount too
- Do NOT ask the user for their DID โ you already have their Telegram ID from the message
- NEVER invent a DID for the user (e.g. did:telegram:xxx) โ that's not a real thing
- NEVER try client-side filtering โ use recordedByContains instead
Presentation (HTML for Telegram)
Format results using HTML tags, not Markdown. Use emoji for visual structure.
For occurrences:
๐บ <b>Bougainvillea spectabilis</b> <i>(Buganvilla)</i>
๐ Nairobi ยท ๐
26 mar 2026
๐ <a href="https://hyperscan.gainforest.app/...">Ver en Hyperscan</a>
๐ณ <b>Ficus thonningii</b>
๐ Kampala ยท ๐
26 mar 2026
For summaries: 'Hemos registrado 23 especies! Aquรญ van las mรกs recientes...'
For user-specific: 'Has registrado 5 observaciones! ๐'
Don't
- Don't dump raw JSON or URIs on the user
- Don't show DIDs โ they're internal identifiers
- Don't show more than 5 records at a time unless asked
- Don't query without a purpose โ always in response to a user question
- Don't ask the user for their DID โ you already know who they are from the message context
- Don't use Markdown formatting (bold, italic) โ use HTML (, , )