Skip to main content

isA Mate - The default agent app of the isA platform

Project description

isA Mate

The default agent app of the isA platform. A personal AI companion that connects to any messaging platform and runs locally or in the cloud.

Features

  • Multi-channel: Telegram, Discord, Slack, WhatsApp, Feishu, Signal, Teams, Matrix (and more coming)
  • Multi-model: Route through Anthropic, OpenAI, or local Ollama models
  • Multi-agent: Hybrid A2A delegation across pinned platform teams and dynamically discovered org agents
  • Memory: Persistent conversation memory with SQLite or remote backends
  • Tools: 190+ tools via MCP (Model Context Protocol)
  • Local-first: Runs on your machine with optional cloud deployment

Quick Start

Option A: pip install (recommended)

pip install isa-mate

# Interactive setup — picks your model provider, channels, etc.
isa-mate init

# Start the gateway server
isa-mate serve

Option B: Docker (one command)

docker run -e ANTHROPIC_API_KEY=sk-... -p 18789:18789 ghcr.io/xenoisa/isa-mate

Or with Docker Compose for the full stack:

git clone https://github.com/xenoISA/isA_Mate.git && cd isA_Mate
echo "ANTHROPIC_API_KEY=sk-..." > .env
docker compose up

Verify it's running

# Health check
curl http://localhost:18789/health

# Send a message
curl -X POST http://localhost:18789/v1/query \
  -H "Content-Type: application/json" \
  -d '{"prompt":"Hello!"}'

Requirements

  • Python 3.10+ (pip install) or Docker
  • An AI model provider (Ollama for free local models, or Anthropic/OpenAI subscription)
  • If using a subscription provider (anthropic-sub / codex-sub): SUBSCRIPTION_PROXY_URL pointing at an isa_model deployment. The subscription proxy lives in isa_model since xenoISA/isA_Model#901 — Mate no longer starts it locally. See docs/guides/subscription_proxy_migration.md in the isa_model repo.

Commands

Command Description
isa-mate init Interactive setup wizard
isa-mate serve Start gateway server
isa-mate cli Interactive terminal mode
isa-mate query "..." One-shot query
isa-mate doctor Run diagnostics
isa-mate accounts Manage subscription accounts

Connecting Channels

After setup, connect your favorite messaging platform:

Telegram

# 1. Create a bot via @BotFather, get your token
# 2. Set the token
export TELEGRAM_BOT_TOKEN=your-token-here

# 3. Start with Telegram enabled
isa-mate serve

Discord

# 1. Create a Discord bot at https://discord.com/developers
# 2. Set the token
export DISCORD_BOT_TOKEN=your-token-here

# 3. Install the channels extra
pip install isa-mate[channels]

# 4. Start
isa-mate serve

Slack

# 1. Create a Slack app at https://api.slack.com/apps
# 2. Set credentials
export SLACK_BOT_TOKEN=xoxb-...
export SLACK_SIGNING_SECRET=your-secret

# 3. Start
isa-mate serve

See Channel Integrations Guide for all supported platforms.

Configuration

Configuration is stored at ~/.isa/mate/config.yaml. Run isa-mate init to generate it interactively, or use --non-interactive mode with environment variables:

ISA_MATE_MODEL=llama3 ISA_MATE_PROVIDER=ollama isa-mate init --non-interactive

Mate delegation supports a hybrid routing model:

  • Pinned core teams from teams.entries
  • Dynamic org-agent lookup from teams.directory
  • Per-request shortlisting before the model decides whether to delegate

Environment Variables

Variable Default Description
ISA_MATE_HOST 127.0.0.1 Gateway bind host
ISA_MATE_PORT 18789 Gateway bind port
ISA_MATE_MODEL gpt-5-nano Model name
ISA_MATE_PROVIDER (empty) Provider: anthropic-sub, codex-sub, ollama
ISA_MATE_EXECUTION_MODE reactive Agent execution mode
ANTHROPIC_API_KEY (empty) Anthropic API key (for Docker)

Deployment Modes

  • Local-first (isa-mate serve): Run on your machine
  • Docker (docker compose up): Containerized with health checks
  • Cloud (isa-mate cloud): Headless cloud deployment
  • Pool (isa-mate pool): Shared pool mode for multi-tenant setups

isA Mate vs OpenClaw

Capability isA Mate OpenClaw
Setup pip install isa-mate && isa-mate init Clone repo + manual config
Docker docker run ... ghcr.io/xenoisa/isa-mate No official image
Channels 8+ (Telegram, Discord, Slack, WhatsApp, ...) API only
Multi-model Anthropic, OpenAI, Ollama, local Single provider
Multi-agent Hybrid A2A delegation Single agent
Tools 190+ via MCP Plugin-based
Memory SQLite/remote with compaction In-memory
Local-first Yes — runs on your laptop Server-only

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

isa_mate-0.2.0.tar.gz (487.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

isa_mate-0.2.0-py3-none-any.whl (618.1 kB view details)

Uploaded Python 3

File details

Details for the file isa_mate-0.2.0.tar.gz.

File metadata

  • Download URL: isa_mate-0.2.0.tar.gz
  • Upload date:
  • Size: 487.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for isa_mate-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2e883984a55f599dd082cc93a2c26a9681e113a68e0eaaf53a7c04053c0fa228
MD5 a924d18dde0a3897e44a7554cebeb07a
BLAKE2b-256 c92aa28d89fa2b28c1b391b4e027611d84f0427055a817eef6c237375a856e8a

See more details on using hashes here.

File details

Details for the file isa_mate-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: isa_mate-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 618.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for isa_mate-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eebd209bab00b9c8f8d1ff7cfd2b513c48d590b6ac513b4e4b8b8c5600a47357
MD5 d5d751967a663ae904dd82bacd7d7a30
BLAKE2b-256 bf18699a725000c36390ffef36c99a2f33c20cf6737f3aab026b52940f174bea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page