Skip to content

Guide · Agent skill

How to use the cli-anything-threemf 3MF mesh editor skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

The cli-anything-threemf skill gives an AI agent the ability to read and edit 3MF files, the standard format for 3D printing models used by slicers such as BambuStudio and PrusaSlicer. This guide explains what the skill does, how to install it, how to ask for things in plain language, and where to be careful. By the end you will know how to get the agent to report a model's mesh health, find cylindrical holes, resize them to a target diameter and compare two versions of a file.

3MF Mesh EditorHKUDS/CLI-Anything · Apache-2.0

Quick start

  1. 1Install Python packages. Make sure Python with pip and Git access are available. Run the pip install command from the skill to install cli-anything-3mf and its dependencies from the HKUDS/CLI-Anything repository.
  2. 2Add the skill files. Download the skill ZIP from this page and unzip it into ~/.claude/skills/ or a project's .claude/skills/ folder, or upload it in the Claude apps under Settings, Capabilities, Skills.
  3. 3Check the model. Ask the agent to report the mesh info for your file, or run cli-anything-3mf info on it, to see watertight status and volume.
  4. 4Detect holes. Run inspect to list cylindrical holes with their centre, diameter and confidence. Note the index numbers of the holes you want to change.
  5. 5Resize and save a copy. Ask for the holes to be resized to your target diameter, saving to a new file with -o so the original stays untouched.
  6. 6Verify the output. Run info or inspect on the new file and compare it with your measurements before you slice and print.

What the skill makes the agent do

The skill teaches an agent to work with existing 3MF mesh geometry. It is a mesh geometry editor, not a design tool: it changes the shape of a model that already exists rather than building new parts from scratch.

It runs a command-line tool called cli-anything-3mf to do the work. The agent calls this tool on your files and reports the results back to you.

  • Report mesh info: vertices, faces, bounding box, watertight status and volume
  • Detect cylindrical holes and report their centre, diameter and confidence
  • Resize holes to a target diameter, for example to fit a printed peg
  • Repair degenerate faces, duplicate vertices and normals
  • Compare two 3MF files

Install the cli-anything-threemf skill

Option 1: Download the skill ZIP from this page and unzip it into ~/.claude/skills/ for your user account, or into a project's .claude/skills/ folder if you want it only for that project.

Option 2: In the Claude apps, open Settings, go to Capabilities and upload the skill under Skills.

The skill also needs the cli-anything-3mf Python package to do the actual work. The skill's install instructions install it straight from the HKUDS/CLI-Anything repository on GitHub, so you need Python with pip and Git access. Installing the package is a separate step from adding the skill files.

  • Python with pip must be available on your machine
  • Git access is needed to install from GitHub
  • The package installs with its dependencies
pip install git+https://github.com/HKUDS/CLI-Anything.git#subdirectory=3MF/agent-harness

Trigger the skill with natural requests

You do not need to type commands yourself. Once the skill is installed, describe what you want in plain language and name your file. The agent should pick the skill when your request matches its purpose: checking a 3MF model, finding or resizing holes, repairing a mesh or comparing two files.

Be specific about the hole numbers and target diameter when you can. The inspect step lists holes with an index, and the agent will refer to those indexes when resizing.

  • Check whether model.3mf is watertight before I slice it
  • Find the cylindrical holes in bracket.3mf and tell me their diameters
  • Resize holes 0 and 1 in bracket.3mf to 4.2 mm and save the result as bracket_fit.3mf
  • Repair mesh.3mf and save it as repaired.3mf
  • Compare v1.3mf and v2.3mf and tell me what changed

Command reference

These are the commands the agent runs. You can also run them yourself in a terminal. Each one takes a 3MF file as input. Use -o to name the output file so the original is kept.

Add --json to any command to get machine-readable output, which is useful for scripts.

  • info shows vertices, faces, bounding box, watertight status and volume
  • inspect detects cylindrical holes with centre, diameter and confidence
  • resize changes holes to a target diameter using --hole and --diameter
  • repair fixes mesh issues and writes a new file with -o
  • compare reports differences between two files
cli-anything-3mf info <file.3mf> cli-anything-3mf inspect <file.3mf> cli-anything-3mf resize <file.3mf> --hole 0 --hole 1 --diameter 4.2 -o output.3mf cli-anything-3mf repair <file.3mf> -o repaired.3mf cli-anything-3mf compare <file1.3mf> <file2.3mf> cli-anything-3mf --json inspect model.3mf

How the hole resizing works

Hole detection uses multi-plane cross-section analysis to find cylinders. Resizing scales the vertices of each hole radially, which keeps the mesh topology (how the faces connect) intact. The skill also preserves slicer metadata from BambuStudio and PrusaSlicer when it repacks the file.

Because detection is approximate, always run inspect first and check the reported centre, diameter and confidence against your own measurement before you resize.

  • Detection is approximate, so verify the holes it finds
  • Resizing preserves mesh topology and slicer metadata
  • The skill works with any 3MF file that follows the 3MF Core Specification

Safety notes: scripts and network access

This skill runs scripts and uses the network. The install step pulls code from GitHub, and the skill runs a Python command-line tool on your files. Install it only from sources you trust and review what the agent is about to run if your setup asks you to approve commands.

Work on copies. The resize and repair commands write to the file you name with -o, but keep your original 3MF until you have checked the output.

  • Installation downloads code from GitHub
  • The tool runs locally on the files you give it
  • Keep the original file and check the output before printing

Tips for reliable results

Run info and inspect before any change so you know the starting state. Check the output file with info after a resize or repair to confirm the watertight status and dimensions look right.

For a press-fit or bolt tolerance, measure the real part or hardware first, then ask for the diameter you need. Print a test piece before committing to a safety-critical or load-bearing part, because a changed hole size is not verified by the tool.

  • Run info, then inspect, then resize, then info again on the output
  • Use --json when you want to check results programmatically
  • Print a test piece for any fit that matters

What people use it for

  • Adjusting bolt or pin holes in a downloaded bracket so a printed part fits hardware you already own
  • Checking a model for watertight status before slicing it in BambuStudio or PrusaSlicer
  • Comparing two revisions of a 3MF file to see what changed between them
  • Repairing small mesh errors such as duplicate vertices or degenerate faces in an existing model
  • Building an automated pipeline that runs cli-anything-3mf with --json output on many 3MF files

Frequently asked questions

Is the cli-anything-threemf skill free to use?

The skill is published under the Apache-2.0 licence. Check the licence file in the source repository for the full terms before you use or redistribute it.

What do I need to install cli-anything-threemf?

You need Python with pip and Git access, because the install command pulls the cli-anything-3mf package and its dependencies from the HKUDS/CLI-Anything repository on GitHub. You then add the skill files by unzipping them into your skills folder or uploading them in the Claude apps.

Which 3D printing files does the skill support?

It works with 3MF files, including those from BambuStudio and PrusaSlicer, and the source says it works with any 3MF file that follows the 3MF Core Specification. It preserves slicer metadata when it repacks a file.

Can the skill design a new part from scratch?

No. It edits existing mesh geometry only and does not do parametric CAD. Use a CAD program to design new parts.

Why did the hole detection find the wrong hole or the wrong size?

Detection is approximate and uses multi-plane cross-section analysis. Run inspect first, check the reported centre, diameter and confidence against your own measurement, and fix the input file or adjust your request if the results look wrong.

How is this different from opening the file in a CAD program?

The skill lets an agent make quick, scripted changes such as resizing holes or checking watertight status without opening CAD. It does not verify dimensions for you, so you still need to review the output and test-print anything that matters.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use this skill if you want an agent to inspect 3MF files, check whether they are watertight, or resize existing holes for a fit without opening CAD software, and you are comfortable reviewing the output. Pick a CAD tool instead if you need to design new parts, or if the part is safety-critical or load-bearing and you need guaranteed dimensions.

Download the skill