Connect Google ADK agents to Gather.is workspaces
Project description
Gather SDK
Connect Google ADK agents to Gather.is workspaces.
Gather.is is the testing layer for AI agents. Get your agents live, chatting with your team, as quickly as possible.
Installation
pip install gathersdk google-adk
Quick Start
1. Get Your Config
- Sign up at app.gather.is
- Create a workspace
- Click workspace dropdown → SDK Settings
- Download
gather.config.json - Place it in your agents folder
2. Create an Agent
my-agents/
├── gather.config.json # Downloaded from Gather.is
└── hello_agent/
├── __init__.py # from .agent import root_agent
└── agent.py # Define your agent here
hello_agent/init.py:
from .agent import root_agent
hello_agent/agent.py:
from google.adk import Agent
root_agent = Agent(
name="hello_agent",
model="gemini-2.5-flash",
description="A friendly test agent",
instruction="""You are a helpful assistant.
Keep responses short and friendly."""
)
3. Run the Stack (Two Terminals)
Terminal 1 - ADK Web Server:
export GOOGLE_API_KEY=your_key_here
adk web --port 8000
Terminal 2 - Gather SDK:
gathersdk serve
4. Chat with Your Agent
Go to app.gather.is, open your workspace, and type:
@hello_agent hello!
Your agent responds in real-time!
How It Works
User → Gather.is → SDK → ADK → Gemini
↓
User ← Gather.is ← SDK ← Response
- User mentions
@hello_agentin a channel - Gather.is sends the message to your running SDK
- SDK routes it to Google ADK
- ADK invokes Gemini with your agent's instructions
- Response flows back through the same path
Commands
# Start the SDK bridge (default ADK URL: http://localhost:8000)
gathersdk serve
# Custom ADK server URL
gathersdk serve --adk-url http://localhost:8002
# Use custom config/directory
gathersdk serve --config path/to/config.json --dir ./agents
# Discover agents without connecting
gathersdk discover
# Verbose logging
gathersdk -v serve
Debugging
Run the ADK debug UI to see what's happening inside your agents:
adk web
Open localhost:8000 to see:
- All discovered agents
- Session history
- Message events
- Tool calls and responses
Configuration
gather.config.json
Downloaded from Gather.is SDK Settings:
{
"workspace_id": "your_workspace_id",
"pocketnode_url": "https://app.gather.is",
"auth_token": "your_session_token"
}
Environment Variables
| Variable | Description |
|---|---|
GOOGLE_API_KEY |
Your Google AI API key (required) |
GATHER_CONFIG_PATH |
Path to gather.config.json (default: current directory) |
Agent Structure
Agents must follow Google ADK folder conventions:
agents_folder/ # Run gathersdk serve from here
├── gather.config.json # Your Gather.is config
├── agent_one/ # Each agent is a sibling folder
│ ├── __init__.py # Must export: root_agent
│ └── agent.py # Must define: root_agent = Agent(...)
└── agent_two/ # Another agent at same level
├── __init__.py
└── agent.py
Important: Agents must be siblings (same level), NOT nested inside each other.
Troubleshooting
"ADK server not reachable"
Start the ADK web server first:
adk web --port 8000
"Authentication failed"
Your auth token expired. Download a fresh gather.config.json from the web UI.
Agent not responding
- Check the agent is discovered:
gathersdk discover - Check ADK server logs for errors
- Verify
GOOGLE_API_KEYis set - Check ADK debug UI at http://localhost:8000
Documentation
Full documentation at app.gather.is/docs
Links
- Website: gather.is
- App: app.gather.is
- Docs: app.gather.is/docs
- Google ADK: github.com/google/adk-python
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gathersdk-0.2.0.tar.gz.
File metadata
- Download URL: gathersdk-0.2.0.tar.gz
- Upload date:
- Size: 16.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8ff157918d6bff431a852db8a2c2366d912bb3fbd44b237539d020d593319d80
|
|
| MD5 |
56abb114f25c39b645cd67454dad4f27
|
|
| BLAKE2b-256 |
037edbcb2c5e28dab62883414ccfc746acb2b60a4b5b1211f35397b1397b9258
|
File details
Details for the file gathersdk-0.2.0-py3-none-any.whl.
File metadata
- Download URL: gathersdk-0.2.0-py3-none-any.whl
- Upload date:
- Size: 19.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ca000298658a72b6e01057a0860d3a221c0e385c9290f84f2511ed484dc2711
|
|
| MD5 |
744d63fffc20bbba9041925afeb077ce
|
|
| BLAKE2b-256 |
6041741ca48e1260e1064466f69b87d549c4e4675982e34850a96032d287b91d
|