
The open-source
agent harness.
Built in Europe.
Build production AI agents with tools, plugins, MCP, teams, and skills. TypeScript-native. Runs on Vercel AI SDK v6.
EU-Made & Open Source
MIT licensed, built in Europe. Full data sovereignty, no vendor lock-in. Audit every line of code.
Production-Grade
Durable sessions, checkpointing, context compaction, and full observability. Ready for real workloads.
Plugin Ecosystem
MCP integration, skills following the agentskills.io specification, extensible hooks system, and middleware.
Multi-Agent Teams
Coordinate multiple agents with shared tasks, message passing, spawning, and team-level observability.
Everything you need to build agents
A complete framework for creating, orchestrating, and deploying AI agents in production.
Agent Creation
Define agents with createAgent() — model, system prompt, tools, plugins, and hooks in one call.
Tool Calling & MCP
Built-in tools for file ops, bash, search. Connect any MCP server for external integrations.
Skills System
File-based (SKILL.md) and programmatic (defineSkill) skills following the agentskills.io spec.
Hooks & Middleware
Lifecycle hooks for every stage: PreGenerate, PostToolUse, guardrails, rate limiting, logging.
Streaming & Real-time
Stream responses to clients with stream(), streamResponse(), and streamDataResponse().
Agent Teams
Multi-agent coordination with shared tasks, mailboxes, spawning, and team observability.
Simple, powerful API
From a single agent to coordinated teams — a few lines of TypeScript is all you need.
import { createAgent } from '@lleverage-ai/agent-sdk'
import { anthropic } from '@ai-sdk/anthropic'
const agent = createAgent({
model: anthropic('claude-sonnet-4-5-20250514'),
system: 'You are a helpful coding assistant.',
tools: ['read', 'write', 'edit', 'bash', 'glob', 'grep'],
})
const result = await agent.stream(
'Refactor the auth module to use JWT tokens'
)How it works
The SDK composes agents from modular building blocks. Each piece is optional and replaceable.
Get started in minutes
Three steps to your first agent. Full documentation on GitHub.
Install
bun add @lleverage-ai/agent-sdk ai zod
bun add @ai-sdk/anthropic # or @ai-sdk/openaiCreate an agent
import { createAgent } from '@lleverage-ai/agent-sdk'
import { anthropic } from '@ai-sdk/anthropic'
const agent = createAgent({
model: anthropic('claude-sonnet-4-5-20250514'),
system: 'You are a helpful assistant.',
tools: ['read', 'write', 'bash'],
})Run it
const result = await agent.stream(
'Help me set up a new Next.js project'
)
// Or use streamResponse() for HTTP endpoints
return agent.streamResponse(request)