360 Secure SkillHub
360 安全技能中心

Fuel CLI

一个英国燃油价格命令行工具,按邮编或坐标搜索附近加油站,查询站点详情,按价格、距离或数据新鲜度排序,并输出文本或结构化 JSON 信封,附带过期价格等数据质量提示。需要 Fuel Finder OAuth 凭据获取实时数据,本地缓存可离线读取。

shan8851
shan8851
热度 42.15
最近更新 2026-05-11 17:44:17
分类:生活依赖:第三方 API / 读写文件应用场景:推荐 / 旅行

安装技能

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

执行命令安装此 skill: npx secure-skills-cli add fuel-cli
Metadata
name
fuel-cli
description
UK fuel prices CLI — find nearby stations by postcode or coordinates, get station details, ranked by price/distance/freshness, and agent-friendly JSON envelopes with `--output <path>` for field projection. Use when checking UK petrol or diesel prices, finding cheapest fuel nearby, looking up station details by name or node ID, or when an agent needs structured fuel price data with data-quality advisories.
homepage
https://fuel-cli.xyz
metadata
{"openclaw":{"emoji":"⛽","requires":{"bins":["fuel"],"env":["FUEL_FINDER_CLIENT_ID","FUEL_FINDER_CLIENT_SECRET"]},"primaryEnv":"FUEL_FINDER_CLIENT_ID","install":[{"id":"npm","kind":"node","package":"@shan8851/fuel-cli","bins":["fuel"],"label":"Install fuel-cli (npm)"}]}}

fuel-cli

Use fuel for UK fuel prices: nearby station search, station detail, ranked results with freshness tracking.

Setup

  • npm install -g @shan8851/fuel-cli
  • Register at https://www.fuel-finder.service.gov.uk for Fuel Finder OAuth credentials
  • export FUEL_FINDER_CLIENT_ID=*** and export FUEL_FINDER_CLIENT_SECRET=*** or add to .env
  • Warm cache reads work without credentials until the cache needs a refresh

Nearby Stations

  • By postcode: fuel near "SE1 9SG" --fuel E10
  • By coordinates: fuel near "51.501,-0.141" --fuel B7_STANDARD
  • Custom radius: fuel near "SE1 9SG" --fuel E10 --radius 8mi
  • Sort options: fuel near "SE1 9SG" --fuel E10 --sort price (best, price, distance, freshest)
  • Limit results: fuel near "SE1 9SG" --fuel E10 --limit 5
  • Force refresh: fuel near "SE1 9SG" --fuel E10 --refresh

Station Detail

  • By name: fuel station "tesco watford"
  • By node ID: fuel station "<node-id>"
  • Project one field: fuel station "<node-id>" --output station.prices.0.pencePerLitre
  • Project subtree: fuel station "<node-id>" --output station.openingTimes

Fuel Types

  • E10 — E10 unleaded petrol
  • E5 — Super unleaded petrol
  • B7_STANDARD — Standard diesel
  • B7_PREMIUM — Premium diesel
  • B10 — B10 biodiesel
  • HVO — HVO diesel

Output

  • Defaults to text in a TTY and JSON when piped
  • Force JSON: fuel near "SE1 9SG" --fuel E10 --json
  • Force text: fuel near "SE1 9SG" --fuel E10 --text
  • Disable colour: fuel --no-color near "SE1 9SG" --fuel E10
  • Success envelope: { ok, schemaVersion, command, requestedAt, data }
  • Error envelope: { ok, schemaVersion, command, requestedAt, error }

Agent Notes

  • --fuel is required on near — petrol and diesel are never mixed in one ranking
  • --output <path> is available on both near and station
  • Paths use dot notation with zero-based array indexes, for example stations.0.selectedPricePencePerLitre or station.prices.0.pencePerLitre
  • In text mode, scalar projections print just the value; object or array projections print plain JSON
  • Projection errors are structured: malformed paths return INVALID_INPUT, missing paths return NOT_FOUND
  • Data-quality advisories live under data.quality.advisories — warn about stale prices, missing timestamps, and excluded test stations
  • data.quality.freshnessCounts breaks down fresh/aging/stale/unknown price counts
  • Likely test/demo forecourts are excluded automatically when normal stations exist; count is in data.quality.excludedLikelyTestStations

Configuration

  • FUEL_FINDER_CLIENT_ID — required for live data (free registration)
  • FUEL_FINDER_CLIENT_SECRET — required for live data
  • FUEL_FINDER_BASE_URL — optional, defaults to https://www.fuel-finder.service.gov.uk
  • FUEL_CACHE_DIR — optional, override cache location (defaults to platform cache dir)

Notes

  • near requires --fuel so petrol and diesel results are never mixed
  • Accepts UK postcodes (SE1 9SG) and coordinates (51.501,-0.141)
  • Radius accepts unitless (miles) or with mi/km suffix
  • Persistent local cache for station and price data — works offline until cache expires
  • Prices include freshness bands (fresh < 30min, aging < 24h, stale > 24h, unknown)
  • Exit codes: 0 success, 2 bad input or ambiguity, 3 upstream failure, 4 internal error
  • When a station query is ambiguous, the error includes candidate suggestions with brand, address, postcode, and node ID