Skip to content

Commit 3dc78d9

Browse files
zhangyuirisclaude
andcommitted
[Docs] Add Security & Data Handling sections for plugin directory submission
Surface the (already-implemented) API-key and data-flow guarantees where reviewers and users can see them up front, ahead of submitting to the official Claude plugin directory: - meshy-3d-generation / meshy-3d-printing SKILL.md: add a "Security & Data Handling" block (key sources, Bearer-only transmission, never-logged-in-full, .env-only persistence on request, api.meshy.ai as sole endpoint, trust_env bypass, filesystem footprint). Printing also documents that it launches only already-installed slicers and never downloads/installs software. - README.md: add a "Security & Data" section mirroring the same guarantees. Wording matches actual script behavior; scripts never write shell profiles — they only print persistence instructions for the user to run. Docs-only; no generated build outputs touched. `build.py --check` and `claude plugin validate` both pass. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent aa7da0f commit 3dc78d9

3 files changed

Lines changed: 40 additions & 0 deletions

File tree

README.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,25 @@ cp -R skills/meshy-3d-printing .agents/skills/
205205

206206
Both approaches provide the same Meshy API capabilities. Choose based on your preference and setup.
207207

208+
## Security & Data
209+
210+
These skills run entirely on your machine and talk to a single service — the Meshy API. No telemetry, no third-party endpoints.
211+
212+
**Your API key**
213+
- Read from the current session environment, or from `.env` / `.env.local` in the current working directory. Home directories and shell profiles are **never scanned**.
214+
- Sent only in the HTTP `Authorization: Bearer` header to `https://api.meshy.ai`. It is **never logged in full** — scripts print at most a `msy_1234...` prefix.
215+
- **Never persisted by the scripts.** The key is written to `.env` in the current working directory *only* when you explicitly ask, and that `.env` is added to `.gitignore` automatically. It is never written to shell profiles, Windows user variables, or any path outside the working directory. Persisting it globally is offered to **you** as instructions to run yourself — the skill never does it silently.
216+
- System proxies are bypassed (`requests` session `trust_env = False`), so the key is never handed to an environment-configured proxy.
217+
218+
**What leaves your machine**
219+
- Only what a generation request needs: your API key, text prompts, and image URLs/data (for image-to-3D) — all to `api.meshy.ai`.
220+
- Generated assets are downloaded and saved locally under `./meshy_output/`; nothing else is uploaded.
221+
222+
**Filesystem footprint**
223+
- Reads: `.env` / `.env.local` in the working directory, and any input files you explicitly pass (e.g. local images), at the exact path you provide.
224+
- Writes: `./meshy_output/` (models, thumbnails, `metadata.json`, `history.json`) and — on request — `.env` in the working directory.
225+
- The 3D-printing skill additionally launches an **already-installed** slicer with your model file; it never downloads or installs software.
226+
208227
## For Maintainers
209228

210229
Single sources of truth — edit these, never the generated copies:

skills/meshy-3d-generation/SKILL.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,16 @@ All paths below are relative to **this skill's own directory** (the directory co
2626

2727
---
2828

29+
## Security & Data Handling
30+
31+
- **API key (`MESHY_API_KEY`)** — sent only in the HTTP `Authorization: Bearer` header to `https://api.meshy.ai`. Never logged in full (only a `key[:8]...` prefix is ever printed). The bundled script never persists it; it is written to `.env` in the current working directory *only* when the user explicitly asks, and never to shell profiles, Windows user variables, or any path outside the working directory (see [references/setup.md](references/setup.md)).
32+
- **Key sources read** — the current session environment, then `.env` / `.env.local` in the current working directory. Home directories and shell profiles are never scanned.
33+
- **Network** — the only external endpoint is `https://api.meshy.ai`. System proxies are bypassed (`trust_env = False`) so the key is never handed to an environment-configured proxy.
34+
- **Filesystem writes**`.env` in the working directory (on explicit request only) and `./meshy_output/` for downloaded models, thumbnails, and metadata. Input files (e.g. local images for image-to-3D) are read only at the exact path the user provides.
35+
- **Data leaving the machine** — the API key, user-provided text prompts, and image URLs/data go to `api.meshy.ai` only. No other local data is transmitted; downloaded assets are saved locally.
36+
37+
---
38+
2939
## IMPORTANT: 3D Printing → Use `meshy-3d-printing` Skill
3040

3141
**If the user's request involves 3D printing** (keywords: print, 3d print, slicer, slice, bambu, orca, prusa, cura, multicolor, 3mf, figurine, miniature, statue, physical model), **use the `meshy-3d-printing` skill instead of this one for the entire workflow.** The printing skill handles generation with correct print-optimized parameters (e.g. `target_formats` with `"3mf"` for multicolor), slicer detection, coordinate conversion, and slicer launch — all in one pipeline.

skills/meshy-3d-printing/SKILL.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,17 @@ All paths below are relative to **this skill's own directory** (the directory co
3030

3131
---
3232

33+
## Security & Data Handling
34+
35+
- **API key (`MESHY_API_KEY`)** — sent only in the HTTP `Authorization: Bearer` header to `https://api.meshy.ai`. Never logged in full (only a `key[:8]...` prefix is ever printed). The bundled script never persists it; it is written to `.env` in the current working directory *only* when the user explicitly asks, and never to shell profiles, Windows user variables, or any path outside the working directory.
36+
- **Key sources read** — the current session environment, then `.env` / `.env.local` in the current working directory. Home directories and shell profiles are never scanned.
37+
- **Network** — the only external endpoint is `https://api.meshy.ai`. System proxies are bypassed (`trust_env = False`).
38+
- **Filesystem writes**`.env` in the working directory (on explicit request only) and `./meshy_output/` for downloaded models, print-ready OBJ/3MF files, thumbnails, and metadata.
39+
- **Local slicer launch**`scripts/slicers.py` detects already-installed slicers (known install paths + `PATH` lookup) and opens the generated model file in the slicer the user chooses. It launches only pre-existing local applications; it never downloads or installs software.
40+
- **Data leaving the machine** — the API key, user-provided text prompts, and image URLs/data go to `api.meshy.ai` only. No other local data is transmitted; downloaded assets are saved locally.
41+
42+
---
43+
3344
## IMPORTANT: Never Rebuild Bundled Scripts
3445

3546
`scripts/meshy_task.py`, `scripts/slicers.py`, and `scripts/fix_obj.py` are the single source of truth for their respective helpers (`create_task` / `poll_task` / `download` / `get_project_dir` / `record_task` / `save_thumbnail` / `detect_slicers` / `open_in_slicer` / `fix_obj_for_printing`). **Never retype, paraphrase, or "reconstruct" these helpers from memory** — not even partially. Compose CLI calls in bash, or import them from a small Python script.

0 commit comments

Comments
 (0)