Choose how to run this agent
Download Agent
Choose how you want to use this agent:
Use Security Settings Key (Recommended)
Use the API key you've already saved in Security Settings. Quick and convenient!
- No need to re-enter API key
- Works offline after download
- Centralized key management
No API key found in Security Settings. Add one now
Enter API Key Manually
Enter your API key now for this specific agent download.
- Use different key for this agent
- One-time use (not saved)
- Works offline after download
Configure Agent Encryption
Description
Search your own notes or documents by meaning, not keywords — instant results with no LLM download.
Source Code
# How many passages to return per search.
SEARCH_TOP_K = [[[SEARCH_TOP_K|5]]]
async def _ingest(source, text):
"""(JS-callable) Index text as individual passages, one per non-empty line.
Per-line indexing keeps each note / FAQ entry / list item its own searchable
unit (rather than merging a short blob into one chunk), so ranking is
meaningful. Underscore-prefixed so it is never exposed to the LLM as a tool.
Returns the number of passages stored, as a string (for the UI).
"""
passages = [line.strip() for line in text.splitlines() if line.strip()]
total = 0
for passage in passages:
total += await agentop_rag.add_document(source, passage)
return str(total)
async def process_user_query(query):
"""Return the most semantically similar passages — no LLM generation.
Retrieval is deterministic and runs entirely on the embedding model, so this
template never loads a chat model.
"""
hits = await agentop_rag.search(query, SEARCH_TOP_K)
if not hits:
return "No matches yet — index some text first, then search."
lines = []
for i, h in enumerate(hits):
score = round(float(h["score"]) * 100)
lines.append(f"[{i + 1}] {score}% match · {h['source']}\n{h['text']}")
return "\n\n".join(lines)
More by ozzo
New Hire Handbook Q&A
Based on the New Hire Handbook Q&A template.
Contract Plain-Language Explainer
Upload a contract and get it explained in plain language — obligations, fees, deadlines, exit claus…
WhatsApp Sales Copilot
Turn a raw WhatsApp chat export into a mini CRM — typed quotes, bookings, payments and boarding pas…
Private Quote & Material Estimator
Drop competing contractor quotes and compare them side by side — totals, inclusions, exclusions — t…
Messy Itinerary Travel Planner
Drop your messy pile of booking PDFs and trip notes and get a clean day-by-day itinerary — plus war…
Meeting Minutes
Turn a meeting recording into a summary, key decisions, and action items, then ask follow-up questi…