opencode-openai-codex-auth-multi 4.3.0-multiaccount.1 → 4.3.1
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/LICENSE +37 -37
- package/README.md +461 -79
- package/assets/opencode-logo-ornate-dark.svg +18 -18
- package/assets/readme-hero.svg +31 -31
- package/config/README.md +98 -98
- package/config/minimal-opencode.json +11 -11
- package/config/opencode-legacy.json +568 -568
- package/config/opencode-modern.json +236 -236
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +368 -133
- package/dist/index.js.map +1 -1
- package/dist/lib/accounts.d.ts +78 -11
- package/dist/lib/accounts.d.ts.map +1 -1
- package/dist/lib/accounts.js +303 -66
- package/dist/lib/accounts.js.map +1 -1
- package/dist/lib/auth/auth.d.ts.map +1 -1
- package/dist/lib/auth/auth.js +19 -12
- package/dist/lib/auth/auth.js.map +1 -1
- package/dist/lib/auth/browser.d.ts.map +1 -1
- package/dist/lib/auth/browser.js +9 -2
- package/dist/lib/auth/browser.js.map +1 -1
- package/dist/lib/auth/server.d.ts.map +1 -1
- package/dist/lib/auth/server.js +11 -4
- package/dist/lib/auth/server.js.map +1 -1
- package/dist/lib/cli.d.ts +1 -0
- package/dist/lib/cli.d.ts.map +1 -1
- package/dist/lib/cli.js +10 -6
- package/dist/lib/cli.js.map +1 -1
- package/dist/lib/config.d.ts +5 -7
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +49 -6
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/constants.d.ts +7 -0
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +7 -0
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/index.d.ts +13 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +13 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/oauth-success.html +712 -712
- package/dist/lib/prompts/codex-opencode-bridge.js +121 -121
- package/dist/lib/prompts/codex.d.ts +5 -0
- package/dist/lib/prompts/codex.d.ts.map +1 -1
- package/dist/lib/prompts/codex.js +114 -93
- package/dist/lib/prompts/codex.js.map +1 -1
- package/dist/lib/request/fetch-helpers.d.ts +2 -3
- package/dist/lib/request/fetch-helpers.d.ts.map +1 -1
- package/dist/lib/request/fetch-helpers.js +24 -27
- package/dist/lib/request/fetch-helpers.js.map +1 -1
- package/dist/lib/request/rate-limit-backoff.d.ts +13 -0
- package/dist/lib/request/rate-limit-backoff.d.ts.map +1 -0
- package/dist/lib/request/rate-limit-backoff.js +54 -0
- package/dist/lib/request/rate-limit-backoff.js.map +1 -0
- package/dist/lib/request/request-transformer.d.ts.map +1 -1
- package/dist/lib/request/request-transformer.js +3 -2
- package/dist/lib/request/request-transformer.js.map +1 -1
- package/dist/lib/request/response-handler.js +1 -1
- package/dist/lib/request/response-handler.js.map +1 -1
- package/dist/lib/storage.d.ts +72 -4
- package/dist/lib/storage.d.ts.map +1 -1
- package/dist/lib/storage.js +189 -19
- package/dist/lib/storage.js.map +1 -1
- package/dist/lib/types.d.ts +37 -1
- package/dist/lib/types.d.ts.map +1 -1
- package/package.json +85 -71
- package/scripts/install-opencode-codex-auth.js +191 -191
- package/scripts/test-all-models.sh +258 -258
- package/scripts/validate-model-map.sh +97 -97
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# Simple Model Map Validation Script
|
|
4
|
-
# Tests that OpenCode correctly uses models from config
|
|
5
|
-
|
|
6
|
-
set -e
|
|
7
|
-
|
|
8
|
-
# Colors
|
|
9
|
-
GREEN='\033[0;32m'
|
|
10
|
-
RED='\033[0;31m'
|
|
11
|
-
YELLOW='\033[1;33m'
|
|
12
|
-
BLUE='\033[0;34m'
|
|
13
|
-
NC='\033[0m'
|
|
14
|
-
|
|
15
|
-
REPO_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
16
|
-
LOG_DIR="${HOME}/.opencode/logs/codex-plugin"
|
|
17
|
-
|
|
18
|
-
echo -e "${BLUE}════════════════════════════════════════════${NC}"
|
|
19
|
-
echo -e "${BLUE} Model Map Validation${NC}"
|
|
20
|
-
echo -e "${BLUE}════════════════════════════════════════════${NC}"
|
|
21
|
-
echo ""
|
|
22
|
-
|
|
23
|
-
# Test 1: Model that IS in the config (should work)
|
|
24
|
-
echo -e "${YELLOW}Test 1: Model IN config (gpt-5.1-codex-low)${NC}"
|
|
25
|
-
rm -rf "${LOG_DIR}"/*
|
|
26
|
-
|
|
27
|
-
cd "${REPO_DIR}"
|
|
28
|
-
if ENABLE_PLUGIN_REQUEST_LOGGING=1 opencode run "say hello" --model="openai/gpt-5.1-codex-low" > /dev/null 2>&1; then
|
|
29
|
-
# Check the log - find the one for gpt-5.1-codex-low specifically
|
|
30
|
-
log_file=$(find "${LOG_DIR}" -name "*-after-transform.json" -exec grep -l "gpt-5.1-codex-low" {} \; | head -n 1)
|
|
31
|
-
|
|
32
|
-
if [ -f "${log_file}" ]; then
|
|
33
|
-
original=$(jq -r '.originalModel // "N/A"' "${log_file}")
|
|
34
|
-
normalized=$(jq -r '.normalizedModel // "N/A"' "${log_file}")
|
|
35
|
-
|
|
36
|
-
echo -e " Original: ${original}"
|
|
37
|
-
echo -e " Normalized: ${normalized}"
|
|
38
|
-
|
|
39
|
-
if [ "${normalized}" == "gpt-5.1-codex" ]; then
|
|
40
|
-
echo -e " ${GREEN}✓ PASS - Correctly normalized to gpt-5.1-codex${NC}"
|
|
41
|
-
else
|
|
42
|
-
echo -e " ${RED}✗ FAIL - Expected gpt-5.1-codex, got ${normalized}${NC}"
|
|
43
|
-
exit 1
|
|
44
|
-
fi
|
|
45
|
-
else
|
|
46
|
-
echo -e " ${RED}✗ FAIL - No log file found${NC}"
|
|
47
|
-
exit 1
|
|
48
|
-
fi
|
|
49
|
-
else
|
|
50
|
-
echo -e " ${RED}✗ FAIL - Command failed${NC}"
|
|
51
|
-
exit 1
|
|
52
|
-
fi
|
|
53
|
-
|
|
54
|
-
echo ""
|
|
55
|
-
|
|
56
|
-
# Test 2: Model that is NOT in the config (should error or use fallback)
|
|
57
|
-
echo -e "${YELLOW}Test 2: Model NOT in config (fake-model-xyz)${NC}"
|
|
58
|
-
rm -rf "${LOG_DIR}"/*
|
|
59
|
-
|
|
60
|
-
if ENABLE_PLUGIN_REQUEST_LOGGING=1 opencode run "write test" --model="openai/fake-model-xyz" > /dev/null 2>&1; then
|
|
61
|
-
log_file=$(find "${LOG_DIR}" -name "*-after-transform.json" | head -n 1)
|
|
62
|
-
|
|
63
|
-
if [ -f "${log_file}" ]; then
|
|
64
|
-
original=$(jq -r '.originalModel // "N/A"' "${log_file}")
|
|
65
|
-
normalized=$(jq -r '.normalizedModel // "N/A"' "${log_file}")
|
|
66
|
-
|
|
67
|
-
echo -e " Original: ${original}"
|
|
68
|
-
echo -e " Normalized: ${normalized}"
|
|
69
|
-
echo -e " ${GREEN}✓ Command succeeded (using fallback: ${normalized})${NC}"
|
|
70
|
-
else
|
|
71
|
-
echo -e " ${YELLOW}⚠ No log file (expected - model not in config)${NC}"
|
|
72
|
-
fi
|
|
73
|
-
else
|
|
74
|
-
echo -e " ${YELLOW}⚠ Command failed (expected - model not in config)${NC}"
|
|
75
|
-
fi
|
|
76
|
-
|
|
77
|
-
echo ""
|
|
78
|
-
|
|
79
|
-
# Test 3: Verify config location
|
|
80
|
-
echo -e "${YELLOW}Test 3: Verify config file location${NC}"
|
|
81
|
-
if [ -f "${REPO_DIR}/opencode.json" ]; then
|
|
82
|
-
plugin_path=$(jq -r '.plugin[0]' "${REPO_DIR}/opencode.json")
|
|
83
|
-
model_count=$(jq '.provider.openai.models | length' "${REPO_DIR}/opencode.json")
|
|
84
|
-
|
|
85
|
-
echo -e " Config file: ${REPO_DIR}/opencode.json"
|
|
86
|
-
echo -e " Plugin path: ${plugin_path}"
|
|
87
|
-
echo -e " Models defined: ${model_count}"
|
|
88
|
-
echo -e " ${GREEN}✓ Config file found and valid${NC}"
|
|
89
|
-
else
|
|
90
|
-
echo -e " ${RED}✗ No opencode.json in repo directory${NC}"
|
|
91
|
-
exit 1
|
|
92
|
-
fi
|
|
93
|
-
|
|
94
|
-
echo ""
|
|
95
|
-
echo -e "${GREEN}════════════════════════════════════════════${NC}"
|
|
96
|
-
echo -e "${GREEN} All validation tests passed!${NC}"
|
|
97
|
-
echo -e "${GREEN}════════════════════════════════════════════${NC}"
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# Simple Model Map Validation Script
|
|
4
|
+
# Tests that OpenCode correctly uses models from config
|
|
5
|
+
|
|
6
|
+
set -e
|
|
7
|
+
|
|
8
|
+
# Colors
|
|
9
|
+
GREEN='\033[0;32m'
|
|
10
|
+
RED='\033[0;31m'
|
|
11
|
+
YELLOW='\033[1;33m'
|
|
12
|
+
BLUE='\033[0;34m'
|
|
13
|
+
NC='\033[0m'
|
|
14
|
+
|
|
15
|
+
REPO_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
16
|
+
LOG_DIR="${HOME}/.opencode/logs/codex-plugin"
|
|
17
|
+
|
|
18
|
+
echo -e "${BLUE}════════════════════════════════════════════${NC}"
|
|
19
|
+
echo -e "${BLUE} Model Map Validation${NC}"
|
|
20
|
+
echo -e "${BLUE}════════════════════════════════════════════${NC}"
|
|
21
|
+
echo ""
|
|
22
|
+
|
|
23
|
+
# Test 1: Model that IS in the config (should work)
|
|
24
|
+
echo -e "${YELLOW}Test 1: Model IN config (gpt-5.1-codex-low)${NC}"
|
|
25
|
+
rm -rf "${LOG_DIR}"/*
|
|
26
|
+
|
|
27
|
+
cd "${REPO_DIR}"
|
|
28
|
+
if ENABLE_PLUGIN_REQUEST_LOGGING=1 opencode run "say hello" --model="openai/gpt-5.1-codex-low" > /dev/null 2>&1; then
|
|
29
|
+
# Check the log - find the one for gpt-5.1-codex-low specifically
|
|
30
|
+
log_file=$(find "${LOG_DIR}" -name "*-after-transform.json" -exec grep -l "gpt-5.1-codex-low" {} \; | head -n 1)
|
|
31
|
+
|
|
32
|
+
if [ -f "${log_file}" ]; then
|
|
33
|
+
original=$(jq -r '.originalModel // "N/A"' "${log_file}")
|
|
34
|
+
normalized=$(jq -r '.normalizedModel // "N/A"' "${log_file}")
|
|
35
|
+
|
|
36
|
+
echo -e " Original: ${original}"
|
|
37
|
+
echo -e " Normalized: ${normalized}"
|
|
38
|
+
|
|
39
|
+
if [ "${normalized}" == "gpt-5.1-codex" ]; then
|
|
40
|
+
echo -e " ${GREEN}✓ PASS - Correctly normalized to gpt-5.1-codex${NC}"
|
|
41
|
+
else
|
|
42
|
+
echo -e " ${RED}✗ FAIL - Expected gpt-5.1-codex, got ${normalized}${NC}"
|
|
43
|
+
exit 1
|
|
44
|
+
fi
|
|
45
|
+
else
|
|
46
|
+
echo -e " ${RED}✗ FAIL - No log file found${NC}"
|
|
47
|
+
exit 1
|
|
48
|
+
fi
|
|
49
|
+
else
|
|
50
|
+
echo -e " ${RED}✗ FAIL - Command failed${NC}"
|
|
51
|
+
exit 1
|
|
52
|
+
fi
|
|
53
|
+
|
|
54
|
+
echo ""
|
|
55
|
+
|
|
56
|
+
# Test 2: Model that is NOT in the config (should error or use fallback)
|
|
57
|
+
echo -e "${YELLOW}Test 2: Model NOT in config (fake-model-xyz)${NC}"
|
|
58
|
+
rm -rf "${LOG_DIR}"/*
|
|
59
|
+
|
|
60
|
+
if ENABLE_PLUGIN_REQUEST_LOGGING=1 opencode run "write test" --model="openai/fake-model-xyz" > /dev/null 2>&1; then
|
|
61
|
+
log_file=$(find "${LOG_DIR}" -name "*-after-transform.json" | head -n 1)
|
|
62
|
+
|
|
63
|
+
if [ -f "${log_file}" ]; then
|
|
64
|
+
original=$(jq -r '.originalModel // "N/A"' "${log_file}")
|
|
65
|
+
normalized=$(jq -r '.normalizedModel // "N/A"' "${log_file}")
|
|
66
|
+
|
|
67
|
+
echo -e " Original: ${original}"
|
|
68
|
+
echo -e " Normalized: ${normalized}"
|
|
69
|
+
echo -e " ${GREEN}✓ Command succeeded (using fallback: ${normalized})${NC}"
|
|
70
|
+
else
|
|
71
|
+
echo -e " ${YELLOW}⚠ No log file (expected - model not in config)${NC}"
|
|
72
|
+
fi
|
|
73
|
+
else
|
|
74
|
+
echo -e " ${YELLOW}⚠ Command failed (expected - model not in config)${NC}"
|
|
75
|
+
fi
|
|
76
|
+
|
|
77
|
+
echo ""
|
|
78
|
+
|
|
79
|
+
# Test 3: Verify config location
|
|
80
|
+
echo -e "${YELLOW}Test 3: Verify config file location${NC}"
|
|
81
|
+
if [ -f "${REPO_DIR}/opencode.json" ]; then
|
|
82
|
+
plugin_path=$(jq -r '.plugin[0]' "${REPO_DIR}/opencode.json")
|
|
83
|
+
model_count=$(jq '.provider.openai.models | length' "${REPO_DIR}/opencode.json")
|
|
84
|
+
|
|
85
|
+
echo -e " Config file: ${REPO_DIR}/opencode.json"
|
|
86
|
+
echo -e " Plugin path: ${plugin_path}"
|
|
87
|
+
echo -e " Models defined: ${model_count}"
|
|
88
|
+
echo -e " ${GREEN}✓ Config file found and valid${NC}"
|
|
89
|
+
else
|
|
90
|
+
echo -e " ${RED}✗ No opencode.json in repo directory${NC}"
|
|
91
|
+
exit 1
|
|
92
|
+
fi
|
|
93
|
+
|
|
94
|
+
echo ""
|
|
95
|
+
echo -e "${GREEN}════════════════════════════════════════════${NC}"
|
|
96
|
+
echo -e "${GREEN} All validation tests passed!${NC}"
|
|
97
|
+
echo -e "${GREEN}════════════════════════════════════════════${NC}"
|