a2a-client

Discover and send tasks to A2A agents via the A2A API Gateway. Use when: (1) finding available agents or LLM providers, (2) delegating tasks to other agents, (3) checking task status/results, (4) routing work to a specific agent. NOT for: receiving inbound A2A tasks (use a2a-server), registering this instance (use a2a-register).

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "a2a-client" with this command: npx skills add thearchitectit/a2a-client

A2A Client — Agent-to-Agent Task Routing

Discover and interact with other agents through the A2A API Gateway's A2A (Agent-to-Agent) API. Send tasks, check results, and route work to the right agent.

Sidecar Principle

This skill is strictly an OpenClaw sidecar — it talks TO the A2A API Gateway using the gateway's existing API format. The gateway's endpoints are the contract; OpenClaw is just a participant. Never assume what the other end looks like — it could be MC2, another OpenClaw, or anything else that speaks A2A. These scripts consume the gateway's API as-is.

Configuration

All scripts read from a shared a2a.conf file (located in this skill directory). The gateway URL must be configured before use — there are no hardcoded defaults.

Priority order: CLI flags → env vars → a2a.conf → auto-detected defaults

Run a2a-register/a2a-setup.sh to create your config interactively, or manually create a2a-client/a2a.conf:

A2A_GATEWAY_URL="http://YOUR_GATEWAY_IP:8090"
A2A_GATEWAY_API_KEY="your-key-here"
AGENT_SLUG="your-hostname"

If A2A_GATEWAY_URL is not set anywhere, scripts will exit with an error message.

When to Use

  • Discover agents/providers — Before sending tasks, or when the user asks about available agents or LLM providers
  • Send tasks — When delegating work to another agent via the gateway, or when another agent's capabilities are better suited
  • Check task results — When tracking a previously sent task or retrieving completed results
  • Route to specific agents — When a task should be handled by a particular A2A agent (use --target-agent)

Authentication

All scripts automatically obtain an admin JWT from the gateway (GET /v0/admin/bootstrap). The gateway uses this JWT for API authentication. No manual auth handling needed.

Tools

a2a-discover.sh — List Agents & Providers

./a2a-discover.sh [--gateway-url URL] [--api-key KEY]

Lists registered A2A agents and all configured LLM providers with their models. Use provider slugs as --agent values when sending tasks.

Always discover before sending a task to confirm the target exists and is online.

# List all agents and providers (uses a2a.conf)
./a2a-discover.sh

# Override gateway URL
./a2a-discover.sh --gateway-url http://GATEWAY_LAN_IP:8090

a2a-send-task.sh — Send a Task

./a2a-send-task.sh --agent <slug> --message "task description" \
  [--model auto] [--target-agent <slug>] [--session-id <id>] \
  [--gateway-url URL] [--api-key KEY]
FlagRequiredDefaultDescription
--agentProvider/agent slug (e.g., groq, ozore, mistral)
--messageTask instruction/message body
--modelautoModel preference (e.g., groq/llama-3.3-70b-versatile)
--target-agentA2A agent routing hint (directs task to a specific registered agent)
--session-idautoCustom session ID (auto-generated if omitted)
--gateway-urlfrom configOverride gateway URL
--api-keyfrom configOverride API key
# Send a task with auto model selection
./a2a-send-task.sh --agent groq --message "Analyze the Q3 sales data"

# Specific model
./a2a-send-task.sh --agent mistral --message "Draft a blog post" --model mistral/mistral-small-latest

# Route to a specific A2A agent
./a2a-send-task.sh --agent ozore --message "Refactor the auth module" --target-agent coder

# Custom session ID
./a2a-send-task.sh --agent groq --message "Check logs" --session-id my-session-001

a2a-get-task.sh — Check Task Status

./a2a-get-task.sh --task-id <id> [--gateway-url URL] [--api-key KEY]

Retrieves the current status and any results of a previously sent task. Shows task metadata, model used, token usage, and the LLM response.

./a2a-get-task.sh --task-id 0566802a3e6931629df5a7baaba2d797

Typical Workflow

  1. Configure → Create a2a.conf or set A2A_GATEWAY_URL env var
  2. Discover./a2a-discover.sh to find available providers and models
  3. Send./a2a-send-task.sh --agent <slug> --message "..." to delegate work
  4. Poll./a2a-get-task.sh --task-id <id> to check progress (tasks often complete synchronously)
  5. Retrieve → Same get-task call returns results when completed

Environment Variables

VariableDescription
A2A_GATEWAY_URLGateway URL (required if not in a2a.conf)
A2A_GATEWAY_API_KEYAPI key for task auth

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

Agent Card

个人社交名片生成、管理和分享,以及智能花名册(通讯录管理器)。当用户提到名片、花名册、通讯录、联系人、虾名片、agent-card 时使用。具体触发场景包括:开通虾名片、建花名册、生成/更新/发/发布名片、注册虾名片、录入/查询/编辑联系人、收到包含 agent-card:// 协议的消息时自动识别并保存他人名片。

Registry SourceRecently Updated
Automation

Agentic Lending EVK

Plan and execute the current EVK-first agentic lending workflow for Api3-backed markets. Use when a user wants an agent to discover or fund the required Api3...

Registry SourceRecently Updated
Automation

Generate YouTube Thumbnail Concepts

Generates multiple bold, high-contrast YouTube thumbnail concepts with engaging expressions and text overlays for video content.

Registry SourceRecently Updated
Automation

A2a Register

Register, deregister, and manage this OpenClaw instance as an A2A agent in the A2A API Gateway. Use when: (1) registering this instance so other agents can d...

Registry SourceRecently Updated