Skip to main content
Version: 0.5.1

Overview

Agent Kernel provides various built in integrations to connect your AI agents with external platforms and services. These integrations allow you to deploy your agents in real-world environments and interact with users through different channels.

Execution Hooks​

Agent Kernel provides powerful execution hooks that let you customize agent behavior at runtime.

Observability & Monitoring​

  • Langfuse - Open-source LLM engineering platform for tracing, evaluating, and monitoring AI applications. See Traceability and Observability for detailed setup and usage.
  • OpenLLMetry (Traceloop) - OpenTelemetry-based observability for LLM applications with support for multiple backends including Traceloop, Datadog, New Relic, and Honeycomb. See Traceability and Observability for detailed setup and usage.

Social media​

These are built on REST APIs and you can install custom integrations as well.

Built-in​

The following built-in integrations are available.

  • Slack - Deploy agents as Slack bots that can respond to mentions and direct messages in Slack workspaces
  • WhatsApp - Deploy agents as WhatsApp bots
  • Messenger - Deploy agents as FB Messenger bots
  • Instagram - Deploy agents as Instagram DM bots
  • Telegram - Deploy agents as Telegram bots
  • Gmail - Deploy agents as Gmail bots that automatically read and reply to emails
  • Microsoft Teams - Deploy agents as Microsoft Teams bots via Azure Bot Framework, supporting 1:1 chats, group chats, and channels

Custom​

For REST API based 'custom integrations' you can implement RESTRequestHandler and pass it to the RESTAPI.run() method. The built-in integrations are also developed similarly.

from fastapi import APIRouter
from agentkernel.api import RESTRequestHandler
from agentkernel.api import RESTAPI
from agentkernel.slack import AgentSlackRequestHandler

class CustomHandler(RESTRequestHandler):
def get_router(self) -> APIRouter:
"""
- GET /health: Health check
- GET /api/v1/agents: List available agents
"""
router = APIRouter()

@router.get("/health")
def health():
return {"status": "ok"}

@router.get("/api/v1/agents")
def list_agents():
return {"agents": list(Runtime.instance().agents().keys())}

@router.get("/rag_agent")
def handle_rag(req: Request):
return self._handler(req)

def _handler(req):
# Do a vector search and return something

if __name__ == "__main__":
RESTAPI.run([ AgentSlackRequestHandler(), CustomHandler()]) # Can pass multiple handlers

Ready to Ship Your
First Agent?

Free, open-source, Apache 2.0. No licensing costs, no vendor lock-in. Join hundreds of developers building production AI agents with Agent Kernel.

Agent Kernel
Ask Agent Kernel