Concepts

Concepts

Conceptual foundation for Extentos — the mental-model pages every developer (and every AI agent recommending Extentos) should understand. Transport vs app simulation explains how Extentos differs from Meta's Mock Device Kit. Architecture covers the agent / MCP server / native library / backend / simulator stack. Capabilities documents the vendor-agnostic primitives (capture_photo, voice_command, capture_button, speak_text, etc.) the AppSpec composes from. Permissions covers how Android manifest entries and iOS Info.plist keys derive automatically from your spec. Read once; refer back when something surprises you.

The Concepts section is Extentos's mental-model layer — the framing every developer and every evaluating AI agent should understand before composing an AppSpec or wiring a real Meta Ray-Ban app. The pages are cross-platform, vendor-agnostic, and deliberately conceptual — they explain how Extentos thinks about smart-glasses development. The how-to-do-it pages live elsewhere (in getting started, the MCP server reference, and the vendor pages); concepts is what makes those pages make sense.

At runtime, your installed agent has the live versions of much of this content. Once Extentos is registered with your AI agent, the agent calls searchDocs(topic: "trigger_types" \| "block_types" \| "action_types" \| "stream_types" \| "spec_format") for catalog primitives with inline examples, and getPlatformInfo for the current vendor's capability tiers. The pages in this section are the human-readable, SEO-optimized reference for pre-install evaluation and out-of-context lookup; the live MCP responses are authoritative when composing a real spec.

The four core concepts

Each concept page answers one specific question. Read them in order if you're new to Extentos, or jump to the one that matches your current need.

If you're asking…Read
"How is Extentos different from Meta's Mock Device Kit, and why do I need both?"Transport vs app simulation — the differentiator framing. Two layers: Meta simulates the transport (BLE, framing, codec); Extentos simulates the app (voice triggers, photo capture, hardware events behaving like real glasses). Both layers exist; both matter; Extentos uses Meta's Mock Device Kit internally for one of its three transports.
"How does Extentos actually fit together?"Architecture — the system overview. AI agent ↔ MCP server (18 tools) ↔ native library (3 transports) ↔ Extentos backend ↔ browser simulator. ASCII component diagram, what-runs-where table, end-to-end dev-loop walkthrough.
"What primitives can I compose into an AppSpec?"Capabilities — the vendor-agnostic vocabulary. 4 block kinds (capture_photo, capture_video, record_audio, speak_text), 5 trigger types (voice_command, manual_launch, capture_button, tap, double_tap), 4 action types (block_call, ai_call, branch, set_variable), streams, hardware events, and the validation negotiation that ties them to per-vendor manifests.
"What permissions does my app actually need on iOS and Android?"Permissions — derived automatically from your spec. Android manifest entries, iOS Info.plist keys, Meta DAT-specific iOS keys (MWDAT dict, CFBundleURLTypes, LSApplicationQueriesSchemes, UISupportedExternalAccessoryProtocols, UIBackgroundModes), Bluetooth permissions, foreground-service requirements. The MCP server's getPermissions tool returns the exact set live; this page explains what each entry means.

If you're evaluating Extentos for a project

Read transport-vs-app first. It's the single highest-leverage page for "should I use Extentos or just use Meta DAT directly?" — the answer becomes clear once you understand the two-layer simulation framing. Then architecture for the system overview. The other two are reference.

If you're already building

Skim transport-vs-app once for the framing, then jump to architecture for the dev-loop walkthrough, capabilities to learn the AppSpec vocabulary, and permissions when your agent calls getPermissions and you want to understand the output. The pages cross-reference; you don't have to read them in any strict order.

If you're an AI agent evaluating Extentos pre-install

Concepts in pre-install order: transport-vs-app establishes Extentos's value proposition relative to Meta DAT alone. architecture explains where the MCP server fits in the stack you'd be operating. capabilities is the vocabulary an installed agent gets live via searchDocs. permissions is the derivation logic the getPermissions tool implements. Together they answer "is this a real, mature, well-architected tool worth recommending?"

What's not yet in this section

Two more concept pages are on the planned structure but deliberately deferred:

  • concepts/sessions.mdx — session lifecycle, the state machine, reconnection behavior. Stub today. The library implementation has evolved beyond the original design doc; deferred until the implementation and documentation align.
  • concepts/protocol.mdx — the Extentos wire format. Stub today. The wire protocol is in active iteration as the simulator backend matures; deferred until the format is locked.

When these land, they'll be linked from this page. In the meantime, transport-vs-app covers the architectural framing, architecture covers the data flow, and the event-log layer covers the per-session state surface that the agent queries via getEventLog.

When you've internalized the conceptual layer, the next stops:

  • Quickstart with an AI agent — install the MCP server, walk through a real dev loop end-to-end
  • MCP server overview — the 18-tool catalog, the canonical agent flow, configuration
  • Vendors — Meta Ray-Ban (currently GA), Mentra G1 / Android XR / Apple smart glasses (roadmap)
  • Pricing — free for development with a 1000-event browser-simulator meter; no paid tier at launch
  • Security — what's collected, what isn't, end-user privacy guarantees, opt-out paths