modeldispatcher-browser-agent 0.6.6 → 0.6.7

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 CHANGED
@@ -102,8 +102,11 @@ const result = await openExternalChat("claude", "Summarise this in one sentence:
102
102
  // result.copiedToClipboard — true if it's also on the clipboard, for pasting
103
103
  ```
104
104
 
105
- `EXTERNAL_CHAT_PROVIDERS` lists the four supported products for rendering a
106
- picker, the same way `PROVIDERS` does for the BYOK providers above.
105
+ `EXTERNAL_CHAT_PROVIDERS` lists the five supported products for rendering a
106
+ picker, the same way `PROVIDERS` does for the BYOK providers above: ChatGPT,
107
+ Claude, Gemini (Google AI Mode's `udm=50` search, the only reliable prefill
108
+ target for "ask Google's AI this"), Gemini (the real `gemini.google.com/app`,
109
+ under id `geminiApp`, distinct from the AI-Mode entry), and Groq.
107
110
 
108
111
  **Why this needs a clipboard fallback at all:** the URL query parameters that
109
112
  pre-fill a provider's chat box (`claude.ai/new?q=...`, `chatgpt.com/?q=...`,
@@ -36,6 +36,15 @@ export const EXTERNAL_CHAT_PROVIDERS = {
36
36
  // "ask Google's AI this" — that's what this actually opens.
37
37
  buildUrl: (question) => `https://www.google.com/search?${new URLSearchParams({ q: question, udm: "50" })}`,
38
38
  },
39
+ geminiApp: {
40
+ id: "geminiApp",
41
+ name: "Gemini",
42
+ homeUrl: "https://gemini.google.com/app",
43
+ // The real Gemini app, distinct from the AI-Mode entry above. It has no
44
+ // known query-prefill parameter — opens the plain app; the question
45
+ // still goes to the clipboard.
46
+ buildUrl: null,
47
+ },
39
48
  groq: {
40
49
  id: "groq",
41
50
  name: "Groq",
@@ -1 +1 @@
1
- {"version":3,"file":"externalChat.js","sourceRoot":"","sources":["../src/externalChat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,MAAM,CAAC,MAAM,uBAAuB,GAA6D;IAC/F,OAAO,EAAE;QACP,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,sBAAsB;QAC/B,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,wBAAwB,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE;KACxG;IACD,MAAM,EAAE;QACN,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,uBAAuB;QAChC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,yBAAyB,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;KACxF;IACD,MAAM,EAAE;QACN,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE,yBAAyB;QAClC,kEAAkE;QAClE,wEAAwE;QACxE,4DAA4D;QAC5D,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,iCAAiC,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE;KAC3G;IACD,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,mBAAmB;QAC5B,sEAAsE;QACtE,sEAAsE;QACtE,QAAQ,EAAE,IAAI;KACf;CACF,CAAC;AAqBF,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,gBAAgB,CACvB,SAA6C;IAE7C,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC,SAAS,CAAC;IACxF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgC,EAChC,QAAgB,EAChB,OAA6B,EAAE;IAE/B,MAAM,IAAI,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IAEnE,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnD,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACpC,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB,GAAG,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,CAAC,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;IAEhC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;AACzD,CAAC"}
1
+ {"version":3,"file":"externalChat.js","sourceRoot":"","sources":["../src/externalChat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,MAAM,CAAC,MAAM,uBAAuB,GAA6D;IAC/F,OAAO,EAAE;QACP,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,sBAAsB;QAC/B,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,wBAAwB,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE;KACxG;IACD,MAAM,EAAE;QACN,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,uBAAuB;QAChC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,yBAAyB,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;KACxF;IACD,MAAM,EAAE;QACN,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE,yBAAyB;QAClC,kEAAkE;QAClE,wEAAwE;QACxE,4DAA4D;QAC5D,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,iCAAiC,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE;KAC3G;IACD,SAAS,EAAE;QACT,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,+BAA+B;QACxC,wEAAwE;QACxE,oEAAoE;QACpE,+BAA+B;QAC/B,QAAQ,EAAE,IAAI;KACf;IACD,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,mBAAmB;QAC5B,sEAAsE;QACtE,sEAAsE;QACtE,QAAQ,EAAE,IAAI;KACf;CACF,CAAC;AAqBF,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,gBAAgB,CACvB,SAA6C;IAE7C,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC,SAAS,CAAC;IACxF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgC,EAChC,QAAgB,EAChB,OAA6B,EAAE;IAE/B,MAAM,IAAI,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IAEnE,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnD,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACpC,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB,GAAG,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,CAAC,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;IAEhC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;AACzD,CAAC"}
package/dist/types.d.ts CHANGED
@@ -81,7 +81,7 @@ export interface StreamOptions extends RequestOptions {
81
81
  /** A free, public AI chat web product `openExternalChat` can hand a question
82
82
  * off to — the no-API-key escape hatch, distinct from the `ProviderId`s above
83
83
  * (which all require a BYOK credential). */
84
- export type ExternalChatProviderId = "chatgpt" | "claude" | "gemini" | "groq";
84
+ export type ExternalChatProviderId = "chatgpt" | "claude" | "gemini" | "geminiApp" | "groq";
85
85
  /** Static metadata about one external chat provider. */
86
86
  export interface ExternalChatProviderInfo {
87
87
  readonly id: ExternalChatProviderId;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "modeldispatcher-browser-agent",
3
- "version": "0.6.6",
3
+ "version": "0.6.7",
4
4
  "description": "Browser-native, bring-your-own-key AI agent core with cross-provider/cross-key fallback dispatch: multi-provider (Gemini/OpenAI/Anthropic/Groq/Ollama), streaming and non-streaming, no backend and no vendor SDK required. The client-side sibling to model-dispatcher for apps with no server to run it on.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -39,6 +39,15 @@ export const EXTERNAL_CHAT_PROVIDERS: Record<ExternalChatProviderId, ExternalCha
39
39
  // "ask Google's AI this" — that's what this actually opens.
40
40
  buildUrl: (question) => `https://www.google.com/search?${new URLSearchParams({ q: question, udm: "50" })}`,
41
41
  },
42
+ geminiApp: {
43
+ id: "geminiApp",
44
+ name: "Gemini",
45
+ homeUrl: "https://gemini.google.com/app",
46
+ // The real Gemini app, distinct from the AI-Mode entry above. It has no
47
+ // known query-prefill parameter — opens the plain app; the question
48
+ // still goes to the clipboard.
49
+ buildUrl: null,
50
+ },
42
51
  groq: {
43
52
  id: "groq",
44
53
  name: "Groq",
package/src/types.ts CHANGED
@@ -91,7 +91,7 @@ export interface StreamOptions extends RequestOptions {
91
91
  /** A free, public AI chat web product `openExternalChat` can hand a question
92
92
  * off to — the no-API-key escape hatch, distinct from the `ProviderId`s above
93
93
  * (which all require a BYOK credential). */
94
- export type ExternalChatProviderId = "chatgpt" | "claude" | "gemini" | "groq";
94
+ export type ExternalChatProviderId = "chatgpt" | "claude" | "gemini" | "geminiApp" | "groq";
95
95
 
96
96
  /** Static metadata about one external chat provider. */
97
97
  export interface ExternalChatProviderInfo {