Files
gods-eye-view/pinokio/start.js
T
Bilawal Sidhu b6da93b8ac release: v0.1.0 — one-click install, keyless boot, in-app Provider Settings (#142)
The first formal release.

- One-click install via Pinokio; keyless boot lands on a live Esri World
  Imagery satellite globe with keyless terrain, with automatic OSM fallback
  and graceful degradation when terrain is unavailable.
- Provider Settings (the POWER UP panel): add, replace, or remove API keys
  inside the app; credential files made owner-only before any secret is
  written; external keys shown read-only; the panel refuses shared or proxied
  servers.
- Keyless capability responses for the optional HUD summary and place search.
- Aircraft-identity voice answers cover operator, type, and route, and say so
  plainly when enrichment is unavailable.
- README rewritten keyless-first; concise 0.1.0 changelog section; CI
  workflow included.

Gates: 2,672 unit tests pass / 0 fail, build clean, tracking regression
108/108, map-source tray QA pass, setup doctor ready.
2026-08-31 17:49:45 -05:00

43 lines
1.6 KiB
JavaScript

module.exports = {
daemon: true,
run: [
{
method: 'shell.run',
params: {
path: '..',
env: {
HOST: '127.0.0.1',
PORT: '{{port}}',
GOOGLE_MAPS_API_KEY: '{{env.GOOGLE_MAPS_API_KEY || ""}}',
CESIUM_ION_TOKEN: '{{env.CESIUM_ION_TOKEN || ""}}',
OPENAI_API_KEY: '{{env.OPENAI_API_KEY || ""}}',
AISSTREAM_API_KEY: '{{env.AISSTREAM_API_KEY || ""}}',
FIRMS_MAP_KEY: '{{env.FIRMS_MAP_KEY || ""}}',
TOMTOM_API_KEY: '{{env.TOMTOM_API_KEY || ""}}',
OPENSKY_CLIENT_ID: '{{env.OPENSKY_CLIENT_ID || ""}}',
OPENSKY_CLIENT_SECRET: '{{env.OPENSKY_CLIENT_SECRET || ""}}',
LL2_API_TOKEN: '{{env.LL2_API_TOKEN || ""}}',
PINOKIO_SHARE_CLOUDFLARE: '{{env.PINOKIO_SHARE_CLOUDFLARE || "false"}}',
PINOKIO_SHARE_LOCAL: '{{env.PINOKIO_SHARE_LOCAL || "false"}}',
PINOKIO_SHARE_VAR: '{{env.PINOKIO_SHARE_VAR || "__gev_sharing_disabled__"}}',
GEV_RATELIMIT_OPENAI_PER_MIN: '{{env.GEV_RATELIMIT_OPENAI_PER_MIN || ""}}',
GEV_RATELIMIT_GOOGLE_PER_MIN: '{{env.GEV_RATELIMIT_GOOGLE_PER_MIN || ""}}',
},
message: 'node scripts/pinokio-start.mjs',
on: [{
event: '/\\[Pinokio\\] Ready at (http:\\/\\/127\\.0\\.0\\.1:[0-9]+\\/)/',
done: true,
}],
},
},
{
// Pinokio requires local.url for ready/Open state. PINOKIO_SHARE_VAR is
// pinned to a different sentinel so local.set cannot trigger sharing.
method: 'local.set',
params: {
url: '{{input.event[1]}}',
},
},
],
};