Connect a source and choose what gets indexed
Connect a provider, catalog what it holds, and index only the parts worth paying for.
Connecting a provider does not index everything it holds. Orcha catalogs the source first, then indexes only what you select. This guide walks the flow in the app; the model behind it is in Connected sources.
You need the workspace admin role.
1. Connect the provider
Open Connectors and pick a provider card. Most providers open an OAuth consent screen; GitHub installs a read-only GitHub App on the repositories you choose, and Granola takes an API key. A card that says setup is incomplete is waiting on credentials an operator has to configure for your environment.
You can connect more than one account per provider. Each account appears as its own tab under Manage.
2. Let the catalog build
The first sync walks the provider and records what exists: names, paths, sizes, and revisions, without downloading bodies. This is cheap and bounded by the provider's daily call budget, which the Manage view shows as calls used today.
3. Set indexing rules
Each resource (a repository, a drive, a Notion workspace, a Linear team) gets a policy, and paths inside it can override that policy:
| Policy | Use it when |
|---|---|
| Index essentials | You want the documentation and guidance files without the whole tree |
| Index all supported content | The whole subtree is worth searching |
| Discover only | You want it findable and live-fetchable, but not stored |
| Don't include | The subtree is noise, or off-limits |
The deepest matching rule wins, so a repository can be essentials at the root, full under docs/, and excluded under vendor/. Picking a policy previews the effect: how many objects would be indexed, how many bytes, and roughly how many provider API calls that costs. Rules take effect when you save.
Providers start from different defaults. GitHub and Granola index essentials. Drive, OneDrive, Dropbox, Notion, Linear, Jira, and Zoom catalog first and index nothing until you say so. Gmail is off entirely until you add its OAuth scope and an explicit rule.
4. Check the result
Each cataloged object shows its state:
- Indexed: the body is stored and searchable.
- Queued: selected, waiting for the next sync to fetch it.
- Catalog only: metadata only. Still reachable through
balancedandfreshsearches. - Skipped: a type Orcha cannot index, with the reason.
Run Sync now to apply changes immediately instead of waiting for the scheduled run. Free workspaces sync daily; paid plans sync more often and also accept provider webhooks.
5. Query it
Indexed source documents come back from search_context like any other content, cited to the exact upstream version. Catalog-only objects are reachable without indexing them:
balanced fetches a few decisively matching catalog entries live; fresh also queries providers that answer live, such as issue trackers. To go straight at one provider, use query_source, and use fetch_source_document to pull a single document's full body. Source IDs come from get_workspace_overview.
When to index rather than catalog
Index content your agents read repeatedly: documentation, runbooks, specs, meeting summaries. Leave the long tail cataloged. Retained content is faster, costs no provider calls at query time, and stays searchable when a provider is down; cataloged content costs nothing to keep and is still reachable when a question happens to need it.