pi-free 2.2.4 → 2.2.6
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/CHANGELOG.md +24 -0
- package/README.md +1 -1
- package/banner.svg +1 -1
- package/config.ts +58 -29
- package/constants.ts +1 -4
- package/index.ts +30 -24
- package/lib/built-in-toggle.ts +185 -18
- package/lib/provider-cache.ts +22 -0
- package/package.json +74 -74
- package/provider-failover/benchmark-lookup.ts +4 -1
- package/provider-failover/benchmarks-chunk-0.ts +570 -570
- package/provider-failover/benchmarks-chunk-1.ts +676 -676
- package/provider-failover/benchmarks-chunk-2.ts +673 -673
- package/provider-failover/benchmarks-chunk-3.ts +680 -680
- package/provider-failover/benchmarks-chunk-4.ts +683 -683
- package/provider-failover/benchmarks-chunk-5.ts +816 -474
- package/provider-helper.ts +64 -0
- package/providers/bai/bai.ts +8 -2
- package/providers/crofai/crofai.ts +8 -2
- package/providers/deepinfra/deepinfra.ts +8 -2
- package/providers/dynamic-built-in/index.ts +36 -26
- package/providers/kilo/kilo.ts +41 -22
- package/providers/novita/novita.ts +8 -2
- package/providers/openmodel/openmodel.ts +8 -2
- package/providers/qoder/models.ts +63 -175
- package/providers/qoder/qoder.ts +49 -84
- package/providers/qoder/stream.ts +182 -274
- package/providers/qoder/transform.ts +5 -2
- package/providers/routeway/routeway.ts +8 -2
- package/providers/sambanova/sambanova.ts +12 -6
- package/providers/together/together.ts +8 -2
- package/providers/tokenrouter/tokenrouter.ts +8 -2
- package/providers/zenmux/zenmux.ts +8 -2
- package/providers/codestral/codestral.ts +0 -128
- package/providers/qoder/encoding.ts +0 -48
package/package.json
CHANGED
|
@@ -1,74 +1,74 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "pi-free",
|
|
3
|
-
"version": "2.2.
|
|
4
|
-
"type": "module",
|
|
5
|
-
"description": "AI model providers for Pi with free model filtering and dynamic model fetching",
|
|
6
|
-
"keywords": [
|
|
7
|
-
"pi-package",
|
|
8
|
-
"pi-extension",
|
|
9
|
-
"free-models",
|
|
10
|
-
"paid-models",
|
|
11
|
-
"model-filter",
|
|
12
|
-
"nvidia-nim",
|
|
13
|
-
"kilo",
|
|
14
|
-
"cline",
|
|
15
|
-
"zenmux",
|
|
16
|
-
"crofai",
|
|
17
|
-
"ollama-cloud"
|
|
18
|
-
],
|
|
19
|
-
"license": "MIT",
|
|
20
|
-
"author": "Apostolos Mantzaris",
|
|
21
|
-
"homepage": "https://github.com/apmantza/pi-free#readme",
|
|
22
|
-
"bugs": {
|
|
23
|
-
"url": "https://github.com/apmantza/pi-free/issues"
|
|
24
|
-
},
|
|
25
|
-
"repository": {
|
|
26
|
-
"type": "git",
|
|
27
|
-
"url": "git+https://github.com/apmantza/pi-free.git"
|
|
28
|
-
},
|
|
29
|
-
"engines": {
|
|
30
|
-
"node": ">=20.0.0"
|
|
31
|
-
},
|
|
32
|
-
"files": [
|
|
33
|
-
"index.ts",
|
|
34
|
-
"providers/**/*.ts",
|
|
35
|
-
"lib/**/*.ts",
|
|
36
|
-
"provider-failover/**/*.ts",
|
|
37
|
-
"config.ts",
|
|
38
|
-
"constants.ts",
|
|
39
|
-
"provider-helper.ts",
|
|
40
|
-
"README.md",
|
|
41
|
-
"LICENSE",
|
|
42
|
-
"CHANGELOG.md",
|
|
43
|
-
"banner.svg",
|
|
44
|
-
"scripts/check-extensions.mjs"
|
|
45
|
-
],
|
|
46
|
-
"scripts": {
|
|
47
|
-
"audit:prod": "npm audit --omit=dev --audit-level=high",
|
|
48
|
-
"check": "node scripts/check-extensions.mjs",
|
|
49
|
-
"check:lockfile": "node scripts/check-lockfile-sync.mjs",
|
|
50
|
-
"check:tarball": "node scripts/check-tarball.mjs",
|
|
51
|
-
"lint": "tsc --noEmit",
|
|
52
|
-
"test": "vitest",
|
|
53
|
-
"test:ui": "vitest --ui",
|
|
54
|
-
"test:run": "vitest run",
|
|
55
|
-
"smoke:cline": "tsx scripts/smoke-cline-xml-bridge.ts",
|
|
56
|
-
"smoke:openmodel": "tsx scripts/smoke-openmodel-wire-format.ts"
|
|
57
|
-
},
|
|
58
|
-
"peerDependencies": {
|
|
59
|
-
"@earendil-works/pi-ai": "^0.79.8",
|
|
60
|
-
"@earendil-works/pi-coding-agent": "^0.79.8",
|
|
61
|
-
"@earendil-works/pi-tui": "^0.79.8"
|
|
62
|
-
},
|
|
63
|
-
"devDependencies": {
|
|
64
|
-
"@vitest/ui": "^4.1.5",
|
|
65
|
-
"tsx": "^4.0.0",
|
|
66
|
-
"typescript": "^6.0.3",
|
|
67
|
-
"vitest": "^4.1.5"
|
|
68
|
-
},
|
|
69
|
-
"pi": {
|
|
70
|
-
"extensions": [
|
|
71
|
-
"./index.ts"
|
|
72
|
-
]
|
|
73
|
-
}
|
|
74
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "pi-free",
|
|
3
|
+
"version": "2.2.6",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"description": "AI model providers for Pi with free model filtering and dynamic model fetching",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"pi-package",
|
|
8
|
+
"pi-extension",
|
|
9
|
+
"free-models",
|
|
10
|
+
"paid-models",
|
|
11
|
+
"model-filter",
|
|
12
|
+
"nvidia-nim",
|
|
13
|
+
"kilo",
|
|
14
|
+
"cline",
|
|
15
|
+
"zenmux",
|
|
16
|
+
"crofai",
|
|
17
|
+
"ollama-cloud"
|
|
18
|
+
],
|
|
19
|
+
"license": "MIT",
|
|
20
|
+
"author": "Apostolos Mantzaris",
|
|
21
|
+
"homepage": "https://github.com/apmantza/pi-free#readme",
|
|
22
|
+
"bugs": {
|
|
23
|
+
"url": "https://github.com/apmantza/pi-free/issues"
|
|
24
|
+
},
|
|
25
|
+
"repository": {
|
|
26
|
+
"type": "git",
|
|
27
|
+
"url": "git+https://github.com/apmantza/pi-free.git"
|
|
28
|
+
},
|
|
29
|
+
"engines": {
|
|
30
|
+
"node": ">=20.0.0"
|
|
31
|
+
},
|
|
32
|
+
"files": [
|
|
33
|
+
"index.ts",
|
|
34
|
+
"providers/**/*.ts",
|
|
35
|
+
"lib/**/*.ts",
|
|
36
|
+
"provider-failover/**/*.ts",
|
|
37
|
+
"config.ts",
|
|
38
|
+
"constants.ts",
|
|
39
|
+
"provider-helper.ts",
|
|
40
|
+
"README.md",
|
|
41
|
+
"LICENSE",
|
|
42
|
+
"CHANGELOG.md",
|
|
43
|
+
"banner.svg",
|
|
44
|
+
"scripts/check-extensions.mjs"
|
|
45
|
+
],
|
|
46
|
+
"scripts": {
|
|
47
|
+
"audit:prod": "npm audit --omit=dev --audit-level=high",
|
|
48
|
+
"check": "node scripts/check-extensions.mjs",
|
|
49
|
+
"check:lockfile": "node scripts/check-lockfile-sync.mjs",
|
|
50
|
+
"check:tarball": "node scripts/check-tarball.mjs",
|
|
51
|
+
"lint": "tsc --noEmit",
|
|
52
|
+
"test": "vitest",
|
|
53
|
+
"test:ui": "vitest --ui",
|
|
54
|
+
"test:run": "vitest run",
|
|
55
|
+
"smoke:cline": "tsx scripts/smoke-cline-xml-bridge.ts",
|
|
56
|
+
"smoke:openmodel": "tsx scripts/smoke-openmodel-wire-format.ts"
|
|
57
|
+
},
|
|
58
|
+
"peerDependencies": {
|
|
59
|
+
"@earendil-works/pi-ai": "^0.79.8",
|
|
60
|
+
"@earendil-works/pi-coding-agent": "^0.79.8",
|
|
61
|
+
"@earendil-works/pi-tui": "^0.79.8"
|
|
62
|
+
},
|
|
63
|
+
"devDependencies": {
|
|
64
|
+
"@vitest/ui": "^4.1.5",
|
|
65
|
+
"tsx": "^4.0.0",
|
|
66
|
+
"typescript": "^6.0.3",
|
|
67
|
+
"vitest": "^4.1.5"
|
|
68
|
+
},
|
|
69
|
+
"pi": {
|
|
70
|
+
"extensions": [
|
|
71
|
+
"./index.ts"
|
|
72
|
+
]
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -27,7 +27,10 @@ export { HARDCODED_BENCHMARKS, type HardcodedBenchmark };
|
|
|
27
27
|
|
|
28
28
|
const LOG_DIR = join(homedir(), ".pi");
|
|
29
29
|
const LOG_FILE = join(LOG_DIR, "modelmatch.log");
|
|
30
|
-
|
|
30
|
+
// Debug logging writes one sync appendFileSync per model per attempt — far too
|
|
31
|
+
// expensive to leave on during startup (hundreds–thousands of blocking writes).
|
|
32
|
+
// Opt in via PI_FREE_BENCHMARK_DEBUG=1 (or setDebugLogging(true)).
|
|
33
|
+
let debugEnabled = process.env.PI_FREE_BENCHMARK_DEBUG === "1";
|
|
31
34
|
|
|
32
35
|
/**
|
|
33
36
|
* Enable/disable debug logging
|