|
| 1 | +--- |
| 2 | +title: Hyperspell |
| 3 | +description: Let agents search, answer, and learn from internal data |
| 4 | +--- |
| 5 | + |
| 6 | + |
| 7 | +Hyperspell lets agents search, answer, and learn from internal knowledge. It works across uploaded documents, integrations like Notion, Gmail, and Slack, and raw text input. It provides fast semantic retrieval, optional question-answering, and user-specific permissions. Let your users connect to multiple sources and use Hyperspell’s end-to-end data pipeline to get structured data with a single API call. |
| 8 | + |
| 9 | +## Description |
| 10 | + |
| 11 | +[Hyperspell](https://hyperspell.com) provides agents with the ability to build and query internal knowledge using: |
| 12 | + |
| 13 | +- Cross-source search across documents, emails, Notion, Gmail, Slack, and many other integrations |
| 14 | +- Upload files and documents to create your agents' memory |
| 15 | +- Answering questions requiring multiple documents |
| 16 | + |
| 17 | +## Installation |
| 18 | + |
| 19 | +```bash |
| 20 | +agentstack tools add hyperspell |
| 21 | +``` |
| 22 | + |
| 23 | +Create your Hyperspell app and get your API key from the [Hyperspell Dashboard](https://app.hyperspell.com/dashboard). |
| 24 | + |
| 25 | +Follow the instructions to connect your data sources |
| 26 | + |
| 27 | +Set the environment variables in your project's `.env` file: |
| 28 | + |
| 29 | +```env |
| 30 | +HYPERSPELL_API_KEY=your_api_key_here |
| 31 | +``` |
| 32 | + |
| 33 | +<Note> |
| 34 | + Hyperspell is a multi-tenant platform, and you can separate your data by use by setting the user id of your end-user in a variable too: |
| 35 | + |
| 36 | + ```env |
| 37 | + HYPERSPELL_USER_ID=your_user_id_here |
| 38 | + ``` |
| 39 | +</Note> |
| 40 | + |
| 41 | + |
| 42 | +## Available Functions |
| 43 | + |
| 44 | +The Hyperspell tool provides three core functions for knowledge retrieval and ingestion: |
| 45 | + |
| 46 | +### Query documents |
| 47 | + |
| 48 | +```python |
| 49 | +hyperspell_search(query, sources, answer=False, user_id=None) |
| 50 | +``` |
| 51 | + |
| 52 | +Search across your Hyperspell-connected sources for relevant information. |
| 53 | + |
| 54 | +**Parameters:** |
| 55 | + |
| 56 | +<ParamField path="query" type="string" required> |
| 57 | + The search query to find relevant information |
| 58 | +</ParamField> |
| 59 | +<ParamField path="sources" type="string" required> |
| 60 | + Comma-separated list of sources to search (e.g., `collections,notion,gmail`) |
| 61 | +</ParamField> |
| 62 | +<ParamField path="answer" type="bool" default="False"> |
| 63 | + If True, returns a direct AI answer instead of just documents. Defaults to False |
| 64 | +</ParamField> |
| 65 | +<ParamField path="user_id" type="string"> |
| 66 | + User ID to use for this request. Defaults to `HYPERSPELL_USER_ID` env var |
| 67 | +</ParamField> |
| 68 | + |
| 69 | +### Add documents |
| 70 | + |
| 71 | +```python |
| 72 | +hyperspell_add_document(text, title=None, collection=None, user_id=None) |
| 73 | +``` |
| 74 | + |
| 75 | +Add a text document to your Hyperspell knowledge base. |
| 76 | + |
| 77 | +**Parameters:** |
| 78 | + |
| 79 | +<ParamField path="text" type="string" required> |
| 80 | + The full text content to add |
| 81 | +</ParamField> |
| 82 | +<ParamField path="title" type="string" required> |
| 83 | + Optional title for the document |
| 84 | +</ParamField> |
| 85 | +<ParamField path="collection" type="string"> |
| 86 | + Optional collection name to organize the document |
| 87 | +</ParamField> |
| 88 | +<ParamField path="user_id" type="string"> |
| 89 | + User ID to use for this request. Defaults to `HYPERSPELL_USER_ID` env var |
| 90 | +</ParamField> |
| 91 | + |
| 92 | + |
| 93 | +### Upload files |
| 94 | + |
| 95 | +```python |
| 96 | +hyperspell_upload_file(file_path, collection=None, user_id=None) |
| 97 | +``` |
| 98 | + |
| 99 | +Upload a file (PDF, Word doc, spreadsheet, etc.) to your Hyperspell knowledge base. |
| 100 | + |
| 101 | +**Parameters:** |
| 102 | + |
| 103 | +<ParamField path="file_path" type="string" required> |
| 104 | + Path to the file to upload |
| 105 | +</ParamField> |
| 106 | +<ParamField path="collection" type="string"> |
| 107 | + Optional collection name to organize the document |
| 108 | +</ParamField> |
| 109 | +<ParamField path="user_id" type="string"> |
| 110 | + User ID to use for this request. Defaults to `HYPERSPELL_USER_ID` env var |
| 111 | +</ParamField> |
| 112 | + |
| 113 | +If no `user_id` is provided, the tool defaults to the `HYPERSPELL_USER_ID` environment variable. |
| 114 | + |
| 115 | +## Integration Sources |
| 116 | + |
| 117 | +Hyperspell can search across multiple integrated sources: |
| 118 | + |
| 119 | +- **Collections**: Your uploaded documents and added text |
| 120 | +- **Notion**: Connected Notion workspaces |
| 121 | +- **Gmail**: Connected Gmail accounts |
| 122 | +- **Slack**: Connected Slack workspaces |
| 123 | +- **and many more**: Additional integrations available through the Hyperspell platform |
| 124 | + |
| 125 | +For detailed integration setup, visit the [Hyperspell documentation](https://docs.hyperspell.com). |
0 commit comments