opencode-openai-profiles 0.1.0 → 0.1.2
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 +36 -35
- package/dist/index.js +117 -18
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -10,35 +10,35 @@ Early local-first plugin. Profile switches apply live when your OpenCode version
|
|
|
10
10
|
|
|
11
11
|
## Install
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
Package: [opencode-openai-profiles](https://www.npmjs.com/package/opencode-openai-profiles)
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
pnpm install
|
|
17
|
-
pnpm build
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
Install the local plugin:
|
|
15
|
+
Install globally:
|
|
21
16
|
|
|
22
17
|
```bash
|
|
23
|
-
opencode plugin
|
|
18
|
+
opencode plugin opencode-openai-profiles@latest --global
|
|
24
19
|
```
|
|
25
20
|
|
|
26
|
-
|
|
21
|
+
This installs the package and adds it to OpenCode's server and TUI plugin configs when OpenCode exposes both targets.
|
|
27
22
|
|
|
28
|
-
|
|
23
|
+
Manual config alternative:
|
|
29
24
|
|
|
30
25
|
```json
|
|
31
26
|
{
|
|
32
|
-
"plugin": ["opencode-openai-profiles"]
|
|
27
|
+
"plugin": ["opencode-openai-profiles@latest"]
|
|
33
28
|
}
|
|
34
29
|
```
|
|
35
30
|
|
|
36
|
-
For
|
|
31
|
+
For local development, build from this repo:
|
|
37
32
|
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
33
|
+
```bash
|
|
34
|
+
pnpm install
|
|
35
|
+
pnpm build
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Install the local plugin:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
opencode plugin "$PWD" --global --force
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
## Usage
|
|
@@ -49,21 +49,16 @@ Open the account picker:
|
|
|
49
49
|
/openai-profiles
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
For direct commands, use `/openai-profiles-cli`:
|
|
53
53
|
|
|
54
54
|
```text
|
|
55
|
-
/
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
/openai-
|
|
62
|
-
/openai-account-cli switch <name>
|
|
63
|
-
/openai-account-cli rename <old> <new>
|
|
64
|
-
/openai-account-cli list
|
|
65
|
-
/openai-account-cli active
|
|
66
|
-
/openai-account-cli login [browser|headless]
|
|
55
|
+
/openai-profiles-cli save <name>
|
|
56
|
+
/openai-profiles-cli switch <name>
|
|
57
|
+
/openai-profiles-cli rename <old> <new>
|
|
58
|
+
/openai-profiles-cli list
|
|
59
|
+
/openai-profiles-cli active
|
|
60
|
+
/openai-profiles-cli login [browser|headless]
|
|
61
|
+
/openai-profiles-cli complete <callback-url-or-code>
|
|
67
62
|
```
|
|
68
63
|
|
|
69
64
|
## First Setup
|
|
@@ -86,11 +81,17 @@ Log in to another account:
|
|
|
86
81
|
|
|
87
82
|
Choose `Login to OpenAI`. Select `ChatGPT Pro/Plus (headless)` if you want to paste the final callback URL by hand.
|
|
88
83
|
|
|
89
|
-
|
|
84
|
+
Direct command:
|
|
85
|
+
|
|
86
|
+
```text
|
|
87
|
+
/openai-profiles-cli login browser
|
|
88
|
+
/openai-profiles-cli login headless
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
For direct headless login, open the returned URL, copy the final callback URL from the browser address bar, then run:
|
|
90
92
|
|
|
91
93
|
```text
|
|
92
|
-
/openai-
|
|
93
|
-
/openai-account-cli login headless
|
|
94
|
+
/openai-profiles-cli complete <callback-url-or-code>
|
|
94
95
|
```
|
|
95
96
|
|
|
96
97
|
If OpenCode prompts you to restart after login, restart it before saving the new active account:
|
|
@@ -111,11 +112,11 @@ Choose `Switch Profile`, then select a saved profile.
|
|
|
111
112
|
|
|
112
113
|
If OpenCode cannot apply the switch live, the plugin will tell you to restart.
|
|
113
114
|
|
|
114
|
-
|
|
115
|
+
Direct command:
|
|
115
116
|
|
|
116
117
|
```text
|
|
117
|
-
/openai-
|
|
118
|
-
/openai-
|
|
118
|
+
/openai-profiles-cli switch account-1
|
|
119
|
+
/openai-profiles-cli switch account-2
|
|
119
120
|
```
|
|
120
121
|
|
|
121
122
|
## Storage
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { spawn } from "node:child_process";
|
|
2
|
+
import { chmod, readFile, unlink, writeFile } from "node:fs/promises";
|
|
3
|
+
import { join } from "node:path";
|
|
2
4
|
import { authFileExists, getActiveOpenAIProfile, listOpenAIProfiles, openProfilesFolder, renameOpenAIProfile, saveActiveOpenAIProfile, saveActiveOpenAIProfileIfUnsaved, setActiveOpenAIProfile, switchActiveOpenAIProfile, } from "./auth-store.js";
|
|
3
5
|
import { completeManualCodexLogin, createManualCodexLogin, } from "./codex-oauth.js";
|
|
4
6
|
import { findOpenAIAuthMethodIndex, OPENAI_HEADLESS_LOGIN_METHOD_LABEL, parseOpenAIAuthMethodPreference, } from "./openai-auth-method.js";
|
|
@@ -6,21 +8,29 @@ import { getOpenCodeAuthPaths, OPENAI_PROVIDER_ID } from "./paths.js";
|
|
|
6
8
|
const PLUGIN_ID = "opencode-openai-profiles";
|
|
7
9
|
const TUI_COMMAND_NAME = "openai-profiles.open";
|
|
8
10
|
const COMMAND_NAME = "openai-profiles";
|
|
9
|
-
const
|
|
10
|
-
const FALLBACK_COMMAND_NAME = "openai-account-cli";
|
|
11
|
+
const CLI_COMMAND_NAME = "openai-profiles-cli";
|
|
11
12
|
const RESTART_MESSAGE = "Restart opencode for the change to take effect.";
|
|
12
13
|
const OPENAI_ACCOUNT_TOAST_TITLE = "OpenAI Account";
|
|
14
|
+
const PENDING_LOGIN_FILE_NAME = "pending-openai-login.json";
|
|
15
|
+
const SECRET_FILE_MODE = 0o600;
|
|
13
16
|
export const id = PLUGIN_ID;
|
|
14
17
|
export const OpenAIAccountSwitcherPlugin = async (ctx) => {
|
|
15
18
|
return {
|
|
19
|
+
config: async (config) => {
|
|
20
|
+
config.command ??= {};
|
|
21
|
+
config.command[CLI_COMMAND_NAME] ??= {
|
|
22
|
+
template: "OpenAI profiles CLI command",
|
|
23
|
+
description: "Manage saved OpenAI profiles",
|
|
24
|
+
};
|
|
25
|
+
},
|
|
16
26
|
"command.execute.before": async (input, output) => {
|
|
17
|
-
if (input.command !==
|
|
27
|
+
if (input.command !== CLI_COMMAND_NAME) {
|
|
18
28
|
return;
|
|
19
29
|
}
|
|
20
|
-
const message = await handleServerCommand(ctx, input.arguments);
|
|
30
|
+
const message = await handleServerCommand(ctx, input.arguments, input.command);
|
|
21
31
|
output.parts.splice(0, output.parts.length, {
|
|
22
32
|
type: "text",
|
|
23
|
-
text:
|
|
33
|
+
text: message,
|
|
24
34
|
});
|
|
25
35
|
},
|
|
26
36
|
};
|
|
@@ -334,10 +344,8 @@ export const tui = async (inputApi) => {
|
|
|
334
344
|
category: "OpenAI",
|
|
335
345
|
namespace: "palette",
|
|
336
346
|
slashName: COMMAND_NAME,
|
|
337
|
-
slashAliases: [COMMAND_ALIAS],
|
|
338
347
|
slash: {
|
|
339
348
|
name: COMMAND_NAME,
|
|
340
|
-
aliases: [COMMAND_ALIAS],
|
|
341
349
|
},
|
|
342
350
|
run: showMainDialog,
|
|
343
351
|
},
|
|
@@ -355,7 +363,6 @@ export const tui = async (inputApi) => {
|
|
|
355
363
|
category: "OpenAI",
|
|
356
364
|
slash: {
|
|
357
365
|
name: COMMAND_NAME,
|
|
358
|
-
aliases: [COMMAND_ALIAS],
|
|
359
366
|
},
|
|
360
367
|
onSelect: showMainDialog,
|
|
361
368
|
},
|
|
@@ -408,7 +415,7 @@ function formatSavedProfileDescription(profileNames) {
|
|
|
408
415
|
}
|
|
409
416
|
return `Saved profiles: ${profileNames.join(", ")}`;
|
|
410
417
|
}
|
|
411
|
-
async function handleServerCommand(ctx, rawArguments) {
|
|
418
|
+
async function handleServerCommand(ctx, rawArguments, commandName = CLI_COMMAND_NAME) {
|
|
412
419
|
const paths = getOpenCodeAuthPaths();
|
|
413
420
|
const [action, ...actionArguments] = rawArguments
|
|
414
421
|
.trim()
|
|
@@ -417,13 +424,13 @@ async function handleServerCommand(ctx, rawArguments) {
|
|
|
417
424
|
const argument = actionArguments[0];
|
|
418
425
|
try {
|
|
419
426
|
if (!action || action === "help") {
|
|
420
|
-
const message =
|
|
427
|
+
const message = getServerCommandUsage(commandName);
|
|
421
428
|
await showServerToast(ctx, "info", message);
|
|
422
429
|
return message;
|
|
423
430
|
}
|
|
424
431
|
if (action === "save") {
|
|
425
432
|
if (!argument) {
|
|
426
|
-
throw new Error(`Usage: /${
|
|
433
|
+
throw new Error(`Usage: /${commandName} save <name>`);
|
|
427
434
|
}
|
|
428
435
|
const savedProfile = await saveActiveOpenAIProfile(paths, argument);
|
|
429
436
|
const message = `Saved ${savedProfile.name}.`;
|
|
@@ -432,7 +439,7 @@ async function handleServerCommand(ctx, rawArguments) {
|
|
|
432
439
|
}
|
|
433
440
|
if (action === "switch") {
|
|
434
441
|
if (!argument) {
|
|
435
|
-
throw new Error(`Usage: /${
|
|
442
|
+
throw new Error(`Usage: /${commandName} switch <name>`);
|
|
436
443
|
}
|
|
437
444
|
const client = ctx.client;
|
|
438
445
|
const switchedProfile = await switchActiveOpenAIProfile(paths, argument);
|
|
@@ -446,7 +453,7 @@ async function handleServerCommand(ctx, rawArguments) {
|
|
|
446
453
|
if (action === "rename") {
|
|
447
454
|
const [currentName, nextName] = actionArguments;
|
|
448
455
|
if (!currentName || !nextName) {
|
|
449
|
-
throw new Error(`Usage: /${
|
|
456
|
+
throw new Error(`Usage: /${commandName} rename <old> <new>`);
|
|
450
457
|
}
|
|
451
458
|
const renamedProfile = await renameOpenAIProfile(paths, currentName, nextName);
|
|
452
459
|
const message = `Renamed ${currentName} to ${renamedProfile.name}.`;
|
|
@@ -468,7 +475,14 @@ async function handleServerCommand(ctx, rawArguments) {
|
|
|
468
475
|
return message;
|
|
469
476
|
}
|
|
470
477
|
if (action === "login") {
|
|
471
|
-
return await startServerOpenAILogin(ctx, argument);
|
|
478
|
+
return await startServerOpenAILogin(ctx, argument, commandName);
|
|
479
|
+
}
|
|
480
|
+
if (action === "complete") {
|
|
481
|
+
const callbackUrlOrCode = actionArguments.join(" ").trim();
|
|
482
|
+
if (!callbackUrlOrCode) {
|
|
483
|
+
throw new Error(`Usage: /${commandName} complete <callback-url-or-code>`);
|
|
484
|
+
}
|
|
485
|
+
return await completeServerHeadlessLogin(ctx, callbackUrlOrCode, commandName);
|
|
472
486
|
}
|
|
473
487
|
throw new Error(`Unknown action: ${action}`);
|
|
474
488
|
}
|
|
@@ -478,10 +492,13 @@ async function handleServerCommand(ctx, rawArguments) {
|
|
|
478
492
|
return message;
|
|
479
493
|
}
|
|
480
494
|
}
|
|
481
|
-
async function startServerOpenAILogin(ctx, methodPreference) {
|
|
495
|
+
async function startServerOpenAILogin(ctx, methodPreference, commandName = CLI_COMMAND_NAME) {
|
|
482
496
|
const client = ctx.client;
|
|
483
497
|
const parsedMethodPreference = parseOpenAIAuthMethodPreference(methodPreference);
|
|
484
498
|
const savedProfile = await saveActiveOpenAIProfileIfUnsaved(getOpenCodeAuthPaths());
|
|
499
|
+
if (parsedMethodPreference === "headless") {
|
|
500
|
+
return await startServerHeadlessLogin(savedProfile, commandName);
|
|
501
|
+
}
|
|
485
502
|
const authMethodsResult = await client.provider.auth({
|
|
486
503
|
directory: ctx.directory,
|
|
487
504
|
});
|
|
@@ -500,7 +517,7 @@ async function startServerOpenAILogin(ctx, methodPreference) {
|
|
|
500
517
|
method: methodIndex,
|
|
501
518
|
});
|
|
502
519
|
if (authorizationResult.error || !authorizationResult.data) {
|
|
503
|
-
throw new Error(
|
|
520
|
+
throw new Error(`Unable to start OpenAI login: ${formatUnknownError(authorizationResult.error)}`);
|
|
504
521
|
}
|
|
505
522
|
const shouldOpenLoginUrl = authorizationResult.data.method !== "code" &&
|
|
506
523
|
openAIAuthMethods[methodIndex]?.label !==
|
|
@@ -509,14 +526,96 @@ async function startServerOpenAILogin(ctx, methodPreference) {
|
|
|
509
526
|
openPathOrUrl(authorizationResult.data.url);
|
|
510
527
|
}
|
|
511
528
|
const loginMessage = shouldOpenLoginUrl
|
|
512
|
-
? `Opened OpenAI login. After login completes, run /${
|
|
513
|
-
: `${authorizationResult.data.url} ${authorizationResult.data.instructions} Waiting for authorization. After login completes, restart opencode and run /${
|
|
529
|
+
? `Opened OpenAI login. After login completes, run /${commandName} save <name>.`
|
|
530
|
+
: `${authorizationResult.data.url} ${authorizationResult.data.instructions} Waiting for authorization. After login completes, restart opencode and run /${commandName} save <name>.`;
|
|
514
531
|
const message = savedProfile
|
|
515
532
|
? `Saved current profile as ${savedProfile.name} before login. ${loginMessage}`
|
|
516
533
|
: loginMessage;
|
|
517
534
|
await showServerToast(ctx, "info", message);
|
|
518
535
|
return message;
|
|
519
536
|
}
|
|
537
|
+
function getServerCommandUsage(commandName) {
|
|
538
|
+
return `Usage: /${commandName} save <name> | switch <name> | rename <old> <new> | list | active | login [browser|headless] | complete <callback-url-or-code>`;
|
|
539
|
+
}
|
|
540
|
+
async function startServerHeadlessLogin(savedProfile, commandName) {
|
|
541
|
+
const paths = getOpenCodeAuthPaths();
|
|
542
|
+
const login = await createManualCodexLogin();
|
|
543
|
+
await writePendingManualCodexLogin(paths, login);
|
|
544
|
+
const loginMessage = `Open this URL in the browser account you want to save: ${login.url} After ChatGPT redirects to localhost, copy the full callback URL from the browser address bar and run /${commandName} complete <callback-url-or-code>.`;
|
|
545
|
+
return savedProfile
|
|
546
|
+
? `Saved current profile as ${savedProfile.name} before login. ${loginMessage}`
|
|
547
|
+
: loginMessage;
|
|
548
|
+
}
|
|
549
|
+
async function completeServerHeadlessLogin(ctx, callbackUrlOrCode, commandName) {
|
|
550
|
+
const paths = getOpenCodeAuthPaths();
|
|
551
|
+
const login = await readPendingManualCodexLogin(paths);
|
|
552
|
+
const activeProfile = await completeManualCodexLogin(login, callbackUrlOrCode);
|
|
553
|
+
const client = ctx.client;
|
|
554
|
+
await setActiveOpenAIProfile(paths, activeProfile);
|
|
555
|
+
await deletePendingManualCodexLogin(paths);
|
|
556
|
+
const didApplyActiveProfile = await applyServerActiveOpenAIProfile(client, activeProfile);
|
|
557
|
+
const restartMessage = didApplyActiveProfile ? "" : ` ${RESTART_MESSAGE}`;
|
|
558
|
+
return `OpenAI login complete.${restartMessage} Run /${commandName} save <name>.`;
|
|
559
|
+
}
|
|
560
|
+
async function writePendingManualCodexLogin(paths, login) {
|
|
561
|
+
await openProfilesFolder(paths);
|
|
562
|
+
const filePath = getPendingManualCodexLoginFilePath(paths);
|
|
563
|
+
await writeFile(filePath, `${JSON.stringify(login, null, 2)}\n`, {
|
|
564
|
+
mode: SECRET_FILE_MODE,
|
|
565
|
+
});
|
|
566
|
+
await chmod(filePath, SECRET_FILE_MODE);
|
|
567
|
+
}
|
|
568
|
+
async function readPendingManualCodexLogin(paths) {
|
|
569
|
+
const filePath = getPendingManualCodexLoginFilePath(paths);
|
|
570
|
+
const fileContents = await readFile(filePath, "utf8");
|
|
571
|
+
const login = JSON.parse(fileContents);
|
|
572
|
+
if (!isManualCodexLogin(login)) {
|
|
573
|
+
throw new Error("Pending OpenAI login is invalid. Start login again.");
|
|
574
|
+
}
|
|
575
|
+
return login;
|
|
576
|
+
}
|
|
577
|
+
async function deletePendingManualCodexLogin(paths) {
|
|
578
|
+
try {
|
|
579
|
+
await unlink(getPendingManualCodexLoginFilePath(paths));
|
|
580
|
+
}
|
|
581
|
+
catch (error) {
|
|
582
|
+
if (!isNodeErrorWithCode(error, "ENOENT")) {
|
|
583
|
+
throw error;
|
|
584
|
+
}
|
|
585
|
+
}
|
|
586
|
+
}
|
|
587
|
+
function getPendingManualCodexLoginFilePath(paths) {
|
|
588
|
+
return join(paths.profileDirectoryPath, PENDING_LOGIN_FILE_NAME);
|
|
589
|
+
}
|
|
590
|
+
function isManualCodexLogin(value) {
|
|
591
|
+
return (isRecord(value) &&
|
|
592
|
+
typeof value.url === "string" &&
|
|
593
|
+
typeof value.state === "string" &&
|
|
594
|
+
typeof value.verifier === "string");
|
|
595
|
+
}
|
|
596
|
+
function formatUnknownError(error) {
|
|
597
|
+
if (!error) {
|
|
598
|
+
return "no response data";
|
|
599
|
+
}
|
|
600
|
+
if (error instanceof Error) {
|
|
601
|
+
return error.message;
|
|
602
|
+
}
|
|
603
|
+
if (typeof error === "string") {
|
|
604
|
+
return error;
|
|
605
|
+
}
|
|
606
|
+
try {
|
|
607
|
+
return JSON.stringify(error);
|
|
608
|
+
}
|
|
609
|
+
catch {
|
|
610
|
+
return String(error);
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
function isRecord(value) {
|
|
614
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
615
|
+
}
|
|
616
|
+
function isNodeErrorWithCode(error, code) {
|
|
617
|
+
return error instanceof Error && "code" in error && error.code === code;
|
|
618
|
+
}
|
|
520
619
|
async function applyServerActiveOpenAIProfile(client, profile) {
|
|
521
620
|
if (!client.auth) {
|
|
522
621
|
return false;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|