-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.example.yaml
More file actions
81 lines (68 loc) · 2.61 KB
/
Copy pathconfig.example.yaml
File metadata and controls
81 lines (68 loc) · 2.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# Example configuration for A2A Proxy
server:
host: 0.0.0.0
port: 8000
jsonrpc_path: /a2a/v1
health_path: /healthz
agent_card_path: /.well-known/agent-card.json
concurrency_limit: 200
log_level: info
access_log: true
connect_timeout_seconds: 10
request_timeout_seconds: 60
sse_client_ping_interval_seconds: 15
# workers: 4
upstream:
# Upstream transport to use:
# - JSONRPC: pass JSON-RPC 2.0 through to a single endpoint (default)
# - HTTP+JSON: translate JSON-RPC to REST endpoints as per A2A spec
# - WEBSOCKET: translate JSON-RPC HTTP and SSE to WebSocket (JSON frames) upstream
transport: JSONRPC
# Upstream endpoint URL (required)
# - For JSONRPC: the JSON-RPC POST endpoint (e.g., https://upstream.example.com/a2a/v1)
# - For HTTP+JSON: the REST base (e.g., https://upstream.example.com/a2a/v1)
# - For WEBSOCKET: the WebSocket URL (e.g., wss://upstream.example.com/a2a/ws)
url: https://upstream.example.com/a2a/v1
# Agent Card URL; if omitted, defaults to https://{upstream.host}/.well-known/agent-card.json
# agent_card_url: https://upstream.example.com/.well-known/agent-card.json
# Headers to add to upstream requests (optional)
headers:
X-Proxy: a2a-proxy
# If true, copy incoming Authorization header when not overridden above
pass_through_authorization: true
# TLS and transport
verify_tls: true
# ca_bundle: /etc/ssl/certs/ca-bundle.crt
http2: false
# Connection pooling
max_connections: 200
# Optional per-upstream timeouts (otherwise 'server' defaults apply)
# connect_timeout_seconds: 5
# request_timeout_seconds: 30
# Optional outbound HTTP proxy URL (for corporate environments)
# http_proxy: http://proxy.local:3128
agent_card:
# How to serve the Agent Card:
# - proxy: fetch from upstream and cache
# - static: serve 'content' below
# - merge: deep-merge 'content' over upstream card, cache the result
mode: proxy
cache_ttl_seconds: 300
# If static or merge, define the card content. Ensure url and transports reflect the proxy itself.
# content:
# protocolVersion: "0.3.0"
# name: "My A2A Proxy"
# description: "Transparent JSON-RPC proxy for Upstream Agent"
# url: "https://proxy.example.com/a2a/v1"
# preferredTransport: "JSONRPC"
# additionalInterfaces:
# - url: "https://proxy.example.com/a2a/v1"
# transport: "JSONRPC"
# version: "1.0.0"
# capabilities:
# streaming: true
# pushNotifications: true
# stateTransitionHistory: false
# defaultInputModes: ["application/json", "text/plain"]
# defaultOutputModes: ["application/json", "text/plain"]
# skills: []