360 Secure SkillHub
360 安全技能中心

Mobility Quote

通过 A2A 服务查询起点到终点的路线选项、费用估算与 ETA,并返回可打开支持应用的深链接;仅提供报价与发现,不保证预订或支付。

ubunyod574-max
ubunyod574-max
热度 16.00
最近更新 2026-06-22 13:08:35
分类:生活依赖:代码执行 / 第三方 API应用场景:旅行 / 推荐

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add mobility-quote
Metadata
name
mobility-quote
description
Get mobility route options worldwide — fare estimates, ETA, and a one-tap deeplink to open the ride. Queries the KLO Mobility A2A agent.
homepage
https://a2aregistry.org/?agent=80386a0c-03c9-4bde-b93a-f9e6082937cd
metadata
{"openclaw":{"requires":{"bins":["curl"]}}}

Mobility Quote

Answer "how do I get from A to B?" anywhere in the world. This skill asks the KLO Mobility Agent — an A2A (agent-to-agent) service — for route options, estimated fares, ETA, and a deeplink the user can tap to open the ride in a supported app.

It is provider-agnostic and global:

  • Fare/route discovery via multimodal providers (e.g. SkedGo / TripGo) where coverage exists — public transport, taxi-like modes, walking.
  • Route launchers — a no-price "Open in Yandex Go" deeplink for coordinate routes in supported regions (incl. Central Asia / Tashkent), with more providers added over time.
  • This is a quote / discovery agent, not a guaranteed booking or payment agent. Booking is added only through providers that permit it.

When to use

Use this skill whenever the user asks for a ride estimate, trip cost, ETA, or "how to get from X to Y" between two places or coordinates.

How to call

The agent speaks A2A JSON-RPC message/send over HTTPS. Endpoint is configured via MOBILITY_AGENT_URL (falls back to the public instance below).

URL="${MOBILITY_AGENT_URL:-https://212-47-77-33.sslip.io/}"
curl -s -X POST "$URL" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "message/send",
    "params": { "message": { "parts": [
      { "kind": "text", "text": "quote from 41.3111,69.2797 to 41.2995,69.2401" }
    ] } }
  }'

Phrase the text as quote from <A> to <B>. The public instance currently supports lat,lon coordinates. Place-name geocoding is added when a mapping API key is configured.

Reading the response

The result is an A2A message. parts[0].text is a human summary; parts[1].data holds structured fields:

  • best — cheapest estimate or quote (provider, product, price, currency, eta) or null when no price is available.
  • all_quotes[] — every quote returned, sorted by price.
  • route_launchers[] — deeplinks like { "label": "Open in Yandex Go", "provider": "Yandex Go", "url": "..." } to hand to the user.

Present the cheapest option (or the launcher when there is no price), the ETA, and the deeplink. If best.details.estimate is true, label it as an estimate, not a live provider fare.

Discovery