Skip to main content

Airweave Search Tool

Airweave is an open-source platform that makes any app searchable for your agent. Sync and search across 35+ data sources (Notion, Slack, Google Drive, databases, and more) with semantic search.

Installation

npm install @airweave/ai-sdk

Environment Variables

AIRWEAVE_API_KEY=your-airweave-api-key

Supported Data Sources

  • Productivity: Notion, Slack, Google Drive, Dropbox
  • Databases: PostgreSQL, MySQL, MongoDB
  • Code: GitHub, GitLab
  • Documents: Confluence, SharePoint
  • CRM: Salesforce, HubSpot
  • And 25+ more…

Quick Start

import { Agent } from 'praisonai';
import { airweaveSearch } from 'praisonai/tools';

const agent = new Agent({
  name: 'DataSearcher',
  instructions: 'Search across connected data sources.',
  tools: [airweaveSearch()],
});

const result = await agent.run('Find documents about Q4 planning');
console.log(result.text);

Configuration Options

import { airweaveSearch } from 'praisonai/tools';

const searchTool = airweaveSearch({
  // Filter by data source
  sources: ['notion', 'slack', 'google-drive'],
  
  // Number of results
  numResults: 10,
  
  // Semantic search threshold
  threshold: 0.7,
});

Advanced Example

import { Agent } from 'praisonai';
import { airweaveSearch } from 'praisonai/tools';

const agent = new Agent({
  name: 'KnowledgeAssistant',
  instructions: `You help find information across company data sources.
    Search Notion for documentation, Slack for discussions, 
    and Google Drive for files.`,
  tools: [
    airweaveSearch({
      sources: ['notion', 'slack', 'google-drive'],
      numResults: 5,
    }),
  ],
});

const result = await agent.run('Find all information about the new product launch');
console.log(result.text);

Response Format

interface AirweaveSearchResult {
  results: Array<{
    title: string;
    content: string;
    source: string;
    url?: string;
    score: number;
    metadata?: Record<string, unknown>;
  }>;
}

Best Practices

  1. Connect sources first - Set up data source connections in Airweave
  2. Filter by source - Narrow search to relevant sources
  3. Use semantic queries - Natural language works best
  4. Set thresholds - Adjust for precision vs recall
  • Exa - Web search
  • Valyu - Domain-specific search