Glossary
One canonical definition for every i99dash term that appears across the docs.
When in doubt, this is the source of truth for terminology. Alphabetical.
admin-sdk
The privileged sibling of @i99dash/sdk. Lets a mini-app run
device-side commands (pm.*, sys.*, diag.*, fs.*). Restricted
distribution; gated by a cmdExec.* permission grant on the dev
account. See Privileged mini-apps.
allow-list
The host-side configuration of which URL paths a mini-app's
callApi() can reach. Paths not on the list return
{ success: false, error: { code: 'disallowed_path' } }. Configured
at the host/ops level, not by the mini-app developer.
app id
The first field in manifest.json. URL-safe, globally unique,
baked into pinned home-screen shortcuts on every user's device.
Rotating it orphans every shortcut. Pick something you won't regret.
beta track
A separate catalog pointer that ships a build to a limited cohort of testers (≤ 25 per app) before promoting to production. See Beta testing.
bridge
The JavaScript object the host injects on window.__i99dashHost
(and friends) when it loads a mini-app. The "bridge" is the only
seam between your code and the outside world. Your code never
touches it directly — MiniAppClient wraps it. See
The bridge.
bundle
The tarball your CLI uploads to the CDN. Contains your built static
files plus manifest.json. Identified by a SHA-256; immutable once
uploaded.
callApi
The bridge method (and corresponding client.callApi() wrapper) for
proxying HTTP requests through the host's allow-list. Read-only
(GET) in v1. See Calling your backend.
cap (capability token)
In @i99dash/admin-sdk: a 30-day token the host stores after the
user consents at install. The cap lives in the host's encrypted
SQLite, never in the mini-app's bundle. Each privileged op the host
attaches the right cap before forwarding to the device-side
executor.
catalog
The backend table of published mini-apps. publish writes a new
row keyed by (id, version); the host's store reads from it.
context
The snapshot the host returns from getContext(): userId,
activeCarId (VIN), locale, isDark, appVersion, appId.
Stable for the life of one app launch — read once, cache, don't poll.
device cert
A per-installation certificate the backend mints when a user installs your privileged mini-app. The host attaches it to admin operations; the executor checks it for revocation. Affects which apps a user sees in the catalog.
dev-server
@i99dash/sdk-dev-server, run via sdk-i99dash dev. Boots a local
HTTP server on port 5173, injects a bridge shim that routes
callApi to fixture files in mocks/, exposes a control panel at
/_sdk/ui for live driving / VIN / locale / theme toggles. Same
code paths as production.
fixture
A JSON file in mocks/ that the dev-server uses to fake a
callApi response. Filename ends .GET.json; first match
alphabetically wins.
flight test
The pre-flight checklist run during a beta cycle, before promoting to production. Verifies safety gate, context handling, network paths, subscription cleanup, and crash/recovery. See Flight test.
gitlink
A git tree entry of mode 160000 that records a submodule's pinned
commit SHA. The doc site reads vendor/sdk-i99dash's gitlink at
build time to pin the SDK version it generates API pages from.
head-unit
The car's in-dash display where i99dash runs. Roughly an entry-level phone from 2018. Cold start matters — keep your bundle small.
host
Singular: the i99dash Flutter app running on the head-unit. It owns the WebView, the bridge, the catalog UI, and the safety gate. Sometimes also used to mean "the host process" or "the host repo" — context disambiguates.
llms.txt
The well-known path (/llms.txt) where AI tooling looks for a
human- and machine-readable index of a doc site. We expose it +
/llms-full.txt (every page concatenated) + /llms.mdx/<slug>
(per-page markdown). Standard convention for coding agents.
manifest
manifest.json at the project root. The catalog row for your app:
id, name (per locale), iconUrl, url, version, category,
permissions, minHostVersion, safeWhileDriving. The CLI's
validate command zod-checks it.
MCP
Model Context Protocol. The wire spec coding assistants speak to
fetch external context. We expose a Streamable-HTTP MCP server at
/api/mcp with five tools (list_sections, list_packages,
list_symbols, search_docs, get_doc). See
MCP server.
minHostVersion
A field in manifest.json that gates which host versions can
install your mini-app. Bump it the moment you start using a new
host feature; the catalog hides your app from users on older hosts
instead of installing-then-crashing.
mini-app
A static HTML/JS/CSS bundle the i99dash host loads inside a sandboxed WebView. The thing this whole platform exists to ship. See What is a mini-app?.
mock / mocks
Synonym for fixture in dev-server context. The directory
mocks/; the files mocks/*.json.
permissions
manifest.permissions[]. Strings the host enforces. car.status.read
is implicit for v1 mini-apps; cmdExec.read and cmdExec.control
are the privileged grants for @i99dash/admin-sdk apps. See
Privileged mini-apps.
production track
The default catalog pointer. Every user sees the bundle on next launch. Counterpart to the beta track.
safeWhileDriving
A manifest boolean. When true, the host shows your app while the
car is moving (≥ ~5 km/h). When false or unset, the host shows
"not available while driving" instead. Choose carefully; affects
the safety review.
sdk-cli
@i99dash/sdk-cli. The CLI invoked as sdk-i99dash <command> (or
via pnpm dlx @i99dash/sdk-cli). Provides init, dev, validate,
build, publish, login, logout, whoami, and the beta *
subtree.
staleness
status.staleness in a CarStatus payload. One of 'fresh'
(< 15 s), 'stale' (15–60 s), 'very_stale' (> 60 s). Independent
of the connection-state signal — render both.
step-up
The fresh user prompt the host shows for tier-2 admin operations
(sys.reboot, pm.install) at action time, even when install
consent was previously granted. Privacy + safety belt-and-braces.
submodule
vendor/sdk-i99dash in the doc repo. A git submodule pinned to a
specific SDK commit. The doc site builds API reference from this
exact pinned source — bumps happen via PR (see
bump-sdk-submodule.yml), keeping deploys reproducible.
tester
A user explicitly added to a mini-app's beta cohort via
beta invite. Identified by Telegram username on the dev side, by
internal user-id on the host side.
tier (admin-sdk)
A property of every CommandTemplate. Tier 1 = read-only ops
(diag.tail_logs, pm.list_*); Tier 2 = writes/state changes
(pm.disable_user, sys.reboot). Higher tiers gate more
permissions.
track
The catalog has two tracks per app: production and beta. Each is a
single-bundle pointer. publish --track beta lands on beta;
beta promote-production copies beta → production.
VIN
Vehicle Identification Number. The activeCarId field in the
context. PII in some jurisdictions — never render in plain text;
mask all but the last 4 digits.