@extentos/mcp-server 0.0.82 → 0.0.84
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/dist/tools/data/capabilities.d.ts +7 -4
- package/dist/tools/data/capabilities.d.ts.map +1 -1
- package/dist/tools/data/capabilities.js +8 -7
- package/dist/tools/data/capabilities.js.map +1 -1
- package/dist/tools/data/capabilityPatterns.d.ts.map +1 -1
- package/dist/tools/data/capabilityPatterns.js +17 -16
- package/dist/tools/data/capabilityPatterns.js.map +1 -1
- package/dist/tools/data/codeExamples.d.ts.map +1 -1
- package/dist/tools/data/codeExamples.js +52 -37
- package/dist/tools/data/codeExamples.js.map +1 -1
- package/dist/tools/data/version.js +7 -7
- package/package.json +1 -1
|
@@ -53,10 +53,12 @@ export declare const META_RAYBAN_CAPABILITIES: {
|
|
|
53
53
|
};
|
|
54
54
|
swift: {
|
|
55
55
|
type: string;
|
|
56
|
-
default:
|
|
56
|
+
default: null;
|
|
57
|
+
note: string;
|
|
57
58
|
};
|
|
58
|
-
|
|
59
|
+
type?: undefined;
|
|
59
60
|
default?: undefined;
|
|
61
|
+
note?: undefined;
|
|
60
62
|
};
|
|
61
63
|
include_audio: {
|
|
62
64
|
kotlin: {
|
|
@@ -102,8 +104,9 @@ export declare const META_RAYBAN_CAPABILITIES: {
|
|
|
102
104
|
};
|
|
103
105
|
params: {
|
|
104
106
|
max_duration_seconds: {
|
|
105
|
-
|
|
106
|
-
default:
|
|
107
|
+
type: string;
|
|
108
|
+
default: null;
|
|
109
|
+
note: string;
|
|
107
110
|
kotlin?: undefined;
|
|
108
111
|
swift?: undefined;
|
|
109
112
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/tools/data/capabilities.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAOpD,CAAC;AAEF,eAAO,MAAM,wBAAwB
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/tools/data/capabilities.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAOpD,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuYpC,CAAC;AAUF,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAiB5C,CAAC;AAqBL,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAOnE,CAAC"}
|
|
@@ -44,21 +44,22 @@ export const META_RAYBAN_CAPABILITIES = {
|
|
|
44
44
|
type: "capture_video",
|
|
45
45
|
tier: "phone_side_workaround",
|
|
46
46
|
confidence: "degraded",
|
|
47
|
-
description: "Bounded video clip from the glasses camera. Returns a VideoClip with uri / duration_ms / width / height / format. Phone-side encoded.
|
|
47
|
+
description: "Bounded video clip from the glasses camera. Returns a VideoClip with uri / duration_ms / width / height / format. Phone-side encoded. maxDurationSeconds is Int? on both platforms — null (the default) means no time cap; the capture then ends only on cancellation. The stop primitive is structured-concurrency cancellation of the caller's coroutine/Task — wrap in voice.onPhrase(stops = ...) for voice-driven stop. See getCapabilityGuide(\"capture_video\") for the cancel-drain semantics + cross-platform asymmetry.",
|
|
48
48
|
sdkPath: { kotlin: "camera.captureVideo", swift: "camera.captureVideo" },
|
|
49
49
|
// F-R4-04 / F-R4-06: params reflect the ACTUAL Kotlin VideoConfig
|
|
50
50
|
// constructor shape, not the pre-pivot spec dictionary. Pre-fix this
|
|
51
51
|
// block advertised `resolution`, `max_duration_seconds: { max: 60,
|
|
52
52
|
// default: 10 }`, `include_audio: { default: false }`, and a
|
|
53
53
|
// `stop_conditions` array — none of those match the current Kotlin
|
|
54
|
-
// API (`maxDurationSeconds:
|
|
54
|
+
// API (`maxDurationSeconds: Int? = null`, `includeAudio: Boolean
|
|
55
55
|
// = true`, `format: VideoFormat = MP4_HEVC`, no other fields). For
|
|
56
|
-
// the iOS shape (which DOES have resolution
|
|
57
|
-
//
|
|
56
|
+
// the iOS shape (which DOES have a resolution field; its
|
|
57
|
+
// maxDurationSeconds is the same Int? as Kotlin) and the
|
|
58
|
+
// cancel-on-voice-stop idiom, see the capability guide.
|
|
58
59
|
params: {
|
|
59
60
|
max_duration_seconds: {
|
|
60
|
-
kotlin: { type: "
|
|
61
|
-
swift: { type: "Int", default:
|
|
61
|
+
kotlin: { type: "Int?", default: null, note: "null = no time cap; stop only via cancellation" },
|
|
62
|
+
swift: { type: "Int?", default: null, note: "null = no time cap; stop only via cancellation" },
|
|
62
63
|
},
|
|
63
64
|
include_audio: {
|
|
64
65
|
kotlin: { type: "Boolean", default: true },
|
|
@@ -84,7 +85,7 @@ export const META_RAYBAN_CAPABILITIES = {
|
|
|
84
85
|
description: "Bounded mic capture with built-in silence-VAD turn-detection + auto-transcription. The canonical free-form-question primitive for voice Q&A flows.",
|
|
85
86
|
sdkPath: { kotlin: "audio.recordDiscrete", swift: "audio.recordDiscrete" },
|
|
86
87
|
params: {
|
|
87
|
-
max_duration_seconds: {
|
|
88
|
+
max_duration_seconds: { type: "Int?", default: null, note: "null (default) = no time cap; ends on silence or cancellation" },
|
|
88
89
|
silence_timeout_seconds: { max: 10, default: 2 },
|
|
89
90
|
quality: ["standard", "high"],
|
|
90
91
|
stop_conditions: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/tools/data/capabilities.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/tools/data/capabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilityPatterns.d.ts","sourceRoot":"","sources":["../../../src/tools/data/capabilityPatterns.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;
|
|
1
|
+
{"version":3,"file":"capabilityPatterns.d.ts","sourceRoot":"","sources":["../../../src/tools/data/capabilityPatterns.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAqkBD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAW7D,CAAC;AAEF,eAAO,MAAM,yBAAyB,UAAwC,CAAC"}
|
|
@@ -94,7 +94,7 @@ import com.extentos.glasses.core.valueOrNull
|
|
|
94
94
|
|
|
95
95
|
val recording = glasses.audio.recordDiscrete(
|
|
96
96
|
AudioRecordConfig(
|
|
97
|
-
maxDurationSeconds = 30
|
|
97
|
+
maxDurationSeconds = 30, // Int? seconds; null (default) = no cap
|
|
98
98
|
silenceTimeoutSeconds = 3.0, // VAD turn-end threshold (Double seconds)
|
|
99
99
|
quality = AudioQuality.STANDARD, // STANDARD or HIGH (enum, not String)
|
|
100
100
|
)
|
|
@@ -115,7 +115,7 @@ let text = recording.transcript`,
|
|
|
115
115
|
"silenceTimeoutSeconds is the VAD turn-end threshold. 2s is the SDK default; 3s is friendlier for thoughtful users; <1.5s cuts off normal pauses.",
|
|
116
116
|
"The block AUTO-transcribes — no separate STT pipeline needed. raw_audio_uri is available if you want the raw bytes for a custom model.",
|
|
117
117
|
"Audio routes over HFP mono 8 kHz on Meta DAT. 'high' quality is effectively the same as 'standard' until A2DP-grade mic capture lands upstream.",
|
|
118
|
-
"Returns immediately on the FIRST of: silenceTimeoutSeconds of silence, maxDurationSeconds elapsed, or app-side scope cancellation.",
|
|
118
|
+
"Returns immediately on the FIRST of: silenceTimeoutSeconds of silence, maxDurationSeconds elapsed (when set — null, the default, means no cap), or app-side scope cancellation.",
|
|
119
119
|
"Gated by audio_capture_enabled toggle (default true) and privacy_mode (default false).",
|
|
120
120
|
],
|
|
121
121
|
relatedExamples: ["voice_qa_assistant", "voice_notes"],
|
|
@@ -440,8 +440,9 @@ import kotlinx.coroutines.NonCancellable
|
|
|
440
440
|
import kotlinx.coroutines.withContext
|
|
441
441
|
import java.io.File
|
|
442
442
|
|
|
443
|
-
// F-R4-04: VideoConfig fields are { maxDurationSeconds:
|
|
444
|
-
// Boolean = true, format: VideoFormat = MP4_HEVC }.
|
|
443
|
+
// F-R4-04: VideoConfig fields are { maxDurationSeconds: Int?, includeAudio:
|
|
444
|
+
// Boolean = true, format: VideoFormat = MP4_HEVC }. maxDurationSeconds is
|
|
445
|
+
// Int? — null (the default) means no time cap. There is NO resolution
|
|
445
446
|
// field on Android (asymmetric with iOS — see Swift snippet below). There
|
|
446
447
|
// is NO stopConditions field on the Kotlin Config — the spec metadata used
|
|
447
448
|
// to advertise one but it was a pre-pivot vestige; the actual stop
|
|
@@ -450,7 +451,7 @@ import java.io.File
|
|
|
450
451
|
|
|
451
452
|
val clip = glasses.camera.captureVideo(
|
|
452
453
|
VideoConfig(
|
|
453
|
-
maxDurationSeconds = 60
|
|
454
|
+
maxDurationSeconds = 60, // Int? — null (default) means no cap; stop only on cancellation
|
|
454
455
|
includeAudio = true, // forces HFP route while capturing — A2DP playback drops to mono 8 kHz
|
|
455
456
|
format = VideoFormat.MP4_HEVC, // MP4_HEVC, MP4_H264, MOV. Prefer HEVC: H264 hits an FPS cliff (#44).
|
|
456
457
|
)
|
|
@@ -492,7 +493,7 @@ if (!ok) return // copy failed — surface to UI
|
|
|
492
493
|
// stops = listOf("stop recording"),
|
|
493
494
|
// ) {
|
|
494
495
|
// val clip = glasses.camera.captureVideo(
|
|
495
|
-
// VideoConfig(maxDurationSeconds = 60
|
|
496
|
+
// VideoConfig(maxDurationSeconds = 60, includeAudio = true)
|
|
496
497
|
// ).valueOrNull() ?: return@onPhrase
|
|
497
498
|
// val uri = clip.uri ?: return@onPhrase
|
|
498
499
|
// // post-stop I/O — must survive cancellation
|
|
@@ -508,18 +509,18 @@ if (!ok) return // copy failed — surface to UI
|
|
|
508
509
|
// videoFrames-based encoder if you need longer-than-30s clips.`,
|
|
509
510
|
swift: `import GlassesCore
|
|
510
511
|
|
|
511
|
-
// F-R4-04: Swift VideoConfig
|
|
512
|
-
// Fields: { resolution: Resolution,
|
|
513
|
-
// VideoFormat, includeAudio: Bool = false }.
|
|
514
|
-
// (
|
|
515
|
-
//
|
|
516
|
-
//
|
|
517
|
-
//
|
|
512
|
+
// F-R4-04: Swift VideoConfig still differs from Kotlin's in two ways.
|
|
513
|
+
// Fields: { resolution: Resolution, maxDurationSeconds: Int?, format:
|
|
514
|
+
// VideoFormat, includeAudio: Bool = false }. maxDurationSeconds matches
|
|
515
|
+
// Kotlin now (Int?, null = no cap). The remaining asymmetry: the
|
|
516
|
+
// resolution field has no Kotlin equivalent, and includeAudio defaults
|
|
517
|
+
// false on iOS vs true on Android. Don't assume full shape-for-shape
|
|
518
|
+
// parity here.
|
|
518
519
|
|
|
519
520
|
let result = await glasses.camera.captureVideo(
|
|
520
521
|
config: VideoConfig(
|
|
521
522
|
resolution: .medium,
|
|
522
|
-
|
|
523
|
+
maxDurationSeconds: 60,
|
|
523
524
|
format: .mp4Hevc,
|
|
524
525
|
includeAudio: true
|
|
525
526
|
)
|
|
@@ -542,7 +543,7 @@ let duration = clip.durationMs
|
|
|
542
543
|
// glasses.voice.onPhrase(phrase: "start recording",
|
|
543
544
|
// stops: ["stop recording"]) { [glasses] in
|
|
544
545
|
// let result = await glasses.camera.captureVideo(
|
|
545
|
-
// config: VideoConfig(
|
|
546
|
+
// config: VideoConfig(maxDurationSeconds: 60, includeAudio: true)
|
|
546
547
|
// )
|
|
547
548
|
// guard case .success(let clip) = result, let url = clip.url
|
|
548
549
|
// else { return }
|
|
@@ -553,7 +554,7 @@ let duration = clip.durationMs
|
|
|
553
554
|
// }.value
|
|
554
555
|
// }`,
|
|
555
556
|
gotchas: [
|
|
556
|
-
"**Cross-platform asymmetry — F-R4-04.** Kotlin VideoConfig has THREE fields (maxDurationSeconds:
|
|
557
|
+
"**Cross-platform asymmetry — F-R4-04.** Kotlin VideoConfig has THREE fields (maxDurationSeconds: Int?, includeAudio: Boolean = true, format: VideoFormat). Swift VideoConfig has FOUR (resolution: Resolution, maxDurationSeconds: Int?, format, includeAudio: Bool = false). maxDurationSeconds now matches across platforms (Int?, null = no cap). Remaining asymmetry: Kotlin has no resolution field; Swift's includeAudio defaults to false where Android's defaults to true. Don't port snippets shape-for-shape.",
|
|
557
558
|
"**No stopConditions on either platform — F-R4-04.** The spec metadata used to advertise a `stop_conditions` parameter accepting `voice_command` entries; that was a pre-pivot vestige and was never wired in the Kotlin/Swift API. The actual stop primitive is structured-concurrency cancellation of the caller's coroutine (in Kotlin) / Task (in Swift). Use `voice.onPhrase(phrase = \"start recording\", stops = listOf(\"stop recording\")) { captureVideo(...) }` and let the stops watcher cancel the handler — the library's transport drains the partial video_result for up to 10s and returns Ok(VideoClip).",
|
|
558
559
|
"**Cancel-drain ceiling is 10s — F-R4-05.** Real-hardware MediaRecorder.stop → encode → video_result can run 3–5s on 20-second clips. The library waits up to 10s under NonCancellable for the partial response after sending capture_video_abort. If the encode exceeds 10s (very large clips / slow device), the original CancellationException rethrows and the partial is lost. Bound clip lengths or fall back to a `videoFrames` + MediaMuxer custom encoder for >30s clips.",
|
|
559
560
|
"**Post-clip I/O must be NonCancellable.** When using onPhrase + stops, the handler coroutine has been cancellation-requested by the time captureVideo returns Ok(clip). The next suspend (e.g., `Videos.copyToFile(uri, dst)`) will throw CancellationException unless wrapped in `withContext(NonCancellable) { ... }` (Kotlin) or executed in a `Task.detached` (Swift). Saving without the wrap silently drops the clip.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilityPatterns.js","sourceRoot":"","sources":["../../../src/tools/data/capabilityPatterns.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,iEAAiE;AACjE,+DAA+D;AAC/D,iCAAiC;AACjC,EAAE;AACF,iEAAiE;AACjE,qEAAqE;AACrE,mEAAmE;AACnE,0CAA0C;AAW1C,MAAM,aAAa,GAAoB;IACrC,OAAO,EAAE,eAAe;IACxB,OAAO,EACL,yKAAyK;IAC3K,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mGAoCyF;IACjG,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;6BA2BoB;IAC3B,OAAO,EAAE;QACP,wQAAwQ;QACxQ,wQAAwQ;QACxQ,6JAA6J;QAC7J,+JAA+J;QAC/J,mJAAmJ;QACnJ,kJAAkJ;KACnJ;IACD,eAAe,EAAE,CAAC,sBAAsB,CAAC;CAC1C,CAAC;AAEF,MAAM,YAAY,GAAoB;IACpC,OAAO,EAAE,cAAc;IACvB,OAAO,EACL,qPAAqP;IACvP,MAAM,EAAE;;;;;;;;;;;;yDAY+C;IACvD,KAAK,EAAE;;;;;;;;;gCASuB;IAC9B,OAAO,EAAE;QACP,kJAAkJ;QAClJ,wIAAwI;QACxI,iJAAiJ;QACjJ,
|
|
1
|
+
{"version":3,"file":"capabilityPatterns.js","sourceRoot":"","sources":["../../../src/tools/data/capabilityPatterns.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codeExamples.d.ts","sourceRoot":"","sources":["../../../src/tools/data/codeExamples.ts"],"names":[],"mappings":"AAeA,6DAA6D;AAC7D,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,aAAa,EAAE,gBAAgB,GAAG,qBAAqB,GAAG,oBAAoB,GAAG,2BAA2B,CAAC;IAC7G,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,SAAS,EAAE,sBAAsB,CAAC;CACnC;AAED,6DAA6D;AAC7D,MAAM,WAAW,oBAAoB;IACnC,mEAAmE;IACnE,EAAE,EAAE,MAAM,CAAC;IACX,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,SAAS,EAAE,uBAAuB,GAAG,sBAAsB,CAAC;IAC5D;4EACwE;IACxE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,mEAAmE;AACnE,MAAM,WAAW,oBAAoB;IACnC,sBAAsB;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE;QACrB,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;QAC9B,gBAAgB,CAAC,EAAE,oBAAoB,EAAE,CAAC;KAC3C,CAAC;IACF;;;;;;OAMG;IACH,eAAe,CAAC,EAAE;QAChB,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;KAClC,CAAC;CACH;
|
|
1
|
+
{"version":3,"file":"codeExamples.d.ts","sourceRoot":"","sources":["../../../src/tools/data/codeExamples.ts"],"names":[],"mappings":"AAeA,6DAA6D;AAC7D,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,aAAa,EAAE,gBAAgB,GAAG,qBAAqB,GAAG,oBAAoB,GAAG,2BAA2B,CAAC;IAC7G,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,SAAS,EAAE,sBAAsB,CAAC;CACnC;AAED,6DAA6D;AAC7D,MAAM,WAAW,oBAAoB;IACnC,mEAAmE;IACnE,EAAE,EAAE,MAAM,CAAC;IACX,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,SAAS,EAAE,uBAAuB,GAAG,sBAAsB,CAAC;IAC5D;4EACwE;IACxE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,mEAAmE;AACnE,MAAM,WAAW,oBAAoB;IACnC,sBAAsB;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE;QACrB,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;QAC9B,gBAAgB,CAAC,EAAE,oBAAoB,EAAE,CAAC;KAC3C,CAAC;IACF;;;;;;OAMG;IACH,eAAe,CAAC,EAAE;QAChB,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;KAClC,CAAC;CACH;AAsgDD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CASrD,CAAC;AAEF,eAAO,MAAM,qBAAqB,UAAoC,CAAC"}
|
|
@@ -160,7 +160,7 @@ class CoachHandler(
|
|
|
160
160
|
"Voice hint cards on the simulator's right rail fire by injecting the phrase as a synthetic stt_transcript — the dispatch path matches a real utterance bit-for-bit, so any matcher you write (onPhrase or raw) is exercised identically in sim and production. Clicking a STOP chip while the parent is active fires the cancellation path the same way a spoken stop phrase would.",
|
|
161
161
|
"If you need raw access: transcriptions() yields BOTH partial and final transcripts — Transcript is a sealed interface (Partial | Final). Always pattern-match `is Transcript.Final` before reading t.text, or you'll fire the wake on a half-heard phrase. Swift uses .partial/.final enum cases.",
|
|
162
162
|
"recordDiscrete returns ExtentosResult<AudioRecording, AudioError> — unwrap with .valueOrNull() (Kotlin) or `case .success(let r)` (Swift). The Kotlin Result/getOrNull pattern from kotlin.Result does NOT apply here; ExtentosResult is its own type defined in com.extentos.glasses.core.Errors.",
|
|
163
|
-
"recordDiscrete blocks until silence — call it from a coroutine/Task that's safe to suspend. Inside the while-loop is fine because it's already in a launched scope. See getCapabilityGuide('record_audio') for the full silence-VAD gotchas (maxDurationSeconds
|
|
163
|
+
"recordDiscrete blocks until silence — call it from a coroutine/Task that's safe to suspend. Inside the while-loop is fine because it's already in a launched scope. See getCapabilityGuide('record_audio') for the full silence-VAD gotchas (maxDurationSeconds semantics, raw_audio_uri shape, HFP routing).",
|
|
164
164
|
"Re-entrancy: the OUTER transcriptions() collector and the INNER recordDiscrete BOTH talk to the platform STT engine, but on Meta DAT they share the same mic stream — recordDiscrete owns it exclusively for the duration of its call. While recordDiscrete is capturing, the outer transcriptions Flow may pause (no emissions arrive) and then resume after recordDiscrete returns. Implication: the wake-phrase matcher won't re-fire on the recorded utterance unless you LEAVE the inner loop and the user re-says the wake phrase. The outer collector resuming mid-utterance after recordDiscrete returns is also harmless — the partial that triggers wake-match is the user's NEXT utterance, not the previous question.",
|
|
165
165
|
"Don't subscribe to transcriptions() inside the while-loop — that creates a new recognizer per turn. Subscribe once outside the loop.",
|
|
166
166
|
"speak() blocks until done by default. If you want speak + listen-for-barge-in simultaneously, see the barge_in_speak pattern.",
|
|
@@ -533,7 +533,7 @@ class NotesHandler(
|
|
|
533
533
|
explanation: "Same recordDiscrete primitive as voice_qa_assistant, just terminating in a persistence call instead of an LLM round-trip. The 'Recording.' speech is optional — give the user audible feedback that the capture started, since the silence-VAD doesn't beep on its own.",
|
|
534
534
|
gotchas: [
|
|
535
535
|
"Pre-warm the mic with the 'Recording.' speech_text — the SCO mic profile takes ~150-300ms to switch from A2DP. Calling recordDiscrete immediately after the wake-phrase match can drop the first half-syllable.",
|
|
536
|
-
"maxDurationSeconds
|
|
536
|
+
"maxDurationSeconds is an Int? hard cap in whole seconds; null (the default) means no time cap — the capture then ends only on silence detection or cancellation. There is no hidden SDK ceiling. For genuinely open-ended / long-form capture prefer the audio_chunks streaming primitive over a very large maxDurationSeconds.",
|
|
537
537
|
],
|
|
538
538
|
relatedFeatures: ["voice_command", "record_audio", "transcription_incremental"],
|
|
539
539
|
};
|
|
@@ -1275,16 +1275,14 @@ actor AnthropicClient {
|
|
|
1275
1275
|
const AGENT_TEST_LOOP = {
|
|
1276
1276
|
pattern: "agent_test_loop",
|
|
1277
1277
|
title: "Agent-driven E2E test loop (dual-layer assertion)",
|
|
1278
|
-
description: "How an AI coding agent verifies its own generated handler end-to-end from the same MCP session that scaffolded it — no human in the loop. Pairs
|
|
1278
|
+
description: "How an AI coding agent verifies its own generated handler end-to-end from the same MCP session that scaffolded it — no human in the loop. Pairs a `voice_qa_assistant`-style handler (canonical `glasses.voice.onPhrase` wake + `recordDiscrete`, extended with Room/GRDB persistence so the DB-read assertion has a surface) with a test driver that asserts against THREE independent surfaces: the simulator event log (`getEventLog`), the emulator's persisted state (Room / SQLite via `adb run-as`), and the rendered UI (`adb screencap`). When all three agree, the flow really worked — not just at the protocol layer. See `searchDocs(topic: 'agent_e2e_testing')` for the conceptual framing.",
|
|
1279
1279
|
code: {
|
|
1280
1280
|
kotlin: `// HANDLER UNDER TEST — the agent writes this against the SDK.
|
|
1281
|
-
//
|
|
1281
|
+
// Three assertion-relevant points marked **ASSERT** in comments below.
|
|
1282
1282
|
import com.extentos.glasses.core.AudioRecordConfig
|
|
1283
1283
|
import com.extentos.glasses.core.ExtentosGlasses
|
|
1284
|
-
import com.extentos.glasses.core.
|
|
1284
|
+
import com.extentos.glasses.core.VoiceRegistration
|
|
1285
1285
|
import com.extentos.glasses.core.valueOrNull
|
|
1286
|
-
import kotlinx.coroutines.flow.filterIsInstance
|
|
1287
|
-
import kotlinx.coroutines.flow.first
|
|
1288
1286
|
|
|
1289
1287
|
@Entity(tableName = "coaching_turns")
|
|
1290
1288
|
data class CoachingTurn(
|
|
@@ -1306,38 +1304,46 @@ class CoachHandler(
|
|
|
1306
1304
|
private val anthropic: AnthropicClient,
|
|
1307
1305
|
private val dao: CoachingTurnDao,
|
|
1308
1306
|
) {
|
|
1309
|
-
private
|
|
1307
|
+
private var registration: VoiceRegistration? = null
|
|
1310
1308
|
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1309
|
+
// Canonical wake registration — the same glasses.voice.onPhrase sugar
|
|
1310
|
+
// voice_qa_assistant and voice_notes use. It surfaces "ask my coach"
|
|
1311
|
+
// on the connection page + the simulator's click-to-fire panel, which
|
|
1312
|
+
// is exactly what injectTranscript drives in the test loop below.
|
|
1313
|
+
fun start() {
|
|
1314
|
+
registration = glasses.voice.onPhrase(
|
|
1315
|
+
phrase = "ask my coach",
|
|
1316
|
+
label = "Ask",
|
|
1317
|
+
) {
|
|
1318
|
+
val sessionId = UUID.randomUUID().toString()
|
|
1319
|
+
glasses.audio.speak("Yes coach?", SpeakConfig())
|
|
1317
1320
|
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
+
// **ASSERT POINT 1** — handler enters recordDiscrete; the
|
|
1322
|
+
// agent's injectTranscript will satisfy this via the F-R5-03
|
|
1323
|
+
// race fix.
|
|
1324
|
+
val recording = glasses.audio.recordDiscrete(
|
|
1325
|
+
AudioRecordConfig(silenceTimeoutSeconds = 2.0)
|
|
1326
|
+
).valueOrNull() ?: return@onPhrase
|
|
1327
|
+
if (recording.transcript.isBlank()) return@onPhrase
|
|
1321
1328
|
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
?: return
|
|
1326
|
-
if (recording.transcript.isBlank()) return
|
|
1329
|
+
// **ASSERT POINT 2** — user turn persisted BEFORE the LLM call.
|
|
1330
|
+
// The agent's DB-read assertion reads this row.
|
|
1331
|
+
dao.insert(CoachingTurn(sessionId = sessionId, role = "user", text = recording.transcript))
|
|
1327
1332
|
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1333
|
+
val answer = glasses.observability.aiCall("coach_q", mapOf("session" to sessionId)) {
|
|
1334
|
+
anthropic.complete(recording.transcript)
|
|
1335
|
+
}
|
|
1331
1336
|
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1337
|
+
// **ASSERT POINT 3** — assistant turn persisted AFTER the LLM
|
|
1338
|
+
// call. The agent asserts the row exists with the answer text.
|
|
1339
|
+
dao.insert(CoachingTurn(sessionId = sessionId, role = "assistant", text = answer))
|
|
1335
1340
|
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1341
|
+
glasses.audio.speak(answer, SpeakConfig())
|
|
1342
|
+
}
|
|
1343
|
+
}
|
|
1339
1344
|
|
|
1340
|
-
|
|
1345
|
+
fun stop() {
|
|
1346
|
+
registration?.cancel()
|
|
1341
1347
|
}
|
|
1342
1348
|
}`,
|
|
1343
1349
|
swift: `// HANDLER UNDER TEST — the agent writes this against the SDK.
|
|
@@ -1357,15 +1363,24 @@ actor CoachHandler {
|
|
|
1357
1363
|
let glasses: Extentos
|
|
1358
1364
|
let anthropic: AnthropicClient
|
|
1359
1365
|
let db: DatabaseQueue
|
|
1366
|
+
private var registration: VoiceRegistration?
|
|
1360
1367
|
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1368
|
+
// Canonical wake registration — the same glasses.voice.onPhrase sugar
|
|
1369
|
+
// voice_qa_assistant and voice_notes use. Surfaces "ask my coach" on
|
|
1370
|
+
// the connection page + the simulator's click-to-fire panel.
|
|
1371
|
+
func start() {
|
|
1372
|
+
registration = glasses.voice.onPhrase(
|
|
1373
|
+
phrase: "ask my coach",
|
|
1374
|
+
label: "Ask"
|
|
1375
|
+
) { [weak self] in
|
|
1376
|
+
await self?.handleWake()
|
|
1366
1377
|
}
|
|
1367
1378
|
}
|
|
1368
1379
|
|
|
1380
|
+
func stop() {
|
|
1381
|
+
registration?.cancel()
|
|
1382
|
+
}
|
|
1383
|
+
|
|
1369
1384
|
func handleWake() async {
|
|
1370
1385
|
let sessionId = UUID().uuidString
|
|
1371
1386
|
_ = await glasses.audio.speak("Yes coach?", config: SpeakConfig())
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codeExamples.js","sourceRoot":"","sources":["../../../src/tools/data/codeExamples.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,sEAAsE;AACtE,sEAAsE;AACtE,uDAAuD;AACvD,sCAAsC;AACtC,EAAE;AACF,qEAAqE;AACrE,uDAAuD;AACvD,wEAAwE;AACxE,kEAAkE;AAClE,oEAAoE;AACpE,2DAA2D;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAuE5C,MAAM,kBAAkB,GAAgB;IACtC,OAAO,EAAE,oBAAoB;IAC7B,KAAK,EAAE,qDAAqD;IAC5D,WAAW,EACT,kSAAkS;IACpS,IAAI,EAAE;QACJ,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuEV;QACE,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+DT;KACC;IACD,WAAW,EACT,ggCAAggC;IAClgC,OAAO,EAAE;QACP,yXAAyX;QACzX,gbAAgb;QAChb,qXAAqX;QACrX,mSAAmS;QACnS,oSAAoS;QACpS
|
|
1
|
+
{"version":3,"file":"codeExamples.js","sourceRoot":"","sources":["../../../src/tools/data/codeExamples.ts"],"names":[],"mappings":"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"}
|
|
@@ -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.36-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.36-pair",
|
|
16
16
|
specVersion: "1.0",
|
|
17
17
|
android: {
|
|
18
18
|
minimumSdk: 31,
|
|
@@ -34,7 +34,7 @@ export const VERSION_INFO = {
|
|
|
34
34
|
kotlinVersion: "2.1.20",
|
|
35
35
|
// Toolchain minimums (F-R4-8 from DOGFOOD_R4). The library's transitive
|
|
36
36
|
// Compose deps determine the floor:
|
|
37
|
-
// - com.extentos:glasses-ui:1.1.
|
|
37
|
+
// - com.extentos:glasses-ui:1.1.36-pair brings in androidx.compose.* 1.9.0
|
|
38
38
|
// (via compose-bom 2024.10.00 and direct deps)
|
|
39
39
|
// - Compose 1.9.0 AAR-metadata declares "requires AGP >= 8.6.0"
|
|
40
40
|
// - AGP 8.6+ requires Gradle 8.7+ (Android Gradle Plugin compatibility table)
|
|
@@ -58,13 +58,13 @@ export const VERSION_INFO = {
|
|
|
58
58
|
},
|
|
59
59
|
artifacts: {
|
|
60
60
|
android: {
|
|
61
|
-
core: "com.extentos:glasses:1.1.
|
|
62
|
-
ui: "com.extentos:glasses-ui:1.1.
|
|
63
|
-
debug: "com.extentos:glasses-debug:1.1.
|
|
61
|
+
core: "com.extentos:glasses:1.1.36-pair",
|
|
62
|
+
ui: "com.extentos:glasses-ui:1.1.36-pair",
|
|
63
|
+
debug: "com.extentos:glasses-debug:1.1.36-pair",
|
|
64
64
|
},
|
|
65
65
|
ios: {
|
|
66
66
|
package: "https://github.com/extentos/swift-glasses",
|
|
67
|
-
version: "1.1.
|
|
67
|
+
version: "1.1.36-pair",
|
|
68
68
|
products: ["GlassesCore", "GlassesUI", "GlassesDebug", "GlassesLifecycle", "GlassesTesting"],
|
|
69
69
|
},
|
|
70
70
|
},
|