@botiverse/oar 0.48.0 → 0.49.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/dist/contracts/index.d.ts +1 -1
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/provider-auth.d.ts +55 -1
- package/dist/contracts/provider-auth.d.ts.map +1 -1
- package/dist/runtimes/pi/auth.d.ts +25 -1
- package/dist/runtimes/pi/auth.d.ts.map +1 -1
- package/dist/runtimes/pi/auth.js +52 -9
- package/dist/runtimes/pi/auth.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export type { InventoryScope, InventoryOptions, SkillEntry, McpServerEntry, ToolEntry, InventoryResult, InventoryReader, RuntimeInventories } from "./inventory.js";
|
|
2
2
|
export type { AccountUsageUnsupportedReason, AccountUsageReauthReason, AccountUsageReader, AccountUsageReadOptions, AccountUsageSnapshot, AccountUsageWindow, UtcInstant, } from "./account-usage.js";
|
|
3
3
|
export type { AvailableInstallation, BundledInstallation, ExecutableInstallation, InstallationProbe, InstallationSnapshot, } from "./installation.js";
|
|
4
|
-
export type { ProviderAuthFacade, ProviderAuthStatus, ProviderLoginEvent, ProviderLoginInteraction, ProviderLoginMethod, ProviderLoginPrompt, } from "./provider-auth.js";
|
|
4
|
+
export type { LoginProvider, LoginProviderMethod, ProviderAuthFacade, ProviderAuthStatus, ProviderLoginEvent, ProviderLoginInteraction, ProviderLoginMethod, ProviderLoginPrompt, } from "./provider-auth.js";
|
|
5
5
|
export type { CatalogModel, CatalogProvider, CatalogRefreshOptions, CatalogRefreshResult, ModelCatalogFacade, } from "./model-catalog.js";
|
|
6
6
|
export type { ListModelsOptions, ListModelsResult, ModelEntry, ModelLister, } from "./list-models.js";
|
|
7
7
|
export type { InstallLine, InstallOptions, InstallPlan, InstallPlanner, InstallResult, InstallStep, InstallUnsupported, InstallUnsupportedReason, Installer, } from "./install.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpK,YAAY,EACV,6BAA6B,EAC7B,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACV,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,WAAW,EACX,cAAc,EACd,WAAW,EACX,cAAc,EACd,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,SAAS,GACV,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,4BAA4B,EAC5B,QAAQ,EACR,cAAc,EACd,aAAa,GACd,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,sBAAsB,EACtB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC3F,YAAY,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,MAAM,EACN,KAAK,EACL,SAAS,EACT,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,KAAK,EACL,SAAS,EACT,cAAc,EACd,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,OAAO,EACP,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,QAAQ,EACR,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,WAAW,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpK,YAAY,EACV,6BAA6B,EAC7B,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACV,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,WAAW,EACX,cAAc,EACd,WAAW,EACX,cAAc,EACd,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,SAAS,GACV,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,4BAA4B,EAC5B,QAAQ,EACR,cAAc,EACd,aAAa,GACd,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,sBAAsB,EACtB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC3F,YAAY,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,MAAM,EACN,KAAK,EACL,SAAS,EACT,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,KAAK,EACL,SAAS,EACT,cAAc,EACd,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,OAAO,EACP,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,QAAQ,EACR,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,WAAW,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAyIA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -19,6 +19,45 @@ export interface ProviderAuthStatus {
|
|
|
19
19
|
/** True when the credential is a subscription OAuth login rather than a metered key. */
|
|
20
20
|
readonly subscription?: boolean;
|
|
21
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* One way a provider accepts a login, in the backend's own words. `method` is
|
|
24
|
+
* what {@link ProviderAuthFacade.login} takes.
|
|
25
|
+
*/
|
|
26
|
+
export type LoginProviderMethod = {
|
|
27
|
+
readonly method: "oauth";
|
|
28
|
+
/** The backend's name for this sign-in, e.g. `"Anthropic (Claude Pro/Max)"`. */
|
|
29
|
+
readonly name: string;
|
|
30
|
+
/**
|
|
31
|
+
* True when the account behind it is a provider subscription (Claude
|
|
32
|
+
* Pro/Max, ChatGPT, SuperGrok); false for a plain account sign-in
|
|
33
|
+
* (OpenRouter, Radius).
|
|
34
|
+
*/
|
|
35
|
+
readonly subscription: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* The vendor's own label for this sign-in, e.g. `"Sign in with ChatGPT"`;
|
|
38
|
+
* absent when it has none. Pi shows it in place of "Sign in with an
|
|
39
|
+
* account" when a person asks to sign in to this provider (`/login openai`).
|
|
40
|
+
*/
|
|
41
|
+
readonly loginLabel?: string;
|
|
42
|
+
} | {
|
|
43
|
+
readonly method: "api_key";
|
|
44
|
+
/** The backend's name for the credential, e.g. `"Anthropic API key"` or `"AWS credentials or bearer token"`. */
|
|
45
|
+
readonly name: string;
|
|
46
|
+
/**
|
|
47
|
+
* True when the backend has no prompt for it: the credential is
|
|
48
|
+
* configured outside the backend (the environment, a cloud profile), so
|
|
49
|
+
* `login` and `setApiKey` reject it and a host can only say so.
|
|
50
|
+
*/
|
|
51
|
+
readonly ambient?: true;
|
|
52
|
+
};
|
|
53
|
+
/** One provider a person can log in to, as the backend's registry has it. */
|
|
54
|
+
export interface LoginProvider {
|
|
55
|
+
readonly providerId: string;
|
|
56
|
+
/** The provider's display name, e.g. `"Anthropic"`. */
|
|
57
|
+
readonly name: string;
|
|
58
|
+
/** The ways it accepts a login, `oauth` before `api_key`; never empty. */
|
|
59
|
+
readonly methods: readonly LoginProviderMethod[];
|
|
60
|
+
}
|
|
22
61
|
/** An event surfaced while a login flow runs. */
|
|
23
62
|
export type ProviderLoginEvent = {
|
|
24
63
|
readonly kind: "auth_url";
|
|
@@ -65,11 +104,26 @@ export interface ProviderLoginInteraction {
|
|
|
65
104
|
export interface ProviderAuthFacade {
|
|
66
105
|
/** Every provider that has a configured credential, with its non-secret status. */
|
|
67
106
|
listProviders(): Promise<readonly ProviderAuthStatus[]>;
|
|
107
|
+
/**
|
|
108
|
+
* Every provider a person can log in to, configured or not, straight from
|
|
109
|
+
* the backend's own registry (oar keeps no list of its own), in the order
|
|
110
|
+
* its login menu shows them. Pi's `/login` builds its menu from the same
|
|
111
|
+
* registry: "Sign in with an account" lists the providers with an `oauth`
|
|
112
|
+
* method, "Sign in with an API key" those with an `api_key` method. Read
|
|
113
|
+
* only, no credential read: `status` says how one is signed in.
|
|
114
|
+
*/
|
|
115
|
+
loginProviders(): readonly LoginProvider[];
|
|
68
116
|
/** The status of one provider (`configured: false` when nothing is stored). */
|
|
69
117
|
status(providerId: string): Promise<ProviderAuthStatus>;
|
|
70
118
|
/** Run the provider's OAuth or API-key login flow and persist the result. */
|
|
71
119
|
login(providerId: string, method: ProviderLoginMethod, interaction: ProviderLoginInteraction): Promise<ProviderAuthStatus>;
|
|
72
|
-
/**
|
|
120
|
+
/**
|
|
121
|
+
* Store an API key for a provider without an interactive flow: it answers
|
|
122
|
+
* the provider's key prompt and nothing else. When the provider's API-key
|
|
123
|
+
* login asks more (an auth method, an account id), it rejects, storing
|
|
124
|
+
* nothing, and the error names `login(providerId, "api_key", interaction)`
|
|
125
|
+
* as the way to sign that provider in.
|
|
126
|
+
*/
|
|
73
127
|
setApiKey(providerId: string, apiKey: string): Promise<void>;
|
|
74
128
|
/** Clear a provider's stored credential. */
|
|
75
129
|
logout(providerId: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-auth.d.ts","sourceRoot":"","sources":["../../src/contracts/provider-auth.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,mDAAmD;AACnD,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,SAAS,CAAC;AAEtD,2DAA2D;AAC3D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,gFAAgF;IAChF,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IACtC,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,wFAAwF;IACxF,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,iDAAiD;AACjD,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GACnF;IACE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,0DAA0D;AAC1D,MAAM,MAAM,mBAAmB,GAC3B;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,aAAa,CAAC;IACjD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,SAAS;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC7G,CAAC;AAEN;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,OAAO,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACzC,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,mFAAmF;IACnF,aAAa,IAAI,OAAO,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC;IACxD,+EAA+E;IAC/E,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACxD,6EAA6E;IAC7E,KAAK,CACH,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,mBAAmB,EAC3B,WAAW,EAAE,wBAAwB,GACpC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/B
|
|
1
|
+
{"version":3,"file":"provider-auth.d.ts","sourceRoot":"","sources":["../../src/contracts/provider-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ProviderAuthFacade, ProviderLoginEvent, ProviderLoginPrompt } from "../../contracts/provider-auth.js";
|
|
1
|
+
import type { LoginProvider, ProviderAuthFacade, ProviderLoginEvent, ProviderLoginPrompt } from "../../contracts/provider-auth.js";
|
|
2
2
|
import { ModelRuntime } from "@earendil-works/pi-coding-agent";
|
|
3
3
|
type PiLoginParameters = Parameters<ModelRuntime["login"]>;
|
|
4
4
|
type PiInteraction = PiLoginParameters[2];
|
|
@@ -6,9 +6,33 @@ type PiAuthEvent = Parameters<PiInteraction["notify"]>[0];
|
|
|
6
6
|
type PiAuthPrompt = Parameters<PiInteraction["prompt"]>[0];
|
|
7
7
|
export declare function toLoginEvent(event: PiAuthEvent): ProviderLoginEvent;
|
|
8
8
|
export declare function toLoginPrompt(prompt: PiAuthPrompt): ProviderLoginPrompt;
|
|
9
|
+
/** The part of a pi `Provider` its `/login` menu reads; every `Provider` is one. */
|
|
10
|
+
export interface PiLoginProvider {
|
|
11
|
+
readonly id: string;
|
|
12
|
+
readonly name: string;
|
|
13
|
+
readonly auth: {
|
|
14
|
+
readonly oauth?: {
|
|
15
|
+
readonly name: string;
|
|
16
|
+
readonly isSubscription?: boolean;
|
|
17
|
+
readonly loginLabel?: string;
|
|
18
|
+
};
|
|
19
|
+
readonly apiKey?: {
|
|
20
|
+
readonly name: string;
|
|
21
|
+
readonly login?: unknown;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* One provider as pi's `/login` offers it (`getLoginProviderOptions`): its
|
|
27
|
+
* OAuth sign-in, then its API key, ambient when pi has no prompt for it (pi:
|
|
28
|
+
* "configured outside pi"). Undefined when it accepts neither.
|
|
29
|
+
*/
|
|
30
|
+
export declare function piLoginProvider(provider: PiLoginProvider): LoginProvider | undefined;
|
|
9
31
|
export interface PiProviderAuthOptions {
|
|
10
32
|
/** Path to Pi's `auth.json`; defaults to Pi's `~/.pi/agent/auth.json`. */
|
|
11
33
|
readonly authPath?: string;
|
|
34
|
+
/** Path to Pi's `models.json` (custom providers, listed by `loginProviders()` too); `null` disables the static config. */
|
|
35
|
+
readonly modelsPath?: string | null;
|
|
12
36
|
}
|
|
13
37
|
/** Create a {@link ProviderAuthFacade} backed by Pi's `ModelRuntime`. */
|
|
14
38
|
export declare function createPiProviderAuth(options?: PiProviderAuthOptions): Promise<ProviderAuthFacade>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/runtimes/pi/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAElB,kBAAkB,EAGlB,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAe,YAAY,EAAmB,MAAM,iCAAiC,CAAC;AAS7F,KAAK,iBAAiB,GAAG,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AAE3D,KAAK,aAAa,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;AAC1C,KAAK,WAAW,GAAG,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1D,KAAK,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3D,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,kBAAkB,CAsBnE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,mBAAmB,CAiBvE;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/runtimes/pi/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,kBAAkB,EAElB,kBAAkB,EAGlB,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAe,YAAY,EAAmB,MAAM,iCAAiC,CAAC;AAS7F,KAAK,iBAAiB,GAAG,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AAE3D,KAAK,aAAa,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;AAC1C,KAAK,WAAW,GAAG,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1D,KAAK,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3D,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,kBAAkB,CAsBnE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,mBAAmB,CAiBvE;AAED,oFAAoF;AACpF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE;QACb,QAAQ,CAAC,KAAK,CAAC,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;YAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5G,QAAQ,CAAC,MAAM,CAAC,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;KACvE,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,eAAe,GAAG,aAAa,GAAG,SAAS,CAiBpF;AA4GD,MAAM,WAAW,qBAAqB;IACpC,0EAA0E;IAC1E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,0HAA0H;IAC1H,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,yEAAyE;AACzE,wBAAsB,oBAAoB,CAAC,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAY3G"}
|
package/dist/runtimes/pi/auth.js
CHANGED
|
@@ -41,6 +41,29 @@ export function toLoginPrompt(prompt) {
|
|
|
41
41
|
...(prompt.placeholder === undefined ? {} : { placeholder: prompt.placeholder }),
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* One provider as pi's `/login` offers it (`getLoginProviderOptions`): its
|
|
46
|
+
* OAuth sign-in, then its API key, ambient when pi has no prompt for it (pi:
|
|
47
|
+
* "configured outside pi"). Undefined when it accepts neither.
|
|
48
|
+
*/
|
|
49
|
+
export function piLoginProvider(provider) {
|
|
50
|
+
const { oauth, apiKey } = provider.auth;
|
|
51
|
+
const methods = [];
|
|
52
|
+
if (oauth !== undefined) {
|
|
53
|
+
methods.push({
|
|
54
|
+
method: "oauth",
|
|
55
|
+
name: oauth.name,
|
|
56
|
+
subscription: oauth.isSubscription === true,
|
|
57
|
+
...(oauth.loginLabel === undefined ? {} : { loginLabel: oauth.loginLabel }),
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
if (apiKey !== undefined) {
|
|
61
|
+
methods.push(apiKey.login === undefined
|
|
62
|
+
? { method: "api_key", name: apiKey.name, ambient: true }
|
|
63
|
+
: { method: "api_key", name: apiKey.name });
|
|
64
|
+
}
|
|
65
|
+
return methods.length === 0 ? undefined : { providerId: provider.id, name: provider.name, methods };
|
|
66
|
+
}
|
|
44
67
|
/** Bridge an oar {@link ProviderLoginInteraction} into Pi's interaction shape. */
|
|
45
68
|
function toPiInteraction(interaction) {
|
|
46
69
|
return {
|
|
@@ -54,15 +77,27 @@ function toPiInteraction(interaction) {
|
|
|
54
77
|
},
|
|
55
78
|
};
|
|
56
79
|
}
|
|
57
|
-
/**
|
|
58
|
-
|
|
80
|
+
/**
|
|
81
|
+
* A non-interactive interaction for `setApiKey`: it answers pi's key prompt
|
|
82
|
+
* (the first prompt, a secret) with the key and refuses any other, which stops
|
|
83
|
+
* the flow before pi stores anything. A flow that asks more (amazon-bedrock and
|
|
84
|
+
* google-vertex ask which credential first, the Cloudflare providers ask for
|
|
85
|
+
* account and gateway ids after the key) needs the person: `login`.
|
|
86
|
+
*/
|
|
87
|
+
function keyOnlyInteraction(providerId, apiKey) {
|
|
88
|
+
let keyGiven = false;
|
|
59
89
|
return {
|
|
60
90
|
onEvent: () => {
|
|
61
|
-
// A
|
|
91
|
+
// A key-only flow surfaces no URL or device code.
|
|
62
92
|
},
|
|
63
|
-
prompt: async () => {
|
|
93
|
+
prompt: async (prompt) => {
|
|
64
94
|
await Promise.resolve();
|
|
65
|
-
|
|
95
|
+
if (!keyGiven && prompt.kind === "secret") {
|
|
96
|
+
keyGiven = true;
|
|
97
|
+
return apiKey;
|
|
98
|
+
}
|
|
99
|
+
throw new Error(`${providerId}'s API-key login asks more than the key (${prompt.kind}: "${prompt.message}"): `
|
|
100
|
+
+ `use login("${providerId}", "api_key", interaction) instead of setApiKey`);
|
|
66
101
|
},
|
|
67
102
|
};
|
|
68
103
|
}
|
|
@@ -83,7 +118,9 @@ class PiProviderAuth {
|
|
|
83
118
|
configured: true,
|
|
84
119
|
method: check.type === "oauth" ? "oauth" : "api_key",
|
|
85
120
|
...(label === undefined ? {} : { label }),
|
|
86
|
-
|
|
121
|
+
// Pi's `isUsingSubscription`, read from this check: pi's own reads the
|
|
122
|
+
// availability snapshot, which `refreshOnCreate: false` leaves empty.
|
|
123
|
+
subscription: check.type === "oauth" && this.#runtime.getProvider(providerId)?.auth.oauth?.isSubscription === true,
|
|
87
124
|
};
|
|
88
125
|
}
|
|
89
126
|
async listProviders() {
|
|
@@ -93,6 +130,11 @@ class PiProviderAuth {
|
|
|
93
130
|
return status;
|
|
94
131
|
}));
|
|
95
132
|
}
|
|
133
|
+
loginProviders() {
|
|
134
|
+
// Pi's `/login` lists its providers by name.
|
|
135
|
+
const providers = this.#runtime.getProviders().toSorted((left, right) => left.name.localeCompare(right.name));
|
|
136
|
+
return providers.flatMap((provider) => piLoginProvider(provider) ?? []);
|
|
137
|
+
}
|
|
96
138
|
async status(providerId) {
|
|
97
139
|
const status = await this.#statusOf(providerId);
|
|
98
140
|
return status;
|
|
@@ -104,10 +146,10 @@ class PiProviderAuth {
|
|
|
104
146
|
return status;
|
|
105
147
|
}
|
|
106
148
|
async setApiKey(providerId, apiKey) {
|
|
107
|
-
// Persist the key by running
|
|
108
|
-
//
|
|
149
|
+
// Persist the key by running pi's api-key login flow, answering its key
|
|
150
|
+
// prompt and nothing else (see keyOnlyInteraction).
|
|
109
151
|
const authType = "api_key";
|
|
110
|
-
await this.#runtime.login(providerId, authType, toPiInteraction(
|
|
152
|
+
await this.#runtime.login(providerId, authType, toPiInteraction(keyOnlyInteraction(providerId, apiKey)));
|
|
111
153
|
}
|
|
112
154
|
async logout(providerId) {
|
|
113
155
|
await this.#runtime.logout(providerId);
|
|
@@ -121,6 +163,7 @@ export async function createPiProviderAuth(options = {}) {
|
|
|
121
163
|
await configurePiHttp(SettingsManager.create(process.cwd(), process.env.OAR_PI_AGENT_DIR ?? getAgentDir()));
|
|
122
164
|
const runtime = await ModelRuntime.create({
|
|
123
165
|
...(options.authPath === undefined ? {} : { authPath: options.authPath }),
|
|
166
|
+
...(options.modelsPath === undefined ? {} : { modelsPath: options.modelsPath }),
|
|
124
167
|
allowModelNetwork: false,
|
|
125
168
|
refreshOnCreate: false,
|
|
126
169
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/runtimes/pi/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/runtimes/pi/auth.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@botiverse/oar",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.49.0",
|
|
4
4
|
"description": "A programming interface for all agent harnesses: provider-independent contracts for controlling and observing agent runtimes",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|