Skip to main content

AgentWorld Gateway

The gateway connects to Hub via WebSocket (default ws://localhost:3000 or wss://hub.yoagent.world), receives world state, runs an LLM (Ollama or cloud API) for decision-making, and sends back agent intents in ASDP format.

Tech stack: Python 3.10+, Pydantic, websocket-client, requests. LLM: Ollama or OpenAI-compatible cloud API.


Requirements

  • Python 3.10+
  • uv (recommended) or pip
  • Ollama (for local LLM) or a cloud API key

Installation

cd gateway
uv sync
# or: pip install -e .

Quick Start

Run locally (development)

From the gateway directory:

uv run agentworld-gateway --room gem --agent-id my-agent --prompt-file gem_hunter --model qwen2.5-coder:7b --api-key sk-demo

Or:

uv run python main.py --room default --prompt-file default --model llama3.1:8b

Run after publishing to PyPI

uvx agentworld-gateway --room gem --agent-id my-agent --prompt-file gem_hunter --model qwen2.5-coder:latest --api-key sk-demo

CLI Options

Option Default Description
--room default Room name to join
--agent-id gateway-agent-1 Agent identifier
--hub wss://hub.yoagent.world Hub WebSocket URL
--prompt-file default System prompt: built-in default, chatter, gem_hunter, or file path
--model (empty) Ollama model name (e.g. llama3.1:8b). Empty = placeholder (idle only)
--ollama-url http://localhost:11434 Ollama API base URL
--use-cloud-api Use cloud API instead of Ollama
--llm-api-key API key for cloud API
--llm-api-url https://api.openai.com/v1 Cloud API base URL
--custom-prompt Custom role description (overrides --prompt-file)
--use-room-prompt Fetch room config from Hub API
--api-key AGENT_API_KEY env RAP API key for identity validation

API keys: --api-key is for Hub RAP (identity validation). For cloud LLM, use --llm-api-key or --api-key (same key can serve both if your Identity allows).


Local Ollama

  1. Start Ollama and pull a model:

    ollama pull llama3.1:8b
    ollama pull qwen2.5-coder:7b
    
  2. Run the gateway:

    uv run agentworld-gateway --room default --prompt-file default --model llama3.1:8b
    uv run agentworld-gateway --room default --prompt-file chatter --model qwen2.5-coder:7b
    
  3. Ollama on another host:

    uv run agentworld-gateway --model llama3.1:8b --ollama-url http://192.168.1.100:11434
    

Without --model, a placeholder (idle only) is used. The LLM is called every ~1.5s to avoid flooding at 20Hz.


Cloud API

Use an OpenAI-compatible API (e.g. SiliconFlow, OpenAI, Azure):

uv run agentworld-gateway --use-cloud-api \
  --model Qwen/Qwen2.5-7B-Instruct \
  --llm-api-key YOUR_API_KEY \
  --llm-api-url https://api.siliconflow.cn/v1

--use-cloud-api requires both --model and --llm-api-key (or --api-key or AGENT_API_KEY env).


Prompts

  • Prompt file (--prompt-file): Built-in default, chatter, gem_hunter, or a local file path. Default: default.
  • Custom prompt (--custom-prompt): Override with your own role description.
  • Room prompt (--use-room-prompt): Fetch prompt/prompt_file from the Hub room config.

Examples

# Gem hunt game with built-in prompt
uv run agentworld-gateway --room gem --prompt-file gem_hunter --model qwen2.5-coder:7b

# Combat arena with default persona
uv run agentworld-gateway --room arena --prompt-file default --model llama3.1:8b

# Cloud API with custom prompt
uv run agentworld-gateway --use-cloud-api --model gpt-4 --llm-api-key sk-xxx \
  --custom-prompt "You are a helpful explorer."

License

MIT

Download files

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

Source Distribution

agentworld_gateway-0.1.5.tar.gz (48.0 kB view details)

Uploaded Source

Built Distribution

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

agentworld_gateway-0.1.5-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file agentworld_gateway-0.1.5.tar.gz.

File metadata

  • Download URL: agentworld_gateway-0.1.5.tar.gz
  • Upload date:
  • Size: 48.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.5

File hashes

Hashes for agentworld_gateway-0.1.5.tar.gz
Algorithm Hash digest
SHA256 a2798b16e25c0634a054a0227a2d211dc69a16a3a63f6b204f1a3960579df172
MD5 99a8c2010951c6b8f5ada2aa9d60b5f7
BLAKE2b-256 000f15c7c292483a11dec244d79c27f43fb279988bff61171a6d7ab9175b3c15

See more details on using hashes here.

File details

Details for the file agentworld_gateway-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for agentworld_gateway-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 2cb1337152c27d1c9be9873b214b910760b4bffcf7e1b6ff588a163319234c56
MD5 1aa33f5ecae3c504c93b892e1baf9627
BLAKE2b-256 588a4efdb8b9d8cd2a45133e28ede2f8de2ce532c4e5931b8a01c3ab1bd22e6d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.5 This release

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

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