Skip to main content
Smart folders are the core feature of Airstore. Describe what you need in plain English, and Airstore materializes matching results as files.

How it works

airstore create sources/gmail/investor-emails \
  --query "emails from investors in the last 30 days"
  1. Parse: Airstore sends your query to an LLM
  2. Translate: The LLM converts it to the source’s native query format (Gmail search syntax, GitHub filters, etc.)
  3. Execute: Airstore runs the query against the source API
  4. Materialize: Results become files in the folder
  5. Sync: Background process keeps the view fresh

Query examples

Good queries are specific and describe what you want:
SourceQueryWhat you get
Gmail”emails from investors in the last 30 days”Recent investor correspondence
Gmail”unread emails with attachments”Emails you haven’t opened that have files
GitHub”open PRs in acme/api with full diffs”PR diffs ready for review
GitHub”issues labeled bug assigned to me”Your bug backlog
Linear”high priority issues in the current sprint”Urgent work items
Drive”PDF contracts from 2024”Last year’s contracts
Notion”meeting notes from January”Recent meeting documentation

File structure

Smart folders contain files that represent query results:
~/airstore/sources/gmail/investor-emails/
├── 001-seed-round-followup.eml
├── 002-q4-update-reply.eml
├── 003-intro-request.eml
└── .airstore/
    └── metadata.json          # query info, last sync time
File names are generated to be descriptive and sortable.

Sync behavior

Smart folders sync automatically in the background:
  • Sync: Periodic background refresh
  • Consistency: Eventual (reads may be slightly stale)
  • Manual sync: airstore sync sources/gmail/investor-emails
# Check sync status
airstore status sources/gmail/investor-emails

# Force immediate sync
airstore sync sources/gmail/investor-emails

Nested smart folders

You can create smart folders at any level:
# Top-level smart folder
airstore create sources/github/all-prs \
  --query "all open PRs across my repos"

# Nested under a repo
airstore create sources/github/acme-api/security-issues \
  --query "issues labeled security in acme/api"

Limitations

Smart folders depend on what the source API supports:
  • Gmail: Supports most search operators (from, to, subject, date ranges, labels)
  • GitHub: Supports filters on PRs, issues, repos
  • Linear: Supports project, assignee, status, priority filters
  • Drive: Supports file type, date, owner filters
  • Notion: Supports database queries, page searches
If a query can’t be translated, Airstore will return an error with suggestions.

Updating queries

To change a smart folder’s query:
airstore update sources/gmail/investor-emails \
  --query "emails from investors in the last 60 days"
The folder re-syncs with the new query.

Deleting smart folders

airstore delete sources/gmail/investor-emails
This removes the smart folder but doesn’t affect the underlying data in the source.

Next steps