Workspace Search (qmd)
Local workspace search for Canvas Notebook. Searches direct text files via workspace-text and derived document text such as DOCX extracts via workspace-derived.
When to Use
Use this skill when the user requests:
- "Search my notes"
- "Find related documents"
- "Search my workspace"
- "Search for ... in my workspace"
- "Where is ..."
- "Finde ..."
Default Behavior
- Use the PI tool contract:
qmd({ query, mode, limit, collection }) - Prefer
mode=search(BM25) - fast and safe as the default - Use
mode=vsearchonly if keyword search fails and semantic similarity is needed - Avoid
mode=queryunless it was explicitly enabled for this runtime or the user explicitly asks for the expensive path
Parameters
- query (required): Search query
- mode: Search mode (search, vsearch, query). Default: search
- collection: Collection to search. Default: workspace-text + workspace-derived
- limit: Maximum number of results. Default: 10
Search Modes
qmd search(default): Fast keyword search (BM25)qmd vsearch(last resort): Semantic similarity (vector). Often slow due to local LLM before lookup.qmd query(mostly skip): Hybrid search + LLM reranking. Often slower than vsearch.
Examples
Standard search:
qmd({ query: "my search term", mode: "search" })
Specific collection:
qmd({ query: "search term", collection: "workspace-text" })
More results:
qmd({ query: "search term", limit: 10 })
Semantic search (slower):
qmd({ query: "conceptually similar content", mode: "vsearch" })
Requirements
- Bun >= 1.0.0 (automatically installed)
- SQLite3 (available in container)