pi-parasail-provider 1.0.35 → 1.0.37

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.
@@ -0,0 +1,60 @@
1
+ name: Update models
2
+
3
+ on:
4
+ schedule:
5
+ - cron: "7 0 * * *" # 07:07 Asia/Ho_Chi_Minh
6
+ workflow_dispatch:
7
+
8
+ # Publishing uses npm Trusted Publishing (OIDC) bound to this workflow file, so
9
+ # no npm token is stored. A version pushed while publishing was unavailable is
10
+ # published by the next run that finds it missing from npm.
11
+ permissions:
12
+ contents: write
13
+ id-token: write
14
+
15
+ concurrency:
16
+ group: update-models
17
+ cancel-in-progress: false
18
+
19
+ jobs:
20
+ update:
21
+ runs-on: ubuntu-latest
22
+ timeout-minutes: 15
23
+ steps:
24
+ - uses: actions/checkout@v5
25
+
26
+ - uses: actions/setup-node@v5
27
+ with:
28
+ node-version: 24
29
+
30
+ - name: Fetch the model catalog
31
+ env:
32
+ PARASAIL_API_KEY: ${{ secrets.PARASAIL_API_KEY }}
33
+ run: node scripts/update-models.js
34
+
35
+ - name: Commit, bump and push
36
+ run: |
37
+ if git diff --quiet; then
38
+ echo "No model changes."
39
+ exit 0
40
+ fi
41
+ git config user.name "github-actions[bot]"
42
+ git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
43
+ git add -A
44
+ git commit -m "feat: update parasail models from API"
45
+ npm version patch --no-git-tag-version
46
+ version=$(node -p "require('./package.json').version")
47
+ git commit -am "chore(release): v$version"
48
+ git push origin HEAD:main
49
+
50
+ - name: Publish to npm if this version is missing
51
+ run: |
52
+ name=$(node -p "require('./package.json').name")
53
+ version=$(node -p "require('./package.json').version")
54
+ if npm view "$name@$version" version >/dev/null 2>&1; then
55
+ echo "$name@$version is already on npm."
56
+ exit 0
57
+ fi
58
+ # Trusted publishing needs npm 11.5.1 or newer.
59
+ npm install --global npm@latest
60
+ npm publish --access public --provenance
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.0.37
4
+
5
+ - Pin Pi SDK development dependencies to 1.2.0 while retaining wildcard host peers; verify real manifest loading, lifecycle and native/bundled Pi hosts offline.
6
+
3
7
  ## 1.0.35
4
8
 
5
9
  - Quiet startup sync: background revalidation (`/v1/models` plus the public pricing endpoint) runs only with an API key, only when the disk cache is older than 1 hour (`PI_PROVIDER_SYNC_TTL_MS`, `0` = always), missing, or fetched with a different key, and only in one pi process at a time (lock file next to the cache). Failed refreshes back off for 5 minutes; sessions that skip adopt a cache refreshed by another process.
package/README.md CHANGED
@@ -84,7 +84,7 @@ Get your API key at [parasail.io](https://parasail.io/).
84
84
  | Glm 53 | 1M | ❌ | Text | 16K | $1.40 | $4.40 | $0.26 |
85
85
  | Glm 53 Flash | 1M | ❌ | Text | 16K | $0.15 | $0.50 | $0.03 |
86
86
  | Glm 53 Flash Fast | 1M | ❌ | Text | 16K | $0.19 | $0.63 | $0.04 |
87
- | Googlegemma 3 4b It | 131K | ❌ | Text | 16K | $0.05 | — | — |
87
+ | Googlegemma 3 4b It | 131K | ❌ | Text | 16K | $0.04 | $0.05 | $0.02 |
88
88
  | Gpt Oss 120b Fast | 131K | ✅ | Text | 16K | $0.15 | $0.60 | — |
89
89
  | GPT-OSS 120B | 131K | ✅ | Text | 16K | $0.10 | $0.75 | $0.06 |
90
90
  | GPT-OSS 20B | 131K | ✅ | Text | 16K | $0.03 | $0.15 | $0.02 |
package/models.json CHANGED
@@ -635,9 +635,9 @@
635
635
  "text"
636
636
  ],
637
637
  "cost": {
638
- "input": 0.05,
639
- "output": 0,
640
- "cacheRead": 0,
638
+ "input": 0.04,
639
+ "output": 0.05,
640
+ "cacheRead": 0.02,
641
641
  "cacheWrite": 0
642
642
  },
643
643
  "contextWindow": 131072,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-parasail-provider",
3
- "version": "1.0.35",
3
+ "version": "1.0.37",
4
4
  "description": "Parasail provider extension for pi - Access top open-source models (DeepSeek, Qwen, GLM, Kimi, Llama, Gemma, Mistral) through the Parasail API",
5
5
  "type": "module",
6
6
  "main": "index.ts",
@@ -39,12 +39,16 @@
39
39
  "brace-expansion": "5.0.12"
40
40
  },
41
41
  "devDependencies": {
42
- "@earendil-works/pi-coding-agent": "1.1.0",
43
- "typescript": "6.0.3",
42
+ "@earendil-works/pi-coding-agent": "1.2.0",
44
43
  "@types/node": "^25.9.1",
44
+ "typescript": "6.0.3",
45
45
  "vitest": "4.1.7"
46
46
  },
47
47
  "peerDependencies": {
48
48
  "@earendil-works/pi-coding-agent": "*"
49
+ },
50
+ "repository": {
51
+ "type": "git",
52
+ "url": "git+https://github.com/monotykamary/pi-parasail-provider.git"
49
53
  }
50
54
  }
@@ -14,7 +14,7 @@ globalThis.fetch = async () => new Response('', { status: 503 });
14
14
  let session;
15
15
  try {
16
16
  const { createAgentSession, DefaultResourceLoader, ModelRuntime, SessionManager, SettingsManager, VERSION } = await import('@earendil-works/pi-coding-agent');
17
- assert.equal(VERSION, '1.1.0', 'run compatibility checks against the pinned host');
17
+ assert.equal(VERSION, '1.2.0', 'run compatibility checks against the pinned host');
18
18
  const manifest = JSON.parse(await readFile(join(root, 'package.json'), 'utf8'));
19
19
  const hostPackages = ['@earendil-works/pi-ai', '@earendil-works/pi-agent-core', '@earendil-works/pi-coding-agent', '@earendil-works/pi-tui', 'typebox'];
20
20
  for (const name of hostPackages) {
@@ -65,7 +65,7 @@ try {
65
65
  modelCount += models.length;
66
66
  }
67
67
  await session.extensionRunner.emit({ type: 'session_shutdown' });
68
- assert.deepEqual(errors, [], 'startup and shutdown handlers must work with Pi 1.1.0 contexts');
68
+ assert.deepEqual(errors, [], 'startup and shutdown handlers must work with Pi 1.2.0 contexts');
69
69
  console.log(`${manifest.name}: Pi ${VERSION} loader, manifest, session startup, and ${modelCount} models OK`);
70
70
  } finally {
71
71
  session?.dispose();