poe-code 3.0.190 → 3.0.191
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/cli/commands/auth.js +34 -0
- package/dist/cli/commands/auth.js.map +1 -1
- package/dist/cli/commands/configure.js +32 -16
- package/dist/cli/commands/configure.js.map +1 -1
- package/dist/cli/commands/provider.js +2 -15
- package/dist/cli/commands/provider.js.map +1 -1
- package/dist/cli/commands/shared.d.ts +2 -0
- package/dist/cli/commands/shared.js +16 -1
- package/dist/cli/commands/shared.js.map +1 -1
- package/dist/index.js +86 -32
- package/dist/index.js.map +3 -3
- package/package.json +1 -1
|
@@ -27,6 +27,12 @@ export function registerAuthCommand(program, container) {
|
|
|
27
27
|
.action(async () => {
|
|
28
28
|
await executeApiKey(program, container);
|
|
29
29
|
});
|
|
30
|
+
auth
|
|
31
|
+
.command("whoami")
|
|
32
|
+
.description("Print Poe account identity as JSON (uses POE_API_KEY if set).")
|
|
33
|
+
.action(async () => {
|
|
34
|
+
await executeWhoami(program, container);
|
|
35
|
+
});
|
|
30
36
|
auth
|
|
31
37
|
.command("login")
|
|
32
38
|
.description("Store a Poe API key for reuse across commands.")
|
|
@@ -93,4 +99,32 @@ async function executeApiKey(_program, container) {
|
|
|
93
99
|
}
|
|
94
100
|
process.stdout.write(apiKey);
|
|
95
101
|
}
|
|
102
|
+
async function resolveAuthCredential(container) {
|
|
103
|
+
const envKey = container.env.getVariable("POE_API_KEY");
|
|
104
|
+
if (typeof envKey === "string" && envKey.trim().length > 0) {
|
|
105
|
+
return envKey.trim();
|
|
106
|
+
}
|
|
107
|
+
return container.readApiKey();
|
|
108
|
+
}
|
|
109
|
+
async function executeWhoami(_program, container) {
|
|
110
|
+
const apiKey = await resolveAuthCredential(container);
|
|
111
|
+
if (!apiKey) {
|
|
112
|
+
process.exitCode = 1;
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
const response = await container.httpClient(`${container.env.poeApiBaseUrl}/whoami`, {
|
|
116
|
+
method: "POST",
|
|
117
|
+
headers: {
|
|
118
|
+
Authorization: `Bearer ${apiKey}`
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
if (!response.ok) {
|
|
122
|
+
throw new ApiError(`Failed to fetch identity (HTTP ${response.status})`, {
|
|
123
|
+
httpStatus: response.status,
|
|
124
|
+
endpoint: "/v1/whoami"
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
const identity = await response.json();
|
|
128
|
+
process.stdout.write(JSON.stringify(identity));
|
|
129
|
+
}
|
|
96
130
|
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/cli/commands/auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/cli/commands/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { parseAgentSpecifier } from "@poe-code/agent-defs";
|
|
2
|
-
import { buildProviderContext, createExecutionResources, formatServiceList, listServiceNames, resolveCommandFlags, resolveDefaultAgent, resolveServiceAdapter, applyIsolatedConfiguration } from "./shared.js";
|
|
2
|
+
import { buildProviderContext, createExecutionResources, createSecretPrompter, formatServiceList, listServiceNames, resolveCommandFlags, resolveDefaultAgent, resolveServiceAdapter, applyIsolatedConfiguration } from "./shared.js";
|
|
3
3
|
import { saveConfiguredService } from "../../services/config.js";
|
|
4
4
|
import { OperationCancelledError } from "../errors.js";
|
|
5
5
|
import { combineMutationObservers, createMutationReporter } from "../../services/mutation-events.js";
|
|
@@ -98,19 +98,19 @@ export async function executeConfigure(program, container, service, options) {
|
|
|
98
98
|
resources.context.finalize();
|
|
99
99
|
}
|
|
100
100
|
async function resolveProvider(agentId, options, container, flags) {
|
|
101
|
-
|
|
102
|
-
return options.provider;
|
|
103
|
-
}
|
|
104
|
-
const envProvider = container.env.getVariable("POE_CODE_PROVIDER");
|
|
105
|
-
if (envProvider) {
|
|
106
|
-
return envProvider;
|
|
107
|
-
}
|
|
101
|
+
const explicit = options.provider ?? container.env.getVariable("POE_CODE_PROVIDER") ?? undefined;
|
|
108
102
|
const candidates = container.providerRegistry.forAgent(agentId);
|
|
103
|
+
if (candidates.length === 0) {
|
|
104
|
+
throw new Error(`No providers support agent "${agentId}".`);
|
|
105
|
+
}
|
|
109
106
|
if (flags.dryRun) {
|
|
110
|
-
|
|
111
|
-
|
|
107
|
+
return explicit ?? candidates[0].id;
|
|
108
|
+
}
|
|
109
|
+
if (explicit) {
|
|
110
|
+
if (!(await container.providerRegistry.isLoggedIn(explicit))) {
|
|
111
|
+
await triggerProviderLogin(container, explicit, options.apiKey);
|
|
112
112
|
}
|
|
113
|
-
return
|
|
113
|
+
return explicit;
|
|
114
114
|
}
|
|
115
115
|
const loggedIn = [];
|
|
116
116
|
for (const candidate of candidates) {
|
|
@@ -118,16 +118,26 @@ async function resolveProvider(agentId, options, container, flags) {
|
|
|
118
118
|
loggedIn.push(candidate);
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
|
-
if (loggedIn.length === 0) {
|
|
122
|
-
throw new Error(`No logged-in providers support agent "${agentId}". Run \`poe-code provider login\` to authenticate.`);
|
|
123
|
-
}
|
|
124
121
|
if (loggedIn.length === 1) {
|
|
125
122
|
return loggedIn[0].id;
|
|
126
123
|
}
|
|
124
|
+
if (loggedIn.length > 1) {
|
|
125
|
+
if (flags.assumeYes) {
|
|
126
|
+
throw new Error(`Multiple providers support "${agentId}". Use --provider <id> to select one.`);
|
|
127
|
+
}
|
|
128
|
+
return await promptForProviderChoice(agentId, loggedIn, container);
|
|
129
|
+
}
|
|
127
130
|
if (flags.assumeYes) {
|
|
128
|
-
throw new Error(`
|
|
131
|
+
throw new Error(`No logged-in providers support agent "${agentId}". Use --provider and --api-key to authenticate non-interactively.`);
|
|
129
132
|
}
|
|
130
|
-
const
|
|
133
|
+
const chosen = candidates.length === 1
|
|
134
|
+
? candidates[0].id
|
|
135
|
+
: await promptForProviderChoice(agentId, candidates, container);
|
|
136
|
+
await triggerProviderLogin(container, chosen, options.apiKey);
|
|
137
|
+
return chosen;
|
|
138
|
+
}
|
|
139
|
+
async function promptForProviderChoice(agentId, providers, container) {
|
|
140
|
+
const choices = providers.map((p) => ({ title: p.label, value: p.id }));
|
|
131
141
|
const descriptor = container.promptLibrary.serviceSelection({
|
|
132
142
|
message: `Which provider powers ${agentId}?`,
|
|
133
143
|
choices
|
|
@@ -139,6 +149,12 @@ async function resolveProvider(agentId, options, container, flags) {
|
|
|
139
149
|
}
|
|
140
150
|
return selected;
|
|
141
151
|
}
|
|
152
|
+
async function triggerProviderLogin(container, providerId, apiKey) {
|
|
153
|
+
await container.providerRegistry.login(providerId, { apiKey }, {
|
|
154
|
+
envVars: container.env.variables,
|
|
155
|
+
promptForSecret: createSecretPrompter(container)
|
|
156
|
+
});
|
|
157
|
+
}
|
|
142
158
|
function createMutationTracker() {
|
|
143
159
|
const targets = new Set();
|
|
144
160
|
const observers = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../../../src/cli/commands/configure.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../../../src/cli/commands/configure.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { createExecutionResources, resolveCommandFlags } from "./shared.js";
|
|
1
|
+
import { createExecutionResources, createSecretPrompter, resolveCommandFlags } from "./shared.js";
|
|
2
2
|
import { getTheme, renderTable } from "@poe-code/design-system";
|
|
3
|
-
import { OperationCancelledError } from "../errors.js";
|
|
4
3
|
export function registerProviderCommand(program, container) {
|
|
5
4
|
const providerCmd = program
|
|
6
5
|
.command("provider")
|
|
@@ -59,19 +58,7 @@ async function executeProviderLogin(program, container, id, options) {
|
|
|
59
58
|
if (!flags.dryRun) {
|
|
60
59
|
await container.providerRegistry.login(id, { apiKey: options.apiKey }, {
|
|
61
60
|
envVars: container.env.variables,
|
|
62
|
-
promptForSecret:
|
|
63
|
-
const descriptor = {
|
|
64
|
-
name: "apiKey",
|
|
65
|
-
message: prompt.title,
|
|
66
|
-
type: "password"
|
|
67
|
-
};
|
|
68
|
-
const response = await container.prompts(descriptor);
|
|
69
|
-
const value = response["apiKey"];
|
|
70
|
-
if (typeof value !== "string" || !value.trim()) {
|
|
71
|
-
throw new OperationCancelledError();
|
|
72
|
-
}
|
|
73
|
-
return value.trim();
|
|
74
|
-
}
|
|
61
|
+
promptForSecret: createSecretPrompter(container)
|
|
75
62
|
});
|
|
76
63
|
}
|
|
77
64
|
resources.context.complete({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/cli/commands/provider.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/cli/commands/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import type { ProviderService, ProviderContext, ProviderIsolatedEnv } from "../s
|
|
|
5
5
|
import { type CommandContext } from "../context.js";
|
|
6
6
|
import type { ScopedLogger } from "../logger.js";
|
|
7
7
|
import type { MutationObservers } from "@poe-code/config-mutations";
|
|
8
|
+
import type { PromptForSecret } from "@poe-code/providers";
|
|
8
9
|
export interface CommandFlags {
|
|
9
10
|
dryRun: boolean;
|
|
10
11
|
assumeYes: boolean;
|
|
@@ -32,6 +33,7 @@ export declare function listServiceNames(services: Array<{
|
|
|
32
33
|
aliases?: string[];
|
|
33
34
|
}>): string[];
|
|
34
35
|
export declare function resolveServiceAdapter(container: CliContainer, service: string): ProviderService;
|
|
36
|
+
export declare function createSecretPrompter(container: CliContainer): PromptForSecret;
|
|
35
37
|
export declare function formatServiceList(names: string[]): string;
|
|
36
38
|
export declare function buildResumeCommand(canonicalService: string, threadId: string, cwd: string): string | undefined;
|
|
37
39
|
export declare function applyIsolatedConfiguration(input: {
|
|
@@ -5,7 +5,7 @@ import { resolveIsolatedTargetDirectory } from "../isolated-env.js";
|
|
|
5
5
|
import { getSpawnConfig } from "@poe-code/agent-spawn";
|
|
6
6
|
import { allAgents, formatAgentSpecifier, parseAgentSpecifier, resolveAgentId } from "@poe-code/agent-defs";
|
|
7
7
|
import { knownConfigScopes } from "../../services/config.js";
|
|
8
|
-
import { ValidationError } from "../errors.js";
|
|
8
|
+
import { OperationCancelledError, ValidationError } from "../errors.js";
|
|
9
9
|
export function buildActiveProvider(id, baseUrl, credential) {
|
|
10
10
|
return { id, baseUrl, credential, extraEnv: {} };
|
|
11
11
|
}
|
|
@@ -82,6 +82,21 @@ export function resolveServiceAdapter(container, service) {
|
|
|
82
82
|
}
|
|
83
83
|
return adapter;
|
|
84
84
|
}
|
|
85
|
+
export function createSecretPrompter(container) {
|
|
86
|
+
return async (prompt) => {
|
|
87
|
+
const descriptor = {
|
|
88
|
+
name: "apiKey",
|
|
89
|
+
message: prompt.title,
|
|
90
|
+
type: "password"
|
|
91
|
+
};
|
|
92
|
+
const response = await container.prompts(descriptor);
|
|
93
|
+
const value = response["apiKey"];
|
|
94
|
+
if (typeof value !== "string" || !value.trim()) {
|
|
95
|
+
throw new OperationCancelledError();
|
|
96
|
+
}
|
|
97
|
+
return value.trim();
|
|
98
|
+
};
|
|
99
|
+
}
|
|
85
100
|
export function formatServiceList(names) {
|
|
86
101
|
const unique = Array.from(new Set(names.filter((name) => name.length > 0)));
|
|
87
102
|
if (unique.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/cli/commands/shared.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAEnB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EACL,0BAA0B,EAE3B,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/cli/commands/shared.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -26850,6 +26850,21 @@ function resolveServiceAdapter(container, service) {
|
|
|
26850
26850
|
}
|
|
26851
26851
|
return adapter;
|
|
26852
26852
|
}
|
|
26853
|
+
function createSecretPrompter(container) {
|
|
26854
|
+
return async (prompt) => {
|
|
26855
|
+
const descriptor = {
|
|
26856
|
+
name: "apiKey",
|
|
26857
|
+
message: prompt.title,
|
|
26858
|
+
type: "password"
|
|
26859
|
+
};
|
|
26860
|
+
const response = await container.prompts(descriptor);
|
|
26861
|
+
const value = response["apiKey"];
|
|
26862
|
+
if (typeof value !== "string" || !value.trim()) {
|
|
26863
|
+
throw new OperationCancelledError();
|
|
26864
|
+
}
|
|
26865
|
+
return value.trim();
|
|
26866
|
+
};
|
|
26867
|
+
}
|
|
26853
26868
|
function formatServiceList(names) {
|
|
26854
26869
|
const unique = Array.from(new Set(names.filter((name) => name.length > 0)));
|
|
26855
26870
|
if (unique.length === 0) {
|
|
@@ -41482,19 +41497,19 @@ async function executeConfigure(program, container, service, options) {
|
|
|
41482
41497
|
resources.context.finalize();
|
|
41483
41498
|
}
|
|
41484
41499
|
async function resolveProvider2(agentId, options, container, flags) {
|
|
41485
|
-
|
|
41486
|
-
return options.provider;
|
|
41487
|
-
}
|
|
41488
|
-
const envProvider = container.env.getVariable("POE_CODE_PROVIDER");
|
|
41489
|
-
if (envProvider) {
|
|
41490
|
-
return envProvider;
|
|
41491
|
-
}
|
|
41500
|
+
const explicit = options.provider ?? container.env.getVariable("POE_CODE_PROVIDER") ?? void 0;
|
|
41492
41501
|
const candidates = container.providerRegistry.forAgent(agentId);
|
|
41502
|
+
if (candidates.length === 0) {
|
|
41503
|
+
throw new Error(`No providers support agent "${agentId}".`);
|
|
41504
|
+
}
|
|
41493
41505
|
if (flags.dryRun) {
|
|
41494
|
-
|
|
41495
|
-
|
|
41506
|
+
return explicit ?? candidates[0].id;
|
|
41507
|
+
}
|
|
41508
|
+
if (explicit) {
|
|
41509
|
+
if (!await container.providerRegistry.isLoggedIn(explicit)) {
|
|
41510
|
+
await triggerProviderLogin(container, explicit, options.apiKey);
|
|
41496
41511
|
}
|
|
41497
|
-
return
|
|
41512
|
+
return explicit;
|
|
41498
41513
|
}
|
|
41499
41514
|
const loggedIn = [];
|
|
41500
41515
|
for (const candidate of candidates) {
|
|
@@ -41502,20 +41517,28 @@ async function resolveProvider2(agentId, options, container, flags) {
|
|
|
41502
41517
|
loggedIn.push(candidate);
|
|
41503
41518
|
}
|
|
41504
41519
|
}
|
|
41505
|
-
if (loggedIn.length === 0) {
|
|
41506
|
-
throw new Error(
|
|
41507
|
-
`No logged-in providers support agent "${agentId}". Run \`poe-code provider login\` to authenticate.`
|
|
41508
|
-
);
|
|
41509
|
-
}
|
|
41510
41520
|
if (loggedIn.length === 1) {
|
|
41511
41521
|
return loggedIn[0].id;
|
|
41512
41522
|
}
|
|
41523
|
+
if (loggedIn.length > 1) {
|
|
41524
|
+
if (flags.assumeYes) {
|
|
41525
|
+
throw new Error(
|
|
41526
|
+
`Multiple providers support "${agentId}". Use --provider <id> to select one.`
|
|
41527
|
+
);
|
|
41528
|
+
}
|
|
41529
|
+
return await promptForProviderChoice(agentId, loggedIn, container);
|
|
41530
|
+
}
|
|
41513
41531
|
if (flags.assumeYes) {
|
|
41514
41532
|
throw new Error(
|
|
41515
|
-
`
|
|
41533
|
+
`No logged-in providers support agent "${agentId}". Use --provider and --api-key to authenticate non-interactively.`
|
|
41516
41534
|
);
|
|
41517
41535
|
}
|
|
41518
|
-
const
|
|
41536
|
+
const chosen = candidates.length === 1 ? candidates[0].id : await promptForProviderChoice(agentId, candidates, container);
|
|
41537
|
+
await triggerProviderLogin(container, chosen, options.apiKey);
|
|
41538
|
+
return chosen;
|
|
41539
|
+
}
|
|
41540
|
+
async function promptForProviderChoice(agentId, providers, container) {
|
|
41541
|
+
const choices = providers.map((p) => ({ title: p.label, value: p.id }));
|
|
41519
41542
|
const descriptor = container.promptLibrary.serviceSelection({
|
|
41520
41543
|
message: `Which provider powers ${agentId}?`,
|
|
41521
41544
|
choices
|
|
@@ -41527,6 +41550,16 @@ async function resolveProvider2(agentId, options, container, flags) {
|
|
|
41527
41550
|
}
|
|
41528
41551
|
return selected;
|
|
41529
41552
|
}
|
|
41553
|
+
async function triggerProviderLogin(container, providerId, apiKey) {
|
|
41554
|
+
await container.providerRegistry.login(
|
|
41555
|
+
providerId,
|
|
41556
|
+
{ apiKey },
|
|
41557
|
+
{
|
|
41558
|
+
envVars: container.env.variables,
|
|
41559
|
+
promptForSecret: createSecretPrompter(container)
|
|
41560
|
+
}
|
|
41561
|
+
);
|
|
41562
|
+
}
|
|
41530
41563
|
function createMutationTracker() {
|
|
41531
41564
|
const targets = /* @__PURE__ */ new Set();
|
|
41532
41565
|
const observers = {
|
|
@@ -42603,6 +42636,9 @@ function registerAuthCommand(program, container) {
|
|
|
42603
42636
|
auth.command("api_key", { hidden: true }).action(async () => {
|
|
42604
42637
|
await executeApiKey(program, container);
|
|
42605
42638
|
});
|
|
42639
|
+
auth.command("whoami").description("Print Poe account identity as JSON (uses POE_API_KEY if set).").action(async () => {
|
|
42640
|
+
await executeWhoami(program, container);
|
|
42641
|
+
});
|
|
42606
42642
|
auth.command("login").description("Store a Poe API key for reuse across commands.").option("--api-key <key>", "Poe API key").action(async (options) => {
|
|
42607
42643
|
await executeLogin(program, container, options);
|
|
42608
42644
|
});
|
|
@@ -42664,6 +42700,37 @@ async function executeApiKey(_program, container) {
|
|
|
42664
42700
|
}
|
|
42665
42701
|
process.stdout.write(apiKey);
|
|
42666
42702
|
}
|
|
42703
|
+
async function resolveAuthCredential(container) {
|
|
42704
|
+
const envKey = container.env.getVariable("POE_API_KEY");
|
|
42705
|
+
if (typeof envKey === "string" && envKey.trim().length > 0) {
|
|
42706
|
+
return envKey.trim();
|
|
42707
|
+
}
|
|
42708
|
+
return container.readApiKey();
|
|
42709
|
+
}
|
|
42710
|
+
async function executeWhoami(_program, container) {
|
|
42711
|
+
const apiKey = await resolveAuthCredential(container);
|
|
42712
|
+
if (!apiKey) {
|
|
42713
|
+
process.exitCode = 1;
|
|
42714
|
+
return;
|
|
42715
|
+
}
|
|
42716
|
+
const response = await container.httpClient(
|
|
42717
|
+
`${container.env.poeApiBaseUrl}/whoami`,
|
|
42718
|
+
{
|
|
42719
|
+
method: "POST",
|
|
42720
|
+
headers: {
|
|
42721
|
+
Authorization: `Bearer ${apiKey}`
|
|
42722
|
+
}
|
|
42723
|
+
}
|
|
42724
|
+
);
|
|
42725
|
+
if (!response.ok) {
|
|
42726
|
+
throw new ApiError(`Failed to fetch identity (HTTP ${response.status})`, {
|
|
42727
|
+
httpStatus: response.status,
|
|
42728
|
+
endpoint: "/v1/whoami"
|
|
42729
|
+
});
|
|
42730
|
+
}
|
|
42731
|
+
const identity = await response.json();
|
|
42732
|
+
process.stdout.write(JSON.stringify(identity));
|
|
42733
|
+
}
|
|
42667
42734
|
var init_auth = __esm({
|
|
42668
42735
|
"src/cli/commands/auth.ts"() {
|
|
42669
42736
|
"use strict";
|
|
@@ -49508,19 +49575,7 @@ async function executeProviderLogin(program, container, id, options) {
|
|
|
49508
49575
|
if (!flags.dryRun) {
|
|
49509
49576
|
await container.providerRegistry.login(id, { apiKey: options.apiKey }, {
|
|
49510
49577
|
envVars: container.env.variables,
|
|
49511
|
-
promptForSecret:
|
|
49512
|
-
const descriptor = {
|
|
49513
|
-
name: "apiKey",
|
|
49514
|
-
message: prompt.title,
|
|
49515
|
-
type: "password"
|
|
49516
|
-
};
|
|
49517
|
-
const response = await container.prompts(descriptor);
|
|
49518
|
-
const value = response["apiKey"];
|
|
49519
|
-
if (typeof value !== "string" || !value.trim()) {
|
|
49520
|
-
throw new OperationCancelledError();
|
|
49521
|
-
}
|
|
49522
|
-
return value.trim();
|
|
49523
|
-
}
|
|
49578
|
+
promptForSecret: createSecretPrompter(container)
|
|
49524
49579
|
});
|
|
49525
49580
|
}
|
|
49526
49581
|
resources.context.complete({
|
|
@@ -49551,7 +49606,6 @@ var init_provider = __esm({
|
|
|
49551
49606
|
"use strict";
|
|
49552
49607
|
init_shared();
|
|
49553
49608
|
init_src6();
|
|
49554
|
-
init_errors2();
|
|
49555
49609
|
}
|
|
49556
49610
|
});
|
|
49557
49611
|
|
|
@@ -49561,7 +49615,7 @@ var init_package2 = __esm({
|
|
|
49561
49615
|
"package.json"() {
|
|
49562
49616
|
package_default2 = {
|
|
49563
49617
|
name: "poe-code",
|
|
49564
|
-
version: "3.0.
|
|
49618
|
+
version: "3.0.191",
|
|
49565
49619
|
description: "CLI tool to configure Poe API for developer workflows.",
|
|
49566
49620
|
type: "module",
|
|
49567
49621
|
main: "./dist/index.js",
|