meshy-dsh 0.1.0 → 0.1.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/package.json +2 -2
- package/skills/meshy-3d-generation/SKILL.md +5 -4
- package/skills/meshy-3d-generation/references/delivery.md +3 -1
- package/skills/meshy-3d-generation/references/setup.md +40 -14
- package/skills/meshy-3d-generation/references/troubleshooting.md +4 -4
- package/skills/meshy-3d-printing/SKILL.md +5 -4
- package/skills/meshy-3d-printing/references/delivery.md +3 -1
- package/skills/meshy-3d-printing/references/setup.md +40 -14
- package/skills/meshy-3d-printing/references/troubleshooting.md +4 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "meshy-dsh",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Meshy skills for DeepSeek Harness: textured, rigged and animated 3D models or print-ready files from text or images, through meshy-cli.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"dsh-plugin",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"smoke": "node scripts/smoke.mjs"
|
|
45
45
|
},
|
|
46
46
|
"meshy": {
|
|
47
|
-
"skills": "meshy-dev/meshy-3d-agent#v0.8.
|
|
47
|
+
"skills": "meshy-dev/meshy-3d-agent#v0.8.1"
|
|
48
48
|
},
|
|
49
49
|
"dsh": {
|
|
50
50
|
"bundle": {
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
name: meshy-3d-generation
|
|
3
3
|
description: "Generates and edits digital 3D assets with the Meshy CLI: text-to-3D and image-to-3D models, texturing, remeshing and LODs, UV unwrapping, format conversion (GLB, FBX, OBJ, USDZ, STL, 3MF, Blender), rigging, animation, motion clips from text and reference images. Use when the user asks to make, texture, rig, animate or convert a 3D model or game asset. For physical 3D printing use meshy-3d-printing."
|
|
4
4
|
license: MIT
|
|
5
|
-
compatibility: "Needs Node.js 22.12+ and the Meshy CLI 0.7.x, 0.7.
|
|
5
|
+
compatibility: "Needs Node.js 22.12+ and the Meshy CLI 0.7.x, 0.7.3 or later (npm install -g meshy-cli@0.7); network access to the Meshy API."
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Meshy 3D Generation
|
|
9
9
|
|
|
10
|
-
Use Meshy CLI **0.7** (0.7.
|
|
10
|
+
Use Meshy CLI **0.7** (0.7.3 or later) to turn the user's request into a delivered asset. Completion means
|
|
11
11
|
saving the requested files in the requested location, inspecting an available preview, and
|
|
12
12
|
finishing any project integration the user requested. Login or task submission alone is not
|
|
13
13
|
completion. Choose the shortest suitable pipeline and reuse existing assets for follow-ups.
|
|
@@ -29,13 +29,14 @@ existing GLB needs no extra format conversion. Use command help when parameters
|
|
|
29
29
|
## First use and authorization
|
|
30
30
|
|
|
31
31
|
Before the first command run `meshy --version`; no need to ask. When `meshy` is missing or
|
|
32
|
-
older than 0.7.
|
|
32
|
+
older than 0.7.3, install the newest 0.7.x with `npm install -g meshy-cli@0.7` and say so in
|
|
33
33
|
one line; Setup covers a refused install and a CLI of 0.8 or newer. Reuse a verified session. If login is
|
|
34
34
|
needed, follow Setup and run `auth login --device` (adding `--region cn` for a user in mainland
|
|
35
35
|
China) in a persistent tool session. Show its
|
|
36
36
|
verification URL and user code in **commentary/progress, not a final answer**. Await that same
|
|
37
37
|
session in this turn until it exits, verify `auth status`, then continue the original request.
|
|
38
|
-
A background process cannot resume a finished turn; do not require a "done" chat message
|
|
38
|
+
A background process cannot resume a finished turn; do not require a "done" chat message, except in
|
|
39
|
+
Setup's two-step sign-in for a user on a remote chat (a phone through a chat bot).
|
|
39
40
|
Browser approval stays with the user; credentials never belong in chat.
|
|
40
41
|
|
|
41
42
|
## Execution boundaries
|
|
@@ -99,7 +99,9 @@ Deliver four things, every time:
|
|
|
99
99
|
|
|
100
100
|
1. **The model file**, at the path the user asked for, written as a plain path in backticks.
|
|
101
101
|
Do not present it as a clickable link: hosts open such links in a text/preview pane that
|
|
102
|
-
cannot render a binary mesh, and it looks broken.
|
|
102
|
+
cannot render a binary mesh, and it looks broken. A host with a tool that delivers files to the
|
|
103
|
+
user (dsh's `present`) gets the model through that tool as well, so it opens from the
|
|
104
|
+
conversation. Offer the next real action instead —
|
|
103
105
|
reveal it in the file manager (`open -R <path>` on macOS, `explorer /select,<path>` on
|
|
104
106
|
Windows), open it in a local 3D tool, or wire it into the project.
|
|
105
107
|
2. **The preview**, shown inline when one exists, or an explicit note that none does.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Shared by the generation and print workflows. Three things are settled before any job
|
|
4
4
|
starts: **how to run the CLI**, **whether a session already exists**, and **where files go**.
|
|
5
|
-
The supported CLI is **0.7.x, from 0.7.
|
|
5
|
+
The supported CLI is **0.7.x, from 0.7.3,** on **Node.js 22.12 or newer**. No Python, request wrapper or
|
|
6
6
|
separate token store is involved.
|
|
7
7
|
|
|
8
8
|
Contents: 1 runner · 2 reuse a session · 3 first login · 4 where files go · 5 one session
|
|
@@ -17,26 +17,29 @@ meshy --version
|
|
|
17
17
|
|
|
18
18
|
| Observation | What to do |
|
|
19
19
|
|---|---|
|
|
20
|
-
| `meshy --version` prints 0.7.
|
|
21
|
-
| no `meshy` command, or a version older than 0.7.
|
|
22
|
-
| 0.8 or newer | keep it, since something else may rely on it, and run the temporary
|
|
20
|
+
| `meshy --version` prints 0.7.3 or a later 0.7.x | run `meshy` |
|
|
21
|
+
| no `meshy` command, or a version older than 0.7.3 | install the newest 0.7.x (below), then run `meshy` |
|
|
22
|
+
| 0.8 or newer | keep it, since something else may rely on it, and run the temporary package |
|
|
23
23
|
| no Node.js, or Node older than 22.12 | stop and report it: the user installs Node.js 22.12+ |
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
26
|
npm install -g meshy-cli@0.7
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
Check and install without asking first; say in one line that you are installing it.
|
|
30
|
-
|
|
29
|
+
Check and install without asking first; say in one line that you are installing it. Install at
|
|
30
|
+
most once: when `meshy --version` still reports a version older than 0.7.3 afterwards, the
|
|
31
|
+
registry this machine uses lags npm, so report that instead of installing again. Never use `sudo`
|
|
32
|
+
or change system policy: when the install is refused (permissions, a managed machine, a sandbox), use the temporary package
|
|
31
33
|
instead. It runs the same CLI without installing anything: put `npm exec --yes
|
|
32
|
-
--package=meshy-cli@0.7 --` in front of the same arguments, and the exit code and the JSON on
|
|
34
|
+
--package=meshy-cli@0.7.3 --` in front of the same arguments, and the exit code and the JSON on
|
|
33
35
|
stdout are forwarded unchanged. Recipes are written as `meshy …`; example:
|
|
34
36
|
|
|
35
37
|
```bash
|
|
36
|
-
npm exec --yes --package=meshy-cli@0.7 -- meshy auth status --format json --no-update-check
|
|
38
|
+
npm exec --yes --package=meshy-cli@0.7.3 -- meshy auth status --format json --no-update-check
|
|
37
39
|
```
|
|
38
40
|
|
|
39
|
-
The first such call downloads the package into the npm cache; later calls reuse it.
|
|
41
|
+
The first such call downloads the package into the npm cache; later calls reuse it. It names an
|
|
42
|
+
exact version because `npm exec` keeps reusing whatever matching version it cached first. On Windows
|
|
40
43
|
both commands go through `npm.cmd`. A missing `npm` with a working Node.js means the host
|
|
41
44
|
stripped npm: report that and ask the user to install the CLI themselves.
|
|
42
45
|
|
|
@@ -138,12 +141,35 @@ Failure branches — each is a different recovery, so read the error rather than
|
|
|
138
141
|
- **`device_flow_not_supported`**: this API host has no device endpoint. Ask the user to run
|
|
139
142
|
`meshy auth login` in their own desktop terminal (loopback + browser), or to store their own
|
|
140
143
|
key with `meshy auth login --with-key <key>` privately. Never ask for the key in chat.
|
|
141
|
-
- **Host cannot keep a process alive at all**:
|
|
142
|
-
in their own terminal, then re-check `auth status` and resume. This is the only case where a
|
|
143
|
-
manual terminal step is acceptable.
|
|
144
|
+
- **Host cannot keep a process alive at all**: use the two-step sign-in below.
|
|
144
145
|
|
|
145
|
-
|
|
146
|
-
|
|
146
|
+
### Remote chat: sign in across two turns
|
|
147
|
+
|
|
148
|
+
When the user talks to you through a chat bridge from another device (a phone in QQ, WeChat,
|
|
149
|
+
Slack or Telegram), progress messages may arrive late or only when the turn ends, so a link shown
|
|
150
|
+
while the login waits never reaches them. Sign in in two steps instead (add `--region cn` to the
|
|
151
|
+
first for the China site):
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
meshy auth login --device --no-wait --format json --no-update-check
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
It returns at once with `result.verification_url` (the code is already in the link),
|
|
158
|
+
`result.user_code` and `result.flow_id`. Keep FLOW_ID in your notes and end the turn with the link
|
|
159
|
+
and the code: ask the user to open it in the phone's own browser rather than the chat app's (an
|
|
160
|
+
in-app browser may not keep the sign-in), approve, and reply when done. When they reply:
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
meshy auth login --device-flow FLOW_ID --format json --no-update-check
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
It waits while the approval is still pending, saves the session and prints
|
|
167
|
+
`result.status: "logged_in"`; verify `auth status` and continue the original request. An expired
|
|
168
|
+
or unknown flow means running step one again. A host whose question tool reaches the user
|
|
169
|
+
(dsh's `ask_user_question` is forwarded by its chat bridges) can instead ask with the link and
|
|
170
|
+
wait for the answer in the same turn, then run step two.
|
|
171
|
+
|
|
172
|
+
Do not use `--manual` from an agent — it prompts on stdin for a pasted code. Never show a token, a device
|
|
147
173
|
code or a signed URL to the user or copy one into chat or a file: task results and sidecars
|
|
148
174
|
carry signed URLs, so report paths and task IDs instead of pasting them.
|
|
149
175
|
|
|
@@ -11,11 +11,11 @@ timeout · deleting a task · local files.
|
|
|
11
11
|
|
|
12
12
|
## Runner problems
|
|
13
13
|
|
|
14
|
-
- **`meshy: command not found`** or **a version older than 0.7.
|
|
15
|
-
Setup describes. If the install is refused, use the temporary
|
|
16
|
-
(`npm exec --yes --package=meshy-cli@0.7 -- meshy …`) and carry on with the same job.
|
|
14
|
+
- **`meshy: command not found`** or **a version older than 0.7.3**: install the newest 0.7.x as
|
|
15
|
+
Setup describes. If the install is refused, use the temporary package
|
|
16
|
+
(`npm exec --yes --package=meshy-cli@0.7.3 -- meshy …`) and carry on with the same job.
|
|
17
17
|
- **A global 0.8 or newer** answers `--version`. Do not uninstall or downgrade it; use the
|
|
18
|
-
temporary
|
|
18
|
+
temporary package for this work and mention the mismatch once.
|
|
19
19
|
- **Node older than 22.12** fails the CLI's own runtime gate. Report the required version and the
|
|
20
20
|
installed one; do not try to relax it or run an older CLI.
|
|
21
21
|
- **`npm exec` cannot reach the registry**: report the network/proxy error. A cached package
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
name: meshy-3d-printing
|
|
3
3
|
description: "Generates and prepares models for physical 3D printing with the Meshy CLI: white and multicolor prints (3MF, STL, OBJ), printability analysis and repair, splitting into parts, Creative Lab products such as figures, lamps and keychains, sizing, and slicer handoff (Bambu Studio, OrcaSlicer, PrusaSlicer, Cura). Use when the user wants something 3D-printed or asks for print or slicer files."
|
|
4
4
|
license: MIT
|
|
5
|
-
compatibility: "Needs Node.js 22.12+ and the Meshy CLI 0.7.x, 0.7.
|
|
5
|
+
compatibility: "Needs Node.js 22.12+ and the Meshy CLI 0.7.x, 0.7.3 or later (npm install -g meshy-cli@0.7); network access to the Meshy API."
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Meshy 3D Printing
|
|
9
9
|
|
|
10
|
-
Use Meshy CLI **0.7** (0.7.
|
|
10
|
+
Use Meshy CLI **0.7** (0.7.3 or later) to deliver the requested print files at the intended size, with
|
|
11
11
|
analysis/repair results where applicable and a slicer handoff when requested. This skill is
|
|
12
12
|
self-contained. Ordinary digital assets belong to meshy-3d-generation.
|
|
13
13
|
|
|
@@ -48,13 +48,14 @@ local dimension check cannot establish full printability.
|
|
|
48
48
|
## Cloud authorization
|
|
49
49
|
|
|
50
50
|
Before the first command run `meshy --version`; no need to ask. When `meshy` is missing or
|
|
51
|
-
older than 0.7.
|
|
51
|
+
older than 0.7.3, install the newest 0.7.x with `npm install -g meshy-cli@0.7` and say so in
|
|
52
52
|
one line; Setup covers a refused install and a CLI of 0.8 or newer. Local-only work stops at runner setup.
|
|
53
53
|
Cloud work reuses a verified session. If login is needed, keep `auth login --device` running (with `--region cn` for a
|
|
54
54
|
user in mainland China),
|
|
55
55
|
show its URL and user code in **commentary/progress, never a final answer**, and await the
|
|
56
56
|
same tool session in this turn. After it exits, verify `auth status` and resume the print job.
|
|
57
|
-
|
|
57
|
+
Never ask for credentials in chat, nor for a "done" message except in Setup's two-step sign-in for a
|
|
58
|
+
user on a remote chat (a phone through a chat bot); Setup has the host wait procedure.
|
|
58
59
|
|
|
59
60
|
## Printing-specific constraints
|
|
60
61
|
|
|
@@ -99,7 +99,9 @@ Deliver four things, every time:
|
|
|
99
99
|
|
|
100
100
|
1. **The model file**, at the path the user asked for, written as a plain path in backticks.
|
|
101
101
|
Do not present it as a clickable link: hosts open such links in a text/preview pane that
|
|
102
|
-
cannot render a binary mesh, and it looks broken.
|
|
102
|
+
cannot render a binary mesh, and it looks broken. A host with a tool that delivers files to the
|
|
103
|
+
user (dsh's `present`) gets the model through that tool as well, so it opens from the
|
|
104
|
+
conversation. Offer the next real action instead —
|
|
103
105
|
reveal it in the file manager (`open -R <path>` on macOS, `explorer /select,<path>` on
|
|
104
106
|
Windows), open it in a local 3D tool, or wire it into the project.
|
|
105
107
|
2. **The preview**, shown inline when one exists, or an explicit note that none does.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Shared by the generation and print workflows. Three things are settled before any job
|
|
4
4
|
starts: **how to run the CLI**, **whether a session already exists**, and **where files go**.
|
|
5
|
-
The supported CLI is **0.7.x, from 0.7.
|
|
5
|
+
The supported CLI is **0.7.x, from 0.7.3,** on **Node.js 22.12 or newer**. No Python, request wrapper or
|
|
6
6
|
separate token store is involved.
|
|
7
7
|
|
|
8
8
|
Contents: 1 runner · 2 reuse a session · 3 first login · 4 where files go · 5 one session
|
|
@@ -17,26 +17,29 @@ meshy --version
|
|
|
17
17
|
|
|
18
18
|
| Observation | What to do |
|
|
19
19
|
|---|---|
|
|
20
|
-
| `meshy --version` prints 0.7.
|
|
21
|
-
| no `meshy` command, or a version older than 0.7.
|
|
22
|
-
| 0.8 or newer | keep it, since something else may rely on it, and run the temporary
|
|
20
|
+
| `meshy --version` prints 0.7.3 or a later 0.7.x | run `meshy` |
|
|
21
|
+
| no `meshy` command, or a version older than 0.7.3 | install the newest 0.7.x (below), then run `meshy` |
|
|
22
|
+
| 0.8 or newer | keep it, since something else may rely on it, and run the temporary package |
|
|
23
23
|
| no Node.js, or Node older than 22.12 | stop and report it: the user installs Node.js 22.12+ |
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
26
|
npm install -g meshy-cli@0.7
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
Check and install without asking first; say in one line that you are installing it.
|
|
30
|
-
|
|
29
|
+
Check and install without asking first; say in one line that you are installing it. Install at
|
|
30
|
+
most once: when `meshy --version` still reports a version older than 0.7.3 afterwards, the
|
|
31
|
+
registry this machine uses lags npm, so report that instead of installing again. Never use `sudo`
|
|
32
|
+
or change system policy: when the install is refused (permissions, a managed machine, a sandbox), use the temporary package
|
|
31
33
|
instead. It runs the same CLI without installing anything: put `npm exec --yes
|
|
32
|
-
--package=meshy-cli@0.7 --` in front of the same arguments, and the exit code and the JSON on
|
|
34
|
+
--package=meshy-cli@0.7.3 --` in front of the same arguments, and the exit code and the JSON on
|
|
33
35
|
stdout are forwarded unchanged. Recipes are written as `meshy …`; example:
|
|
34
36
|
|
|
35
37
|
```bash
|
|
36
|
-
npm exec --yes --package=meshy-cli@0.7 -- meshy auth status --format json --no-update-check
|
|
38
|
+
npm exec --yes --package=meshy-cli@0.7.3 -- meshy auth status --format json --no-update-check
|
|
37
39
|
```
|
|
38
40
|
|
|
39
|
-
The first such call downloads the package into the npm cache; later calls reuse it.
|
|
41
|
+
The first such call downloads the package into the npm cache; later calls reuse it. It names an
|
|
42
|
+
exact version because `npm exec` keeps reusing whatever matching version it cached first. On Windows
|
|
40
43
|
both commands go through `npm.cmd`. A missing `npm` with a working Node.js means the host
|
|
41
44
|
stripped npm: report that and ask the user to install the CLI themselves.
|
|
42
45
|
|
|
@@ -138,12 +141,35 @@ Failure branches — each is a different recovery, so read the error rather than
|
|
|
138
141
|
- **`device_flow_not_supported`**: this API host has no device endpoint. Ask the user to run
|
|
139
142
|
`meshy auth login` in their own desktop terminal (loopback + browser), or to store their own
|
|
140
143
|
key with `meshy auth login --with-key <key>` privately. Never ask for the key in chat.
|
|
141
|
-
- **Host cannot keep a process alive at all**:
|
|
142
|
-
in their own terminal, then re-check `auth status` and resume. This is the only case where a
|
|
143
|
-
manual terminal step is acceptable.
|
|
144
|
+
- **Host cannot keep a process alive at all**: use the two-step sign-in below.
|
|
144
145
|
|
|
145
|
-
|
|
146
|
-
|
|
146
|
+
### Remote chat: sign in across two turns
|
|
147
|
+
|
|
148
|
+
When the user talks to you through a chat bridge from another device (a phone in QQ, WeChat,
|
|
149
|
+
Slack or Telegram), progress messages may arrive late or only when the turn ends, so a link shown
|
|
150
|
+
while the login waits never reaches them. Sign in in two steps instead (add `--region cn` to the
|
|
151
|
+
first for the China site):
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
meshy auth login --device --no-wait --format json --no-update-check
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
It returns at once with `result.verification_url` (the code is already in the link),
|
|
158
|
+
`result.user_code` and `result.flow_id`. Keep FLOW_ID in your notes and end the turn with the link
|
|
159
|
+
and the code: ask the user to open it in the phone's own browser rather than the chat app's (an
|
|
160
|
+
in-app browser may not keep the sign-in), approve, and reply when done. When they reply:
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
meshy auth login --device-flow FLOW_ID --format json --no-update-check
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
It waits while the approval is still pending, saves the session and prints
|
|
167
|
+
`result.status: "logged_in"`; verify `auth status` and continue the original request. An expired
|
|
168
|
+
or unknown flow means running step one again. A host whose question tool reaches the user
|
|
169
|
+
(dsh's `ask_user_question` is forwarded by its chat bridges) can instead ask with the link and
|
|
170
|
+
wait for the answer in the same turn, then run step two.
|
|
171
|
+
|
|
172
|
+
Do not use `--manual` from an agent — it prompts on stdin for a pasted code. Never show a token, a device
|
|
147
173
|
code or a signed URL to the user or copy one into chat or a file: task results and sidecars
|
|
148
174
|
carry signed URLs, so report paths and task IDs instead of pasting them.
|
|
149
175
|
|
|
@@ -11,11 +11,11 @@ timeout · deleting a task · local files.
|
|
|
11
11
|
|
|
12
12
|
## Runner problems
|
|
13
13
|
|
|
14
|
-
- **`meshy: command not found`** or **a version older than 0.7.
|
|
15
|
-
Setup describes. If the install is refused, use the temporary
|
|
16
|
-
(`npm exec --yes --package=meshy-cli@0.7 -- meshy …`) and carry on with the same job.
|
|
14
|
+
- **`meshy: command not found`** or **a version older than 0.7.3**: install the newest 0.7.x as
|
|
15
|
+
Setup describes. If the install is refused, use the temporary package
|
|
16
|
+
(`npm exec --yes --package=meshy-cli@0.7.3 -- meshy …`) and carry on with the same job.
|
|
17
17
|
- **A global 0.8 or newer** answers `--version`. Do not uninstall or downgrade it; use the
|
|
18
|
-
temporary
|
|
18
|
+
temporary package for this work and mention the mismatch once.
|
|
19
19
|
- **Node older than 22.12** fails the CLI's own runtime gate. Report the required version and the
|
|
20
20
|
installed one; do not try to relax it or run an older CLI.
|
|
21
21
|
- **`npm exec` cannot reach the registry**: report the network/proxy error. A cached package
|