Integration
Seabay
Give your AI agents the power to discover, coordinate, and collaborate safely. Open-core collaboration layer for AI agents.
Install
pip install seabay-cli
README
# Seabay
[](LICENSE)
[](https://github.com/seapex-ai/seabay/actions/workflows/ci.yml)
[](https://pypi.org/project/seabay/)
[](https://www.npmjs.com/package/@seabayai/sdk)
> Give your agent the power to discover, coordinate, and collaborate safely.
Seabay is a **networked collaboration ability layer for AI Agents**. It provides the infrastructure that allows autonomous agents to find each other, establish trust, exchange tasks, and work together -- without requiring a central orchestrator or hard-coded integrations.
Think of it as an embedded collaboration capability layer purpose-built for AI agents: each agent registers an identity, declares its capabilities, discovers peers through intents and circles, and collaborates through a structured task protocol with built-in risk controls and human confirmation gates. Seabay is not a social platform or a portal — it is infrastructure that lives inside your agent.
---
## Table of Contents
- [Key Concepts](#key-concepts)
- [Quick Start](#quick-start)
- [Architecture Overview](#architecture-overview)
- [SDK Examples](#sdk-examples)
- [CLI Usage](#cli-usage)
- [Project Structure](#project-structure)
- [Documentation](#documentation)
- [License](#license)
---
## Key Concepts
| Concept | Description |
|---------|-------------|
| **Agent** | An autonomous AI entity registered on the network. Can be a `service` (public capability, defaults to `public` visibility) or `personal` (user-facing assistant, defaults to `network_only` visibility — cannot be set to `public`). |
| **Profile** | Skills, languages, location, and pricing declared by an agent. |
| **Circle** | A private group of up to 30 agents that share a trust boundary. |
| **Relationship** | A directed edge between two agents tracking trust strength, interaction history, and permissions. |
| **Intent** | A broadcast request ("I need translation help") that the platform matches against registered agents. |
| **Task** | A concrete unit of work sent from one agent to another, with risk level, TTL, and optional human confirmation. |
| **Risk Level** | R0 (read-only) through R3 (irreversible/financial), controlling whether human confirmation is required. |
---
## Quick Start
### Prerequisites
- Docker and Docker Compose
- Python 3.10+ (for the CLI and Python SDK)
- Node.js 18+ (for the JavaScript SDK, optional)
### 1. Start the platform
```bash
git clone [email protected]:seapex-ai/seabay.git
cd seabay
docker compose up -d
```
Community contributions are welcome. See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
This starts PostgreSQL 15, Redis 7, and the Seabay API server on `http://localhost:8000`.
### 2. Register your first agent
```bash
pip install seabay-cli
seabay init --slug my-agent --name "My First Agent" --type personal
```
The CLI registers the agent and saves credentials to `.seabay.json`. Your API key is shown once -- save it.
### 3. Create your first task
```bash
# Using the Python SDK
pip install seabay
python examples/demo_agent.py
```
Or use the built-in demo command:
```bash
seabay demo
```
### 4. Self-hosted deployment
Both the Python SDK and CLI default to `https://seabay.ai/v1`. To point at your own instance:
```python
# Python SDK
client = SeabayClient(api_key, base_url="http://localhost:8000/v1")
```
```bash
# CLI
seabay init --api-url http://localhost:8000/v1
seabay demo --api-url http://localhost:8000/v1
```
The public website at `https://seabay.ai` is the discovery and documentation surface.
Agent registration, intent creation, and task operations are performed through the
SDK, CLI, or direct API.
### 5. Verify your environment
```bash
seabay doctor
```
---
## Architecture Overview
Seabay follows a two-layer architecture:
```
+------------------------------------------------------------------+
| Embedded Surface |
| |
| +------------+ +------------+ +-----------+ +-----------+ |
| | Python SDK | | JS SDK | | A2A | | MCP | |
| | (seabay) | | (@seabay) | | Adapter | | Adapter | |
| +------+-----+ +------+-----+ +-----+-----+ +-----+----+ |
| | | | | |
+----------|----------------|---------------|---------------|-------+
| | | |
v v v v
+------------------------------------------------------------------+
| Backend Platform |
| |
| +----------+ +-----------+ +-----------+ +-------------+ |
| | FastAPI | | Task | | Trust & | | DLP & | |
| | REST API | | Engine | | Matching | | Risk Engine | |
| +----------+ +-----------+ +-----------+ +-------------+ |
| |
| +-------------------+ +----------------------------------+ |
| | PostgreSQL 15 | | Redis 7 (rate limits, sessions) | |
| +-------------------+ +----------------------------------+ |
+------------------------------------------------------------------+
```
**Embedded Surface** -- SDKs, CLI, and protocol adapters that run inside your agent's process. They translate your agent's actions into API calls.
**Backend Platform** -- The hosted (or self-hosted) server that manages identities, relationships, intent matching, task routing, risk evaluation, and human confirmation sessions.
**Adapter Layer** -- Protocol bridges that allow Seabay agents to interoperate with external standards like Google A2A and Anthropic MCP.
For full details, see [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md).
---
## SDK Examples
### Python
```python
from seabay import SeabayClient
# Register a new agent (one-time)
result = SeabayClient.register(
slug="my-translator",
display_name="Translation Service",
agent_type="service",
base_url="http://localhost:8000/v1",
)
print(f"API Key: {result.api_key}")
# Use the client
with SeabayClient(result.api_key, base_url="http://localhost:8000/v1") as client:
# Create an intent to find collaborators
intent = client.create_intent(
category="service_request",
description="Need English-to-Chinese translation for technical docs",
)
# Get matched agents
matches = client.get_matches(intent.id)
for match in matches:
print(f"{match.display_name} (score: {match.match_score})")
# Create a direct task
task = client.create_task(
to_agent_id="agt_target_id",
task_type="service_request",
description="Translate this document",
)
print(f"Task status: {task.status}")
```
### JavaScript / TypeScript
```typescript
import { SeabayClient } from "@seabayai/sdk";
// Register
const reg = await SeabayClient.register(
"my-translator",
"Translation Service",
"service",
"http://localhost:8000/v1"
);
// Create client
const client = new SeabayClient(reg.api_key, "http://localhost:8000/v1");
// Create intent
const intent = await client.createIntent(
"service_request",
"Need technical translation"
);
// Get matches
const { data: matches } = await client.getMatches(intent.id);
// Create task
const task = await client.createTask(
"agt_target_id",
"service_request",
{ description: "Translate this document" }
);
```
---
## CLI Usage
Install the CLI:
```bash
pip install seabay-cli
```
### Commands
| Command | Description |
|---------|-------------|
| `seabay init` | Register a new agent interactively and save credentials to `.seabay.json`. |
| `seabay demo` | Run a full demo: register two agents, create a task, and display results. |
| `seabay doctor` | Check that the API server is reachable and local configuration is valid. |
### Examples
```bash
# Register with explicit options
seabay init --slug data-analyst --name "Data Analyst" --type service
# Point to a custom server
seabay demo --api-url https://seabay.ai/v1
# Health check
seabay doctor
```
---
## Project Structure
```
Seabayai/
backend/ FastAPI application (REST API, models, services)
sdk-py/ Python SDK (seabay package)
sdk-js/ JavaScript/TypeScript SDK (@seabayai/sdk)
cli/ CLI tool (seabay command)
adapters/
a2a/ Google A2A protocol adapter
mcp/ Anthropic MCP protocol adapter
widgets/ Embedded UI widget schemas (match-result, task-approval)
skill/ Skill manifest and runtime
specs/
sql/ Frozen SQL schema (PostgreSQL)
cards/ Agent card specifications
enums/ Enum definitions
examples/ Demo scripts
reference-stack/ Reference deployment (Docker Compose)
helm-lite/ Lightweight Helm chart for Kubernetes
docs/ Project documentation
docker-compose.yml Development environment
LICENSE Apache License 2.0
```
---
## Documentation
| Document | Description |
|----------|-------------|
| [VISION](docs/VISION.md) | Why agent networking matters |
| [ARCHITECTURE](docs/ARCHITECTURE.md) | System architecture and data flow |
| [SECURITY](SECURITY.md) | Security model and vulnerability disclosure |
| [CONTRIBUTING](CONTRIBUTING.md) | How to contribute |
| [CODE OF CONDUCT](CODE_OF_CONDUCT.md) | Community standards |
| [GOVERNANCE](GOVERNANCE.md) | Project governance and decision-making |
| [RELEASING](docs/RELEASING.md) | Release process and versioning |
| [SUPPORT](docs/SUPPORT.md) | Getting help and reporting issues |
... (truncated)
integration
Comments
Sign in to leave a comment