@extentos/mcp-server 0.0.10 → 0.0.12
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 +88 -83
- package/dist/tools/data/version.js +6 -6
- package/dist/tools/definitions.d.ts.map +1 -1
- package/dist/tools/definitions.js +4 -19
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/docs/index.d.ts.map +1 -1
- package/dist/tools/docs/index.js +99 -13
- package/dist/tools/docs/index.js.map +1 -1
- package/dist/tools/handlers/createSimulatorSession.d.ts.map +1 -1
- package/dist/tools/handlers/createSimulatorSession.js +8 -4
- package/dist/tools/handlers/createSimulatorSession.js.map +1 -1
- package/dist/tools/handlers/generateConnectionModule.d.ts.map +1 -1
- package/dist/tools/handlers/generateConnectionModule.js +45 -4
- package/dist/tools/handlers/generateConnectionModule.js.map +1 -1
- package/dist/tools/handlers/generateConsumer.js +15 -18
- package/dist/tools/handlers/generateConsumer.js.map +1 -1
- package/dist/tools/handlers/initSpec.d.ts.map +1 -1
- package/dist/tools/handlers/initSpec.js +6 -1
- package/dist/tools/handlers/initSpec.js.map +1 -1
- package/dist/tools/handlers/updateSpec.d.ts.map +1 -1
- package/dist/tools/handlers/updateSpec.js +10 -2
- package/dist/tools/handlers/updateSpec.js.map +1 -1
- package/dist/tools/handlers/validateIntegration.d.ts.map +1 -1
- package/dist/tools/handlers/validateIntegration.js +9 -1
- package/dist/tools/handlers/validateIntegration.js.map +1 -1
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +0 -2
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/templates/androidBootstrap.d.ts.map +1 -1
- package/dist/tools/templates/androidBootstrap.js +45 -2
- package/dist/tools/templates/androidBootstrap.js.map +1 -1
- package/dist/tools/templates/callbackHandler.d.ts.map +1 -1
- package/dist/tools/templates/callbackHandler.js +16 -4
- package/dist/tools/templates/callbackHandler.js.map +1 -1
- package/dist/tools/templates/iosBootstrap.d.ts.map +1 -1
- package/dist/tools/templates/iosBootstrap.js +76 -48
- package/dist/tools/templates/iosBootstrap.js.map +1 -1
- package/dist/tools/util/manifest.d.ts +10 -0
- package/dist/tools/util/manifest.d.ts.map +1 -1
- package/dist/tools/util/manifest.js +5 -1
- package/dist/tools/util/manifest.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,83 +1,88 @@
|
|
|
1
|
-
# @extentos/mcp-server
|
|
2
|
-
|
|
3
|
-
MCP server for building Meta-glasses-connected apps with Claude Code and other
|
|
4
|
-
MCP-aware agents. Exposes
|
|
5
|
-
authoring, code generation, permissions, credential guidance, validation,
|
|
6
|
-
a browser-based simulator for testing without physical hardware.
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
1
|
+
# @extentos/mcp-server
|
|
2
|
+
|
|
3
|
+
MCP server for building Meta-glasses-connected apps with Claude Code and other
|
|
4
|
+
MCP-aware agents. Exposes 18 deterministic tools covering capability discovery,
|
|
5
|
+
spec authoring, code generation, permissions, credential guidance, validation,
|
|
6
|
+
and a browser-based simulator for testing without physical hardware.
|
|
7
|
+
|
|
8
|
+
The server has no planning tool — agents are better planners than regex bundles
|
|
9
|
+
of keyword matches. Catalog topics in `searchDocs` carry inline minimal
|
|
10
|
+
examples sufficient for most specs; `getExampleSpec` is a reference library
|
|
11
|
+
for studying complex compositions on demand.
|
|
12
|
+
|
|
13
|
+
## Install
|
|
14
|
+
|
|
15
|
+
Register the server with Claude Code (or any MCP host) in one line:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
claude mcp add extentos -- npx -y @extentos/mcp-server@latest
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Restart Claude Code. `/mcp` should list `extentos` with all tools available.
|
|
22
|
+
|
|
23
|
+
Prerequisites: Node.js 20+ on `PATH`. That's it — `npx` fetches the package on
|
|
24
|
+
first run and caches it.
|
|
25
|
+
|
|
26
|
+
## Getting started (for the agent)
|
|
27
|
+
|
|
28
|
+
The agent plans composition itself. Start with discovery, then mutate.
|
|
29
|
+
|
|
30
|
+
**Discovery (read these first; cheap, all local):**
|
|
31
|
+
|
|
32
|
+
- `getPlatformInfo({ sections: ["version", "capabilities"], glasses: "meta_rayban" })` — fetch the catalog of what exists.
|
|
33
|
+
- `searchDocs({ topic: "getting_started" })` — index of catalog topics, mutation tool order, constraint topics.
|
|
34
|
+
- `searchDocs({ topic: "trigger_types" | "action_types" | "block_types" | "stream_types" | "spec_format" })` — primitive catalog with inline minimal examples.
|
|
35
|
+
|
|
36
|
+
**Mutation tool sequence (deterministic, in order):**
|
|
37
|
+
|
|
38
|
+
1. `generateConnectionModule` — one-shot scaffold (bootstrap module, Gradle/SPM wiring, empty spec). Returns `developerInstructions.Step 1` asking the dev where `ExtentosConnectionPage` should live — surface the question, do not skip it.
|
|
39
|
+
2. `initSpec` — populate the first real spec from the primitives you composed.
|
|
40
|
+
3. `generateConsumer(kind: "callback")` — stub `app_callback` handlers if the spec has any. (`kind: "stream"` for stream consumers.)
|
|
41
|
+
4. `validateIntegration` — pre-test correctness gate. Re-run after every mutation.
|
|
42
|
+
5. `createSimulatorSession` — provision a browser-hosted glasses surrogate.
|
|
43
|
+
|
|
44
|
+
**Iteration:** `inspectIntegration` (for the `basedOn` freshness token) → `updateSpec` → `generateConsumer` (if handlers/streams added) → `validateIntegration`.
|
|
45
|
+
|
|
46
|
+
**Debugging:** `getEventLog`, `getSimulatorStatus`. **Ship-readiness:** `getProductionChecklist`.
|
|
47
|
+
|
|
48
|
+
**Reference library (on demand):** `getExampleSpec` returns 8 worked patterns (voice_assistant, live_translation, video_call, etc.). Use only for complex compositions; the catalog topics cover simple cases without it.
|
|
49
|
+
|
|
50
|
+
See the full tool reference and example flow in the repo:
|
|
51
|
+
|
|
52
|
+
- [MCP tool catalog](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/MCP_TOOLS.md)
|
|
53
|
+
- [12-step example flow](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/EXAMPLE_FLOW.md)
|
|
54
|
+
- [Authentication model](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/AUTHENTICATION.md)
|
|
55
|
+
- [Auto-bind dev loop](https://github.com/Asgermolgaard/vibe-hardware/blob/master/docs/mcp/PERSISTENT_DEV_SESSION.md)
|
|
56
|
+
|
|
57
|
+
## Features
|
|
58
|
+
|
|
59
|
+
- **Anonymous-first.** First simulator session needs no signup. 500-event
|
|
60
|
+
anonymous meter; account linking via device-code flow when exhausted.
|
|
61
|
+
- **Auto-bind dev loop (Android).** Once the library is in your app, the
|
|
62
|
+
MCP and library coordinate via a `127.0.0.1:31337/whoami` localhost
|
|
63
|
+
bridge. Subsequent `createSimulatorSession` calls auto-attach the
|
|
64
|
+
running app to the new session — no rebuild, no URL paste, no typed
|
|
65
|
+
code in the happy path. Calling the tool while a session is already
|
|
66
|
+
active supersedes silently. iOS auto-bind: in progress.
|
|
67
|
+
- **Browser simulator surrogate.** Camera, mic, hardware alerts,
|
|
68
|
+
notifications, replay — all browser-side; no physical glasses needed
|
|
69
|
+
for the bulk of the dev loop.
|
|
70
|
+
|
|
71
|
+
## Platforms
|
|
72
|
+
|
|
73
|
+
- **Android** — primary target for the current pre-release. Library resolves
|
|
74
|
+
from `mavenLocal()` during Phase 7a; Maven Central promotion is on the
|
|
75
|
+
Phase 7b roadmap. Auto-bind is fully shipped on this platform.
|
|
76
|
+
- **iOS** — supported via SPM. Same MCP tool surface, different generated
|
|
77
|
+
artifacts. Auto-bind in progress; iOS apps still use the URL-bake path
|
|
78
|
+
via `extentos.session.plist` until that lands.
|
|
79
|
+
|
|
80
|
+
## Status
|
|
81
|
+
|
|
82
|
+
Pre-1.0. APIs may shift between minor versions until the hardware test loop
|
|
83
|
+
closes. Pin to an exact version (`@0.1.0`) if you need reproducibility across
|
|
84
|
+
sessions.
|
|
85
|
+
|
|
86
|
+
## License
|
|
87
|
+
|
|
88
|
+
MIT — see [LICENSE](https://github.com/Asgermolgaard/vibe-hardware/blob/master/LICENSE) in the repo.
|
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
// scaffold a project pointing at 1.0.0 (no probe code) while running
|
|
7
7
|
// 0.0.7+ server-side smarts that needed 1.1.x to function.
|
|
8
8
|
//
|
|
9
|
-
// Pre-public-Maven note: 1.1.
|
|
9
|
+
// Pre-public-Maven note: 1.1.5-pair currently lives only on the dev's
|
|
10
10
|
// mavenLocal (./gradlew :glasses-core:publishToMavenLocal). Until a
|
|
11
11
|
// public Maven Central / JitPack publish lands, scaffolded projects
|
|
12
12
|
// require the dev to run mavenLocal-publish first. Document next to
|
|
13
13
|
// the dependency notation in generateConnectionModule.
|
|
14
14
|
export const VERSION_INFO = {
|
|
15
|
-
latestStable: "1.1.
|
|
15
|
+
latestStable: "1.1.5-pair",
|
|
16
16
|
specVersion: "1.0",
|
|
17
17
|
android: {
|
|
18
18
|
minimumSdk: 31,
|
|
@@ -30,13 +30,13 @@ export const VERSION_INFO = {
|
|
|
30
30
|
},
|
|
31
31
|
artifacts: {
|
|
32
32
|
android: {
|
|
33
|
-
core: "com.extentos:glasses:1.1.
|
|
34
|
-
ui: "com.extentos:glasses-ui:1.1.
|
|
35
|
-
debug: "com.extentos:glasses-debug:1.1.
|
|
33
|
+
core: "com.extentos:glasses:1.1.5-pair",
|
|
34
|
+
ui: "com.extentos:glasses-ui:1.1.5-pair",
|
|
35
|
+
debug: "com.extentos:glasses-debug:1.1.5-pair",
|
|
36
36
|
},
|
|
37
37
|
ios: {
|
|
38
38
|
package: "https://github.com/extentos/swift-glasses",
|
|
39
|
-
version: "1.1.
|
|
39
|
+
version: "1.1.5-pair",
|
|
40
40
|
products: ["GlassesCore", "GlassesUI", "GlassesDebug", "GlassesLifecycle", "GlassesTesting"],
|
|
41
41
|
},
|
|
42
42
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,oBAAoB,EAAE,KAAK,CAAC;KAC7B,CAAC;CACH;AAMD,eAAO,MAAM,eAAe,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,oBAAoB,EAAE,KAAK,CAAC;KAC7B,CAAC;CACH;AAMD,eAAO,MAAM,eAAe,EAAE,OAAO,EA6VpC,CAAC;AAEF,eAAO,MAAM,SAAS,QAAyB,CAAC"}
|
|
@@ -9,7 +9,7 @@ export const toolDefinitions = [
|
|
|
9
9
|
// --- 1. Discovery and Planning ---
|
|
10
10
|
{
|
|
11
11
|
name: "getPlatformInfo",
|
|
12
|
-
description: "Return static platform metadata (library version, spec schema, glasses capabilities) in a single call. USE at session start. DON'T USE for how to use a primitive (use searchDocs) or what's installed in the project (use inspectIntegration).",
|
|
12
|
+
description: "Return static platform metadata (library version, spec schema, glasses capabilities) in a single call. The right first call for any new task — gives you the catalog of what exists so you can plan composition yourself. Pair with searchDocs for inline examples of each primitive. USE at session start, before any spec work. DON'T USE for how to use a primitive (use searchDocs catalog topics) or what's installed in the project (use inspectIntegration).",
|
|
13
13
|
inputSchema: {
|
|
14
14
|
type: "object",
|
|
15
15
|
properties: {
|
|
@@ -24,24 +24,9 @@ export const toolDefinitions = [
|
|
|
24
24
|
additionalProperties: false,
|
|
25
25
|
},
|
|
26
26
|
},
|
|
27
|
-
{
|
|
28
|
-
name: "planIntegration",
|
|
29
|
-
description: "Turn a natural-language goal into a tool-call sequence. Strategy-level, pre-generation. USE as first tool call. DON'T USE for modifying the spec (use updateSpec).",
|
|
30
|
-
inputSchema: {
|
|
31
|
-
type: "object",
|
|
32
|
-
properties: {
|
|
33
|
-
goal: { type: "string", minLength: 1 },
|
|
34
|
-
platform: platformEnum,
|
|
35
|
-
glasses: glassesEnum,
|
|
36
|
-
hasExistingIntegration: { type: "boolean" },
|
|
37
|
-
},
|
|
38
|
-
required: ["goal", "platform", "glasses"],
|
|
39
|
-
additionalProperties: false,
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
27
|
{
|
|
43
28
|
name: "getExampleSpec",
|
|
44
|
-
description: "
|
|
29
|
+
description: "Reference library — retrieve one of 8 worked example specs (voice_assistant, live_translation, scene_description, notification_reader, navigation_guide, video_call, object_detection, voice_notes) when you want to study a complete worked composition. USE on demand to study how complex flows compose; peel pieces off, do not copy whole. DON'T USE for simple cases — read searchDocs catalog topics (trigger_types, action_types, block_types) instead, which carry inline minimal examples sufficient for most specs. DON'T USE as a starting template for initSpec — write the spec from primitives the dev's goal actually needs.",
|
|
45
30
|
inputSchema: {
|
|
46
31
|
type: "object",
|
|
47
32
|
properties: {
|
|
@@ -66,7 +51,7 @@ export const toolDefinitions = [
|
|
|
66
51
|
// --- 2. Setup and Generation ---
|
|
67
52
|
{
|
|
68
53
|
name: "generateConnectionModule",
|
|
69
|
-
description: "One-shot project scaffold — bootstrap module, empty spec, manifest, dependencies, permissions. Run once per project before any spec work. USE as first generation tool
|
|
54
|
+
description: "One-shot project scaffold — bootstrap module, empty spec, manifest, dependencies, permissions. Run once per project before any spec work. Returns developerInstructions.Step 1 telling you to ask the dev where ExtentosConnectionPage should live (5 placement options); do not skip that prompt. USE as the first generation tool when scaffolding a fresh project. DON'T USE when Extentos is already installed (use inspectIntegration + updateSpec).",
|
|
70
55
|
inputSchema: {
|
|
71
56
|
type: "object",
|
|
72
57
|
properties: {
|
|
@@ -334,7 +319,7 @@ export const toolDefinitions = [
|
|
|
334
319
|
// --- 7. Documentation ---
|
|
335
320
|
{
|
|
336
321
|
name: "searchDocs",
|
|
337
|
-
description: "Search Extentos documentation by topic or keyword. Primary way to learn about the platform. USE to understand how
|
|
322
|
+
description: "Search Extentos documentation by topic or keyword. Primary way to learn about the platform — catalog topics (trigger_types, action_types, block_types, stream_types, spec_format, template_syntax, app_callback_guide, library_api) carry inline minimal examples agents can compose against, so most specs can be written without ever fetching a getExampleSpec pattern. Topic IDs are stable; read getting_started first to see the index. USE to understand how a primitive works or how to compose primitives. DON'T USE for the platform capability list (use getPlatformInfo) or for project-installed state (use inspectIntegration).",
|
|
338
323
|
inputSchema: {
|
|
339
324
|
type: "object",
|
|
340
325
|
properties: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,mFAAmF;AACnF,oFAAoF;AACpF,sEAAsE;AAatE,MAAM,YAAY,GAAG,EAAE,IAAI,EAAE,QAAiB,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;AAC3E,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,QAAiB,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;AACvE,MAAM,kBAAkB,GAAG,EAAE,IAAI,EAAE,QAAiB,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC;AAEtF,MAAM,CAAC,MAAM,eAAe,GAAc;IACxC,oCAAoC;IACpC;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/docs/index.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAiHD,eAAO,MAAM,SAAS,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/docs/index.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAiHD,eAAO,MAAM,SAAS,EAAE,QAAQ,EAoY/B,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,CAuB/E"}
|
package/dist/tools/docs/index.js
CHANGED
|
@@ -118,35 +118,90 @@ export const DOC_INDEX = [
|
|
|
118
118
|
{
|
|
119
119
|
topic: "getting_started",
|
|
120
120
|
title: "Getting Started with Extentos",
|
|
121
|
-
content: "Extentos lets agents build Meta Ray-Ban apps from a structured spec.
|
|
122
|
-
|
|
123
|
-
|
|
121
|
+
content: "Extentos lets agents build Meta Ray-Ban apps from a structured spec. The library carries all hardware logic — developer code is a spec file plus thin generated glue (bootstrap + callback dispatch + optional stream consumer) plus handler bodies. " +
|
|
122
|
+
"Agents plan composition themselves; there is no planning tool. Read the catalog topics below to see what primitives exist, then assemble the smallest spec your goal needs. " +
|
|
123
|
+
"Catalog topics: trigger_types, action_types, block_types, stream_types, spec_format, template_syntax, toggles, app_callback_guide, library_api, voice_ux_guide, permissions, connection_ui_placement. Each has inline minimal examples sufficient for most specs. " +
|
|
124
|
+
"Constraint topics: constraints_and_limitations, audio_video_coexistence, spec_validation_rules. " +
|
|
125
|
+
"Mutation tool sequence (deterministic, in order): " +
|
|
126
|
+
"(1) getPlatformInfo — one call to fetch capability surface and library version. " +
|
|
127
|
+
"(2) generateConnectionModule — one-shot scaffold (bootstrap + dependencies + empty spec). Surfaces a developerInstructions.Step 1 prompt to ask the dev about ExtentosConnectionPage placement; do not skip it. " +
|
|
128
|
+
"(3) initSpec — populate the first real spec from primitives you composed. " +
|
|
129
|
+
"(4) generateConsumer(kind: 'callback') — stub app_callback handlers if your spec uses any. Use kind: 'stream' for stream consumers. " +
|
|
130
|
+
"(5) validateIntegration — pre-test correctness gate. Re-run after every mutation. " +
|
|
131
|
+
"(6) createSimulatorSession — provision a browser simulator session to test end-to-end. " +
|
|
132
|
+
"For changes after step 3: inspectIntegration → updateSpec → generateConsumer (if handlers/streams added) → validateIntegration. " +
|
|
133
|
+
"Reference library: getExampleSpec returns 8 worked patterns (voice_assistant, live_translation, etc.). On-demand only — read it when studying a complex composition. The catalog topics cover the simple cases without it.",
|
|
134
|
+
keywords: ["setup", "start", "first", "begin", "overview", "walkthrough", "tool order", "workflow", "catalog"],
|
|
135
|
+
relatedTools: ["getPlatformInfo", "generateConnectionModule", "initSpec", "searchDocs", "validateIntegration"],
|
|
124
136
|
},
|
|
125
137
|
{
|
|
126
138
|
topic: "block_types",
|
|
127
139
|
title: "Block Types",
|
|
128
|
-
content: "3 blocks: capture_photo (one-shot still), capture_video (bounded clip with duration), record_audio (bounded mic capture). Each returns a URI plus format metadata. Blocks are discrete, bounded operations — continuous media uses streams. Constraints: Meta DAT does not expose live-stream video capture, so capture_video is clip-only
|
|
140
|
+
content: "3 blocks: capture_photo (one-shot still), capture_video (bounded clip with duration), record_audio (bounded mic capture). Each returns a URI plus format metadata. Blocks are discrete, bounded operations — continuous media uses streams. Constraints: Meta DAT does not expose live-stream video capture, so capture_video is clip-only.\n\n" +
|
|
141
|
+
"Minimal block declarations (drop straight into spec.blocks[]):\n" +
|
|
142
|
+
` { "type": "capture_photo", "id": "main_camera", "params": { "resolution": "MEDIUM", "format": "jpeg" } }\n` +
|
|
143
|
+
` { "type": "capture_video", "id": "main_clip", "params": { "max_duration_seconds": 5, "resolution": "MEDIUM" } }\n` +
|
|
144
|
+
` { "type": "record_audio", "id": "note_recorder", "params": { "max_duration_seconds": 30, "silence_timeout_seconds": 3, "quality": "standard" } }\n\n` +
|
|
145
|
+
"Invoke from a trigger via the block_call action: " +
|
|
146
|
+
`{ "type": "block_call", "block_id": "main_camera", "save_as": "photo" } — the result is then available as {{photo}} in subsequent actions.`,
|
|
129
147
|
keywords: ["block", "capture_photo", "capture_video", "record_audio", "photo", "video", "audio", "capture"],
|
|
130
148
|
relatedTools: ["getPlatformInfo", "initSpec", "updateSpec"],
|
|
131
149
|
},
|
|
132
150
|
{
|
|
133
151
|
topic: "stream_types",
|
|
134
152
|
title: "Stream Types",
|
|
135
|
-
content: "5 streams: video_frames (outbound from glasses camera), audio_chunks (outbound mic), transcription_incremental (STT events), outgoing_video_stream (phone→glasses video), outgoing_audio_stream (phone→glasses audio). Consumption: Kotlin Flow on Android, AsyncStream on iOS. Backpressure via buffering strategy per stream config. Lifecycle: start/stop tied to app foreground; foreground service required on Android 14
|
|
153
|
+
content: "5 streams: video_frames (outbound from glasses camera), audio_chunks (outbound mic), transcription_incremental (STT events), outgoing_video_stream (phone→glasses video), outgoing_audio_stream (phone→glasses audio). Consumption: Kotlin Flow on Android, AsyncStream on iOS. Backpressure via buffering strategy per stream config. Lifecycle: start/stop tied to app foreground; foreground service required on Android 14+.\n\n" +
|
|
154
|
+
"Minimal stream declarations (drop straight into spec.streams[]):\n" +
|
|
155
|
+
` { "type": "transcription_incremental", "id": "live_transcript", "config": { "language": "en-US" } }\n` +
|
|
156
|
+
` { "type": "video_frames", "id": "frames", "config": { "resolution": "LOW", "frame_rate": 2, "codec": "hvc1", "backpressure": "drop_oldest" } }\n` +
|
|
157
|
+
` { "type": "audio_chunks", "id": "mic", "config": { "chunk_millis": 20, "codec": "opus" } }\n\n` +
|
|
158
|
+
"Streams are gated by toggles (transcription_enabled, camera_streaming_enabled, audio_capture_enabled). Set the toggle to start; consumer code lives in ExtentosStreams.{kt,swift} — generate the consumer scaffold via generateConsumer(kind: \"stream\", streams: [...]).",
|
|
136
159
|
keywords: ["stream", "video_frames", "audio_chunks", "transcription", "flow", "asyncstream", "backpressure", "continuous"],
|
|
137
160
|
relatedTools: ["getPlatformInfo", "generateConsumer", "getPermissions"],
|
|
138
161
|
},
|
|
139
162
|
{
|
|
140
163
|
topic: "trigger_types",
|
|
141
164
|
title: "Trigger Types",
|
|
142
|
-
content: "13 triggers: voice_command (custom phrase), wake_word, push_to_talk, capture_button, tap, double_tap, manual_launch, phone_notification_forwarded, incoming_call_detected, location_updated, thermal_warning, connection_state_changed, fallback. Payloads vary — voice_command exposes captures dict, tap has position, location_updated has lat/long. Distinct from presets (`fallback_default`, `thermal_throttle`, `disconnect_announce` on initSpec.presetTriggers) which are canned trigger shapes expanded into the spec
|
|
165
|
+
content: "13 triggers: voice_command (custom phrase), wake_word, push_to_talk, capture_button, tap, double_tap, manual_launch, phone_notification_forwarded, incoming_call_detected, location_updated, thermal_warning, connection_state_changed, fallback. Payloads vary — voice_command exposes captures dict, tap has position, location_updated has lat/long. Distinct from presets (`fallback_default`, `thermal_throttle`, `disconnect_announce` on initSpec.presetTriggers) which are canned trigger shapes expanded into the spec.\n\n" +
|
|
166
|
+
"Minimal trigger declarations (drop straight into spec.triggers[]). The most common shape — voice phrase invokes app code:\n" +
|
|
167
|
+
` {\n` +
|
|
168
|
+
` "type": "voice_command",\n` +
|
|
169
|
+
` "id": "t_my_phrase",\n` +
|
|
170
|
+
` "phrase": "do the thing",\n` +
|
|
171
|
+
` "match_mode": "contains",\n` +
|
|
172
|
+
` "actions": [\n` +
|
|
173
|
+
` { "type": "app_callback", "handler": "do_the_thing", "input": {}, "save_as": "result" },\n` +
|
|
174
|
+
` { "type": "speak_text", "text": "Done." }\n` +
|
|
175
|
+
` ]\n` +
|
|
176
|
+
` }\n\n` +
|
|
177
|
+
"Other minimal shapes:\n" +
|
|
178
|
+
` { "type": "tap", "id": "t_tap", "actions": [...] }\n` +
|
|
179
|
+
` { "type": "manual_launch", "id": "t_start", "actions": [...] } // fires once on app start\n` +
|
|
180
|
+
` { "type": "fallback", "id": "t_fallback", "actions": [{ "type": "speak_text", "text": "Sorry, I didn't catch that." }] }\n\n` +
|
|
181
|
+
"voice_command match_mode options: 'exact' | 'starts_with' | 'contains'. Use 'contains' for natural-language flexibility. See voice_ux_guide topic for phrase design rules.",
|
|
143
182
|
keywords: ["trigger", "voice_command", "tap", "capture_button", "wake_word", "fallback", "notification", "thermal", "preset"],
|
|
144
183
|
relatedTools: ["getPlatformInfo", "getVoiceCommandGuidance", "updateSpec"],
|
|
145
184
|
},
|
|
146
185
|
{
|
|
147
186
|
topic: "action_types",
|
|
148
187
|
title: "Action Types",
|
|
149
|
-
content: "15 actions inside trigger flows: block_call, stream_start, stream_stop, speak_text, app_callback, set_toggle, set_variable, branch, retry_with_backoff, when_connected, wait, delay, stop_flow, log, emit_event. app_callback routes to host-code handlers for AI / domain logic. Schema permits branch depth ≤ 4; reference-pattern examples keep depth ≤ 1 by convention. retry_with_backoff succeeds when save_as is populated
|
|
188
|
+
content: "15 actions inside trigger flows: block_call, stream_start, stream_stop, speak_text, app_callback, set_toggle, set_variable, branch, retry_with_backoff, when_connected, wait, delay, stop_flow, log, emit_event. app_callback routes to host-code handlers for AI / domain logic. Schema permits branch depth ≤ 4; reference-pattern examples keep depth ≤ 1 by convention. retry_with_backoff succeeds when save_as is populated.\n\n" +
|
|
189
|
+
"Minimal action shapes (drop into a trigger's actions[]):\n" +
|
|
190
|
+
` { "type": "speak_text", "text": "Hello." }\n` +
|
|
191
|
+
` { "type": "app_callback", "handler": "my_handler", "input": { "key": "{{some_var}}" }, "save_as": "result" }\n` +
|
|
192
|
+
` { "type": "block_call", "block_id": "main_camera", "save_as": "photo" }\n` +
|
|
193
|
+
` { "type": "set_toggle", "key": "transcription_enabled", "value": true }\n` +
|
|
194
|
+
` { "type": "set_variable", "name": "counter", "value": 0 }\n` +
|
|
195
|
+
` { "type": "log", "level": "info", "message": "fired" }\n\n` +
|
|
196
|
+
"Branch (conditional flow):\n" +
|
|
197
|
+
` {\n` +
|
|
198
|
+
` "type": "branch",\n` +
|
|
199
|
+
` "condition": { "variable": "result.description", "operator": "is_empty" },\n` +
|
|
200
|
+
` "then": [{ "type": "speak_text", "text": "No result." }],\n` +
|
|
201
|
+
` "else": [{ "type": "speak_text", "text": "{{result.description}}" }]\n` +
|
|
202
|
+
` }\n\n` +
|
|
203
|
+
"Branch operators: equals, not_equals, is_empty, not_empty, greater_than, less_than. Variables resolve via {{name}} — see template_syntax topic. " +
|
|
204
|
+
"app_callback is how the spec calls back into the developer's app (the most common shape for any host-app integration: voice phrase → app_callback → app does the thing). Generate the handler stub via generateConsumer(kind: 'callback').",
|
|
150
205
|
keywords: ["action", "block_call", "app_callback", "branch", "retry", "speak", "set_toggle", "set_variable"],
|
|
151
206
|
relatedTools: ["updateSpec", "generateConsumer"],
|
|
152
207
|
},
|
|
@@ -160,7 +215,28 @@ export const DOC_INDEX = [
|
|
|
160
215
|
{
|
|
161
216
|
topic: "spec_format",
|
|
162
217
|
title: "Spec Format",
|
|
163
|
-
content: "Top-level: extentos_version ('1.0'), target.vendor ('meta_rayban'), blocks[], streams[], triggers[]. Each block/stream/trigger has a unique id. Triggers declare a type, optional id, and an actions[] array. Spec file lives at app/src/main/assets/extentos.spec.json (Android) or Resources/extentos.spec.json (iOS), byte-identical across platforms
|
|
218
|
+
content: "Top-level: extentos_version ('1.0'), target.vendor ('meta_rayban'), blocks[], streams[], triggers[]. Each block/stream/trigger has a unique id. Triggers declare a type, optional id, and an actions[] array. Spec file lives at app/src/main/assets/extentos.spec.json (Android) or Resources/extentos.spec.json (iOS), byte-identical across platforms.\n\n" +
|
|
219
|
+
"Minimal valid spec — voice phrase that calls back into the host app (the smallest useful shape):\n" +
|
|
220
|
+
` {\n` +
|
|
221
|
+
` "$schema": "extentos://schema/v1",\n` +
|
|
222
|
+
` "extentos_version": "1.0",\n` +
|
|
223
|
+
` "target": { "vendor": "meta_rayban" },\n` +
|
|
224
|
+
` "blocks": [],\n` +
|
|
225
|
+
` "streams": [],\n` +
|
|
226
|
+
` "triggers": [\n` +
|
|
227
|
+
` {\n` +
|
|
228
|
+
` "type": "voice_command",\n` +
|
|
229
|
+
` "id": "t_my_phrase",\n` +
|
|
230
|
+
` "phrase": "do the thing",\n` +
|
|
231
|
+
` "match_mode": "contains",\n` +
|
|
232
|
+
` "actions": [\n` +
|
|
233
|
+
` { "type": "app_callback", "handler": "do_the_thing", "input": {}, "save_as": "result" },\n` +
|
|
234
|
+
` { "type": "speak_text", "text": "Done." }\n` +
|
|
235
|
+
` ]\n` +
|
|
236
|
+
` }\n` +
|
|
237
|
+
` ]\n` +
|
|
238
|
+
` }\n\n` +
|
|
239
|
+
"Add blocks[] entries when capturing photo/video/audio. Add streams[] entries for continuous flows (transcription, video frames). See block_types, stream_types, trigger_types, action_types for inline examples of each.",
|
|
164
240
|
keywords: ["spec", "format", "structure", "extentos_version", "target", "schema", "top-level"],
|
|
165
241
|
relatedTools: ["validateSpec", "initSpec", "updateSpec", "inspectIntegration"],
|
|
166
242
|
},
|
|
@@ -202,15 +278,25 @@ export const DOC_INDEX = [
|
|
|
202
278
|
{
|
|
203
279
|
topic: "library_api",
|
|
204
280
|
title: "Extentos Library API",
|
|
205
|
-
content: "ExtentosGlasses is the top-level object, carrying 8 sub-clients:
|
|
206
|
-
keywords: ["library", "api", "extentosglasses", "config", "subclient", "create", "register"],
|
|
281
|
+
content: "ExtentosGlasses is the top-level object, carrying 8 consumer-facing sub-clients (identical on Android and iOS): connection, camera, audio, runtime, toggles, extensions, debug, telemetry. Spec lifecycle lives on `runtime` (loadSpec returns ExtentosResult — pattern-match Ok/Err, do NOT use Kotlin runCatching, which never catches the Err channel since loadSpec never throws). Register app_callback handlers via glasses.extensions.registerAppCallbackHandler(name, impl). ExtentosConfig controls transport override, debug, telemetryConsent, applicationContext (Android), and metaCredentials. Creation: ExtentosGlasses.create() on Android / Extentos.create() on iOS.",
|
|
282
|
+
keywords: ["library", "api", "extentosglasses", "config", "subclient", "create", "register", "runtime", "loadSpec", "ExtentosResult"],
|
|
207
283
|
relatedTools: ["generateConnectionModule", "generateConsumer"],
|
|
208
284
|
},
|
|
209
285
|
{
|
|
210
286
|
topic: "app_callback_guide",
|
|
211
287
|
title: "App Callback Handlers",
|
|
212
|
-
content: "app_callback routes flow control
|
|
213
|
-
|
|
288
|
+
content: "app_callback routes flow control from the spec into the developer's native code — for AI calls, domain logic (DB writes, file IO, repository ops), or external service access. Register via glasses.extensions.registerAppCallbackHandler(handler). AppCall carries the handler name, the input map declared in the spec's app_callback action, and caller context (triggerId, flowId). Returning AppCallbackResult.Success(value) populates the flow's save_as variable; returning Error short-circuits the flow. Timeouts surface as 'callback.timeout' events.\n\n" +
|
|
289
|
+
"Handler stub generation: call generateConsumer(kind: 'callback', handlers: [...]) → emits ExtentosCallbacks.{kt,swift} with marker-bounded dispatch and a USER-CODE block per handler for your implementation. The bootstrap dispatch region gets a replace_region patch that wires registration.\n\n" +
|
|
290
|
+
"Android handler shape (from generated stub — fill in USER-CODE):\n" +
|
|
291
|
+
" private suspend fun handleDoTheThing(call: AppCall): AppCallbackResult {\n" +
|
|
292
|
+
" // USER-CODE-START:do_the_thing\n" +
|
|
293
|
+
" MyAppRepository.doTheThing()\n" +
|
|
294
|
+
" return AppCallbackResult.Success(buildJsonObject { put(\"ok\", true) })\n" +
|
|
295
|
+
" // USER-CODE-END:do_the_thing\n" +
|
|
296
|
+
" }\n\n" +
|
|
297
|
+
"iOS handler shape: same idea — `private func handleDoTheThing(_ call: AppCall) async -> AppCallbackResult` with USER-CODE markers; return .success(value:) or .error(code:, message:).\n\n" +
|
|
298
|
+
"Generated stubs return an AI-provider TODO comment ONLY when you pass a `suggestedProvider` field to generateConsumer; otherwise the stub gets a generic implementation TODO suitable for non-AI handlers.",
|
|
299
|
+
keywords: ["app_callback", "callback", "handler", "register", "appcall", "timeout", "byok", "user-code"],
|
|
214
300
|
relatedTools: ["generateConsumer", "getCredentialGuide", "updateSpec"],
|
|
215
301
|
},
|
|
216
302
|
{
|
|
@@ -288,7 +374,7 @@ export const DOC_INDEX = [
|
|
|
288
374
|
title: "Platform Constraints and Limitations",
|
|
289
375
|
content: "Meta DAT is phone↔glasses — no browser↔glasses. 'Hey Meta' wake word not accessible to third parties. Live video streaming from glasses camera not exposed in current DAT (frames only). Custom gestures beyond tap/double-tap not in preview. Publishing to store is preview-limited; private testing via export is the safe default. iOS SDK: iOS 15.2+, Swift 6 preferred. A2DP/HFP can't run concurrently.",
|
|
290
376
|
keywords: ["limit", "constraint", "dat", "gap", "wake word", "preview", "unsupported"],
|
|
291
|
-
relatedTools: ["getPlatformInfo", "
|
|
377
|
+
relatedTools: ["getPlatformInfo", "searchDocs"],
|
|
292
378
|
},
|
|
293
379
|
{
|
|
294
380
|
topic: "connection_ui",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/docs/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/docs/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSimulatorSession.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/createSimulatorSession.ts"],"names":[],"mappings":"AAMA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA2C5E,wBAAsB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"createSimulatorSession.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/createSimulatorSession.ts"],"names":[],"mappings":"AAMA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA2C5E,wBAAsB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAkJpF"}
|
|
@@ -107,10 +107,14 @@ export async function handleCreateSimulatorSession(raw) {
|
|
|
107
107
|
: `Session ${body.sessionId} ready. Rebuild ${parsed.platform} project to bake URL into the binary.`,
|
|
108
108
|
};
|
|
109
109
|
if (parsed.platform === "ios") {
|
|
110
|
-
// iOS:
|
|
111
|
-
//
|
|
112
|
-
//
|
|
113
|
-
//
|
|
110
|
+
// iOS: when auto-bind attached the device, the running app is already
|
|
111
|
+
// on the new session via the persistent /ws/pending socket — writing
|
|
112
|
+
// a plist would baked-in a stale URL on the next clean build, defeats
|
|
113
|
+
// the auto-bind path. Mirror Android's gating: skip the plist + the
|
|
114
|
+
// .gitignore touch when attached === true.
|
|
115
|
+
if (attached) {
|
|
116
|
+
return okResponse(baseResponse);
|
|
117
|
+
}
|
|
114
118
|
const filePlan = writeSessionFile("ios", parsed.projectPath, sessionValues);
|
|
115
119
|
const gitignoreResult = ensureGitignore(parsed.projectPath, filePlan.relativePath);
|
|
116
120
|
return okResponse({
|