@rtrvr-ai/rover 4.1.0 → 4.2.0
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 +9 -2
- package/dist/agentDiscovery.d.ts +1 -0
- package/dist/agentDiscovery.js +9 -7
- package/dist/embed.js +303 -86
- package/dist/index.d.ts +1 -0
- package/dist/ownerInstall.js +11 -8
- package/dist/previewBootstrap.d.ts +20 -0
- package/dist/previewBootstrap.js +132 -9
- package/dist/rover.js +303 -86
- package/dist/worker/rover-worker.js +15 -15
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -514,10 +514,17 @@ const RoverWidget = dynamic(() => import('./RoverWidget'), { ssr: false });
|
|
|
514
514
|
| `ui.thoughtStyle` | `'concise_cards' \| 'minimal'` | `'concise_cards'` | Thought rendering style |
|
|
515
515
|
| `ui.panel.resizable` | `boolean` | `true` | Enables desktop freeform resizing plus phone/tablet snap-height resizing with per-device memory |
|
|
516
516
|
| `ui.showTaskControls` | `boolean` | `true` | Show new/end task controls |
|
|
517
|
-
| `ui.shortcuts` | `RoverShortcut[]` | `[]` | Suggested journeys (max 100 stored, max 12 rendered by default; lower site-key policy caps are enforced). Shortcuts can also publish agent-facing metadata such as `tags`, `examples`, `inputSchema`, `outputSchema`, `sideEffect`, and `requiresConfirmation`. |
|
|
517
|
+
| `ui.shortcuts` | `RoverShortcut[]` | `[]` | Suggested journeys (max 100 stored, max 12 rendered by default; lower site-key policy caps are enforced). Set `runKind: 'guide'` for onboarding/demo journeys that should narrate under the guided default. Shortcuts can also publish agent-facing metadata such as `tags`, `examples`, `inputSchema`, `outputSchema`, `sideEffect`, and `requiresConfirmation`. |
|
|
518
518
|
| `cloudSandboxEnabled` | `boolean` | `false` | Owner-facing shorthand for cloud execution plus approved third-party browsing. When `true`, Rover materializes `tools.web.enableExternalWebContext=true` and `tools.web.scrapeMode='on_demand'`. |
|
|
519
519
|
| `ui.greeting` | `{ text?, delay?, duration?, disabled? }` | — | Greeting bubble config (`{name}` token supported) |
|
|
520
520
|
| `ui.voice` | `{ enabled?: boolean; language?: string; autoStopMs?: number }` | — | Browser dictation for supported Chromium browsers. Rover fills the draft live, waits for post-speech silence before stopping, and the user still sends manually. |
|
|
521
|
+
| `ui.experience.audio.narration.enabled` | `boolean` | `true` | Owner gate for Web Speech step narration. Visitors get a site-scoped speaker toggle when supported. |
|
|
522
|
+
| `ui.experience.audio.narration.defaultMode` | `'guided' \| 'always' \| 'off'` | `'guided'` | Speak guided/demo runs by default, every run, or stay off unless the visitor enables it. |
|
|
523
|
+
| `ui.experience.audio.narration.rate` | `number` | `1` | Web Speech playback rate, clamped to `0.85`-`1.15`. |
|
|
524
|
+
| `ui.experience.audio.narration.language` | `string` | `'en-US'` | Preferred narration language for voice matching. |
|
|
525
|
+
| `ui.experience.audio.narration.voicePreference` | `'auto' \| 'system' \| 'natural'` | `'auto'` | Voice matching preference; `natural` prefers higher-quality browser voices when available. |
|
|
526
|
+
| `ui.experience.motion.actionSpotlight` | `boolean` | `true` | Highlights the element Rover is clicking, typing into, selecting, or scrolling to. |
|
|
527
|
+
| `ui.experience.motion.actionSpotlightColor` | `"#RRGGBB"` | `"#FF4C00"` | Ring and glow color for Action Spotlight. |
|
|
521
528
|
|
|
522
529
|
### Web Tools
|
|
523
530
|
|
|
@@ -530,7 +537,7 @@ const RoverWidget = dynamic(() => import('./RoverWidget'), { ssr: false });
|
|
|
530
537
|
| `tools.web.denyDomains` | `string[]` | `[]` | External context denylist |
|
|
531
538
|
| `tools.client` | `ClientToolDefinition[]` | `[]` | Runtime-registered client tools. Tool definitions can include `title`, `outputSchema`, and `annotations` (`whenToUse`, `whyUse`, `examples`, `sideEffect`, `requiresConfirmation`) to improve model tool selection and discovery-card quality. |
|
|
532
539
|
| `agentDiscovery` | `{ enabled?, siteName?, description?, version?, siteUrl?, agentCardUrl?, roverSiteUrl?, llmsUrl?, hostSurfaceSelector?, preferExecution?, discoverySurface?, additionalSkills? }` | — | Optional overrides for Rover's generated discovery surfaces. `rover-site.json` is the authoritative rich profile, `agent-card.json` is the interop card, and `discoverySurface.beaconLabel` now feeds the visible seed/presence CTA text in production. Legacy `visibleCue` / `visibleCueLabel` remain compatibility inputs only. |
|
|
533
|
-
| `pageConfig` | `RoverPageCaptureConfig` |
|
|
540
|
+
| `pageConfig` | `RoverPageCaptureConfig` | `{ disableAutoScroll: true }` for generated installs | Optional per-site page-capture overrides such as `disableAutoScroll`, settle timing, and sparse-tree retry settings. Set `disableAutoScroll: false` only when automatic page-capture scrolling is desired. |
|
|
534
541
|
|
|
535
542
|
### AI-Callable URLs (Deep Links)
|
|
536
543
|
|
package/dist/agentDiscovery.d.ts
CHANGED
package/dist/agentDiscovery.js
CHANGED
|
@@ -414,7 +414,7 @@ function normalizeAnnotations(value) {
|
|
|
414
414
|
requiresConfirmation: typeof annotations.requiresConfirmation === 'boolean'
|
|
415
415
|
? annotations.requiresConfirmation
|
|
416
416
|
: undefined,
|
|
417
|
-
preferredInterface: annotations.preferredInterface === '
|
|
417
|
+
preferredInterface: annotations.preferredInterface === 'run'
|
|
418
418
|
|| annotations.preferredInterface === 'shortcut'
|
|
419
419
|
|| annotations.preferredInterface === 'client_tool'
|
|
420
420
|
|| annotations.preferredInterface === 'webmcp'
|
|
@@ -472,6 +472,7 @@ function normalizePublishedShortcut(shortcut) {
|
|
|
472
472
|
prompt,
|
|
473
473
|
...(description ? { description } : {}),
|
|
474
474
|
...(shortcut.routing ? { routing: shortcut.routing } : {}),
|
|
475
|
+
...(shortcut.runKind === 'guide' || shortcut.runKind === 'task' ? { runKind: shortcut.runKind } : {}),
|
|
475
476
|
};
|
|
476
477
|
}
|
|
477
478
|
function buildShortcutSkill(shortcut, config, runEndpoint) {
|
|
@@ -518,6 +519,7 @@ function buildShortcutSkill(shortcut, config, runEndpoint) {
|
|
|
518
519
|
shortcutId: id,
|
|
519
520
|
prompt,
|
|
520
521
|
routing: shortcut.routing,
|
|
522
|
+
runKind: shortcut.runKind,
|
|
521
523
|
deepLink: buildDeepLink(config.siteUrl, id),
|
|
522
524
|
run: {
|
|
523
525
|
endpoint: runEndpoint,
|
|
@@ -1025,15 +1027,15 @@ export function createRoverAgentDiscoveryTags(config) {
|
|
|
1025
1027
|
const escapedRoverSiteJson = escapeScriptJson(roverSiteJson);
|
|
1026
1028
|
const escapedPageManifestJson = escapeScriptJson(pageManifestJson);
|
|
1027
1029
|
const lines = [
|
|
1028
|
-
`<script type="application/agent+json">${markerJson}</script>`,
|
|
1029
|
-
`<link rel="service-desc" href="${escapeHtmlAttr(serviceDescHref)}" type="application/json" />`,
|
|
1030
|
+
`<script type="application/agent+json" data-rover-agent-discovery="marker">${markerJson}</script>`,
|
|
1031
|
+
`<link rel="service-desc" href="${escapeHtmlAttr(serviceDescHref)}" type="application/json" data-rover-agent-discovery="service-desc" />`,
|
|
1030
1032
|
];
|
|
1031
1033
|
if (llmsUrl) {
|
|
1032
|
-
lines.push(`<link rel="service-doc" href="${escapeHtmlAttr(llmsUrl)}" type="text/markdown" />`);
|
|
1034
|
+
lines.push(`<link rel="service-doc" href="${escapeHtmlAttr(llmsUrl)}" type="text/markdown" data-rover-agent-discovery="service-doc" />`);
|
|
1033
1035
|
}
|
|
1034
|
-
lines.push(`<script type="application/rover-site+json">${escapedRoverSiteJson}</script>`);
|
|
1035
|
-
lines.push(`<script type="application/rover-page+json">${escapedPageManifestJson}</script>`);
|
|
1036
|
-
lines.push(`<script type="application/agent-card+json">${escapedCardJson}</script>`);
|
|
1036
|
+
lines.push(`<script type="application/rover-site+json" data-rover-agent-discovery="rover-site">${escapedRoverSiteJson}</script>`);
|
|
1037
|
+
lines.push(`<script type="application/rover-page+json" data-rover-agent-discovery="page">${escapedPageManifestJson}</script>`);
|
|
1038
|
+
lines.push(`<script type="application/agent-card+json" data-rover-agent-discovery="agent-card">${escapedCardJson}</script>`);
|
|
1037
1039
|
return lines.join('\n');
|
|
1038
1040
|
}
|
|
1039
1041
|
export { createRoverAgentDiscoverySnapshot };
|