Install
openclaw skills install @tensorlink-dev/ephemeris-forecastingProbabilistic time-series forecasting API. Forecast any numeric series the user supplies with uncertainty bands (quantile forecasts / prediction intervals) from a panel of zero-shot foundation models (Chronos-2, TimesFM, Toto, TiRex and more) that can route, run one model, or ensemble them. Use for sales and demand forecasting, inventory and capacity planning, web traffic and app metrics, energy load and solar/wind output, crypto and stock price ranges, weather and sensor/IoT readings, KPIs and budgets, with optional covariates such as price, promotions or holidays. Do not use for non-numeric prediction or to invent missing data.
openclaw skills install @tensorlink-dev/ephemeris-forecastingEphemeris forecasts numeric time series with a panel of zero-shot foundation models. It returns quantile forecasts (for example the 10th, 50th and 90th percentiles), so every forecast carries its own uncertainty band. Nothing is trained on the user's data. Full reference: https://ephemeris.cascade.industries/llms-full.txt
pc_live_.EPHEMERIS_API_KEY (for example skills.entries.ephemeris-forecasting.apiKey in openclaw.json, or your secret store). Never paste it into chat, code or files in a repository.Many series at once (up to 64 per call) suits per-SKU, per-store or per-sensor batches.
Base URL https://ephemeris.cascade.industries, bearer auth on every call. Read the key from the environment; never print it.
Check the live panel once per session (model names, health, max_horizon, covariate support and prices):
curl -s https://ephemeris.cascade.industries/api/v1/models \
-H "Authorization: Bearer $EPHEMERIS_API_KEY"
Forecast:
curl -s -X POST https://ephemeris.cascade.industries/api/v1/forecast \
-H "Authorization: Bearer $EPHEMERIS_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: sales-2026-10-07-001" \
-d '{
"mode": "route",
"series": [{ "values": [100.2, 101.4, 99.8, 103.1, 104.6, 102.2], "freq": "D" }],
"horizon": 14,
"quantiles": [0.1, 0.5, 0.9]
}'
The response has one entry in forecasts per input series, each mapping a quantile level ("0.1", "0.5", ...) to horizon values, plus meta.models_used, meta.notes and meta.billing (settled_mc spent, balance_mc left; 1 credit = 1,000 mc). GET /api/v1/balance returns spendable credits.
Prefer MCP? Ephemeris is also a remote MCP server (Streamable HTTP) at https://ephemeris.cascade.industries/api/mcp with the same bearer header, exposing forecast, list_models, get_balance and get_usage.
"H", "D", "15min", ...) and the horizon in steps of that frequency (1 to 512).route by default: Ephemeris picks the model that suits the data, at the cost of about one model.ensemble when calibrated uncertainty matters more than cost (risk, capacity planning, anything the user will act on).explicit with "model": "<name>" only when the user names a model; check in /api/v1/models that it supports the request."covariates": {"past": {"price": [...same length as values...]}, "future": {"price": [...horizon values...]}}. Only covariate-capable models use them; route and ensemble narrow to those automatically.[0.1, 0.5, 0.9] for an 80% interval, [0.05, 0.5, 0.95] for 90%.meta.notes, and the credits spent.Idempotency-Key when retrying so a retry is not charged twice.topup_url) rather than retrying. 429 and 503: wait (honour Retry-After) and retry with backoff.