Files
Abiba (pi) c6beb650c4
CI / validate (pull_request) Failing after 2s
feat(agent-zero): Zulip adapter with A2A protocol for kagentz
New project: agent-zero-zulip/ — direct Zulip integration for Agent Zero
agents using A2A protocol internally.

Architecture:
  kagentz (CT 105) ┌──────────────────────┐
                    │ Zulip Adapter  ◄──►  │ Agent Zero
                    │ polls Zulip    A2A   │ Docker container
                    │ port 8001            │
                    └──────────────────────┘

- adapter.py: Zulip event queue poller + A2A client
- No intermediate bridge — direct kagentz ↔ Zulip
- Heartbeat, reconnection, placeholder→edit streaming
- Designed for re-use: scottdenya, future Agent Zero agents
2026-06-27 18:04:00 +00:00

1.0 KiB

Deploy Agent Zero Zulip Adapter

Prerequisites

  • Agent Zero running in Docker on the target CT
  • A Zulip bot created for the agent (kagentz-bot, scottdenya-bot, etc.)
  • Python 3.11+ with httpx

Steps

1. Create Zulip Bot

Go to Zulip admin → Bot management → Add a new bot:

  • Name after the agent
  • Copy the API key

2. Install Adapter

# On the target CT
pip install httpx

# Copy adapter files
scp -r agent-zero-zulip/ root@<ct-ip>:/opt/agent-zero-zulip/

# Create config
cp config.yaml.example config.yaml
# Edit config.yaml with Zulip credentials

3. Start A2A Server on Agent Zero

# Inside Agent Zero container
docker exec agent-zero /opt/venv-a0/bin/python3 /a0/usr/start_a2a_direct.py &

# Verify A2A is running
curl http://localhost:8001/.well-known/agent.json

4. Start Zulip Adapter

# On the host
cd /opt/agent-zero-zulip
python3 -m agent_zero_zulip.adapter &

# Verify
tail -f adapter.log

5. Test

Send a DM to kagentz-bot in Zulip. Expect "Processing..." → response.