@anionex/dsh-vision-toolkit 0.1.34 โ 0.1.36
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.i18n.yaml +2 -2
- package/README.md +39 -3
- package/README.zh.md +39 -3
- package/assets/logo_aihubmix.png +0 -0
- package/assets/python-bootstrap.json +1 -0
- package/assets/skill/UPSTREAM.json +3 -3
- package/assets/skill/references/restore-ui.md +5 -3
- package/assets/wechat-reward.png +0 -0
- package/docs/dsh-desktop-install.md +67 -0
- package/docs/dsh-desktop-install.zh.md +67 -0
- package/docs/python-runtime.md +17 -3
- package/docs/python-runtime.zh.md +17 -3
- package/lib/runtime-install.js +32 -15
- package/lib/runtime-install.js.map +1 -1
- package/lib/types/runtime-install.d.ts +2 -0
- package/lib/types/runtime-install.d.ts.map +1 -1
- package/package.json +1 -1
- package/patches/vision-tools-dsh.patch +33 -10
- package/src/runtime-install.ts +47 -15
package/README.i18n.yaml
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
# side as of the last confirmed-consistent state. Both languages carry equal authority;
|
|
3
3
|
# after editing either side, bring the other along and re-record with:
|
|
4
4
|
# pnpm run verify-translation-pairing --write dsh-vision-toolkit/README.md
|
|
5
|
-
README.md:
|
|
6
|
-
README.zh.md:
|
|
5
|
+
README.md: f38885c9ef8b326808f9a43c8433e9e6a5c929db
|
|
6
|
+
README.zh.md: 06e3133487ea5465a8c81e04a1a98308217c8432
|
package/README.md
CHANGED
|
@@ -30,6 +30,8 @@
|
|
|
30
30
|
|
|
31
31
|
> **Original work:** The system and division of responsibilities behind these visual tools, together with the `vision-skills` Skill, were personally created and continuously refined by the author through long-term real-world use and repeated iteration.
|
|
32
32
|
|
|
33
|
+
> If this project helps you or gives you some inspiration, feel free to star ๐ & fork.
|
|
34
|
+
|
|
33
35
|
## Highlights
|
|
34
36
|
|
|
35
37
|
- **Paste an image and ask directly.** In DSH Web, pasting an image switches the text-only model to its `(Vision Toolkit)` variant automatically โ no manual path copying or model changes. Native thumbnails, session history, and workspace paths stay intact; Web can preview artifacts.
|
|
@@ -53,6 +55,22 @@ dsh plugin --profile web add @anionex/dsh-vision-toolkit
|
|
|
53
55
|
|
|
54
56
|
**Upstream toolkit:** [Anionex/agent-vision-toolkit](https://github.com/Anionex/agent-vision-toolkit) ยท **Project website:** [agent-vision.anionex.me](https://agent-vision.anionex.me)
|
|
55
57
|
|
|
58
|
+
## โค๏ธ Sponsor
|
|
59
|
+
|
|
60
|
+
> Want to sponsor this project? See [FUNDING.md](FUNDING.md) or email davidyang042@gmail.com.
|
|
61
|
+
|
|
62
|
+
<details open>
|
|
63
|
+
<summary>Click to collapse</summary>
|
|
64
|
+
|
|
65
|
+
<table>
|
|
66
|
+
<tr>
|
|
67
|
+
<td width="220"><a href="https://aihubmix.com/?aff=5wj6sgx8"><img src="assets/logo_aihubmix.png" alt="AIHubMix" height="48"></a></td>
|
|
68
|
+
<td>Thanks to <a href="https://aihubmix.com/?aff=5wj6sgx8">AIHubMix</a> for sponsoring this project! AIHubMix is a stable, high-concurrency AI model API gateway that connects Claude, GPT, Gemini, DeepSeek, and other mainstream models through a single API key, compatible with multiple protocols, with <b>free model options</b> available. Users in China can use it via the <a href="https://inferera.com/?aff=5wj6sgx8">China entry</a>, and users abroad via the <a href="https://aihubmix.com/?aff=5wj6sgx8">Global entry</a>.</td>
|
|
69
|
+
</tr>
|
|
70
|
+
</table>
|
|
71
|
+
|
|
72
|
+
</details>
|
|
73
|
+
|
|
56
74
|
**Contents**
|
|
57
75
|
|
|
58
76
|
- [Highlights](#highlights)
|
|
@@ -63,6 +81,7 @@ dsh plugin --profile web add @anionex/dsh-vision-toolkit
|
|
|
63
81
|
- [Toolbox](#toolbox)
|
|
64
82
|
- [Configuration and limits](#configuration-and-limits)
|
|
65
83
|
- [Troubleshooting](#troubleshooting)
|
|
84
|
+
- [Donation](#donation)
|
|
66
85
|
- [Development and community](#development-and-community)
|
|
67
86
|
|
|
68
87
|
## Recent updates
|
|
@@ -147,11 +166,21 @@ You can install it into a Headless Profile too:
|
|
|
147
166
|
dsh plugin --profile headless add @anionex/dsh-vision-toolkit
|
|
148
167
|
```
|
|
149
168
|
|
|
169
|
+
Using DSH Desktop? It bundles its own `dsh` CLI and intentionally does not add it to your system PATH. Open **DSH Terminal** from the tray and run the command there, targeting the Desktop profile:
|
|
170
|
+
|
|
171
|
+
```sh
|
|
172
|
+
dsh plugin --profile desktop add @anionex/dsh-vision-toolkit
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
Then restart DSH Desktop. The built-in plugin marketplace in DSH Desktop 2.0.1 has known installation issues; the terminal command above is the reliable path until a fixed Desktop release is available.
|
|
176
|
+
|
|
177
|
+
For the full Desktop install, update, and troubleshooting walkthrough, see [Installing and updating in DSH Desktop](docs/dsh-desktop-install.md).
|
|
178
|
+
|
|
150
179
|
### 2. Restart and check it
|
|
151
180
|
|
|
152
181
|
Restart a running Web Profile, then open **Settings โ Vision Toolkit**. The free provider is already configured; run **Test vision model** to confirm it is reachable.
|
|
153
182
|
|
|
154
|
-
The first start prepares an isolated runtime: the plugin prefers a system Python 3.11+; when none is found, it downloads a hash-verified standalone Python (about 35 MB) from
|
|
183
|
+
The first start prepares an isolated runtime: the plugin prefers a system Python 3.11+; when none is found, it downloads a hash-verified standalone Python (about 35 MB) from the domestic mirror (`dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com`) on first use, falling back to the GitHub release when the mirror is unreachable. The locked runtime dependencies (Pillow, NumPy, vtracer) are installed from the Tencent Cloud PyPI mirror (`mirrors.cloud.tencent.com/pypi/simple`) first and fall back to the official PyPI index. A normal installation does not require an `agent-vision-toolkit` source checkout or a local path setting.
|
|
155
184
|
|
|
156
185
|
### 3. Paste an image and describe the outcome you want
|
|
157
186
|
|
|
@@ -276,7 +305,7 @@ For a trusted internal endpoint that uses a self-signed certificate or MITM prox
|
|
|
276
305
|
|
|
277
306
|
### Configure the Python runtime
|
|
278
307
|
|
|
279
|
-
Most users never need to configure the Python runtime: the plugin prefers a system Python 3.11+ and otherwise downloads a pinned standalone Python automatically.
|
|
308
|
+
Most users never need to configure the Python runtime: the plugin prefers a system Python 3.11+ and otherwise downloads a pinned standalone Python automatically from the domestic mirror, falling back to GitHub when the mirror is unreachable.
|
|
280
309
|
|
|
281
310
|
For advanced setups โ overriding `runtime.python`, using `runtime.mode: external`, verifying the runtime, or allowing additional input directories โ see [Python runtime configuration](docs/python-runtime.md).
|
|
282
311
|
|
|
@@ -289,8 +318,9 @@ For advanced setups โ overriding `runtime.python`, using `runtime.mode: extern
|
|
|
289
318
|
| The free service returns 429 | Wait for the `Retry-After` interval, or switch to your own endpoint when you need stable higher volume |
|
|
290
319
|
| The image exceeds a size or pixel limit | Crop or resize it first; the error identifies whether bytes or decoded pixels caused the rejection |
|
|
291
320
|
| A custom Credential is missing | Enter the API key in **Settings โ Vision Toolkit** and confirm the Credential name matches the provider configuration |
|
|
292
|
-
| First-time runtime setup fails | The standalone-Python download needs network and disk access. Check connectivity or package-cache access, or install Python 3.11+ / configure `runtime.python` in Settings, then retry the model test |
|
|
321
|
+
| First-time runtime setup fails | The standalone-Python download needs network and disk access (domestic mirror first, GitHub fallback). Check connectivity or package-cache access, or install Python 3.11+ / configure `runtime.python` in Settings, then retry the model test |
|
|
293
322
|
| Chrome is not found | Install Chrome, Chromium, or Edge. Only HTML screenshot rendering is unavailable; the other tools still work |
|
|
323
|
+
| DSH Desktop says `dsh` is not recognized, or its built-in marketplace install fails | Open **DSH Terminal** from the tray, run `dsh plugin --profile desktop add @anionex/dsh-vision-toolkit`, then restart DSH Desktop. The Desktop 2.0.1 marketplace has known install issues, so the terminal command is the reliable path for now |
|
|
294
324
|
| An artifact cannot be previewed | Use **Open file** or the workspace path in the result. Preview URLs exist only while the Web route is available |
|
|
295
325
|
|
|
296
326
|
## FAQ
|
|
@@ -299,6 +329,12 @@ For advanced setups โ overriding `runtime.python`, using `runtime.mode: extern
|
|
|
299
329
|
|
|
300
330
|
No. Each inspection sends only the necessary intent and the image to the multimodal model, and context does not accumulate across calls, so the added cost stays small. To reduce it further, a locally deployed small multimodal side model (for example the Gemma 4 or Qwen 3.5/3.6 series) can provide the vision capability.
|
|
301
331
|
|
|
332
|
+
## Donation
|
|
333
|
+
|
|
334
|
+
If this project is valuable to you, you are welcome to buy the developer a coffee โ๏ธ
|
|
335
|
+
|
|
336
|
+
<img width="240" alt="WeChat reward code" src="assets/wechat-reward.png" />
|
|
337
|
+
|
|
302
338
|
## Development and community
|
|
303
339
|
|
|
304
340
|
- Read [CONTRIBUTING.md](CONTRIBUTING.md) before contributing.
|
package/README.zh.md
CHANGED
|
@@ -29,6 +29,8 @@
|
|
|
29
29
|
|
|
30
30
|
> **ๅๅๅฃฐๆ๏ผ** ่ฟๅฅ่ง่งๅทฅๅ
ท็ไฝ็ณปๅๅๅๆนๅผ๏ผไปฅๅ `vision-skills` Skill๏ผๅ็ฑไฝ่
ไธชไบบๅๅๅนถๆ็ปญๆ็ฃจ๏ผ็ธๅ
ณๅทฅๅ
ทใๆนๆณๅๅทฅไฝๆตๆฅ่ช้ฟๆ็็ๅฎไฝฟ็จไธๅๅค่ฟญไปฃใ
|
|
31
31
|
|
|
32
|
+
> ๅฆๆ่ฟไธช้กน็ฎๅฏนไฝ ๆๅธฎๅฉ๏ผๆ็ปไบไฝ ไธไบ็ตๆ๏ผๆฌข่ฟ Star ๐ & Forkใ
|
|
33
|
+
|
|
32
34
|
## ไบฎ็น
|
|
33
35
|
|
|
34
36
|
- **็ฒ่ดดๅพ็๏ผ็ดๆฅๆ้ฎใ** ๅจ DSH Web ้็ฒ่ดดๅพ็๏ผๆๆฌๆจกๅไผ่ชๅจๅๆขๅฐ็ๅพๆจกๅผๅไฝ๏ผไธ้่ฆๆๅจๅคๅถ่ทฏๅพๆๆดๆขๆจกๅใๅพ็ไฟ็ๅ็็ผฉ็ฅๅพใไผ่ฏ่ฎฐๅฝๅๅทฅไฝๅบ่ทฏๅพ๏ผWeb ๅฏไปฅ้ข่งไบง็ฉใ
|
|
@@ -52,6 +54,22 @@ dsh plugin --profile web add @anionex/dsh-vision-toolkit
|
|
|
52
54
|
|
|
53
55
|
**ไธๆธธๅทฅๅ
ท็ฎฑ๏ผ** [Anionex/agent-vision-toolkit](https://github.com/Anionex/agent-vision-toolkit) ยท **้กน็ฎ็ฝ็ซ๏ผ** [agent-vision.anionex.me](https://agent-vision.anionex.me)
|
|
54
56
|
|
|
57
|
+
## โค๏ธ ่ตๅฉ
|
|
58
|
+
|
|
59
|
+
> ๆณ่ตๅฉๆฌ้กน็ฎ๏ผ่ฏฆ่ง [FUNDING.md](FUNDING.md) ๆๅ้้ฎไปถๅฐ davidyang042@gmail.comใ
|
|
60
|
+
|
|
61
|
+
<details open>
|
|
62
|
+
<summary>็นๅปๆๅ </summary>
|
|
63
|
+
|
|
64
|
+
<table>
|
|
65
|
+
<tr>
|
|
66
|
+
<td width="220"><a href="https://aihubmix.com/?aff=5wj6sgx8"><img src="assets/logo_aihubmix.png" alt="AIHubMix" height="48"></a></td>
|
|
67
|
+
<td>ๆ่ฐข <a href="https://aihubmix.com/?aff=5wj6sgx8">AIHubMix</a> ่ตๅฉๆฌ้กน็ฎ๏ผAIHubMix ๆฏ็จณๅฎใ้ซๅนถๅ็ AI ๅคงๆจกๅ API ่ๅๅนณๅฐ๏ผไธไธช API Key ๅณๅฏๆฅๅ
ฅ ClaudeใGPTใGeminiใDeepSeek ็ญไธปๆตๆจกๅ๏ผๅ
ผๅฎนๅค็งๅ่ฎฎ๏ผๅนถๆไพ<b>ๅ
่ดนๆจกๅ้ๆฉ</b>ใๅฝๅ
็จๆท่ฏท้่ฟ<a href="https://inferera.com/?aff=5wj6sgx8">ๅฝๅ
ๅ
ฅๅฃ</a>ไฝฟ็จ๏ผๆตทๅค็จๆท่ฏท้่ฟ<a href="https://aihubmix.com/?aff=5wj6sgx8">ๆตทๅคๅ
ฅๅฃ</a>ไฝฟ็จใ</td>
|
|
68
|
+
</tr>
|
|
69
|
+
</table>
|
|
70
|
+
|
|
71
|
+
</details>
|
|
72
|
+
|
|
55
73
|
**็ฎๅฝ**
|
|
56
74
|
|
|
57
75
|
- [ไบฎ็น](#ไบฎ็น)
|
|
@@ -62,6 +80,7 @@ dsh plugin --profile web add @anionex/dsh-vision-toolkit
|
|
|
62
80
|
- [ๅทฅๅ
ทไธ่ง](#ๅทฅๅ
ทไธ่ง)
|
|
63
81
|
- [้
็ฝฎไธ้ๅถ](#้
็ฝฎไธ้ๅถ)
|
|
64
82
|
- [ๅธธ่ง้ฎ้ข](#ๅธธ่ง้ฎ้ข)
|
|
83
|
+
- [่ต่ต](#่ต่ต)
|
|
65
84
|
- [ๅผๅไธ็คพๅบ](#ๅผๅไธ็คพๅบ)
|
|
66
85
|
|
|
67
86
|
## ๆ่ฟๆดๆฐ
|
|
@@ -147,11 +166,21 @@ Headless Profile ไนๅฏไปฅๅฎ่ฃ
๏ผ
|
|
|
147
166
|
dsh plugin --profile headless add @anionex/dsh-vision-toolkit
|
|
148
167
|
```
|
|
149
168
|
|
|
169
|
+
ไฝฟ็จ **DSH Desktop ๆก้ข็**๏ผๆก้ข็่ชๅธฆ `dsh` ๅฝไปค่ก๏ผไฝๆๆไธๅๅ
ฅ็ณป็ป PATH๏ผ่ฏทไธ่ฆๅจ็ณป็ป็ป็ซฏ้ๆง่กไธ้ข็ๅฝไปคใ่ฏทไปๆ็ๆๅผ **DSH ็ป็ซฏ๏ผOpen DSH Terminal๏ผ**๏ผๅจๆก้ข็่ชๅทฑ็็ป็ซฏไธญๅฎ่ฃ
ๅฐ Desktop Profile๏ผ
|
|
170
|
+
|
|
171
|
+
```sh
|
|
172
|
+
dsh plugin --profile desktop add @anionex/dsh-vision-toolkit
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
ๅฎ่ฃ
ๅฎๆๅ้ๅฏ DSH DesktopใDSH Desktop 2.0.1 ๅ
็ฝฎๆไปถๅธๅบ็โไธ้ฎๅฎ่ฃ
โๅญๅจๅทฒ็ฅ้ฎ้ข๏ผไฟฎๅคๅ่ฏทไผๅ
ไฝฟ็จไธ้ข็็ป็ซฏๅฝไปคๅฎ่ฃ
ใ
|
|
176
|
+
|
|
177
|
+
ๅฎๆด็ๆก้ข็ๅฎ่ฃ
ใๆดๆฐไธๆๆฅๆญฅ้ชค่ง [DSH Desktop ๅฎ่ฃ
ไธๆดๆฐๆๅ](docs/dsh-desktop-install.zh.md)ใ
|
|
178
|
+
|
|
150
179
|
### 2. ้ๅฏๅนถ็กฎ่ฎค
|
|
151
180
|
|
|
152
181
|
้ๅฏๆญฃๅจ่ฟ่ก็ Web Profile๏ผๆๅผ **่ฎพ็ฝฎ โ ่ง่งๅทฅๅ
ท**ใ้ป่ฎคๅ
่ดนๆๅกๅทฒ็ป้
็ฝฎๅฅฝ๏ผไฝ ๅฏไปฅ็ดๆฅ่ฟ่ก**ๆต่ฏ่ง่งๆจกๅ**็กฎ่ฎค่ฟๆฅใ
|
|
153
182
|
|
|
154
|
-
้ฆๆฌกๅฏๅจไผ่ชๅจๅๅค้็ฆป่ฟ่ก็ฏๅข๏ผๆไปถไผๅ
ไฝฟ็จ็ณป็ปๅทฒๆ็ Python 3.11
|
|
183
|
+
้ฆๆฌกๅฏๅจไผ่ชๅจๅๅค้็ฆป่ฟ่ก็ฏๅข๏ผๆไปถไผๅ
ไฝฟ็จ็ณป็ปๅทฒๆ็ Python 3.11+๏ผๅฆๆ็ณป็ปๆฒกๆ๏ผไผ่ชๅจไปๅฝๅ
้ๅ๏ผ`dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com`๏ผไธ่ฝฝไธไธชๅธฆๅฎๆดๆงๆ ก้ช็ๆ็ฎก Python๏ผ็บฆ 35MB๏ผไป
้ฆๆฌก้่ฆ็ฝ็ป๏ผ๏ผ้ๅไธๅฏ็จๆถ่ชๅจๅ้ๅฐ GitHub ๅฎๆนๅๅธๆบใ้ๅฎไพ่ต๏ผPillowใNumPyใvtracer๏ผไผไผๅ
ไป่
พ่ฎฏไบ PyPI ้ๅ๏ผ`mirrors.cloud.tencent.com/pypi/simple`๏ผๅฎ่ฃ
๏ผ้ๅไธๅฏ็จๆถๅ้ๅฐๅฎๆน PyPIใๆฎ้ๅฎ่ฃ
ไธ้่ฆไธ่ฝฝ `agent-vision-toolkit` ๆบ็ ๏ผไนไธ้่ฆ่ฎพ็ฝฎๆฌๅฐ่ทฏๅพใ
|
|
155
184
|
|
|
156
185
|
### 3. ็ฒ่ดดๅพ็๏ผ็ดๆฅ่ฏดไฝ ่ฆๅไปไน
|
|
157
186
|
|
|
@@ -274,7 +303,7 @@ API Key: https://agent-vision.anionex.me๏ผ่ชๅจๅกซๅ๏ผ
|
|
|
274
303
|
|
|
275
304
|
### ้
็ฝฎ Python ่ฟ่กๆถ
|
|
276
305
|
|
|
277
|
-
ๅคงๅคๆฐ็จๆทๆ ้้
็ฝฎ Python ่ฟ่กๆถ๏ผๆไปถไผไผๅ
ไฝฟ็จ็ณป็ป Python 3.11
|
|
306
|
+
ๅคงๅคๆฐ็จๆทๆ ้้
็ฝฎ Python ่ฟ่กๆถ๏ผๆไปถไผไผๅ
ไฝฟ็จ็ณป็ป Python 3.11+๏ผๆพไธๅฐๆถ่ชๅจไปๅฝๅ
้ๅไธ่ฝฝๅบๅฎ็ๆฌ็ๆ็ฎก Python๏ผๅฝๅ
้ๅไธๅฏ็จๆถๅ้ๅฐ GitHub ๅฎๆนๅๅธๆบใ
|
|
278
307
|
|
|
279
308
|
้่ฆ่ฆ็ `runtime.python`ใไฝฟ็จ `runtime.mode: external`ใ้ช่ฏ่ฟ่กๆถ๏ผๆๅ
่ฎธ่ฏปๅๅ
ถไป็ฎๅฝๆถ๏ผ่ฏทๅ้
[Python ่ฟ่กๆถ้
็ฝฎ](docs/python-runtime.zh.md)ใ
|
|
280
309
|
|
|
@@ -287,8 +316,9 @@ API Key: https://agent-vision.anionex.me๏ผ่ชๅจๅกซๅ๏ผ
|
|
|
287
316
|
| ๅ
่ดนๆๅกๆ็คบ 429 | ๆ้่ฏฏไธญ็ `Retry-After` ็ญๅพ
ๅ้่ฏ๏ผๅฆๆ้่ฆ็จณๅฎ้ซ้ขๅบฆ๏ผๅๆขๅฐ่ชๅทฑ็่ง่ง็ซฏ็น |
|
|
288
317
|
| ๅพ็่ฟๅคงๆๅ็ด ่ถ
้ | ๅ
่ฃๅชๆ็ผฉๆพๅพ็๏ผ้่ฏฏไผๆ็กฎๆพ็คบๆฏๅญ่่ฟๆฏๅ็ด ้ๅถ |
|
|
289
318
|
| ่ชๅฎไน Credential ็ผบๅคฑ | ๅจ **่ฎพ็ฝฎ โ ่ง่งๅทฅๅ
ท** ๅกซๅ API Key๏ผๅนถ็กฎ่ฎค Credential ๅ็งฐไธ้
็ฝฎไธ่ด |
|
|
290
|
-
| ้ฆๆฌก่ฟ่กๆถๅๅคๅคฑ่ดฅ | ่ชๅจไธ่ฝฝๆ็ฎก Python
|
|
319
|
+
| ้ฆๆฌก่ฟ่กๆถๅๅคๅคฑ่ดฅ | ่ชๅจไธ่ฝฝๆ็ฎก Python ้่ฆ็ฝ็ปๅ็ฃ็ๆ้๏ผ้ป่ฎคๅ
่ตฐๅฝๅ
้ๅ๏ผๅคฑ่ดฅๆถๅ้ GitHub๏ผ๏ผๅคฑ่ดฅๆถๆฃๆฅ็ฝ็ปๆๅ
็ผๅญ๏ผไนๅฏไปฅๅฎ่ฃ
Python 3.11+ ๆๅจ Settings ไธญ้
็ฝฎ `runtime.python`๏ผ็ถๅ้ๆฐๆต่ฏ |
|
|
291
320
|
| ๆพไธๅฐ Chrome | ๅฎ่ฃ
ChromeใChromium ๆ Edge๏ผๅชๆ HTML ๆชๅพไธๅฏ็จ๏ผๅ
ถไปๅทฅๅ
ทไธๅๅฝฑๅ |
|
|
321
|
+
| DSH Desktop ๆ็คบๆพไธๅฐ `dsh` ๅฝไปค๏ผๆๅ
็ฝฎๆไปถๅธๅบๅฎ่ฃ
ๅคฑ่ดฅ | ไปๆ็ๆๅผ **DSH ็ป็ซฏ**๏ผ่ฟ่ก `dsh plugin --profile desktop add @anionex/dsh-vision-toolkit`๏ผๅ้ๅฏ DSH Desktopใๆก้ข็ 2.0.1 ็ๅ
็ฝฎๅธๅบๅญๅจๅทฒ็ฅๅฎ่ฃ
้ฎ้ข๏ผๅฝๅ่ฏทไผๅ
ไฝฟ็จ็ป็ซฏๅฎ่ฃ
|
|
|
292
322
|
| ไบง็ฉๆ ๆณ้ข่ง | ไฝฟ็จโๆๅผๆไปถโๆ็ปๆไธญ็ๅทฅไฝๅบ่ทฏๅพ๏ผ้ข่ง URL ๅชๅจ Web ่ทฏ็ฑๅฏ็จๆถๅญๅจ |
|
|
293
323
|
|
|
294
324
|
## FAQ
|
|
@@ -297,6 +327,12 @@ API Key: https://agent-vision.anionex.me๏ผ่ชๅจๅกซๅ๏ผ
|
|
|
297
327
|
|
|
298
328
|
ไธไผใๆฏๆฌกๆฃๆฅๅชๆๅฟ
่ฆ็ๆๅพๅๅพ็ๅ็ปๅคๆจกๆๆจกๅ๏ผ่ฐ็จไน้ดไธไผ็ดฏ็งฏไธไธๆ๏ผๅ ๆญค้ขๅคๆๆฌๅพๅฐใๆณ่ฟไธๆญฅ้ไฝๆๆฌ๏ผๅฏไปฅ็จๆฌๅฐ้จ็ฝฒ็ๅฐๅๅคๆจกๆไพงๆจกๅ๏ผไพๅฆ Gemma 4 ๆ Qwen 3.5/3.6 ็ณปๅ๏ผๆไพ่ง่ง่ฝๅใ
|
|
299
329
|
|
|
330
|
+
## ่ต่ต
|
|
331
|
+
|
|
332
|
+
ๅฆๆๆฌ้กน็ฎๅฏนไฝ ๆไปทๅผ๏ผๆฌข่ฟ่ฏทๅผๅ่
ๅๆฏๅๅกโ๏ธ
|
|
333
|
+
|
|
334
|
+
<img width="240" alt="ๅพฎไฟกๆถๆฌพ็ " src="assets/wechat-reward.png" />
|
|
335
|
+
|
|
300
336
|
## ๅผๅไธ็คพๅบ
|
|
301
337
|
|
|
302
338
|
- ่ดก็ฎๅ่ฏท้
่ฏป [CONTRIBUTING.md](CONTRIBUTING.md)ใ
|
|
Binary file
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"pythonVersion": "3.13.15",
|
|
4
4
|
"buildTag": "20260814",
|
|
5
|
+
"mirrorBaseUrl": "https://dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com",
|
|
5
6
|
"artifacts": {
|
|
6
7
|
"darwin-arm64": {
|
|
7
8
|
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20260814/cpython-3.13.15+20260814-aarch64-apple-darwin-install_only_stripped.tar.gz",
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"repository": "https://github.com/Anionex/agent-vision-toolkit",
|
|
4
4
|
"commit": "77c24ad5b5d7a123119862893129f939307f1d3f",
|
|
5
5
|
"patch": "patches/vision-tools-dsh.patch",
|
|
6
|
-
"patchSha256": "
|
|
6
|
+
"patchSha256": "29f596fc36b476ecfe9b138ec4778f10c81fcfb550beb340cb3fc472f8cdb05f",
|
|
7
7
|
"sourceFiles": [
|
|
8
8
|
{
|
|
9
9
|
"path": "SKILL.md",
|
|
@@ -64,8 +64,8 @@
|
|
|
64
64
|
},
|
|
65
65
|
{
|
|
66
66
|
"path": "references/restore-ui.md",
|
|
67
|
-
"bytes":
|
|
68
|
-
"sha256": "
|
|
67
|
+
"bytes": 10341,
|
|
68
|
+
"sha256": "447068bbc967497f02a409b091267afd1277980bfd50b859131976b7a09e1d81"
|
|
69
69
|
}
|
|
70
70
|
]
|
|
71
71
|
}
|
|
@@ -10,9 +10,11 @@ structured diagram, read `restore-structure.md`.
|
|
|
10
10
|
## Choose the restore mode
|
|
11
11
|
|
|
12
12
|
- Use **fast restore mode** when the user asks for a quick, rough,
|
|
13
|
-
approximate, prototype, or first-pass reconstruction,
|
|
14
|
-
speed over fidelity
|
|
15
|
-
|
|
13
|
+
approximate, prototype, or first-pass reconstruction, explicitly values
|
|
14
|
+
speed over fidelity, or the reference image itself shows a floating
|
|
15
|
+
speed-intent control such as "ๅฟซ้่ฟๅไธบ HTML" / "ๅฟซ้็ๆ" / "quick
|
|
16
|
+
restore" overlay. Its target is a recognizable screenshot in about
|
|
17
|
+
three minutes when the project already runs.
|
|
16
18
|
- Use the **standard restore workflow** below when the user asks for close,
|
|
17
19
|
precise, pixel-level, or production-ready alignment, or does not opt into a
|
|
18
20
|
faster approximation.
|
|
Binary file
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Installing and Updating dsh-vision-toolkit in DSH Desktop
|
|
2
|
+
|
|
3
|
+
This guide explains how to install, verify, and update `dsh-vision-toolkit` in **DSH Desktop**.
|
|
4
|
+
|
|
5
|
+
> Why a separate guide? DSH Desktop bundles its own `dsh` CLI but intentionally does **not** add it to the system PATH. Running `dsh` in a system shell (PowerShell, cmd, or the macOS Terminal) reports "command not found" by design โ this is not a plugin issue. Always use the **DSH Terminal** opened from the desktop tray.
|
|
6
|
+
|
|
7
|
+
## 1. Open the DSH Terminal
|
|
8
|
+
|
|
9
|
+
1. Find the **DSH Desktop** icon in the system tray (bottom-right on Windows, top-right menu bar on macOS).
|
|
10
|
+
2. **Right-click** the icon and choose **Open DSH Terminal**.
|
|
11
|
+
3. Verify the environment in the opened terminal:
|
|
12
|
+
|
|
13
|
+
```sh
|
|
14
|
+
dsh --version
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
If the version prints, the terminal environment is ready. If the command is not found, make sure the app is v2.0+ and try fully quitting and relaunching DSH Desktop first.
|
|
18
|
+
|
|
19
|
+
## 2. Install the plugin
|
|
20
|
+
|
|
21
|
+
Run the following command in the **DSH Terminal**:
|
|
22
|
+
|
|
23
|
+
```sh
|
|
24
|
+
dsh plugin --profile desktop add @anionex/dsh-vision-toolkit@0.1.34
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Notes:
|
|
28
|
+
|
|
29
|
+
- `--profile desktop` targets the default `desktop` profile; replace `desktop` with `web` to install into a `web` profile.
|
|
30
|
+
- **Pin an exact version** (currently `0.1.34`). The DSH 1024Store marketplace catalog lags behind npm, so a one-click marketplace install can land on an older version; an explicit version guarantees the latest release.
|
|
31
|
+
- If the active profile is already the target profile, you can omit `--profile desktop` and run `dsh plugin add @anionex/dsh-vision-toolkit@0.1.34` directly.
|
|
32
|
+
|
|
33
|
+
## 3. Restart and verify
|
|
34
|
+
|
|
35
|
+
1. **Fully quit DSH Desktop**: right-click the tray icon โ **Quit** (closing the window only hides it).
|
|
36
|
+
2. Reopen DSH Desktop.
|
|
37
|
+
3. Open **Settings โ Vision Toolkit** and click **Test vision model** to confirm the built-in free vision service works.
|
|
38
|
+
4. Paste an image into the conversation and ask directly, or invoke `/vision-skills` for the full vision workflow.
|
|
39
|
+
|
|
40
|
+
## 4. Update to a new version
|
|
41
|
+
|
|
42
|
+
1. Check the latest version on the [npm page](https://www.npmjs.com/package/@anionex/dsh-vision-toolkit).
|
|
43
|
+
2. In the **DSH Terminal**, rerun the install command with the new version:
|
|
44
|
+
|
|
45
|
+
```sh
|
|
46
|
+
dsh plugin --profile desktop add @anionex/dsh-vision-toolkit@<new-version>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
3. **Fully quit and reopen DSH Desktop** so the new version takes effect.
|
|
50
|
+
|
|
51
|
+
If you installed without pinning an exact version, the official `dsh plugin update` command also works; with a pinned version such as `@0.1.34`, use the explicit-version command above.
|
|
52
|
+
|
|
53
|
+
## Troubleshooting
|
|
54
|
+
|
|
55
|
+
| Problem | What to do |
|
|
56
|
+
| --- | --- |
|
|
57
|
+
| `dsh` is not recognized in a system shell | Expected. Open **DSH Terminal** from the tray instead of using system PowerShell/cmd/Terminal |
|
|
58
|
+
| No Open DSH Terminal in the tray menu | Make sure the app is v2.0+; this entry exists only in v2 and later |
|
|
59
|
+
| The built-in marketplace fails with "cannot confirm the operation result" | DSH Desktop 2.0.1 has known marketplace install issues; use the DSH Terminal command in this guide instead |
|
|
60
|
+
| Plugin does not show up after install | Confirm the command targeted the right profile and **fully quit and restart** DSH Desktop |
|
|
61
|
+
| Want to install into the web profile | Replace `desktop` with `web` in the command, then restart DSH Desktop and switch to the web profile |
|
|
62
|
+
|
|
63
|
+
## Links
|
|
64
|
+
|
|
65
|
+
- [Project website](https://agent-vision.anionex.me)
|
|
66
|
+
- [npm package](https://www.npmjs.com/package/@anionex/dsh-vision-toolkit)
|
|
67
|
+
- [DSH Desktop user guide](https://github.com/anywhere-labs/deepseek-harness-desktop/blob/master/docs/user-guide.en.md)
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# DSH Desktop ๅฎ่ฃ
ไธๆดๆฐๆๅ
|
|
2
|
+
|
|
3
|
+
ๆฌๆๅ่ฏดๆๅฆไฝๅจ **DSH Desktop๏ผๆก้ข็๏ผ** ไธญๅฎ่ฃ
ใ้ช่ฏๅๆดๆฐ `dsh-vision-toolkit`ใ
|
|
4
|
+
|
|
5
|
+
> ไธบไปไน้่ฆๅ็ฌไธไปฝๆๅ๏ผDSH Desktop ่ชๅธฆ `dsh` ๅฝไปค่ก๏ผไฝ**ไธไผๅๅ
ฅ็ณป็ป PATH**ใๅจ็ณป็ป็ป็ซฏ๏ผPowerShellใcmdใmacOS ็ป็ซฏ๏ผ้่ฟ่ก `dsh` ไผๆ็คบๆพไธๅฐๅฝไปค๏ผ่ฟๆฏๆก้ข็็่ฎพ่ฎก่กไธบ๏ผไธๆฏๆไปถ้ฎ้ขใ่ฏทๅง็ปไฝฟ็จๆก้ข็ๆ็ๆไพ็ **DSH ็ป็ซฏ**ใ
|
|
6
|
+
|
|
7
|
+
## 1. ๆๅผ DSH ็ป็ซฏ
|
|
8
|
+
|
|
9
|
+
1. ๆพๅฐ็ณป็ปๆ็ไธญ็ **DSH Desktop** ๅพๆ ๏ผWindows ๅจๅณไธ่ง๏ผmacOS ๅจๅณไธ่ง่ๅๆ ๏ผใ
|
|
10
|
+
2. **ๅณ้ฎ**ๅพๆ ๏ผ้ๆฉ **Open DSH Terminal**๏ผๆ **ๆๅผ DSH ็ป็ซฏ**๏ผใ
|
|
11
|
+
3. ๆๅผ็็ป็ซฏ้ๅ
็กฎ่ฎค็ฏๅขๅฏ็จ๏ผ
|
|
12
|
+
|
|
13
|
+
```sh
|
|
14
|
+
dsh --version
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
่ฝ็ๅฐ็ๆฌๅทๅฐฑ่ฏดๆ็ป็ซฏ็ฏๅขๆญฃๅธธใๅฆๆๆ็คบๆพไธๅฐๅฝไปค๏ผ่ฏท็กฎ่ฎคๅบ็จ็ๆฌๆฏ v2.0+๏ผๅนถๅฎๅ
จ้ๅบๆก้ข็ๅ้ๆฐๆๅผๅ่ฏใ
|
|
18
|
+
|
|
19
|
+
## 2. ๅฎ่ฃ
ๆไปถ
|
|
20
|
+
|
|
21
|
+
ๅจ **DSH ็ป็ซฏ** ไธญ่ฟ่กไปฅไธๅฝไปค๏ผ
|
|
22
|
+
|
|
23
|
+
```sh
|
|
24
|
+
dsh plugin --profile desktop add @anionex/dsh-vision-toolkit@0.1.34
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
ๅ ็น่ฏดๆ๏ผ
|
|
28
|
+
|
|
29
|
+
- `--profile desktop` ่กจ็คบๅฎ่ฃ
ๅฐๆก้ข็้ป่ฎค็ `desktop` Profile๏ผๆณ่ฃ
ๅฐ `web` Profile ๆถๆ `desktop` ๆขๆ `web`ใ
|
|
30
|
+
- **ๅปบ่ฎฎๅธฆ็ฒพ็กฎ็ๆฌๅท**๏ผๅฝๅไธบ `0.1.34`๏ผใDSH 1024Store ๆไปถๅธๅบ็็ฎๅฝๆฐๆฎๆๆปๅ๏ผๅธๅบ้ไธ้ฎๅฎ่ฃ
ๅฏ่ฝ่ฃ
ๅฐๆง็ๆฌ๏ผๆพๅผๅ็ๆฌๅท่ฝ็กฎไฟ่ฃ
ๅฐๆๆฐ็ใ
|
|
31
|
+
- ๅฆๆๅฝๅๆฟๆดป็ Profile ๅฐฑๆฏ่ฆ่ฃ
็ Profile๏ผไนๅฏไปฅ็็ฅ `--profile desktop`๏ผ็ดๆฅ่ฟ่ก `dsh plugin add @anionex/dsh-vision-toolkit@0.1.34`ใ
|
|
32
|
+
|
|
33
|
+
## 3. ้ๅฏๅนถ้ช่ฏ
|
|
34
|
+
|
|
35
|
+
1. **ๅฎๅ
จ้ๅบ DSH Desktop**๏ผๆ็ๅณ้ฎ โ **้ๅบ**๏ผๅ
ณ้ญ็ชๅฃๅชๆฏ้่๏ผไธ็ฎ้ๅบ๏ผใ
|
|
36
|
+
2. ้ๆฐๆๅผ DSH Desktopใ
|
|
37
|
+
3. ่ฟๅ
ฅ **่ฎพ็ฝฎ โ ่ง่งๅทฅๅ
ท**๏ผ็นๅป **ๆต่ฏ่ง่งๆจกๅ**๏ผ็กฎ่ฎค้ป่ฎคๅ
่ดน่ง่งๆๅกๅฏ็จใ
|
|
38
|
+
4. ๅจไผ่ฏไธญ**็ฒ่ดดไธๅผ ๅพ็็ดๆฅๆ้ฎ**๏ผๆ่ฐ็จ `/vision-skills` ไฝฟ็จๅฎๆด่ง่งๅทฅไฝๆตใ
|
|
39
|
+
|
|
40
|
+
## 4. ๆดๆฐๅฐๆฐ็ๆฌ
|
|
41
|
+
|
|
42
|
+
1. ๅจ [npm ้กต้ข](https://www.npmjs.com/package/@anionex/dsh-vision-toolkit) ๆฅ็ๆๆฐ็ๆฌๅทใ
|
|
43
|
+
2. ๅจ **DSH ็ป็ซฏ** ไธญ๏ผๆๅฎ่ฃ
ๅฝไปค้็็ๆฌๅทๆขๆๆฐ็ๆฌๅ้ๆฐๆง่ก๏ผ
|
|
44
|
+
|
|
45
|
+
```sh
|
|
46
|
+
dsh plugin --profile desktop add @anionex/dsh-vision-toolkit@<ๆฐ็ๆฌๅท>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
3. ๅๆฌก**ๅฎๅ
จ้ๅบๅนถ้ๅฏ DSH Desktop**๏ผๆฐ็ๆฌๆไผ็ๆใ
|
|
50
|
+
|
|
51
|
+
ๅฆๆๅฝๅๅฎ่ฃ
ๆถๆฒกๆ้ๅฎ็ฒพ็กฎ็ๆฌ๏ผไนๅฏไปฅไฝฟ็จๅฎๆนๆดๆฐๅฝไปค `dsh plugin update`๏ผไฝ็ฒพ็กฎ็ๆฌๅฎ่ฃ
๏ผ`@0.1.34` ่ฟ็งๅๆณ๏ผไธ่ฏทไฝฟ็จไธ้ข็ๆพๅผ็ๆฌๅทๆนๅผๅ็บงใ
|
|
52
|
+
|
|
53
|
+
## ๅธธ่ง้ฎ้ข
|
|
54
|
+
|
|
55
|
+
| ้ฎ้ข | ๅค็ๆนๅผ |
|
|
56
|
+
| --- | --- |
|
|
57
|
+
| ็ณป็ป็ป็ซฏ้ๆพไธๅฐ `dsh` ๅฝไปค | ๆญฃๅธธใ่ฏทไปๆ็ๆๅผ **DSH ็ป็ซฏ**๏ผไธ่ฆ็จ็ณป็ป PowerShell/cmd/็ป็ซฏ |
|
|
58
|
+
| ๆ็่ๅ้ๆฒกๆ Open DSH Terminal | ็กฎ่ฎคๅบ็จๆฏ v2.0+ ็ๆฌ๏ผv2 ๆๅผๅงๆไพ่ฏฅๅ
ฅๅฃ |
|
|
59
|
+
| ๅ
็ฝฎๆไปถๅธๅบๅฎ่ฃ
ๅคฑ่ดฅ๏ผๆ็คบโๆ ๆณ็กฎ่ฎคๆไฝ็ปๆโ | DSH Desktop 2.0.1 ็ๅธๅบๅฎ่ฃ
้พ่ทฏๆๅทฒ็ฅ้ฎ้ข๏ผ่ฏทๆน็จๆฌๆ็ DSH ็ป็ซฏๅฝไปคๅฎ่ฃ
|
|
|
60
|
+
| ่ฃ
ๅฎๆไปถๆฒก็ๆ | ็กฎ่ฎคๅฝไปค่ฃ
ๅฐไบๆญฃ็กฎ็ Profile๏ผๅนถ**ๅฎๅ
จ้ๅบๅ้ๅฏ**ๆก้ข็ |
|
|
61
|
+
| ๆณ่ฃ
ๅฐ web Profile | ๆๅฝไปคไธญ็ `desktop` ๆขๆ `web`๏ผ้ๅฏๆก้ข็ๅๅฐ web Profile ไฝฟ็จ |
|
|
62
|
+
|
|
63
|
+
## ็ธๅ
ณ้พๆฅ
|
|
64
|
+
|
|
65
|
+
- [้กน็ฎไธป้กต](https://agent-vision.anionex.me)
|
|
66
|
+
- [npm ๅ
](https://www.npmjs.com/package/@anionex/dsh-vision-toolkit)
|
|
67
|
+
- [DSH Desktop ็จๆทๆๅ](https://github.com/anywhere-labs/deepseek-harness-desktop/blob/master/docs/user-guide.md)
|
package/docs/python-runtime.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Configure the Python runtime
|
|
2
2
|
|
|
3
|
-
By default the plugin picks a system Python 3.11+, or downloads a standalone Python when none is found; most users never need to configure this section. The rest is for advanced setups where automatic discovery fails, a specific interpreter is required, or an external runtime is used.
|
|
3
|
+
By default the plugin picks a system Python 3.11+, or downloads a standalone Python from the domestic mirror (`dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com`) when none is found, falling back to the GitHub release when the mirror is unreachable; most users never need to configure this section. The rest is for advanced setups where automatic discovery fails, a specific interpreter is required, or an external runtime is used.
|
|
4
4
|
|
|
5
5
|
The packaged `managed` runtime creates its own isolated virtual environment. `runtime.python` selects the Python executable used to bootstrap or refresh that environment; it does not replace the managed environment with the interpreter's global site-packages. Set it when automatic discovery fails or when several Python installations exist. The override is also used by `runtime.mode: external`.
|
|
6
6
|
|
|
7
|
-
Python 3.11 or newer is required; the automatically downloaded standalone Python is 3.13.15 and, like a system interpreter, is only used to bootstrap the isolated environment. Without an override, the plugin tries `python3` then `python` on macOS/Linux, and `python`, `py -3`, then `python3` on Windows, before falling back to the standalone download. A configured value is passed as one executable name or path, not as a shell command with arguments, so use `py` (not `py -3`) for the Windows launcher; use an absolute path when you need a specific version.
|
|
7
|
+
Python 3.11 or newer is required; the automatically downloaded standalone Python is 3.13.15 and, like a system interpreter, is only used to bootstrap the isolated environment. Without an override, the plugin tries `python3` then `python` on macOS/Linux, and `python`, `py -3`, then `python3` on Windows, before falling back to the domestic-mirror standalone download (GitHub release as a secondary fallback). A configured value is passed as one executable name or path, not as a shell command with arguments, so use `py` (not `py -3`) for the Windows launcher; use an absolute path when you need a specific version.
|
|
8
8
|
|
|
9
9
|
Configure it in the Profile patch:
|
|
10
10
|
|
|
@@ -22,7 +22,7 @@ Configure it in the Profile patch:
|
|
|
22
22
|
# python: py
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
For a managed runtime, create the project-local interpreter and point `runtime.python` at it. The plugin installs the locked dependencies into its own managed cache, so installing the lockfile into this bootstrap environment is optional:
|
|
25
|
+
For a managed runtime, create the project-local interpreter and point `runtime.python` at it. The plugin installs the locked dependencies into its own managed cache (Tencent Cloud PyPI mirror first, official PyPI as fallback), so installing the lockfile into this bootstrap environment is optional:
|
|
26
26
|
|
|
27
27
|
```sh
|
|
28
28
|
python3 --version # must report 3.11 or newer
|
|
@@ -56,6 +56,20 @@ uv pip install --python .venv\Scripts\python.exe -r C:\absolute\path\to\dsh-visi
|
|
|
56
56
|
|
|
57
57
|
Point `runtime.python` at the same interpreter, save the Profile patch, and restart the Web Profile. Then open **Settings โ Vision Toolkit**: the Runtime panel should show the resolved interpreter and Python version, and **Run health check** plus **Test vision model** should complete without the Python-version error. A final smoke test is to place a PNG/JPEG in the session workspace and call `vision_glance`.
|
|
58
58
|
|
|
59
|
+
## Updating the standalone Python mirror
|
|
60
|
+
|
|
61
|
+
The standalone Python is pinned in `assets/python-bootstrap.json` and mirrored at `https://dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com` (Tencent Cloud COS, `ap-guangzhou`). When upgrading the Python build, sync the mirror with:
|
|
62
|
+
|
|
63
|
+
```sh
|
|
64
|
+
node scripts/python-bootstrap.mjs --write # fetch the latest GitHub release manifest
|
|
65
|
+
node scripts/python-bootstrap-mirror.mjs # download and sha256-verify every platform archive
|
|
66
|
+
# run the coscmd publish command printed by the script to push .python-bootstrap-dist/<buildTag>/
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
After pushing, verify each mirror URL returns `206`/`200` and that `Content-Length` matches the `size` field in the manifest.
|
|
70
|
+
|
|
71
|
+
The mirror bucket is public-read; archives live at `https://dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com/<buildTag>/`.
|
|
72
|
+
|
|
59
73
|
## Allowed input directories
|
|
60
74
|
|
|
61
75
|
The path fence automatically allows the session workspace and the platform temporary directory. On macOS/Linux the temporary root is `/tmp`. On Windows it is `TEMP`, then `TMP`, with the operating-system fallback if neither is set; model-generated `/tmp/...` paths are translated to that Windows directory before the normal realpath fence runs. No `allowedDirs` entry is needed for these platform temporary paths.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# ้
็ฝฎ Python ่ฟ่กๆถ
|
|
2
2
|
|
|
3
|
-
้ป่ฎคๆ
ๅตไธๆไปถไผ่ชๅจ้ๆฉ็ณป็ป Python 3.11
|
|
3
|
+
้ป่ฎคๆ
ๅตไธๆไปถไผ่ชๅจ้ๆฉ็ณป็ป Python 3.11+๏ผๆพไธๅฐๆถไปๅฝๅ
้ๅ๏ผ`dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com`๏ผไธ่ฝฝๆ็ฎก Python๏ผ้ๅไธๅฏ็จๆถ่ชๅจๅ้ๅฐ GitHub ๅฎๆนๅๅธๆบ๏ผๆฎ้็จๆทๆ ้้
็ฝฎๆฌ่ใไปฅไธๅ
ๅฎนไพ่ชๅจๅ็ฐๅคฑ่ดฅใ้่ฆๅบๅฎ็ๆฌๆไฝฟ็จๅค้จ่ฟ่กๆถ็้ซ็บงๅบๆฏๅ่ใ
|
|
4
4
|
|
|
5
5
|
ๆๅ
็ `managed` ่ฟ่กๆถไผๅๅปบ่ชๅทฑ็้็ฆป่ๆ็ฏๅขใ`runtime.python` ๆๅฎ็ๆฏๅผๅฏผๆๅทๆฐ่ฏฅ็ฏๅขๆถไฝฟ็จ็ Python ่งฃ้ๅจ๏ผๅนถไธไผๆ managed ่ฟ่กๆถๆฟๆขๆ็ณป็ป่งฃ้ๅจ็ๅ
จๅฑ site-packagesใๅฝ่ชๅจๅ็ฐๅคฑ่ดฅๆๆบๅจไธๆๅคไธช Python ๆถ๏ผๅบ่ฎพ็ฝฎ่ฟไธช้้กน๏ผ`runtime.mode: external` ไนไฝฟ็จ่ฏฅ่ฆ็ๅผใ
|
|
6
6
|
|
|
7
|
-
่ฆๆฑ Python 3.11 ๆๆด้ซ็ๆฌ๏ผ่ชๅจไธ่ฝฝ็ๆ็ฎก Python ไธบ 3.13.15๏ผไธ็ณป็ป Python ไธๆ ทๅช็จไบๅผๅฏผ้็ฆป็ฏๅขใไธ่ฎพ็ฝฎ่ฆ็ๅผๆถ๏ผๆไปถๅจ macOS/Linux ไธไพๆฌกๅฐ่ฏ `python3`ใ`python`๏ผๅจ Windows ไธไพๆฌกๅฐ่ฏ `python`ใ`py -3`ใ`python3
|
|
7
|
+
่ฆๆฑ Python 3.11 ๆๆด้ซ็ๆฌ๏ผ่ชๅจไธ่ฝฝ็ๆ็ฎก Python ไธบ 3.13.15๏ผไธ็ณป็ป Python ไธๆ ทๅช็จไบๅผๅฏผ้็ฆป็ฏๅขใไธ่ฎพ็ฝฎ่ฆ็ๅผๆถ๏ผๆไปถๅจ macOS/Linux ไธไพๆฌกๅฐ่ฏ `python3`ใ`python`๏ผๅจ Windows ไธไพๆฌกๅฐ่ฏ `python`ใ`py -3`ใ`python3`๏ผๅ
จ้จไธๅฏ็จๆถไผ่ชๅจไปๅฝๅ
้ๅไธ่ฝฝๆ็ฎก Python๏ผ้ๅไธๅฏ็จๆถๅ้ๅฐ GitHub ๅฎๆนๅๅธๆบใๆๅจ้
็ฝฎ็ๅผไผไฝไธบไธไธชๅฏๆง่กๆไปถๅๆ่ทฏๅพไผ ๅ
ฅ๏ผ่ไธๆฏไฝไธบๅธฆๅๆฐ็ Shell ๅฝไปค๏ผๅ ๆญค Windows ๅฏๅจๅจๅบๅกซๅ `py`๏ผไธ่ฆๅกซๅ `py -3`๏ผ๏ผ้่ฆๅบๅฎ็ๆฌๆถ๏ผ่ฏทๅกซๅ็ปๅฏน่ทฏๅพใ
|
|
8
8
|
|
|
9
9
|
ๅจ Profile patch ไธญ้
็ฝฎ๏ผ
|
|
10
10
|
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
# python: py
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
ๅฏนไบ managed ่ฟ่กๆถ๏ผๅๅปบ้กน็ฎๅ
่งฃ้ๅจๅนถๅฐ `runtime.python` ๆๅๅฎๅณๅฏใๆไปถไผๆ้ๅฎไพ่ตๅฎ่ฃ
ๅฐ่ชๅทฑ็ managed
|
|
25
|
+
ๅฏนไบ managed ่ฟ่กๆถ๏ผๅๅปบ้กน็ฎๅ
่งฃ้ๅจๅนถๅฐ `runtime.python` ๆๅๅฎๅณๅฏใๆไปถไผๆ้ๅฎไพ่ตๅฎ่ฃ
ๅฐ่ชๅทฑ็ managed ็ผๅญไธญ๏ผไผๅ
ไฝฟ็จ่
พ่ฎฏไบ PyPI ้ๅ๏ผ้ๅไธๅฏ็จๆถๅ้ๅฎๆน PyPI๏ผ๏ผๅ ๆญคๅฐ lockfile ๅฎ่ฃ
ๅฐ่ฟไธชๅผๅฏผ็ฏๅขๆฏๅฏ้็๏ผ
|
|
26
26
|
|
|
27
27
|
```sh
|
|
28
28
|
python3 --version # ๅฟ
้กปๆฏ 3.11 ๆๆด้ซ
|
|
@@ -56,6 +56,20 @@ uv pip install --python .venv\Scripts\python.exe -r C:\absolute\path\to\dsh-visi
|
|
|
56
56
|
|
|
57
57
|
ๆ `runtime.python` ๆๅๅไธไธช่งฃ้ๅจ๏ผไฟๅญ Profile patch ๅ้ๅฏ Web Profileใ็ถๅๆๅผ **่ฎพ็ฝฎ โ ่ง่งๅทฅๅ
ท**๏ผ่ฟ่กๆถ้ขๆฟๅบๆพ็คบๅฎ้
ไฝฟ็จ็่งฃ้ๅจๅ Python ็ๆฌ๏ผ็นๅป **่ฟ่กๅฅๅบทๆฃๆฅ** ๅ **ๆต่ฏ่ง่งๆจกๅ**๏ผ็กฎ่ฎคไธๅๅบ็ฐ Python ็ๆฌ้่ฏฏใๆๅๅฏๅฐไธๅผ PNG/JPEG ๆพๅ
ฅไผ่ฏๅทฅไฝๅบๅนถ่ฐ็จ `vision_glance` ๅๅ็ๆต่ฏใ
|
|
58
58
|
|
|
59
|
+
## ๆดๆฐๆ็ฎก Python ้ๅ
|
|
60
|
+
|
|
61
|
+
ๆ็ฎก Python ็ฑ `assets/python-bootstrap.json` ๅบๅฎ็ๆฌๅๅฝๅ
้ๅ๏ผ`https://dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com`๏ผ่
พ่ฎฏไบ COS `ap-guangzhou`๏ผๅ
ฑๅ็ปดๆคใๅ็บง Python ๆๅปบๅๆไปฅไธๆญฅ้ชคๅๆญฅ้ๅ๏ผ
|
|
62
|
+
|
|
63
|
+
```sh
|
|
64
|
+
node scripts/python-bootstrap.mjs --write # ไป GitHub ๆๅๆๆฐๆธ
ๅๅนถๅๅ manifest
|
|
65
|
+
node scripts/python-bootstrap-mirror.mjs # ไธ่ฝฝๅ
จ้จๅนณๅฐๅ็ผฉๅ
ๅนถๆ ก้ช sha256
|
|
66
|
+
# ๆง่ก่ๆฌๆๅๆๅฐ็ coscmd ๅๅธๅฝไปค๏ผๆ .python-bootstrap-dist/<buildTag>/ ๆจๅฐ COS ๆกถ
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
ๆจ้ๅ้ไธช้ช่ฏ้ๅ URL ่ฟๅ `206`/`200` ไธ `Content-Length` ไธ manifest ไธญ็ `size` ไธ่ดใ
|
|
70
|
+
|
|
71
|
+
้ๅๆกถไธบๅ
ฌๆ่ฏป๏ผๅฝๆกฃๅฐๅไธบ `https://dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com/<buildTag>/`ใ
|
|
72
|
+
|
|
59
73
|
## ๅ
่ฎธ่ฏปๅ็่พๅ
ฅ็ฎๅฝ
|
|
60
74
|
|
|
61
75
|
่ทฏๅพๅดๆ ไผ่ชๅจๅ
่ฎธไผ่ฏๅทฅไฝๅบๅๅนณๅฐไธดๆถ็ฎๅฝใmacOS/Linux ็ไธดๆถ็ฎๅฝๆ น่ทฏๅพๆฏ `/tmp`ใWindows ไพๆฌก่ฏปๅ `TEMP`ใ`TMP`๏ผไธค่
้ฝๆช่ฎพ็ฝฎๆถไฝฟ็จๆไฝ็ณป็ปๅ้ๅผ๏ผๆจกๅ็ๆ็ `/tmp/...` ่ทฏๅพไผๅ
ๆ ๅฐๅฐ่ฏฅ Windows ไธดๆถ็ฎๅฝ๏ผๅๆง่กๅธธ่ง realpath ่ทฏๅพๅดๆ ๆฃๆฅใ่ฟไบๅนณๅฐไธดๆถ่ทฏๅพๆ ้ๅ ๅ
ฅ `allowedDirs`ใ
|
package/lib/runtime-install.js
CHANGED
|
@@ -23,6 +23,7 @@ const BUNDLED_ROOT = join(PACKAGE_ROOT, 'vendor', 'agent-vision-toolkit');
|
|
|
23
23
|
const MANIFEST_PATH = join(BUNDLED_ROOT, 'UPSTREAM_MANIFEST.json');
|
|
24
24
|
const REQUIREMENTS_PATH = join(PACKAGE_ROOT, 'runtime', 'requirements.lock');
|
|
25
25
|
const PREPARE_TIMEOUT_MS = 10 * 60 * 1000;
|
|
26
|
+
const PYPI_MIRROR_BASE_URL = 'https://mirrors.cloud.tencent.com/pypi/simple';
|
|
26
27
|
const PROBE_TIMEOUT_MS = 30_000;
|
|
27
28
|
const LOCK_STALE_MS = 15 * 60 * 1000;
|
|
28
29
|
const LOCK_HEARTBEAT_MS = 5_000;
|
|
@@ -88,6 +89,17 @@ async function runCollected(ctx, argv, cwd, options = {}) {
|
|
|
88
89
|
clearTimeout(timer);
|
|
89
90
|
}
|
|
90
91
|
}
|
|
92
|
+
async function installDependenciesWithFallback(ctx, argv, stateRoot, env, label) {
|
|
93
|
+
let lastResult;
|
|
94
|
+
for (const indexUrl of [PYPI_MIRROR_BASE_URL, undefined]) {
|
|
95
|
+
const indexArgs = indexUrl === undefined ? [] : ['--index-url', indexUrl];
|
|
96
|
+
const result = await runCollected(ctx, [...argv, ...indexArgs], stateRoot, { timeoutMs: PREPARE_TIMEOUT_MS, env });
|
|
97
|
+
if (result.exitCode === 0 && !result.timedOut)
|
|
98
|
+
return;
|
|
99
|
+
lastResult = result;
|
|
100
|
+
}
|
|
101
|
+
throw new VisionToolkitError('runtime', `${label} failed to install managed runtime dependencies: ${(lastResult?.stderr ?? '').trim()}`);
|
|
102
|
+
}
|
|
91
103
|
async function readManifest(path = MANIFEST_PATH) {
|
|
92
104
|
let parsed;
|
|
93
105
|
try {
|
|
@@ -187,6 +199,8 @@ async function pythonMetadata(ctx, command, cwd) {
|
|
|
187
199
|
}
|
|
188
200
|
}
|
|
189
201
|
const PYTHON_BOOTSTRAP_MANIFEST_PATH = join(PACKAGE_ROOT, 'assets', 'python-bootstrap.json');
|
|
202
|
+
const GITHUB_PYTHON_DOWNLOAD_PREFIX = 'https://github.com/astral-sh/python-build-standalone/releases/download';
|
|
203
|
+
const PYTHON_MIRROR_BASE_URL = 'https://dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com';
|
|
190
204
|
const PYTHON_DOWNLOAD_TIMEOUT_MS = 10 * 60 * 1000;
|
|
191
205
|
const PYTHON_DOWNLOAD_ATTEMPTS = 3;
|
|
192
206
|
async function readPythonBootstrapManifest() {
|
|
@@ -206,6 +220,7 @@ async function readPythonBootstrapManifest() {
|
|
|
206
220
|
|| !/^3\.\d+\.\d+$/u.test(manifest.pythonVersion)
|
|
207
221
|
|| typeof manifest.buildTag !== 'string'
|
|
208
222
|
|| !/^\d{8}$/u.test(manifest.buildTag)
|
|
223
|
+
|| (manifest.mirrorBaseUrl !== undefined && manifest.mirrorBaseUrl !== PYTHON_MIRROR_BASE_URL)
|
|
209
224
|
|| typeof manifest.artifacts !== 'object'
|
|
210
225
|
|| manifest.artifacts === null) {
|
|
211
226
|
throw new VisionToolkitError('runtime', 'python bootstrap manifest is invalid');
|
|
@@ -214,7 +229,7 @@ async function readPythonBootstrapManifest() {
|
|
|
214
229
|
if (typeof artifact !== 'object'
|
|
215
230
|
|| artifact === null
|
|
216
231
|
|| typeof artifact.url !== 'string'
|
|
217
|
-
|| !artifact.url.startsWith(
|
|
232
|
+
|| !artifact.url.startsWith(`${GITHUB_PYTHON_DOWNLOAD_PREFIX}/`)
|
|
218
233
|
|| typeof artifact.sha256 !== 'string'
|
|
219
234
|
|| !/^[a-f0-9]{64}$/u.test(artifact.sha256)
|
|
220
235
|
|| !Number.isInteger(artifact.size)
|
|
@@ -251,6 +266,7 @@ const DOWNLOAD_HOSTS = new Set([
|
|
|
251
266
|
'github.com',
|
|
252
267
|
'objects.githubusercontent.com',
|
|
253
268
|
'release-assets.githubusercontent.com',
|
|
269
|
+
'dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com',
|
|
254
270
|
]);
|
|
255
271
|
async function defaultDownloadRequest(url, signal) {
|
|
256
272
|
const dispatcher = new EnvHttpProxyAgent();
|
|
@@ -259,7 +275,7 @@ async function defaultDownloadRequest(url, signal) {
|
|
|
259
275
|
for (let redirects = 0;; redirects++) {
|
|
260
276
|
const host = new URL(current).hostname;
|
|
261
277
|
if (!DOWNLOAD_HOSTS.has(host))
|
|
262
|
-
throw new Error(`download redirected outside
|
|
278
|
+
throw new Error(`download redirected outside the allowlist: ${host}`);
|
|
263
279
|
const response = await undiciRequest(current, {
|
|
264
280
|
dispatcher,
|
|
265
281
|
signal,
|
|
@@ -287,11 +303,11 @@ async function defaultDownloadRequest(url, signal) {
|
|
|
287
303
|
throw error;
|
|
288
304
|
}
|
|
289
305
|
}
|
|
290
|
-
async function downloadBundledPythonOnce(artifact, destination, requestImpl = defaultDownloadRequest) {
|
|
306
|
+
async function downloadBundledPythonOnce(url, artifact, destination, requestImpl = defaultDownloadRequest) {
|
|
291
307
|
const signal = AbortSignal.timeout(PYTHON_DOWNLOAD_TIMEOUT_MS);
|
|
292
308
|
let response;
|
|
293
309
|
try {
|
|
294
|
-
response = await requestImpl(
|
|
310
|
+
response = await requestImpl(url, signal);
|
|
295
311
|
}
|
|
296
312
|
catch (error) {
|
|
297
313
|
throw new Error(`download request failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
@@ -318,11 +334,18 @@ async function downloadBundledPythonOnce(artifact, destination, requestImpl = de
|
|
|
318
334
|
await response.close();
|
|
319
335
|
}
|
|
320
336
|
}
|
|
321
|
-
async function downloadBundledPython(artifact, destination, requestImpl) {
|
|
337
|
+
async function downloadBundledPython(manifest, artifact, destination, requestImpl) {
|
|
338
|
+
const sources = [
|
|
339
|
+
...(manifest.mirrorBaseUrl === undefined
|
|
340
|
+
? []
|
|
341
|
+
: [artifact.url.replace(GITHUB_PYTHON_DOWNLOAD_PREFIX, manifest.mirrorBaseUrl)]),
|
|
342
|
+
artifact.url,
|
|
343
|
+
];
|
|
322
344
|
let lastError;
|
|
323
345
|
for (let attempt = 0; attempt < PYTHON_DOWNLOAD_ATTEMPTS; attempt++) {
|
|
346
|
+
const source = sources[Math.min(attempt, sources.length - 1)] ?? artifact.url;
|
|
324
347
|
try {
|
|
325
|
-
await downloadBundledPythonOnce(artifact, destination, requestImpl);
|
|
348
|
+
await downloadBundledPythonOnce(source, artifact, destination, requestImpl);
|
|
326
349
|
return;
|
|
327
350
|
}
|
|
328
351
|
catch (error) {
|
|
@@ -416,7 +439,7 @@ export async function acquireBundledPython(ctx, stateRoot, cwd, manifestOverride
|
|
|
416
439
|
const extractDir = join(work, 'extract');
|
|
417
440
|
await mkdir(extractDir, { recursive: true });
|
|
418
441
|
try {
|
|
419
|
-
await downloadBundledPython(artifact, archive, requestImpl ?? defaultDownloadRequest);
|
|
442
|
+
await downloadBundledPython(manifest, artifact, archive, requestImpl ?? defaultDownloadRequest);
|
|
420
443
|
}
|
|
421
444
|
catch (error) {
|
|
422
445
|
throw new VisionToolkitError('runtime', `bundled Python ${manifest.pythonVersion} could not be downloaded for ${target} (${error instanceof Error ? error.message : String(error)}); install Python 3.11+ or configure runtime.python`, { cause: error });
|
|
@@ -756,10 +779,7 @@ async function prepareManaged(ctx, config, manifest) {
|
|
|
756
779
|
if (create.exitCode !== 0 || create.timedOut) {
|
|
757
780
|
throw new VisionToolkitError('runtime', `uv failed to create the managed runtime: ${create.stderr.trim()}`);
|
|
758
781
|
}
|
|
759
|
-
|
|
760
|
-
if (install.exitCode !== 0 || install.timedOut) {
|
|
761
|
-
throw new VisionToolkitError('runtime', `uv failed to install managed runtime dependencies: ${install.stderr.trim()}`);
|
|
762
|
-
}
|
|
782
|
+
await installDependenciesWithFallback(ctx, ['uv', 'pip', 'install', '--python', venvPython(staging), '--requirement', REQUIREMENTS_PATH], stateRoot, installEnv, 'uv');
|
|
763
783
|
manager = 'uv';
|
|
764
784
|
created = true;
|
|
765
785
|
}
|
|
@@ -782,10 +802,7 @@ async function prepareManaged(ctx, config, manifest) {
|
|
|
782
802
|
if (pipBootstrap.exitCode !== 0 || pipBootstrap.timedOut) {
|
|
783
803
|
throw new VisionToolkitError('runtime', `Python failed to bootstrap pip in the managed runtime: ${pipBootstrap.stderr.trim()}`);
|
|
784
804
|
}
|
|
785
|
-
|
|
786
|
-
if (install.exitCode !== 0 || install.timedOut) {
|
|
787
|
-
throw new VisionToolkitError('runtime', `pip failed to install managed runtime dependencies: ${install.stderr.trim()}`);
|
|
788
|
-
}
|
|
805
|
+
await installDependenciesWithFallback(ctx, [venvPython(staging), '-m', 'pip', 'install', '--disable-pip-version-check', '--no-input', '-r', REQUIREMENTS_PATH], stateRoot, installEnv, 'pip');
|
|
789
806
|
}
|
|
790
807
|
const stagedPython = { program: venvPython(staging), prefix: [], display: venvPython(staging) };
|
|
791
808
|
const metadata = await pythonMetadata(ctx, stagedPython, cleanHome);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-install.js","sourceRoot":"","sources":["../src/runtime-install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runtime-install.js","sourceRoot":"","sources":["../src/runtime-install.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,6 +50,8 @@ interface PythonBootstrapManifest {
|
|
|
50
50
|
schemaVersion: 1;
|
|
51
51
|
pythonVersion: string;
|
|
52
52
|
buildTag: string;
|
|
53
|
+
/** Optional domestic mirror base that replaces the GitHub download prefix. */
|
|
54
|
+
mirrorBaseUrl?: string;
|
|
53
55
|
artifacts: Record<string, PythonBootstrapArtifact>;
|
|
54
56
|
}
|
|
55
57
|
/** Map Node platform/arch to the pinned artifact name, including musl Linux. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-install.d.ts","sourceRoot":"","sources":["../../src/runtime-install.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwBH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAIlD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AAI9D,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,8EAA8E;AAC9E,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,SAAS,GAAG,UAAU,CAAA;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,cAAc,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACrC;AASD,UAAU,gBAAgB;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;IACrB,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAC9D;
|
|
1
|
+
{"version":3,"file":"runtime-install.d.ts","sourceRoot":"","sources":["../../src/runtime-install.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwBH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAIlD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AAI9D,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,8EAA8E;AAC9E,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,SAAS,GAAG,UAAU,CAAA;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,cAAc,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACrC;AASD,UAAU,gBAAgB;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;IACrB,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAC9D;AAsBD,uDAAuD;AACvD,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAE9D;AAMD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,UAAU,CAazE;AA8GD,kFAAkF;AAClF,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CA0BvE;AA4BD,UAAU,uBAAuB;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb;AAED,UAAU,uBAAuB;IAC/B,aAAa,EAAE,CAAC,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;CACnD;AAgDD,gFAAgF;AAChF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAE3F;AAmBD,UAAU,gBAAgB;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAA;IACtD,IAAI,EAAE,MAAM,CAAC,cAAc,CAAA;IAC3B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3B;AAED,KAAK,eAAe,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;AA2JtF,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,gBAAgB,CAAC,EAAE,uBAAuB,EAC1C,WAAW,CAAC,EAAE,eAAe,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAmEvD;AAED,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,OAAO,EACZ,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,GAAG,EAAE,MAAM,EACX,gBAAgB,CAAC,EAAE,uBAAuB,EAC1C,WAAW,CAAC,EAAE,eAAe,GAC5B,OAAO,CAAC;IAAE,OAAO,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAwCrF;AAED,kFAAkF;AAClF,wBAAgB,sBAAsB,IAAI,MAAM,CAI/C;AAYD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAItE;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAI5F;AAgdD,gFAAgF;AAChF,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,uBAAuB,CAAC,CAKlC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anionex/dsh-vision-toolkit",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.36",
|
|
4
4
|
"description": "DeepSeek Harness-native integration for agent-vision-toolkit: image Q&A, OCR, grounding, UI restoration, pixel diff, Artifacts, and Web UI.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"deepseek",
|
|
@@ -803,10 +803,33 @@ index 3261fcf..68025be 100644
|
|
|
803
803
|
nodes, labels, groups, edges, directions, and edge labels.
|
|
804
804
|
6. Generate the Mermaid, Graphviz, or requested structure from that inventory.
|
|
805
805
|
diff --git a/references/restore-ui.md b/references/restore-ui.md
|
|
806
|
-
index f9ec11a..
|
|
806
|
+
index f9ec11a..bfc63c0e4eacbd3a5eaf9453ec542d3b5380875a 100644
|
|
807
807
|
--- a/references/restore-ui.md
|
|
808
808
|
+++ b/references/restore-ui.md
|
|
809
|
-
@@ -
|
|
809
|
+
@@ -10,11 +10,13 @@
|
|
810
|
+
## Choose the restore mode
|
|
811
|
+
-
|
|
812
|
+
-- Use **fast restore mode** when the user asks for a quick, rough,
|
|
813
|
+
- approximate, prototype, or first-pass reconstruction, or explicitly values
|
|
814
|
+
- speed over fidelity. Its target is a recognizable screenshot in about three
|
|
815
|
+
- minutes when the project already runs.
|
|
816
|
+
-- Use the **standard restore workflow** below when the user asks for close,
|
|
817
|
+
- precise, pixel-level, or production-ready alignment, or does not opt into a
|
|
818
|
+
- faster approximation.
|
|
819
|
+
-
|
|
820
|
+
+
|
|
821
|
+
+- Use **fast restore mode** when the user asks for a quick, rough,
|
|
822
|
+
+ approximate, prototype, or first-pass reconstruction, explicitly values
|
|
823
|
+
+ speed over fidelity, or the reference image itself shows a floating
|
|
824
|
+
+ speed-intent control such as "ๅฟซ้่ฟๅไธบ HTML" / "ๅฟซ้็ๆ" / "quick
|
|
825
|
+
+ restore" overlay. Its target is a recognizable screenshot in about
|
|
826
|
+
+ three minutes when the project already runs.
|
|
827
|
+
+- Use the **standard restore workflow** below when the user asks for close,
|
|
828
|
+
+ precise, pixel-level, or production-ready alignment, or does not opt into a
|
|
829
|
+
+ faster approximation.
|
|
830
|
+
+
|
|
831
|
+
## Fast restore mode: first screenshot in about three minutes
|
|
832
|
+
@@ -28,17 +30,18 @@
|
|
810
833
|
1. Inspect the existing frontend stack, component library, icon set, source
|
|
811
834
|
assets, and design tokens before writing code, but stop searching as soon as
|
|
812
835
|
a usable local primitive is found.
|
|
@@ -833,7 +856,7 @@ index f9ec11a..69627895161fc1b57c6241665255fdf86ae1c1e5 100644
|
|
|
833
856
|
|
|
834
857
|
### Build the approximation
|
|
835
858
|
|
|
836
|
-
@@ -47,8 +
|
|
859
|
+
@@ -47,8 +50,9 @@
|
|
837
860
|
when zoomed in.
|
|
838
861
|
2. Reuse the project's existing components and CSS tokens. If its frontend or
|
|
839
862
|
icon library contains a reasonably similar component or icon, use it
|
|
@@ -845,7 +868,7 @@ index f9ec11a..69627895161fc1b57c6241665255fdf86ae1c1e5 100644
|
|
|
845
868
|
3. Use nearby existing palette tokens or visually similar CSS values. Exact
|
|
846
869
|
sampled hex values, gradients, subtle borders, and shadow opacity are out of
|
|
847
870
|
scope unless one of them defines the whole composition.
|
|
848
|
-
@@ -57,7 +
|
|
871
|
+
@@ -57,7 +61,7 @@
|
|
849
872
|
|
|
850
873
|
### Render once, fix once, deliver
|
|
851
874
|
|
|
@@ -854,7 +877,7 @@ index f9ec11a..69627895161fc1b57c6241665255fdf86ae1c1e5 100644
|
|
|
854
877
|
existing browser setup.
|
|
855
878
|
2. Inspect the screenshot once. If there is an obvious structural failure such
|
|
856
879
|
as a missing major region, broken wrapping, or a wildly wrong scale, make
|
|
857
|
-
@@ -66,7 +
|
|
880
|
+
@@ -66,7 +70,7 @@
|
|
858
881
|
small color, icon, font, shadow, radius, or spacing differences.
|
|
859
882
|
|
|
860
883
|
A practical time box is roughly 30 seconds for project inspection plus
|
|
@@ -863,7 +886,7 @@ index f9ec11a..69627895161fc1b57c6241665255fdf86ae1c1e5 100644
|
|
|
863
886
|
rendering, one correction, and screenshot delivery. Dependency installation or
|
|
864
887
|
a project that does not already run may extend that target; do not compensate
|
|
865
888
|
by silently switching back to a long precision loop.
|
|
866
|
-
@@ -112,18 +
|
|
889
|
+
@@ -112,18 +116,19 @@
|
|
867
890
|
### 2. Establish the coordinate system
|
|
868
891
|
|
|
869
892
|
Record the reference image dimensions and the target viewport. Screenshots may
|
|
@@ -891,7 +914,7 @@ index f9ec11a..69627895161fc1b57c6241665255fdf86ae1c1e5 100644
|
|
|
891
914
|
|
|
892
915
|
Treat model boxes as approximate handles. Use them to organize the page, but
|
|
893
916
|
do not mistake their final few pixels for measured boundaries.
|
|
894
|
-
@@ -141,15 +
|
|
917
|
+
@@ -141,15 +146,11 @@
|
|
895
918
|
extraction, tighten the final region to the visual's own ink; adjacent text or
|
|
896
919
|
rules inside the region can become foreground components too.
|
|
897
920
|
|
|
@@ -912,7 +935,7 @@ index f9ec11a..69627895161fc1b57c6241665255fdf86ae1c1e5 100644
|
|
|
912
935
|
```
|
|
913
936
|
|
|
914
937
|
Inspect the transparent result before use. Confirm that the whole visual is
|
|
915
|
-
@@ -162,8 +
|
|
938
|
+
@@ -162,8 +163,8 @@
|
|
916
939
|
- Follow the project's existing framework and component patterns.
|
|
917
940
|
- Build content, interaction, responsive layout, borders, shadows, and simple
|
|
918
941
|
shapes natively.
|
|
@@ -923,7 +946,7 @@ index f9ec11a..69627895161fc1b57c6241665255fdf86ae1c1e5 100644
|
|
|
923
946
|
- Place extracted assets with explicit logical dimensions. Preserve their
|
|
924
947
|
aspect ratio and avoid baking surrounding whitespace into the asset.
|
|
925
948
|
- Match structure and proportions before tuning small spacing.
|
|
926
|
-
@@ -172,10 +
|
|
949
|
+
@@ -172,10 +173,10 @@
|
|
927
950
|
|
|
928
951
|
For an existing implementation, start here.
|
|
929
952
|
|
|
@@ -936,7 +959,7 @@ index f9ec11a..69627895161fc1b57c6241665255fdf86ae1c1e5 100644
|
|
|
936
959
|
spot or explain.
|
|
937
960
|
3. Fix material discrepancies: missing or wrong content, incorrect hierarchy,
|
|
938
961
|
broken wrapping, visibly wrong alignment or scale, wrong component state,
|
|
939
|
-
@@ -185,7 +
|
|
962
|
+
@@ -185,7 +186,7 @@
|
|
940
963
|
rasterization, antialiasing, subpixel placement, or another imperceptible
|
|
941
964
|
rendering detail.
|
|
942
965
|
|
package/src/runtime-install.ts
CHANGED
|
@@ -84,6 +84,7 @@ const BUNDLED_ROOT = join(PACKAGE_ROOT, 'vendor', 'agent-vision-toolkit')
|
|
|
84
84
|
const MANIFEST_PATH = join(BUNDLED_ROOT, 'UPSTREAM_MANIFEST.json')
|
|
85
85
|
const REQUIREMENTS_PATH = join(PACKAGE_ROOT, 'runtime', 'requirements.lock')
|
|
86
86
|
const PREPARE_TIMEOUT_MS = 10 * 60 * 1000
|
|
87
|
+
const PYPI_MIRROR_BASE_URL = 'https://mirrors.cloud.tencent.com/pypi/simple'
|
|
87
88
|
const PROBE_TIMEOUT_MS = 30_000
|
|
88
89
|
const LOCK_STALE_MS = 15 * 60 * 1000
|
|
89
90
|
const LOCK_HEARTBEAT_MS = 5_000
|
|
@@ -157,6 +158,26 @@ async function runCollected(
|
|
|
157
158
|
}
|
|
158
159
|
}
|
|
159
160
|
|
|
161
|
+
async function installDependenciesWithFallback(
|
|
162
|
+
ctx: Context,
|
|
163
|
+
argv: readonly string[],
|
|
164
|
+
stateRoot: string,
|
|
165
|
+
env: NodeJS.ProcessEnv,
|
|
166
|
+
label: string,
|
|
167
|
+
): Promise<void> {
|
|
168
|
+
let lastResult: CommandResult | undefined
|
|
169
|
+
for (const indexUrl of [PYPI_MIRROR_BASE_URL, undefined]) {
|
|
170
|
+
const indexArgs = indexUrl === undefined ? [] : ['--index-url', indexUrl]
|
|
171
|
+
const result = await runCollected(ctx, [...argv, ...indexArgs], stateRoot, { timeoutMs: PREPARE_TIMEOUT_MS, env })
|
|
172
|
+
if (result.exitCode === 0 && !result.timedOut) return
|
|
173
|
+
lastResult = result
|
|
174
|
+
}
|
|
175
|
+
throw new VisionToolkitError(
|
|
176
|
+
'runtime',
|
|
177
|
+
`${label} failed to install managed runtime dependencies: ${(lastResult?.stderr ?? '').trim()}`,
|
|
178
|
+
)
|
|
179
|
+
}
|
|
180
|
+
|
|
160
181
|
async function readManifest(path = MANIFEST_PATH): Promise<UpstreamManifest> {
|
|
161
182
|
let parsed: unknown
|
|
162
183
|
try {
|
|
@@ -270,10 +291,14 @@ interface PythonBootstrapManifest {
|
|
|
270
291
|
schemaVersion: 1
|
|
271
292
|
pythonVersion: string
|
|
272
293
|
buildTag: string
|
|
294
|
+
/** Optional domestic mirror base that replaces the GitHub download prefix. */
|
|
295
|
+
mirrorBaseUrl?: string
|
|
273
296
|
artifacts: Record<string, PythonBootstrapArtifact>
|
|
274
297
|
}
|
|
275
298
|
|
|
276
299
|
const PYTHON_BOOTSTRAP_MANIFEST_PATH = join(PACKAGE_ROOT, 'assets', 'python-bootstrap.json')
|
|
300
|
+
const GITHUB_PYTHON_DOWNLOAD_PREFIX = 'https://github.com/astral-sh/python-build-standalone/releases/download'
|
|
301
|
+
const PYTHON_MIRROR_BASE_URL = 'https://dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com'
|
|
277
302
|
const PYTHON_DOWNLOAD_TIMEOUT_MS = 10 * 60 * 1000
|
|
278
303
|
const PYTHON_DOWNLOAD_ATTEMPTS = 3
|
|
279
304
|
|
|
@@ -294,6 +319,7 @@ async function readPythonBootstrapManifest(): Promise<PythonBootstrapManifest> {
|
|
|
294
319
|
|| !/^3\.\d+\.\d+$/u.test(manifest.pythonVersion)
|
|
295
320
|
|| typeof manifest.buildTag !== 'string'
|
|
296
321
|
|| !/^\d{8}$/u.test(manifest.buildTag)
|
|
322
|
+
|| (manifest.mirrorBaseUrl !== undefined && manifest.mirrorBaseUrl !== PYTHON_MIRROR_BASE_URL)
|
|
297
323
|
|| typeof manifest.artifacts !== 'object'
|
|
298
324
|
|| manifest.artifacts === null
|
|
299
325
|
) {
|
|
@@ -304,7 +330,7 @@ async function readPythonBootstrapManifest(): Promise<PythonBootstrapManifest> {
|
|
|
304
330
|
typeof artifact !== 'object'
|
|
305
331
|
|| artifact === null
|
|
306
332
|
|| typeof artifact.url !== 'string'
|
|
307
|
-
|| !artifact.url.startsWith(
|
|
333
|
+
|| !artifact.url.startsWith(`${GITHUB_PYTHON_DOWNLOAD_PREFIX}/`)
|
|
308
334
|
|| typeof artifact.sha256 !== 'string'
|
|
309
335
|
|| !/^[a-f0-9]{64}$/u.test(artifact.sha256)
|
|
310
336
|
|| !Number.isInteger(artifact.size)
|
|
@@ -351,6 +377,7 @@ const DOWNLOAD_HOSTS = new Set([
|
|
|
351
377
|
'github.com',
|
|
352
378
|
'objects.githubusercontent.com',
|
|
353
379
|
'release-assets.githubusercontent.com',
|
|
380
|
+
'dsh-vision-python-bootstrap-1317715800.cos.ap-guangzhou.myqcloud.com',
|
|
354
381
|
])
|
|
355
382
|
|
|
356
383
|
async function defaultDownloadRequest(url: string, signal: AbortSignal): Promise<DownloadResponse> {
|
|
@@ -359,7 +386,7 @@ async function defaultDownloadRequest(url: string, signal: AbortSignal): Promise
|
|
|
359
386
|
try {
|
|
360
387
|
for (let redirects = 0; ; redirects++) {
|
|
361
388
|
const host = new URL(current).hostname
|
|
362
|
-
if (!DOWNLOAD_HOSTS.has(host)) throw new Error(`download redirected outside
|
|
389
|
+
if (!DOWNLOAD_HOSTS.has(host)) throw new Error(`download redirected outside the allowlist: ${host}`)
|
|
363
390
|
const response = await undiciRequest(current, {
|
|
364
391
|
dispatcher,
|
|
365
392
|
signal,
|
|
@@ -388,6 +415,7 @@ async function defaultDownloadRequest(url: string, signal: AbortSignal): Promise
|
|
|
388
415
|
}
|
|
389
416
|
|
|
390
417
|
async function downloadBundledPythonOnce(
|
|
418
|
+
url: string,
|
|
391
419
|
artifact: PythonBootstrapArtifact,
|
|
392
420
|
destination: string,
|
|
393
421
|
requestImpl: DownloadRequest = defaultDownloadRequest,
|
|
@@ -395,7 +423,7 @@ async function downloadBundledPythonOnce(
|
|
|
395
423
|
const signal = AbortSignal.timeout(PYTHON_DOWNLOAD_TIMEOUT_MS)
|
|
396
424
|
let response: DownloadResponse
|
|
397
425
|
try {
|
|
398
|
-
response = await requestImpl(
|
|
426
|
+
response = await requestImpl(url, signal)
|
|
399
427
|
} catch (error) {
|
|
400
428
|
throw new Error(`download request failed: ${error instanceof Error ? error.message : String(error)}`)
|
|
401
429
|
}
|
|
@@ -419,14 +447,22 @@ async function downloadBundledPythonOnce(
|
|
|
419
447
|
}
|
|
420
448
|
|
|
421
449
|
async function downloadBundledPython(
|
|
450
|
+
manifest: PythonBootstrapManifest,
|
|
422
451
|
artifact: PythonBootstrapArtifact,
|
|
423
452
|
destination: string,
|
|
424
453
|
requestImpl: DownloadRequest,
|
|
425
454
|
): Promise<void> {
|
|
455
|
+
const sources = [
|
|
456
|
+
...(manifest.mirrorBaseUrl === undefined
|
|
457
|
+
? []
|
|
458
|
+
: [artifact.url.replace(GITHUB_PYTHON_DOWNLOAD_PREFIX, manifest.mirrorBaseUrl)]),
|
|
459
|
+
artifact.url,
|
|
460
|
+
]
|
|
426
461
|
let lastError: unknown
|
|
427
462
|
for (let attempt = 0; attempt < PYTHON_DOWNLOAD_ATTEMPTS; attempt++) {
|
|
463
|
+
const source = sources[Math.min(attempt, sources.length - 1)] ?? artifact.url
|
|
428
464
|
try {
|
|
429
|
-
await downloadBundledPythonOnce(artifact, destination, requestImpl)
|
|
465
|
+
await downloadBundledPythonOnce(source, artifact, destination, requestImpl)
|
|
430
466
|
return
|
|
431
467
|
} catch (error) {
|
|
432
468
|
lastError = error
|
|
@@ -523,7 +559,7 @@ export async function acquireBundledPython(
|
|
|
523
559
|
const extractDir = join(work, 'extract')
|
|
524
560
|
await mkdir(extractDir, { recursive: true })
|
|
525
561
|
try {
|
|
526
|
-
await downloadBundledPython(artifact, archive, requestImpl ?? defaultDownloadRequest)
|
|
562
|
+
await downloadBundledPython(manifest, artifact, archive, requestImpl ?? defaultDownloadRequest)
|
|
527
563
|
} catch (error) {
|
|
528
564
|
throw new VisionToolkitError(
|
|
529
565
|
'runtime',
|
|
@@ -917,15 +953,13 @@ async function prepareManaged(
|
|
|
917
953
|
if (create.exitCode !== 0 || create.timedOut) {
|
|
918
954
|
throw new VisionToolkitError('runtime', `uv failed to create the managed runtime: ${create.stderr.trim()}`)
|
|
919
955
|
}
|
|
920
|
-
|
|
956
|
+
await installDependenciesWithFallback(
|
|
921
957
|
ctx,
|
|
922
958
|
['uv', 'pip', 'install', '--python', venvPython(staging), '--requirement', REQUIREMENTS_PATH],
|
|
923
959
|
stateRoot,
|
|
924
|
-
|
|
960
|
+
installEnv,
|
|
961
|
+
'uv',
|
|
925
962
|
)
|
|
926
|
-
if (install.exitCode !== 0 || install.timedOut) {
|
|
927
|
-
throw new VisionToolkitError('runtime', `uv failed to install managed runtime dependencies: ${install.stderr.trim()}`)
|
|
928
|
-
}
|
|
929
963
|
manager = 'uv'
|
|
930
964
|
created = true
|
|
931
965
|
}
|
|
@@ -956,15 +990,13 @@ async function prepareManaged(
|
|
|
956
990
|
if (pipBootstrap.exitCode !== 0 || pipBootstrap.timedOut) {
|
|
957
991
|
throw new VisionToolkitError('runtime', `Python failed to bootstrap pip in the managed runtime: ${pipBootstrap.stderr.trim()}`)
|
|
958
992
|
}
|
|
959
|
-
|
|
993
|
+
await installDependenciesWithFallback(
|
|
960
994
|
ctx,
|
|
961
995
|
[venvPython(staging), '-m', 'pip', 'install', '--disable-pip-version-check', '--no-input', '-r', REQUIREMENTS_PATH],
|
|
962
996
|
stateRoot,
|
|
963
|
-
|
|
997
|
+
installEnv,
|
|
998
|
+
'pip',
|
|
964
999
|
)
|
|
965
|
-
if (install.exitCode !== 0 || install.timedOut) {
|
|
966
|
-
throw new VisionToolkitError('runtime', `pip failed to install managed runtime dependencies: ${install.stderr.trim()}`)
|
|
967
|
-
}
|
|
968
1000
|
}
|
|
969
1001
|
const stagedPython: RuntimeCommand = { program: venvPython(staging), prefix: [], display: venvPython(staging) }
|
|
970
1002
|
const metadata = await pythonMetadata(ctx, stagedPython, cleanHome)
|