← Back to Skills Marketplace
ajmwagar

Find Stl

by ajmwagar · GitHub ↗ · v0.1.0
cross-platform ⚠ suspicious
2391
Downloads
2
Stars
3
Active Installs
1
Versions
Install in OpenClaw
/install find-stl
Description
Search and download ready-to-print 3D model files (STL/3MF/ZIP) for a concept or specific part by querying Printables (first). Use when an agent needs to find an existing model, capture license/attribution, download the source files, and output a local folder + manifest for quoting/printing.
README (SKILL.md)

find-stl

This skill provides a deterministic pipeline:

  • search Printables for models
  • select a candidate
  • download model files
  • write a manifest.json (source URL, author, license id, files, hashes)

Quick start

Search

python3 scripts/find_stl.py search "iphone 15 pro dock" --limit 10

Fetch

python3 scripts/find_stl.py fetch 1059554 --outdir out/models

By default, fetch downloads all model files (a ZIP pack) when available.

Notes

  • Printables download links are time-limited; this script resolves them via Printables GraphQL (getDownloadLink).
  • Always preserve license + attribution in the manifest.

Resources

  • scripts/find_stl.py
Usage Guidance
This skill appears to do what it says (search Printables and download models), but you should be cautious before running it: 1) it downloads third-party files and extracts ZIPs without sanitizing filenames — a malicious or malformed archive or a manipulated API response could overwrite files (zip-slip / path traversal). 2) filenames from the API are used verbatim when saving, which could introduce unexpected paths. 3) the script writes to a default folder in your home directory; consider specifying an isolated outdir. Recommended actions: run the script in a sandbox or container, inspect network calls, and review/patch the code before use — specifically: sanitize downloaded filenames (use basename/safe_slug), validate ZIP members and reject entries with absolute paths or '..' components before extraction, enforce max file size and disk quotas, and prefer extracting into an empty, isolated directory. If you only need search results, run the search subcommand first (safe, read-only). If you want me to, I can produce a small patch that hardens ZIP extraction and filename handling.
Capability Analysis
Type: OpenClaw Skill Name: find-stl Version: 0.1.0 The skill bundle is benign. The `SKILL.md` provides clear, functional instructions without any prompt injection attempts against the agent. The `scripts/find_stl.py` script exclusively interacts with the legitimate `api.printables.com` endpoint to search for and download 3D model files (STL/3MF/ZIP). File system operations are limited to creating output directories and writing/extracting downloaded files to a user-specified or default local path (`~/models/incoming`), which is consistent with its stated purpose. There is no evidence of data exfiltration, malicious execution, persistence mechanisms, or obfuscation.
Capability Assessment
Purpose & Capability
Name/description align with the included script: it queries Printables' GraphQL API, retrieves time-limited download links and writes a local folder + manifest. No unrelated credentials, binaries, or external services are requested.
Instruction Scope
SKILL.md describes search->fetch pipeline and the script implements exactly that, but the runtime instructs the agent (the script) to download and write arbitrary files and to extract ZIP archives without any sanitization. Filenames from the API are used directly for filesystem paths and ZipFile.extractall() is called, which creates a path-traversal / zip-slip risk and may overwrite files in the target directory.
Install Mechanism
No install spec (instruction-only plus a single Python script). No packages are fetched during install. Risk is limited to executing the included script and its network activity at runtime.
Credentials
The skill requests no environment variables or credentials, which is proportional. It does perform network calls to api.printables.com (expected for the stated purpose).
Persistence & Privilege
always is false, no persistent/privileged flags. The skill does write files under a default outdir (~/models/incoming) which is normal for its purpose but is not a platform-level persistence request.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install find-stl
  3. After installation, invoke the skill by name or use /find-stl
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
Initial release: Printables search + fetch + manifest.json output
Metadata
Slug find-stl
Version 0.1.0
License
All-time Installs 3
Active Installs 3
Total Versions 1
Frequently Asked Questions

What is Find Stl?

Search and download ready-to-print 3D model files (STL/3MF/ZIP) for a concept or specific part by querying Printables (first). Use when an agent needs to find an existing model, capture license/attribution, download the source files, and output a local folder + manifest for quoting/printing. It is an AI Agent Skill for Claude Code / OpenClaw, with 2391 downloads so far.

How do I install Find Stl?

Run "/install find-stl" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Find Stl free?

Yes, Find Stl is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Find Stl support?

Find Stl is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Find Stl?

It is built and maintained by ajmwagar (@ajmwagar); the current version is v0.1.0.

💬 Comments