openai-oauth 1.0.0 → 1.0.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/dist/{chunk-WDJBHN6N.js → chunk-2AENSHRT.js} +49 -11
- package/dist/cli.js +11 -4
- package/dist/index.js +1 -1
- package/package.json +4 -3
|
@@ -22029,7 +22029,8 @@ var toModelMessages = (messages) => {
|
|
|
22029
22029
|
const modelMessages = [];
|
|
22030
22030
|
const toolNamesById = /* @__PURE__ */ new Map();
|
|
22031
22031
|
for (const message of messages) {
|
|
22032
|
-
|
|
22032
|
+
const role = Array.isArray(message.tool_calls) && message.tool_calls.length > 0 ? "assistant" : typeof message.tool_call_id === "string" ? "tool" : message.role;
|
|
22033
|
+
switch (role) {
|
|
22033
22034
|
case "system":
|
|
22034
22035
|
case "developer":
|
|
22035
22036
|
modelMessages.push({
|
|
@@ -22728,11 +22729,12 @@ var createOpenAIOAuthFetchHandler = (settings = {}) => {
|
|
|
22728
22729
|
};
|
|
22729
22730
|
var startOpenAIOAuthServer = async (settings = {}) => {
|
|
22730
22731
|
const host = settings.host ?? DEFAULT_HOST;
|
|
22731
|
-
const
|
|
22732
|
+
const requestedPort = settings.port ?? DEFAULT_PORT;
|
|
22732
22733
|
const handler = createOpenAIOAuthFetchHandler(settings);
|
|
22733
|
-
|
|
22734
|
+
let selectedPort = requestedPort;
|
|
22735
|
+
const createNodeServer = () => createServer(async (req, res) => {
|
|
22734
22736
|
try {
|
|
22735
|
-
const request = await toWebRequest(req, { host, port });
|
|
22737
|
+
const request = await toWebRequest(req, { host, port: selectedPort });
|
|
22736
22738
|
const response = await handler(request);
|
|
22737
22739
|
await writeWebResponse(res, response);
|
|
22738
22740
|
} catch (error40) {
|
|
@@ -22741,16 +22743,52 @@ var startOpenAIOAuthServer = async (settings = {}) => {
|
|
|
22741
22743
|
return;
|
|
22742
22744
|
}
|
|
22743
22745
|
const message = error40 instanceof Error ? error40.message : "Unexpected server error.";
|
|
22744
|
-
await writeWebResponse(
|
|
22746
|
+
await writeWebResponse(
|
|
22747
|
+
res,
|
|
22748
|
+
toErrorResponse(message, 500, "server_error")
|
|
22749
|
+
);
|
|
22745
22750
|
}
|
|
22746
22751
|
});
|
|
22747
|
-
|
|
22748
|
-
|
|
22749
|
-
|
|
22750
|
-
server.
|
|
22751
|
-
|
|
22752
|
+
let server = createNodeServer();
|
|
22753
|
+
if (requestedPort === 0) {
|
|
22754
|
+
await new Promise((resolve, reject) => {
|
|
22755
|
+
server.once("error", reject);
|
|
22756
|
+
server.listen(0, host, () => {
|
|
22757
|
+
server.off("error", reject);
|
|
22758
|
+
resolve();
|
|
22759
|
+
});
|
|
22752
22760
|
});
|
|
22753
|
-
}
|
|
22761
|
+
} else {
|
|
22762
|
+
for (let port = requestedPort; port <= 65535; port += 1) {
|
|
22763
|
+
try {
|
|
22764
|
+
server = createNodeServer();
|
|
22765
|
+
await new Promise((resolve, reject) => {
|
|
22766
|
+
const handleError = (error40) => {
|
|
22767
|
+
server.off("listening", handleListening);
|
|
22768
|
+
reject(error40);
|
|
22769
|
+
};
|
|
22770
|
+
const handleListening = () => {
|
|
22771
|
+
server.off("error", handleError);
|
|
22772
|
+
resolve();
|
|
22773
|
+
};
|
|
22774
|
+
server.once("error", handleError);
|
|
22775
|
+
server.once("listening", handleListening);
|
|
22776
|
+
server.listen(port, host);
|
|
22777
|
+
});
|
|
22778
|
+
selectedPort = port;
|
|
22779
|
+
break;
|
|
22780
|
+
} catch (error40) {
|
|
22781
|
+
if (!(error40 instanceof Error && "code" in error40 && error40.code === "EADDRINUSE")) {
|
|
22782
|
+
throw error40;
|
|
22783
|
+
}
|
|
22784
|
+
}
|
|
22785
|
+
}
|
|
22786
|
+
if (!server.listening) {
|
|
22787
|
+
throw new Error(
|
|
22788
|
+
`Could not find an available port on ${host} starting at ${requestedPort}.`
|
|
22789
|
+
);
|
|
22790
|
+
}
|
|
22791
|
+
}
|
|
22754
22792
|
const address = resolveAddress(server.address(), host);
|
|
22755
22793
|
return {
|
|
22756
22794
|
server,
|
package/dist/cli.js
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
resolveAuthFileCandidates,
|
|
6
6
|
resolveOpenAIOAuthModels,
|
|
7
7
|
startOpenAIOAuthServer
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-2AENSHRT.js";
|
|
9
9
|
|
|
10
10
|
// src/cli-app.ts
|
|
11
11
|
import { access } from "fs/promises";
|
|
@@ -15,7 +15,7 @@ import { hideBin } from "yargs/helpers";
|
|
|
15
15
|
// package.json
|
|
16
16
|
var package_default = {
|
|
17
17
|
name: "openai-oauth",
|
|
18
|
-
version: "1.0.
|
|
18
|
+
version: "1.0.2",
|
|
19
19
|
description: "Free OpenAI API access with your ChatGPT account.",
|
|
20
20
|
type: "module",
|
|
21
21
|
bin: {
|
|
@@ -33,16 +33,17 @@ var package_default = {
|
|
|
33
33
|
scripts: {
|
|
34
34
|
build: "tsup src/index.ts src/cli.ts --format esm --dts --outDir dist --clean",
|
|
35
35
|
dev: "bun ./src/cli.ts",
|
|
36
|
+
prepublishOnly: "bun run build",
|
|
36
37
|
typecheck: "tsc --noEmit",
|
|
37
38
|
test: "vitest run",
|
|
38
39
|
"test:live": "LIVE_CODEX_E2E=1 vitest run test/live.e2e.test.ts"
|
|
39
40
|
},
|
|
40
41
|
dependencies: {
|
|
41
|
-
ai: "6.0.
|
|
42
|
+
ai: "6.0.116",
|
|
42
43
|
yargs: "^17.7.2"
|
|
43
44
|
},
|
|
44
45
|
devDependencies: {
|
|
45
|
-
"@ai-sdk/openai": "3.0.
|
|
46
|
+
"@ai-sdk/openai": "3.0.41",
|
|
46
47
|
"@types/node": "20.17.24",
|
|
47
48
|
"@types/yargs": "^17.0.33",
|
|
48
49
|
"openai-oauth-core": "workspace:*",
|
|
@@ -319,6 +320,12 @@ var runCli = async (argv = hideBin(process.argv)) => {
|
|
|
319
320
|
}
|
|
320
321
|
);
|
|
321
322
|
const server = await startOpenAIOAuthServer(options);
|
|
323
|
+
if ((options.port ?? DEFAULT_PORT) !== server.port) {
|
|
324
|
+
console.log(
|
|
325
|
+
`Port ${options.port ?? DEFAULT_PORT} was unavailable. Using port ${server.port} instead.
|
|
326
|
+
`
|
|
327
|
+
);
|
|
328
|
+
}
|
|
322
329
|
console.log(
|
|
323
330
|
toStartupMessage(
|
|
324
331
|
`http://${server.host}:${server.port}/v1`,
|
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openai-oauth",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Free OpenAI API access with your ChatGPT account.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -18,16 +18,17 @@
|
|
|
18
18
|
"scripts": {
|
|
19
19
|
"build": "tsup src/index.ts src/cli.ts --format esm --dts --outDir dist --clean",
|
|
20
20
|
"dev": "bun ./src/cli.ts",
|
|
21
|
+
"prepublishOnly": "bun run build",
|
|
21
22
|
"typecheck": "tsc --noEmit",
|
|
22
23
|
"test": "vitest run",
|
|
23
24
|
"test:live": "LIVE_CODEX_E2E=1 vitest run test/live.e2e.test.ts"
|
|
24
25
|
},
|
|
25
26
|
"dependencies": {
|
|
26
|
-
"ai": "6.0.
|
|
27
|
+
"ai": "6.0.116",
|
|
27
28
|
"yargs": "^17.7.2"
|
|
28
29
|
},
|
|
29
30
|
"devDependencies": {
|
|
30
|
-
"@ai-sdk/openai": "3.0.
|
|
31
|
+
"@ai-sdk/openai": "3.0.41",
|
|
31
32
|
"@types/node": "20.17.24",
|
|
32
33
|
"@types/yargs": "^17.0.33",
|
|
33
34
|
"openai-oauth-core": "workspace:*",
|