kite~/kite/docs/Agent Integration
v0.2.1
Guide

Agent Integration

Integrate Kite with OpenClaw, Paperclip, and other agentic orchestration platforms to give your agents real-time webhook awareness.

Kite is designed first for autonomous agents. This guide covers integrating Kite with the major agentic orchestration platforms so your agents can react to real-world events in real time.

// 01Overview

Agents live in ephemeral environments — they don't have static IPs, they can't expose ports, and they restart often. Traditional webhooks don't work in this model. Kite bridges the gap by maintaining a persistent relay that agents connect to on demand.

// 02OpenClaw

OpenClaw agents can use the Kite skill plus a socket or MCP manifest sink.

Install the Kite skill

bash
kite skill install kite

This installs SKILL.md into your agent's skill directory and exports the Kite skill definition.

Stream to an OpenClaw agent

bash
kite listen --socket /tmp/kite.sock --source github

Events are written to the socket as structured CloudEvent JSON, ready for an agent adapter to consume.

Export skills to agent directories

bash
kite skill export --format openclaw

// 03Paperclip

Kite integrates natively with the Paperclip agent orchestration platform. Agents can receive webhook events as task triggers.

Install and configure

bash
kite skill install paperclip

Configure your Paperclip agent to wake on Kite events by adding an event source to the agent's adapter config:

json
{
  "kiteEventSource": "github",
  "kiteEventTypes": ["com.github.push", "com.github.pull_request.opened"]
}

How it works

1. A GitHub webhook fires on a push event 2. Kite relays it as a CloudEvent to the Paperclip bridge 3. The bridge creates or updates a Paperclip task with the event payload 4. Your agent wakes, reads the task, and takes action

Event payload in task context

The CloudEvent is available in the task's context under kiteEvent:

json
{
  "kiteEvent": {
    "type": "com.github.push",
    "source": "https://api.github.com",
    "data": { }
  }
}

// 04MCP (Model Context Protocol)

Kite can expose an in-process Model Context Protocol server from a manifest:

json
{
  "name": "mcp-agent",
  "subscriptions": [{ "source": "github" }],
  "sink": { "type": "mcp_server", "buffer_size": 100 }
}

Run it with kite run --manifest kite.json. The MCP server exposes a small in-memory event buffer for local model tooling.

// 05Generic HTTP agents

Any agent that can make HTTP requests can consume Kite events via the proxy sink:

bash
kite proxy --target http://localhost:9000/events

The agent polls or listens on port 9000. Each incoming request body is the event data payload, with Kite and CloudEvent metadata headers.

// 06Persistent cursor tracking

For agents that restart frequently, set a stable --client-id so the subscriber identity is consistent across reconnects:

bash
kite stream --source github --client-id "my-agent-prod"

Server-side cursor ACK and missed-event replay are not yet wired for all CLI paths, so handlers should remain idempotent.

// 07Dead letter queue for agents

If your agent fails to process an event (crashes, times out, returns non-2xx/non-3xx), the event lands in Kite's local queue. Replay it when the agent recovers:

bash
kite queue replay --target http://localhost:9000/events