Skip to main content
A source view is a query against a connected integration — GitHub, Gmail, Slack, etc. — whose results are materialized as files in the virtual filesystem. You create a view, Airstore executes the query, and the matching data appears as a folder you can mount and read. There are two ways to define a view:
  • Smart mode — describe what you want in natural language and an LLM translates it into the appropriate API query.
  • Query mode — provide a structured filter object with explicit fields. No LLM involved; you get deterministic, repeatable results.
In smart mode, results are interpreted by an LLM, not exact matches. Be specific in your guidance for best results. Query mode gives you full control when you need precision.

Smart mode

Smart mode is the fastest way to get started. Provide a name and a guidance string describing what you want:
Airstore sends your guidance to an LLM, which translates it into the source’s native query format (Gmail search syntax, GitHub search qualifiers, etc.), executes the query, and materializes the results as files.

Good guidance examples

Query mode

Query mode lets you define views with structured filters — specific fields per integration, no LLM interpretation. This is useful when you know exactly what you want, or when you’re building automation that needs deterministic results. In the dashboard, toggle the mode selector from Smart to Query, then fill in the filter fields for your integration. Via the SDK:
When you provide a filter object instead of guidance, the view is automatically created in query mode.

Per-integration filters

Each integration supports a different set of filter fields. All fields are optional unless noted otherwise.

GitHub

Gmail

Slack

Linear

Google Drive

Notion

PostHog

Web

Content types

GitHub views support a content_type field that controls the output format of each file: For example, a view with content_type: "diff" on a PR repository produces files like 42_Add_login_endpoint_diff.md containing the unified diff, ready for code review.

Syncing

Source views are materialized — Airstore executes the query once and caches the results so reads are fast. To pick up new data from the source, you sync the view. From the dashboard: Click the Sync button in the toolbar when viewing a source view. From the SDK:
Syncing re-executes the view’s query against the live source API and updates the cached files. It’s idempotent — safe to call as often as you need.

When to sync

  • After you know the source data has changed (e.g., new PRs were opened)
  • On a schedule in your backend automation
  • Before a critical read where freshness matters
Views also sync automatically in the background on a periodic basis, so most of the time you don’t need to trigger it manually.

File structure

Each source view maps to a directory under /sources/<integration>/:
View names are converted to URL-safe slugs (e.g., “Open PRs” becomes open-prs).

Output formats

The file format is useful when you want a single document — for example, a sprint summary or a combined report. You can also specify a fileExt (e.g., .md) to control the output extension.

Next steps

Mounting

Mount Airstore and access your source views as local files.

TypeScript SDK

Create and manage source views programmatically.