skills/airweave-setup/SKILL.md
Set up and integrate Airweave into applications. Use when the user wants to install Airweave, create collections, connect data sources, configure MCP servers, or set up the SDK to integrate Airweave into their app. For developers building with Airweave.
npx skillsauth add airweave-ai/skills airweave-setupInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Airweave is an open-source platform that makes any app searchable for AI agents. It connects to apps, productivity tools, databases, or document stores and transforms their contents into searchable knowledge bases.
pip install airweave-sdk # Python
npm install @airweave/sdk # TypeScript
git clone https://github.com/airweave-ai/airweave.git
cd airweave
chmod +x start.sh
./start.sh
Access the dashboard at http://localhost:8080
The typical Airweave workflow follows these steps:
A collection groups multiple data sources into a single searchable endpoint.
Python:
from airweave import AirweaveSDK
client = AirweaveSDK(
api_key="YOUR_API_KEY",
base_url="https://api.airweave.ai" # or http://localhost:8001 for self-hosted
)
collection = client.collections.create(name="My Knowledge Base")
print(f"Collection ID: {collection.readable_id}")
TypeScript:
import { AirweaveSDKClient } from "@airweave/sdk";
const client = new AirweaveSDKClient({ apiKey: "YOUR_API_KEY" });
const collection = await client.collections.create({ name: "My Knowledge Base" });
Connect data sources to your collection. 40+ sources supported including:
See SDK-REFERENCE.md for the complete list of source short names.
Python (API Key sources like Stripe, Linear):
source = client.source_connections.create(
name="My Stripe Connection",
short_name="stripe",
readable_collection_id=collection.readable_id,
authentication={
"credentials": {"api_key": "sk_live_your_stripe_key"}
}
)
OAuth sources (Slack, Google, Microsoft, etc.):
Most sources use OAuth for authentication. Use the Airweave UI at https://app.airweave.ai to connect these sources—it handles the OAuth flow automatically.
Once synced, search across all connected sources. Airweave provides three search modes:
| Mode | Description | Best For |
|------|-------------|----------|
| instant | Direct vector search | Fast lookups, browsing |
| classic | AI-optimized search with LLM-generated search plans | Most searches (default) |
| agentic | Full agent loop with iterative reasoning | Complex questions, analysis |
Python:
# Classic search (default) — AI-optimized
results = client.collections.search(
readable_id=collection.readable_id,
query="customer feedback about pricing",
mode="classic"
)
for result in results.results:
print(f"Source: {result.airweave_system_metadata.source_name}")
print(f"Name: {result.name}")
print(f"Content: {result.textual_representation[:200]}...")
print(f"Score: {result.relevance_score}")
print(f"URL: {result.web_url}")
Fast, direct vector search. Best for simple lookups.
results = client.collections.search(
readable_id=collection.readable_id,
query="API documentation",
mode="instant",
retrieval_strategy="hybrid", # "hybrid" (default), "neural", or "keyword"
limit=20,
offset=0
)
AI generates an optimized search plan. Best general-purpose mode.
results = client.collections.search(
readable_id=collection.readable_id,
query="technical documentation",
mode="classic",
limit=20,
offset=0
)
Full agent loop that iteratively searches, reads, and reasons over results.
results = client.collections.search(
readable_id=collection.readable_id,
query="Summarize all decisions about the authentication redesign",
mode="agentic",
thinking=True, # Enable extended reasoning
limit=10
)
Airweave exposes search via MCP (Model Context Protocol) for seamless AI agent integration.
Add to your MCP configuration (~/.cursor/mcp.json):
{
"mcpServers": {
"airweave-search": {
"command": "npx",
"args": ["airweave-mcp-search"],
"env": {
"AIRWEAVE_API_KEY": "your-api-key",
"AIRWEAVE_COLLECTION": "your-collection-id",
"AIRWEAVE_BASE_URL": "https://api.airweave.ai"
}
}
}
}
For cloud-based AI platforms like OpenAI Agent Builder:
https://mcp.airweave.aiSee MCP-SETUP.md for detailed configuration.
classic instead of instant)For detailed SDK reference, see SDK-REFERENCE.md. For advanced search patterns, see SEARCH-PATTERNS.md.
development
Search and retrieve context from Airweave collections. Use when users ask about their data in connected apps (Slack, GitHub, Notion, Jira, Confluence, Google Drive, Salesforce, databases, etc.), need to find documents or information from their workspace, want answers based on their company data, or need you to check app data for context to complete a task.
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------