ephemeris-cli 0.0.0-stage → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +180 -2
- package/assets/DejaVu-LICENSE.txt +78 -0
- package/assets/DejaVuSans.ttf +0 -0
- package/bin/ephemeris.js +7 -0
- package/build-info.json +4 -0
- package/docs/cli-reference.md +594 -0
- package/docs/contracts-and-ownership.md +62 -0
- package/docs/releases.md +23 -0
- package/docs/usability-audit.md +33 -0
- package/examples/daily-sales.csv +15 -0
- package/examples/hourly.json +8 -0
- package/package.json +47 -4
- package/schema/artifact-v1.json +628 -0
- package/schema/data-v1.json +107 -0
- package/schema/openapi.json +659 -0
- package/schema/prepared-v1.json +493 -0
- package/schema/submission-v1.json +539 -0
- package/src/arguments.js +27 -0
- package/src/artifact.js +131 -0
- package/src/cli.js +123 -0
- package/src/client.js +50 -0
- package/src/commands.js +147 -0
- package/src/data.js +103 -0
- package/src/describe.js +87 -0
- package/src/errors.js +14 -0
- package/src/io.js +74 -0
- package/src/plot.js +78 -0
- package/src/render.js +20 -0
- package/src/submission.js +49 -0
- package/src/time.js +95 -0
- package/src/validate.js +69 -0
- package/src/version.js +17 -0
|
@@ -0,0 +1,594 @@
|
|
|
1
|
+
# Ephemeris CLI reference
|
|
2
|
+
|
|
3
|
+
Generated from command help. Do not edit manually.
|
|
4
|
+
|
|
5
|
+
```text
|
|
6
|
+
Ephemeris 0.4.0 — inspect, forecast, describe, plot
|
|
7
|
+
|
|
8
|
+
Usage: ephemeris <command> [options]
|
|
9
|
+
|
|
10
|
+
version Inspect the installed CLI version, build identity and supported local record schemas.
|
|
11
|
+
data inspect Inspect selected observed columns and freeze a reusable local data snapshot.
|
|
12
|
+
forecast run Submit a forecast and save a versioned artifact; this operation spends credits.
|
|
13
|
+
forecast describe Calculate deterministic interpretation of a saved forecast artifact, offline.
|
|
14
|
+
forecast plot Render PNG or SVG from saved history, median, and quantile bands, offline.
|
|
15
|
+
models list Discover live model capabilities, context/horizon limits, and prices.
|
|
16
|
+
balance Read available credits and active holds without running a forecast.
|
|
17
|
+
usage list Read one page of forecast request history and charges.
|
|
18
|
+
auth status Check local credential configuration; optionally verify it with the API.
|
|
19
|
+
schema forecast Print the bundled public forecast request JSON Schema, offline.
|
|
20
|
+
|
|
21
|
+
Discover each operation with <command> --help. Start with data inspect --help.
|
|
22
|
+
Workflow: inspect -> forecast run -> forecast describe -> forecast plot.
|
|
23
|
+
Each operation is explicit; only forecast run submits paid inference.
|
|
24
|
+
Options can precede or follow commands. --version prints the version.
|
|
25
|
+
Compatibility: forecast --input ... aliases forecast run; results are now artifacts.
|
|
26
|
+
|
|
27
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
28
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
29
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
30
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
31
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
32
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
33
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
34
|
+
Offline commands need no credentials and do not contact the service.
|
|
35
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
36
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
37
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
38
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
39
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
40
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
41
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
42
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
43
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## version
|
|
47
|
+
|
|
48
|
+
```text
|
|
49
|
+
Usage: ephemeris version [options]
|
|
50
|
+
|
|
51
|
+
Inspect the installed CLI version, build identity and supported local record schemas.
|
|
52
|
+
|
|
53
|
+
Runs offline without credentials, inference, charges or service checks. No required inputs. JSON is the default; --json is accepted explicitly. --output writes a new file and never overwrites; stdout is the default. ephemeris --version remains the short package version only.
|
|
54
|
+
|
|
55
|
+
Fields: component identifies this installed CLI; version comes from its package metadata; build_commit is the full source Git SHA stamped when a clean checkout was packed, or null when unavailable. artifact_schema_versions lists supported versions by record kind. A null commit is unknown, not evidence of an outdated install. Package, hosted MCP, bridge and artifact schema versions are independent. This command does not determine the deployed service version, latest npm version, model availability, account balance or forecast quality. Use MCP get_version for the hosted version and models list for live capabilities.
|
|
56
|
+
|
|
57
|
+
Examples below need no files or API key. Exit 0 means metadata was read; invalid options exit 2; output errors exit 8. A failure causes no network operation or paid forecast; correct the option or choose a new writable output path and rerun.
|
|
58
|
+
|
|
59
|
+
Options:
|
|
60
|
+
--json
|
|
61
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
62
|
+
--output, -o <value>
|
|
63
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
64
|
+
--help, -h
|
|
65
|
+
Complete offline help for this command.
|
|
66
|
+
|
|
67
|
+
Examples:
|
|
68
|
+
ephemeris version
|
|
69
|
+
ephemeris version --json
|
|
70
|
+
ephemeris version --output cli-version.json
|
|
71
|
+
ephemeris --version
|
|
72
|
+
|
|
73
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
74
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
75
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
76
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
77
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
78
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
79
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
80
|
+
Offline commands need no credentials and do not contact the service.
|
|
81
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
82
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
83
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
84
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
85
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
86
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
87
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
88
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
89
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## data inspect
|
|
93
|
+
|
|
94
|
+
```text
|
|
95
|
+
Usage: ephemeris data inspect [options]
|
|
96
|
+
|
|
97
|
+
Inspect selected observed columns and freeze a reusable local data snapshot.
|
|
98
|
+
|
|
99
|
+
Supported: CSV/TSV with headers, JSON arrays of row objects, JSONL row objects. Select --value-column explicitly; add --time-column for time coverage and grid checks. Optional --series-column groups independent series without guessing a target. Decimal text is parsed in CSV/TSV; JSON values must be numbers. No Excel, Parquet, gzip, implicit grouping, repairs, sorting, deduplication, resampling, or interpolation.
|
|
100
|
+
|
|
101
|
+
Output ephemeris.data v1 includes selected numeric history, original timestamp strings, source SHA-256, metadata, per-series readiness and reports. Missing/non-numeric cells are represented as null with separate counts and one-based source data-row numbers. Reports include observed range, frequency evidence, missing periods, duplicates, missing values, invalid cells, and zeros. Exit 0 means inspection completed, NOT ready to forecast. Check series[].report.ready_for_forecast. Counts refer to the selected observed window; no data outside it is inferred.
|
|
102
|
+
|
|
103
|
+
Supported time grids: whole-second subdaily (H, 15min, 30s), D, W, and month-start MS. ISO dates or ISO datetimes only; offsets must be explicit for aware timestamps. Supply an IANA --timezone when known. Named-zone naive subdaily timestamps are ambiguous and not ready. Frequency inferred from a regular window is only a candidate; --frequency declares the intended grid. Without timestamps, missing periods/coverage remain unknown and forecasting requires declared frequency. Unsupported calendars remain unverified. A horizon counts grid steps, not calendar days.
|
|
104
|
+
|
|
105
|
+
Preserve units and target meaning explicitly: period_total, period_average, or point_in_time. Observed sales are not necessarily underlying demand; zeros do not prove stockouts or lost demand. The snapshot freezes selected history; source edits do not change it. Fix bad source data explicitly and inspect again. Runs locally. No credentials, provider calls, credits, or network access. Does not change the input. Output is JSON unless this command specifies an image; --output writes a new file only.
|
|
106
|
+
|
|
107
|
+
Options:
|
|
108
|
+
--input, -i <value>
|
|
109
|
+
Required file, or - for stdin. UTF-8; maximum 8 MiB.
|
|
110
|
+
--format <value>
|
|
111
|
+
csv|tsv|json|jsonl. Inferred from filename extension; required for stdin.
|
|
112
|
+
--value-column <value>
|
|
113
|
+
Required observed numeric target column; literal name.
|
|
114
|
+
--time-column <value>
|
|
115
|
+
Optional ISO timestamp column; omitted means unknown coverage.
|
|
116
|
+
--series-column <value>
|
|
117
|
+
Optional grouping column. Missing IDs reject; source order is preserved within each group.
|
|
118
|
+
--frequency <value>
|
|
119
|
+
Declared intended sampling grid, e.g. H, 15min, D, W, MS. Default: evidence-based candidate, if unambiguous.
|
|
120
|
+
--unit <value>
|
|
121
|
+
Caller-declared unit, e.g. AUD, units, kWh; default unknown. No conversion.
|
|
122
|
+
--timezone <value>
|
|
123
|
+
Caller-declared IANA zone, e.g. Australia/Brisbane; default unknown. Does not silently localize ambiguous instants.
|
|
124
|
+
--target-description <value>
|
|
125
|
+
Caller-supplied target meaning, e.g. observed daily sales; default unknown.
|
|
126
|
+
--measurement <value>
|
|
127
|
+
period_total|period_average|point_in_time; default unknown.
|
|
128
|
+
--json
|
|
129
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
130
|
+
--output, -o <value>
|
|
131
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
132
|
+
--help, -h
|
|
133
|
+
Complete offline help for this command.
|
|
134
|
+
|
|
135
|
+
Examples:
|
|
136
|
+
printf 'date,sales\n2026-01-01,10\n2026-01-02,12\n' > example-sales.csv
|
|
137
|
+
ephemeris data inspect --input example-sales.csv --time-column date --value-column sales --frequency D --unit units --measurement period_total --target-description "Synthetic observed sales" --output inspected.json
|
|
138
|
+
ephemeris forecast run --input inspected.json --horizon 7 --quantiles 0.1,0.5,0.9 --dry-run
|
|
139
|
+
# For real work, use actual supplied observations, units, and target meaning.
|
|
140
|
+
|
|
141
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
142
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
143
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
144
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
145
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
146
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
147
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
148
|
+
Offline commands need no credentials and do not contact the service.
|
|
149
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
150
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
151
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
152
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
153
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
154
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
155
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
156
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
157
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
## forecast run
|
|
161
|
+
|
|
162
|
+
```text
|
|
163
|
+
Usage: ephemeris forecast run [options]
|
|
164
|
+
|
|
165
|
+
Submit a forecast and save a versioned artifact; this operation spends credits.
|
|
166
|
+
|
|
167
|
+
Input: an ephemeris.data v1 snapshot, an ephemeris.request v1 prepared request, or a public API request such as:
|
|
168
|
+
{"mode":"route","series":[{"values":[10,12,11],"freq":"D"}],"horizon":2,"quantiles":[0.1,0.5,0.9]}
|
|
169
|
+
This differs from raw Paracast. For raw CSV/TSV/JSON rows, first use data inspect. For multi-series snapshots choose --series ID. Snapshot data must be complete and regular; no silent repair.
|
|
170
|
+
|
|
171
|
+
Modes: route selects automatically; ensemble blends compatible models; explicit requires model from models list. Raw/prepared JSON requires mode; snapshots default route. Explicit flags override input fields; model does not implicitly change mode. API defaults horizon=64 and context_len=256; use explicit values when required. Limits: 64 series, 256 variates, horizon 1–4096, context_len 1–16384. Each history is oldest first. Frequency belongs to each series; horizon counts sampling steps. Quantiles [0.1,0.5,0.9] give marginal median and a central nominal 80% interval, NOT proven calibrated coverage. Total variates × horizon × quantile count must not exceed 120000; omitted quantiles count as 21 for this limit. Model-specific limits may be smaller.
|
|
172
|
+
|
|
173
|
+
Optional local --context JSON is separate from the API request:
|
|
174
|
+
{"series":[{"unit":"units","measurement":"period_total","timezone":"UTC","target_description":"Synthetic observed sales","timestamps":["2026-01-01","2026-01-02","2026-01-03"]}]}
|
|
175
|
+
context.series aligns with request.series. Allowed per-series fields: series_id, unit, measurement, timezone, target_description, timestamps, future_timestamps, future_covariate_roles, source_available_at, recorded_as_of. Missing context stays null. Timestamps must match history length and a supported regular grid. Explicit future_timestamps must continue it for horizon steps. Named-zone calendar projection may fall back to steps unless explicit future timestamps are provided. Metadata applies to all variates in its series. Future roles map channel names to known_future|scenario_assumption|unspecified. Context and assertions are retained locally, never sent as model inputs. Narrative scenario assumptions do not affect inference. No future inputs or an empty assumptions list means not supplied; it does NOT mean the model assumes zero events, no promotions, no constraints, or unchanged conditions.
|
|
176
|
+
|
|
177
|
+
API series[].covariates.past numeric channels align with full history; future channels match horizon and need matching past names. Multivariate values are equal-length variate arrays. Only submitted numeric inputs affect the forecast; known future inputs and scenario assumptions must not be conflated. Use schema forecast for the wire contract. Raw requests reject unknown fields; put local context in --context.
|
|
178
|
+
|
|
179
|
+
--dry-run is fully offline, needs no key, costs nothing, and outputs a reusable ephemeris.request envelope (request plus local context). Submission returns an ephemeris.forecast v1 artifact, preserving request, full submitted history, response, context, timestamps, IDs, retry key, and billing. Billing is at response.meta.billing: settled_mc is charged millicredits; balance_mc is the remaining balance at that response. All _mc fields are exact integer strings: 1000 millicredits = 1 credit, so settled_mc="100" means 100 millicredits (0.1 credits), NOT 100 credits. Preserve these units and strings; missing billing is unknown. IDs are at response.meta.gateway_request_id, response.meta.request_id, and transport.request_id when supplied. transport.credentials_redacted=false means no credential-like response content needed redaction, not that credentials were included. Credentials are excluded. No describe or plot side effects occur. API results may include null quantiles; they remain missing. Service/model context caps can shorten the history actually used.
|
|
180
|
+
|
|
181
|
+
Idempotency-Key is printed BEFORE submission. A private, versioned ephemeris.submission v1 receipt is also synced to disk BEFORE the request. With --output forecast.json it defaults to forecast.json.submission.json; with stdout it uses .ephemeris/submissions/<uuid>.json in the current directory. --receipt selects another NEW path. Receipts contain the full prepared request/history/context, service origin, key, and request hash, never credentials. They remain after success or failure and do not prove completion. Existing receipts are never overwritten; a receipt write failure prevents submission. Archive or delete them explicitly when no longer needed.
|
|
182
|
+
|
|
183
|
+
Recover with forecast run --resume RECEIPT --output NEW_FILE. Resume reuses the exact stored request, key, context, and origin, ignoring EPHEMERIS_BASE_URL. It rejects input/model/horizon/quantile/context/key/base-url/receipt overrides; --timeout, --output, and --dry-run are allowed. --resume --dry-run validates offline and prints the prepared envelope. Only resume receipts you trust; their hashes are integrity checks, not signatures. Server retention rules apply: an expired key may result in a new charge; do not assume replay is retained indefinitely. Reuse it with the identical effective request after a timeout/interruption; a fresh key represents a new paid forecast. There are no automatic retries. Reserve the output path before submission. If writing a paid artifact fails, the CLI attempts recovery to stdout and exits 8. Save that JSON or retry with the same key (server retention rules apply). Later description/plot failures never rerun inference.
|
|
184
|
+
|
|
185
|
+
Options:
|
|
186
|
+
--input, -i <value>
|
|
187
|
+
Required file, or - for stdin. UTF-8; maximum 8 MiB.
|
|
188
|
+
--base-url <value>
|
|
189
|
+
HTTPS service origin; default EPHEMERIS_BASE_URL or https://ephemeris.cascade.industries. HTTP allowed on loopback only.
|
|
190
|
+
--timeout <value>
|
|
191
|
+
HTTP deadline in seconds, 1–3600; default 300. No automatic retries.
|
|
192
|
+
--resume <value>
|
|
193
|
+
Recover from a saved submission receipt. Reuses origin, request, and key; mutually exclusive with --input and request overrides.
|
|
194
|
+
--receipt <value>
|
|
195
|
+
New private submission receipt path; default OUTPUT.submission.json or .ephemeris/submissions/<uuid>.json. No receipt is written by --dry-run.
|
|
196
|
+
--context <value>
|
|
197
|
+
Optional local context JSON file or -. Not accepted with frozen snapshots/prepared requests. Only one input may be stdin.
|
|
198
|
+
--series <value>
|
|
199
|
+
Exact series ID from a multi-series inspected snapshot.
|
|
200
|
+
--mode <value>
|
|
201
|
+
route|ensemble|explicit; overrides input mode.
|
|
202
|
+
--model <value>
|
|
203
|
+
Live model name for explicit mode; discover with models list.
|
|
204
|
+
--horizon <value>
|
|
205
|
+
Future sampling steps, integer 1–4096; overrides input. API default 64.
|
|
206
|
+
--quantiles <value>
|
|
207
|
+
Comma-separated unique levels in (0,1), maximum 21, e.g. 0.1,0.5,0.9. Overrides input; omit to retain API/input defaults.
|
|
208
|
+
--context-len <value>
|
|
209
|
+
Most recent points per variate, 1–16384. Overrides input; API default 256.
|
|
210
|
+
--dry-run
|
|
211
|
+
Validate offline and print prepared request/context. No network or charge.
|
|
212
|
+
--idempotency-key <value>
|
|
213
|
+
8–128 letters/digits/dot/underscore/colon/hyphen. Default new UUID; retain it for identical retries.
|
|
214
|
+
--json
|
|
215
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
216
|
+
--output, -o <value>
|
|
217
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
218
|
+
--help, -h
|
|
219
|
+
Complete offline help for this command.
|
|
220
|
+
|
|
221
|
+
Examples:
|
|
222
|
+
# Complete synthetic input; replace with actual supplied observations for real work.
|
|
223
|
+
cat > example-request.json <<'JSON'
|
|
224
|
+
{"mode":"route","series":[{"values":[10,12,11],"freq":"D"}],"horizon":2,"quantiles":[0.1,0.5,0.9]}
|
|
225
|
+
JSON
|
|
226
|
+
cat > example-context.json <<'JSON'
|
|
227
|
+
{"series":[{"unit":"units","measurement":"period_total","timezone":"UTC","target_description":"Synthetic observed sales","timestamps":["2026-01-01","2026-01-02","2026-01-03"]}]}
|
|
228
|
+
JSON
|
|
229
|
+
# Offline validation; no credentials or charge:
|
|
230
|
+
ephemeris forecast run --input example-request.json --context example-context.json --dry-run --output prepared.json
|
|
231
|
+
# Paid submission: requires EPHEMERIS_API_KEY. Receipt is saved before network access.
|
|
232
|
+
ephemeris forecast run --input prepared.json --output forecast.json
|
|
233
|
+
# Only after an uncertain result, recover to a NEW file (do not start a fresh request):
|
|
234
|
+
# ephemeris forecast run --resume forecast.json.submission.json --output recovered.json
|
|
235
|
+
# Other modes: add --mode ensemble, or --mode explicit --model NAME from models list.
|
|
236
|
+
# Stdin: cat example-request.json | ephemeris forecast run --input - --dry-run
|
|
237
|
+
|
|
238
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
239
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
240
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
241
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
242
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
243
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
244
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
245
|
+
Offline commands need no credentials and do not contact the service.
|
|
246
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
247
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
248
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
249
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
250
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
251
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
252
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
253
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
254
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
## forecast describe
|
|
258
|
+
|
|
259
|
+
```text
|
|
260
|
+
Usage: ephemeris forecast describe [options]
|
|
261
|
+
|
|
262
|
+
Calculate deterministic interpretation of a saved forecast artifact, offline.
|
|
263
|
+
|
|
264
|
+
Requires an ephemeris.forecast v1 artifact saved by forecast run. Select series/variate explicitly when there are multiple. Missing or corrected labels never require paid inference: copy the artifact to a NEW file, edit only its local context.series metadata using caller-supplied facts, leave request/response unchanged, then rerun describe/plot offline. Timestamps must pass the existing grid checks. No dedicated metadata-edit command exists. Returns a Gnomon-aligned overview: scope, result, basis, limitations, references, followups. JSON pointers refer to the INPUT artifact. This is not a Gnomon import or ledger record.
|
|
265
|
+
|
|
266
|
+
Shows observed count/mean/median/min/max/latest; final forecast median; change against the LAST OBSERVED value; arithmetic mean of per-step medians; and maximum marginal median with tied sampling steps. Percentage change uses 100*(final median-last)/abs(last); zero baseline gives null. A sum of medians is calculated only for caller-declared period_total and is NOT a median or interval of the cumulative total. Missing medians remain missing; no interpolation. Incomplete horizon-wide statistics and non-finite arithmetic return null. Missing units, timezone, and measurement remain unknown. result.billing labels saved millicredit amounts and exact decimal credit conversions; missing values remain null. This is not a current balance check.
|
|
267
|
+
|
|
268
|
+
Marginal quantiles do not establish calibrated coverage, path probabilities, cumulative intervals, actual peak distributions, causal explanations, trading actions, or inventory actions. Future-channel labels are caller assertions. Absent future inputs mean not supplied, not assumed zero or no events. A forecast jump or narrow/constant band does not by itself establish poor fit or quality; observed outcomes and evaluation are needed. This command makes no inference/LLM call, does not score outcomes, and does not schedule reviews. Runs locally. No credentials, provider calls, credits, or network access. Does not change the input. Output is JSON unless this command specifies an image; --output writes a new file only.
|
|
269
|
+
|
|
270
|
+
Options:
|
|
271
|
+
--input, -i <value>
|
|
272
|
+
Required file, or - for stdin. UTF-8; maximum 8 MiB.
|
|
273
|
+
--series-index <value>
|
|
274
|
+
Zero-based artifact series index. Required for multiple series; otherwise 0.
|
|
275
|
+
--variate-index <value>
|
|
276
|
+
Zero-based variate index. Required for multiple variates; otherwise 0. Series metadata applies to the selected variate.
|
|
277
|
+
--json
|
|
278
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
279
|
+
--output, -o <value>
|
|
280
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
281
|
+
--help, -h
|
|
282
|
+
Complete offline help for this command.
|
|
283
|
+
|
|
284
|
+
Examples:
|
|
285
|
+
# Synthetic saved result for this offline example; not live predictions.
|
|
286
|
+
cat > example-forecast.json <<'JSON'
|
|
287
|
+
{"kind":"ephemeris.forecast","schema_version":"1","artifact_id":"00000000-0000-4000-8000-000000000001","created_at":"2026-01-04T00:00:00Z","request":{"mode":"route","series":[{"values":[10,12,11],"freq":"D"}],"horizon":2,"quantiles":[0.1,0.5,0.9]},"request_sha256":"8737423c8f6d653c73037497414069f2c4bf07bcf2d6ffcb7c98dfe6190ca1df","response":{"forecasts":[{"quantiles":{"0.1":[9,10],"0.5":[12,13],"0.9":[15,16]}}]},"context":{"series":[{"unit":"units","timezone":"UTC","target_description":"Synthetic observed sales","measurement":"period_total","series_id":null,"timestamps":["2026-01-01","2026-01-02","2026-01-03"],"future_axis":{"kind":"timestamps","values":["2026-01-04","2026-01-05"],"reason":"Projected from the recorded regular grid; future observations have not occurred."},"frequency_evidence":{"supplied_frequency":"D","candidate_frequency":"D","effective_frequency":"D","basis":"caller_declared_grid","invalid_timestamps":0,"duplicate_timestamps":0,"out_of_order_pairs":0,"missing_periods":0,"off_grid_intervals":0,"coverage":{"start":"2026-01-01","end":"2026-01-03"},"regular":true,"reason":null},"source_available_at":null,"recorded_as_of":null,"future_covariate_roles":{}}],"scenario_assumptions":[],"snapshot_id":null,"source":null},"transport":{},"disclosure":{"input_history_included":true,"context_sent_to_api":false,"credentials_included":false,"provider_input_note":"All submitted history is saved. The service may truncate it using context_len and model context limits."},"interoperability":{"gnomon_import":"not_implemented","recorded_in_ledger":false,"identity_basis":"local artifact UUID and request SHA-256; hashes are not authenticity signatures"}}
|
|
288
|
+
JSON
|
|
289
|
+
ephemeris forecast describe --input example-forecast.json --output description.json
|
|
290
|
+
# For a real saved artifact: ephemeris forecast describe --input forecast.json
|
|
291
|
+
# Multiple results: add --series-index 0 --variate-index 0 (zero-based).
|
|
292
|
+
|
|
293
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
294
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
295
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
296
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
297
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
298
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
299
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
300
|
+
Offline commands need no credentials and do not contact the service.
|
|
301
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
302
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
303
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
304
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
305
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
306
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
307
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
308
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
309
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
## forecast plot
|
|
313
|
+
|
|
314
|
+
```text
|
|
315
|
+
Usage: ephemeris forecast plot [options]
|
|
316
|
+
|
|
317
|
+
Render PNG or SVG from saved history, median, and quantile bands, offline.
|
|
318
|
+
|
|
319
|
+
Requires an ephemeris.forecast v1 artifact with a returned 0.5 quantile. Select series/variate explicitly for multiple results. Choose --output forecast.png for a shareable image, or forecast.svg for scalable output. --format png|svg explicitly selects format; otherwise the filename extension selects it, with SVG as the default for stdout or extensionless files. Conflicting/unsupported extensions reject. PNG stdout is binary and must be piped; it is not written to an interactive terminal. PNG uses a packaged renderer and bundled font, offline. Missing/corrected labels do NOT require a new paid forecast: copy the artifact to a NEW file, edit only its local context.series metadata with caller-supplied facts, keep request/response unchanged, and rerun plot offline. Timestamps must pass the grid checks. No dedicated metadata-edit command exists. No plotting application, browser, or Python installation is required.
|
|
320
|
+
|
|
321
|
+
Grey is observed history. The default view shows the most recent max(24, 2*horizon) observations, capped by available history; --history N changes that count, --history all shows everything. The chart labels the shown/total counts; the full history is always retained in the artifact. View changes do not change inference or resample observations. Blue is the marginal median; the dashed line marks the forecast boundary. Default bands pair available complementary levels, e.g. q0.1–q0.9, and label nominal mass, not calibrated coverage. Use --lower and --upper together to select one existing band. Missing values break lines; missing/crossed interval points are omitted and counted. Median is never inferred from other quantiles. Available reliable timestamps are used; otherwise the axis uses sampling steps relative to the last observation (0). Named-zone calendar projection across DST can require explicit future_timestamps; no dates are fabricated.
|
|
322
|
+
|
|
323
|
+
Plots do not show cumulative uncertainty, path probabilities, peak distributions, or business recommendations. Unit/measurement/timezone are shown as supplied or unknown. Plot failure leaves the saved forecast intact; fix arguments or choose a new output path and rerun locally. Runs locally. No credentials, provider calls, credits, or network access. Does not change the input. Output is JSON unless this command specifies an image; --output writes a new file only.
|
|
324
|
+
|
|
325
|
+
Options:
|
|
326
|
+
--input, -i <value>
|
|
327
|
+
Required file, or - for stdin. UTF-8; maximum 8 MiB.
|
|
328
|
+
--series-index <value>
|
|
329
|
+
Zero-based artifact series index. Required for multiple series; otherwise 0.
|
|
330
|
+
--variate-index <value>
|
|
331
|
+
Zero-based variate index. Required for multiple variates; otherwise 0. Series metadata applies to the selected variate.
|
|
332
|
+
--format <value>
|
|
333
|
+
png|svg. Default from --output extension, otherwise svg. PNG stdout is binary; filename must match format.
|
|
334
|
+
--history <value>
|
|
335
|
+
Number of recent observations to display, 1–100000, or all. Default min(available, max(24, 2*horizon)); full history stays saved.
|
|
336
|
+
--lower <value>
|
|
337
|
+
Lower quantile already in saved result, e.g. 0.1. Requires --upper.
|
|
338
|
+
--upper <value>
|
|
339
|
+
Upper quantile already in saved result, e.g. 0.9. Requires --lower.
|
|
340
|
+
--json
|
|
341
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
342
|
+
--output, -o <value>
|
|
343
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
344
|
+
--help, -h
|
|
345
|
+
Complete offline help for this command.
|
|
346
|
+
|
|
347
|
+
Examples:
|
|
348
|
+
# Synthetic saved result for this offline example; not live predictions.
|
|
349
|
+
cat > example-forecast.json <<'JSON'
|
|
350
|
+
{"kind":"ephemeris.forecast","schema_version":"1","artifact_id":"00000000-0000-4000-8000-000000000001","created_at":"2026-01-04T00:00:00Z","request":{"mode":"route","series":[{"values":[10,12,11],"freq":"D"}],"horizon":2,"quantiles":[0.1,0.5,0.9]},"request_sha256":"8737423c8f6d653c73037497414069f2c4bf07bcf2d6ffcb7c98dfe6190ca1df","response":{"forecasts":[{"quantiles":{"0.1":[9,10],"0.5":[12,13],"0.9":[15,16]}}]},"context":{"series":[{"unit":"units","timezone":"UTC","target_description":"Synthetic observed sales","measurement":"period_total","series_id":null,"timestamps":["2026-01-01","2026-01-02","2026-01-03"],"future_axis":{"kind":"timestamps","values":["2026-01-04","2026-01-05"],"reason":"Projected from the recorded regular grid; future observations have not occurred."},"frequency_evidence":{"supplied_frequency":"D","candidate_frequency":"D","effective_frequency":"D","basis":"caller_declared_grid","invalid_timestamps":0,"duplicate_timestamps":0,"out_of_order_pairs":0,"missing_periods":0,"off_grid_intervals":0,"coverage":{"start":"2026-01-01","end":"2026-01-03"},"regular":true,"reason":null},"source_available_at":null,"recorded_as_of":null,"future_covariate_roles":{}}],"scenario_assumptions":[],"snapshot_id":null,"source":null},"transport":{},"disclosure":{"input_history_included":true,"context_sent_to_api":false,"credentials_included":false,"provider_input_note":"All submitted history is saved. The service may truncate it using context_len and model context limits."},"interoperability":{"gnomon_import":"not_implemented","recorded_in_ledger":false,"identity_basis":"local artifact UUID and request SHA-256; hashes are not authenticity signatures"}}
|
|
351
|
+
JSON
|
|
352
|
+
ephemeris forecast plot --input example-forecast.json --output forecast.png
|
|
353
|
+
ephemeris forecast plot --input example-forecast.json --output forecast.svg --history all
|
|
354
|
+
# For a real saved artifact: ephemeris forecast plot --input forecast.json --history 48 --lower 0.1 --upper 0.9 --output interval.png
|
|
355
|
+
|
|
356
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
357
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
358
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
359
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
360
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
361
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
362
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
363
|
+
Offline commands need no credentials and do not contact the service.
|
|
364
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
365
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
366
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
367
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
368
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
369
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
370
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
371
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
372
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
## models list
|
|
376
|
+
|
|
377
|
+
```text
|
|
378
|
+
Usage: ephemeris models list [options]
|
|
379
|
+
|
|
380
|
+
Discover live model capabilities, context/horizon limits, and prices.
|
|
381
|
+
|
|
382
|
+
Authenticated GET /api/v1/models. No forecast or forecast charge. Use before explicit model selection; names/capabilities are not hard-coded. Returns the unmodified catalog JSON, except credential-like fields are redacted. Catalog price_per_kslot_mc means millicredits per 1000 series-slots; billing_context_cap is the maximum billable context. 1000 millicredits = 1 credit. Treat absent capability/price fields as unknown. This does not establish model quality.
|
|
383
|
+
|
|
384
|
+
Options:
|
|
385
|
+
--base-url <value>
|
|
386
|
+
HTTPS service origin; default EPHEMERIS_BASE_URL or https://ephemeris.cascade.industries. HTTP allowed on loopback only.
|
|
387
|
+
--timeout <value>
|
|
388
|
+
HTTP deadline in seconds, 1–3600; default 300. No automatic retries.
|
|
389
|
+
--json
|
|
390
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
391
|
+
--output, -o <value>
|
|
392
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
393
|
+
--help, -h
|
|
394
|
+
Complete offline help for this command.
|
|
395
|
+
|
|
396
|
+
Examples:
|
|
397
|
+
ephemeris models list --json
|
|
398
|
+
|
|
399
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
400
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
401
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
402
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
403
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
404
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
405
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
406
|
+
Offline commands need no credentials and do not contact the service.
|
|
407
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
408
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
409
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
410
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
411
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
412
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
413
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
414
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
415
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
416
|
+
```
|
|
417
|
+
|
|
418
|
+
## balance
|
|
419
|
+
|
|
420
|
+
```text
|
|
421
|
+
Usage: ephemeris balance [options]
|
|
422
|
+
|
|
423
|
+
Read available credits and active holds without running a forecast.
|
|
424
|
+
|
|
425
|
+
Authenticated GET /api/v1/balance. No forecast or forecast charge. Fields ending in _mc are millicredit strings; 1000 millicredits = 1 credit ("100" mc is 0.1 credits, not 100 credits). Preserve them to avoid integer precision loss. No billing state is changed.
|
|
426
|
+
|
|
427
|
+
Options:
|
|
428
|
+
--base-url <value>
|
|
429
|
+
HTTPS service origin; default EPHEMERIS_BASE_URL or https://ephemeris.cascade.industries. HTTP allowed on loopback only.
|
|
430
|
+
--timeout <value>
|
|
431
|
+
HTTP deadline in seconds, 1–3600; default 300. No automatic retries.
|
|
432
|
+
--json
|
|
433
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
434
|
+
--output, -o <value>
|
|
435
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
436
|
+
--help, -h
|
|
437
|
+
Complete offline help for this command.
|
|
438
|
+
|
|
439
|
+
Examples:
|
|
440
|
+
ephemeris balance --json
|
|
441
|
+
|
|
442
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
443
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
444
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
445
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
446
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
447
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
448
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
449
|
+
Offline commands need no credentials and do not contact the service.
|
|
450
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
451
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
452
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
453
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
454
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
455
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
456
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
457
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
458
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
459
|
+
```
|
|
460
|
+
|
|
461
|
+
## usage list
|
|
462
|
+
|
|
463
|
+
```text
|
|
464
|
+
Usage: ephemeris usage list [options]
|
|
465
|
+
|
|
466
|
+
Read one page of forecast request history and charges.
|
|
467
|
+
|
|
468
|
+
Authenticated GET /api/v1/usage. No forecast or forecast charge. Use pagination.next_offset for the next page. Rows are in data[]. requestId identifies the gateway request; paracastRequestId identifies the provider request when supplied. estimatedMc and settledMc are exact millicredit strings, not credits; status is the recorded HTTP status when supplied. Preserve IDs and strings; 1000 millicredits = 1 credit. This does not ingest actuals or score forecasts.
|
|
469
|
+
|
|
470
|
+
Options:
|
|
471
|
+
--base-url <value>
|
|
472
|
+
HTTPS service origin; default EPHEMERIS_BASE_URL or https://ephemeris.cascade.industries. HTTP allowed on loopback only.
|
|
473
|
+
--timeout <value>
|
|
474
|
+
HTTP deadline in seconds, 1–3600; default 300. No automatic retries.
|
|
475
|
+
--limit <value>
|
|
476
|
+
Rows per page, integer 1–200; default 50.
|
|
477
|
+
--offset <value>
|
|
478
|
+
Rows to skip, integer >=0; default 0.
|
|
479
|
+
--json
|
|
480
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
481
|
+
--output, -o <value>
|
|
482
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
483
|
+
--help, -h
|
|
484
|
+
Complete offline help for this command.
|
|
485
|
+
|
|
486
|
+
Examples:
|
|
487
|
+
ephemeris usage list --limit 20 --offset 0 --json
|
|
488
|
+
|
|
489
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
490
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
491
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
492
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
493
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
494
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
495
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
496
|
+
Offline commands need no credentials and do not contact the service.
|
|
497
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
498
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
499
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
500
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
501
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
502
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
503
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
504
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
505
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
506
|
+
```
|
|
507
|
+
|
|
508
|
+
## auth status
|
|
509
|
+
|
|
510
|
+
```text
|
|
511
|
+
Usage: ephemeris auth status [options]
|
|
512
|
+
|
|
513
|
+
Check local credential configuration; optionally verify it with the API.
|
|
514
|
+
|
|
515
|
+
Set EPHEMERIS_API_KEY from your environment/secret manager. No credential arguments or stored credential files. Create a key at https://ephemeris.cascade.industries/dashboard/api-keys. Default reports configured, not verified. --verify performs GET /api/v1/balance; no forecast charge. Keys are never printed. On 401/403 replace/check the key and permissions.
|
|
516
|
+
|
|
517
|
+
Options:
|
|
518
|
+
--base-url <value>
|
|
519
|
+
HTTPS service origin; default EPHEMERIS_BASE_URL or https://ephemeris.cascade.industries. HTTP allowed on loopback only.
|
|
520
|
+
--timeout <value>
|
|
521
|
+
HTTP deadline in seconds, 1–3600; default 300. No automatic retries.
|
|
522
|
+
--verify
|
|
523
|
+
Verify key with balance endpoint; default local configuration check only.
|
|
524
|
+
--json
|
|
525
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
526
|
+
--output, -o <value>
|
|
527
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
528
|
+
--help, -h
|
|
529
|
+
Complete offline help for this command.
|
|
530
|
+
|
|
531
|
+
Examples:
|
|
532
|
+
ephemeris auth status --verify
|
|
533
|
+
|
|
534
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
535
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
536
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
537
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
538
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
539
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
540
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
541
|
+
Offline commands need no credentials and do not contact the service.
|
|
542
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
543
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
544
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
545
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
546
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
547
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
548
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
549
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
550
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
551
|
+
```
|
|
552
|
+
|
|
553
|
+
## schema forecast
|
|
554
|
+
|
|
555
|
+
```text
|
|
556
|
+
Usage: ephemeris schema forecast [options]
|
|
557
|
+
|
|
558
|
+
Print the bundled public forecast request JSON Schema, offline.
|
|
559
|
+
|
|
560
|
+
Default --kind request prints the public API request contract. --kind artifact, prepared, data, or submission prints the corresponding local version 1 schema. Each output is standalone JSON Schema with local $defs references. API validation remains authoritative. Local semantic checks additionally enforce shape, covariate alignment, and explicit-mode model selection. Artifacts preserve request/response/context, IDs and billing; prepared records separate the wire request from local context; data records freeze selected observations and diagnostics; submission receipts preserve the exact request and retry key before network access. See forecast run --help for usage. Runs locally. No credentials, provider calls, credits, or network access. Does not change the input. Output is JSON unless this command specifies an image; --output writes a new file only.
|
|
561
|
+
|
|
562
|
+
Options:
|
|
563
|
+
--kind <value>
|
|
564
|
+
request|artifact|prepared|data|submission. Default request (public wire format); other kinds are local version 1 contracts.
|
|
565
|
+
--json
|
|
566
|
+
JSON output (default); forecast plot emits PNG/SVG instead. Errors: JSON Lines on stderr.
|
|
567
|
+
--output, -o <value>
|
|
568
|
+
Save to a NEW file; never overwrites. Default stdout; - also means stdout. Artifacts/snapshots include input history.
|
|
569
|
+
--help, -h
|
|
570
|
+
Complete offline help for this command.
|
|
571
|
+
|
|
572
|
+
Examples:
|
|
573
|
+
ephemeris schema forecast --output forecast-schema.json
|
|
574
|
+
ephemeris schema forecast --kind artifact
|
|
575
|
+
ephemeris schema forecast --kind data
|
|
576
|
+
|
|
577
|
+
Authentication for remote operations: EPHEMERIS_API_KEY environment only.
|
|
578
|
+
Success: JSON (PNG/SVG for plot) on stdout or a new --output file. Errors: JSON Lines on stderr.
|
|
579
|
+
Exit codes: 0 operation success; 2 input/configuration; 3 authentication/permission;
|
|
580
|
+
4 insufficient credits; 5 conflict/rate limit; 6 network/timeout/service;
|
|
581
|
+
7 API/protocol error; 8 file I/O; 130 interrupted.
|
|
582
|
+
401/403: check credentials. 402: add credits. 409/429: inspect API error/Retry-After.
|
|
583
|
+
Timeout: completion may be unknown; use forecast run --resume RECEIPT to reuse the saved request/key. Server retention rules apply.
|
|
584
|
+
Offline commands need no credentials and do not contact the service.
|
|
585
|
+
Missing units, target/business definitions, or future assumptions: ask the user;
|
|
586
|
+
preserve unknowns rather than filling them with plausible guesses. No operation
|
|
587
|
+
establishes forecast accuracy, calibrated coverage, or permission for business actions.
|
|
588
|
+
Missing future inputs mean not supplied, not assumed zero/no events.
|
|
589
|
+
A forecast jump or narrow/constant band alone does not demonstrate good or poor quality.
|
|
590
|
+
Billing _mc values are millicredits: 1000 mc = 1 credit; "100" mc = 0.1 credits.
|
|
591
|
+
Missing labels alone never require new paid inference. Copy a saved artifact to a
|
|
592
|
+
NEW file, correct only caller-supplied local context metadata, keep request/response
|
|
593
|
+
unchanged, and rerun describe/plot offline. No dedicated metadata-edit command exists.
|
|
594
|
+
```
|