pi-umans-provider 1.0.9 → 1.0.11
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 +7 -2
- package/deprecated-models.json +34 -0
- package/models.json +15 -14
- package/package.json +1 -1
- package/scripts/update-models.js +26 -1
package/README.md
CHANGED
|
@@ -29,11 +29,16 @@ _A [pi](https://github.com/earendil-works/pi-coding-agent) provider extension wi
|
|
|
29
29
|
|-------|------|---------|--------|-----------|------------|
|
|
30
30
|
| Coder | Kimi K2.7-Code | 262K | ✅ | ✅ | 33K |
|
|
31
31
|
| DeepSeek V4 Flash | DeepSeek-V4-Flash | 1.0M | ❌ | ✅ | 393K |
|
|
32
|
-
| DeepSeek V4
|
|
32
|
+
| DeepSeek V4 Flash (lab) | — | 1.0M | ❌ | ✅ | 393K |
|
|
33
|
+
| DeepSeek V4 Flash Vision (lab) | — | 1.0M | ✅ | ✅ | 393K |
|
|
34
|
+
| DeepSeek V4 Pro | DeepSeek-V4-Pro-0813 | 1.0M | ❌ | ✅ | 393K |
|
|
35
|
+
| DeepSeek V4 Pro 0813 (lab) | — | 1.0M | ❌ | ✅ | 393K |
|
|
33
36
|
| Flash | Qwen3.6-35B-A3B | 262K | ✅ | ✅ | 33K |
|
|
34
|
-
| GLM 5.2 |
|
|
37
|
+
| GLM 5.2 | — | 406K | ❌ | ✅ | 131K |
|
|
38
|
+
| Kimi K2.7 Code | — | 262K | ✅ | ✅ | 33K |
|
|
35
39
|
| Kimi K3 | Kimi K3 | 1.0M | ✅ | ✅ | 131K |
|
|
36
40
|
| Qwen3.6 35B A3B | Qwen3.6-35B-A3B | 262K | ✅ | ✅ | 33K |
|
|
41
|
+
| Qwen3.8 27B (lab) | Qwen3.8-27B | 262K | ✅ | ✅ | 131K |
|
|
37
42
|
|
|
38
43
|
> **Note:** `umans-flash-beta` is deprecated (sunset 2026-06-07). Use `umans-flash` instead.
|
|
39
44
|
> `umans-qwen3.6-35b-a3b` is a technical alias for `umans-flash`.
|
package/deprecated-models.json
CHANGED
|
@@ -51,5 +51,39 @@
|
|
|
51
51
|
"contextWindow": 1048576,
|
|
52
52
|
"maxTokens": 393215,
|
|
53
53
|
"deprecatedAt": "2026-08-14T02:00:18.070Z"
|
|
54
|
+
},
|
|
55
|
+
"umans-deepseek-v4-pro-0813-lab": {
|
|
56
|
+
"id": "umans-deepseek-v4-pro-0813-lab",
|
|
57
|
+
"name": "Umans DeepSeek V4 Pro 0813 (lab)",
|
|
58
|
+
"reasoning": true,
|
|
59
|
+
"input": [
|
|
60
|
+
"text"
|
|
61
|
+
],
|
|
62
|
+
"cost": {
|
|
63
|
+
"input": 0,
|
|
64
|
+
"output": 0,
|
|
65
|
+
"cacheRead": 0,
|
|
66
|
+
"cacheWrite": 0
|
|
67
|
+
},
|
|
68
|
+
"contextWindow": 1048576,
|
|
69
|
+
"maxTokens": 393215,
|
|
70
|
+
"deprecatedAt": "2026-08-16T02:00:14.127Z"
|
|
71
|
+
},
|
|
72
|
+
"umans-glm-5.2": {
|
|
73
|
+
"id": "umans-glm-5.2",
|
|
74
|
+
"name": "Umans GLM 5.2",
|
|
75
|
+
"reasoning": true,
|
|
76
|
+
"input": [
|
|
77
|
+
"text"
|
|
78
|
+
],
|
|
79
|
+
"cost": {
|
|
80
|
+
"input": 0,
|
|
81
|
+
"output": 0,
|
|
82
|
+
"cacheRead": 0,
|
|
83
|
+
"cacheWrite": 0
|
|
84
|
+
},
|
|
85
|
+
"contextWindow": 405504,
|
|
86
|
+
"maxTokens": 131071,
|
|
87
|
+
"deprecatedAt": "2026-08-16T02:00:14.127Z"
|
|
54
88
|
}
|
|
55
89
|
}
|
package/models.json
CHANGED
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
"maxTokens": 393215
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
|
-
"id": "umans-deepseek-v4-pro-0813
|
|
37
|
-
"name": "Umans DeepSeek V4 Pro
|
|
36
|
+
"id": "umans-deepseek-v4-pro-0813",
|
|
37
|
+
"name": "Umans DeepSeek V4 Pro",
|
|
38
38
|
"reasoning": true,
|
|
39
39
|
"input": [
|
|
40
40
|
"text"
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"cacheRead": 0,
|
|
46
46
|
"cacheWrite": 0
|
|
47
47
|
},
|
|
48
|
-
"contextWindow":
|
|
48
|
+
"contextWindow": 1048576,
|
|
49
49
|
"maxTokens": 393215
|
|
50
50
|
},
|
|
51
51
|
{
|
|
@@ -66,11 +66,12 @@
|
|
|
66
66
|
"maxTokens": 32768
|
|
67
67
|
},
|
|
68
68
|
{
|
|
69
|
-
"id": "umans-
|
|
70
|
-
"name": "Umans
|
|
69
|
+
"id": "umans-kimi-k3",
|
|
70
|
+
"name": "Umans Kimi K3",
|
|
71
71
|
"reasoning": true,
|
|
72
72
|
"input": [
|
|
73
|
-
"text"
|
|
73
|
+
"text",
|
|
74
|
+
"image"
|
|
74
75
|
],
|
|
75
76
|
"cost": {
|
|
76
77
|
"input": 0,
|
|
@@ -78,12 +79,12 @@
|
|
|
78
79
|
"cacheRead": 0,
|
|
79
80
|
"cacheWrite": 0
|
|
80
81
|
},
|
|
81
|
-
"contextWindow":
|
|
82
|
+
"contextWindow": 1048576,
|
|
82
83
|
"maxTokens": 131071
|
|
83
84
|
},
|
|
84
85
|
{
|
|
85
|
-
"id": "umans-
|
|
86
|
-
"name": "Umans
|
|
86
|
+
"id": "umans-qwen3.6-35b-a3b",
|
|
87
|
+
"name": "Umans Qwen3.6 35B A3B",
|
|
87
88
|
"reasoning": true,
|
|
88
89
|
"input": [
|
|
89
90
|
"text",
|
|
@@ -95,12 +96,12 @@
|
|
|
95
96
|
"cacheRead": 0,
|
|
96
97
|
"cacheWrite": 0
|
|
97
98
|
},
|
|
98
|
-
"contextWindow":
|
|
99
|
-
"maxTokens":
|
|
99
|
+
"contextWindow": 262144,
|
|
100
|
+
"maxTokens": 32768
|
|
100
101
|
},
|
|
101
102
|
{
|
|
102
|
-
"id": "umans-qwen3.
|
|
103
|
-
"name": "Umans Qwen3.
|
|
103
|
+
"id": "umans-qwen3.8-27b-lab",
|
|
104
|
+
"name": "Umans Qwen3.8 27B (lab)",
|
|
104
105
|
"reasoning": true,
|
|
105
106
|
"input": [
|
|
106
107
|
"text",
|
|
@@ -113,6 +114,6 @@
|
|
|
113
114
|
"cacheWrite": 0
|
|
114
115
|
},
|
|
115
116
|
"contextWindow": 262144,
|
|
116
|
-
"maxTokens":
|
|
117
|
+
"maxTokens": 131071
|
|
117
118
|
}
|
|
118
119
|
]
|
package/package.json
CHANGED
package/scripts/update-models.js
CHANGED
|
@@ -215,6 +215,31 @@ function updateDeprecatedModels(modelsJsonPath, newModels) {
|
|
|
215
215
|
}
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
+
/**
|
|
219
|
+
* Grace-period deprecated models (deprecatedAt within TTL) with metadata stripped.
|
|
220
|
+
* Keeps the README table serving models that are delisted but still within their
|
|
221
|
+
* 14-day grace window.
|
|
222
|
+
*/
|
|
223
|
+
function withDeprecatedForReadme(models) {
|
|
224
|
+
const deprecatedPath = path.join(path.dirname(MODELS_JSON_PATH), 'deprecated-models.json');
|
|
225
|
+
let deprecated = {};
|
|
226
|
+
try {
|
|
227
|
+
const parsed = JSON.parse(fs.readFileSync(deprecatedPath, 'utf8'));
|
|
228
|
+
if (parsed && typeof parsed === 'object' && !Array.isArray(parsed)) deprecated = parsed;
|
|
229
|
+
} catch { /* no graveyard yet */ }
|
|
230
|
+
const now = Date.now();
|
|
231
|
+
const seen = new Set(models.map(m => m.id));
|
|
232
|
+
const extras = [];
|
|
233
|
+
for (const entry of Object.values(deprecated)) {
|
|
234
|
+
if (!entry || !entry.id || seen.has(entry.id)) continue;
|
|
235
|
+
const removedAt = Date.parse(entry.deprecatedAt || '');
|
|
236
|
+
if (Number.isNaN(removedAt) || now - removedAt > DEPRECATED_MODEL_TTL_MS) continue;
|
|
237
|
+
const m = { ...entry };
|
|
238
|
+
delete m.deprecatedAt;
|
|
239
|
+
extras.push(m);
|
|
240
|
+
}
|
|
241
|
+
return extras.length > 0 ? [...models, ...extras] : models;
|
|
242
|
+
}
|
|
218
243
|
async function main() {
|
|
219
244
|
console.log(`Fetching models from ${MODELS_INFO_API_URL}...`);
|
|
220
245
|
|
|
@@ -291,7 +316,7 @@ async function main() {
|
|
|
291
316
|
|
|
292
317
|
// Build full model list for README: base → patch → custom
|
|
293
318
|
const customModels = loadJson(CUSTOM_MODELS_JSON_PATH);
|
|
294
|
-
const readmeModels = buildModels(apiTransformed, Array.isArray(customModels) ? customModels : [], patch);
|
|
319
|
+
const readmeModels = buildModels(withDeprecatedForReadme(apiTransformed), Array.isArray(customModels) ? customModels : [], patch);
|
|
295
320
|
readmeModels.sort((a, b) => a.name.localeCompare(b.name));
|
|
296
321
|
console.log("✓ Built model list (base → patch → custom) for README");
|
|
297
322
|
|