cad
Create/edit parametric CAD models, organize CAD projects, export STEP/STL/3MF/GLB files, resolve prompt references, and measure geometry with cadgen.
Skill by earthtojake
Chalk Labs
Need help deploying cad?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/earthtojake-cad
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing, agent-building, code-generation
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/cad
What's inside
- Skill name
cad- Description
- Create/edit parametric CAD models, organize CAD projects, export STEP/STL/3MF/GLB files, resolve prompt references, and measure geometry with cadgen. Open and visually review existing STEP/STP, STL, 3MF and GLB files in CAD Viewer.
- License
- MIT
- Instructions
- 223 lines in SKILL.md · view on GitHub
Files (16)
- LICENSE
- SKILL.md
- openai.yaml · agents/
- animation-deformation.md · references/
- build123d-modeling.md · references/
- cad-brief.md · references/
- inspection-and-validation.md · references/
- kinematics.md · references/
- migrations.md · references/
- positioning.md · references/
- project-layout.md · references/
- project-template.md · references/
- repair-loop.md · references/
- snapshot-review.md · references/
- step-generation.md · references/
- supported-exports.md · references/
SKILL.md (first lines)
# CAD modeling and inspection
Provenance: maintained in [earthtojake/text-to-cad](https://github.com/earthtojake/text-to-cad).
Use the installed local skill files for the current interface.
A model is a Python function; running its script rebuilds it in cadgen's warm engine, and the
page the person has open updates. Files are exports, made when asked.
## Start with the task
| Task | Start with | Reference |
| --- | --- | --- |
| **Create or edit a part or assembly** | The project's model script, or a new one ([below](#write-a-model-and-run-it)). | [Models](references/model-contract.md), [build123d](references/build123d-modeling.md), [positioning](references/positioning.md) |
| **Organize a CAD project** | The project's existing layout. | [Project layout](references/project-layout.md) |
| **Export STEP, STL, 3MF, GLB or xbf** | `cadgen export <id> <file>`. | [Exports](references/exports.md) |
| **Use a vendor STEP, an xbf or a scan in a model** | `read_step`, `read_xbf` or `read_mesh` in the body. | [Inputs](references/model-contract.md#inputs) |
| **Resolve a reference from a prompt** | `cadgen inspect <id> '<ref>'`. | [References](references/inspection-and-validation.md#references) |
| **Measure or check geometry** | A check script that calls the model. | [Inspection](references/inspection-and-validation.md) |
| **See a model, a view or a pose** | `cadgen snapshot <id> out.png`. | [Snapshots](references/snapshot-review.md) |
| **Articulate a mechanism** | build123d joints in the body, then `cadgen.ap242`. | [Kinematics](references/kinematics.md) |
| **Explode, reveal or showcase a model** | `cadgen.gltf`'s `animation()` in the body. | [Animation](references/animation.md) |
| **Open an existing XBF, STEP/STP, STL, 3MF or GLB** | Show it to the user. | [Show the model](#show-the-model) |
A project built with cadgen 0.7 may need migrating: see [migrations](references/migrations.md).
For 2D DXF drawings use `$dxf`; this skill owns any 3D part the drawing projects.
Use the corresponding robot-description skill for URDF, SRDF or SDF.
## Setup and paths
Run cadgen through the `cadgen` command its installation writes, so this skill's commands
share one installation, and its engine server, with the CAD app's:
- `cadgen` below means `cadgen +0.8.4` (`~/.local/bin/cadgen +0.8.4` where `~/.local/bin` is not on your PATH)
- `python` below means `cadgen +0.8.4 run`
For first-time setup or an update, a missing `cadgen` command, a release it says is not
installed, an engine that is not running, or an installation or kernel load error, read
[Setup and troubleshooting](references/setup.md).
One engine serves the installation: the first run starts it, every run and every
command goes through it, and it serves the viewer. `cadgen status` lists its workers
and the documents it holds; `cadgen stop` stops it, and any older one left running.
A build cut off by the shell's time limit keeps running in the engine; run the same
command again and it waits for that build and replays it (`cadgen status` shows it).
Give a cold build of a large model the shell tool's longest timeout, or run it in the
background. A command that ends with 'the system denies cadgen's local engine' is
another case: [Setup and troubleshooting](references/setup.md#diagnose-a-failure).
Command-line paths, and the paths `read_step`, `read_xbf`, `read_mesh` and `export`
take, are relative to the working directory, as are a model's own file reads. Anchor
them on `__file__` in code that must run from any folder.
## Write a model and run it
A part or an assembly is a function with no parameters, decorated `@model` (or with its
file decorators, never both), that returns a build123d shape. Its dimensions are the
arguments of a plain helper function, and each configuration is a `@model` of its own, with
its own id and page; constants several models share live in a module they import. A call
builds it and returns its document: a handle with `.id`, `.url`, `.shape` (the built shape)
and `.export(...)`. For example, `src/bracket.py`:
```python
import build123d as bd
from cadgen import model
def bracket_body(width, thickness, bore):
body = bd.Box(width, 20, thickness)
hole = bd.Cylinder(bore / 2, thickness)
body = body - hole
body.label = "bracket"
body.color = "#4a6fa5"
return body
@model
def bracket():
return bracket_body(40, 6, 8)
@model
def bracket_wide():
return bracket_body(60, 6, 8)
if __name__ == "__main__":
bracket()
bracket_wide()
```
```bash
python src/bracket.py
```
```text
built src/bracket.py::bracket cold in 2.61s: bodies 1 run; 6 misses, 0 hits; body 0.01s, names 0.00s, document 0.00s
parts 1 · bounds 40 × 20 × 6 mm · joints 0 · sequences 0
id: 0dc50a92-a21f-5895-a245-ebdeb5352f3b
view: http://127.0.0.1:54360/0dc50a92-a21f-5895-a245-ebdeb5352f3b?token=...
built src/bracket.py::bracket_wide warm in 0.01s: bodies 1 run; 6 misses, 0 hits; body 0.01s, names 0.00s, document 0.00s
parts 1 · bounds 60 × 20 × 6 mm · joints 0 · sequences 0
id: 966d03a5-7b43-5bed-b75c-eb67d56c72d2
view: http://127.0.0.1:54360/966d03a5-7b43-5bed-b75c-eb67d56c72d2?token=...
```
Each call the script's `__main__` makes prints how its model built, the delta under it
(parts, bounds, joints and sequences), its document's `id:` and its page, `view:` (the
handle's `.id` and `.url`). An unchanged rerun prints `took ... nothing ran` instead. Give the
user the page once ([Show the model](#show-the-model)) and use the id for every command
after it. The id comes from the
script's path and the function's name, or the script's folder and an explicit `@model(name="...")`,
so it is the same run after run, and the open page follows every run. A model's name is its identity
within its namespace, the function's name by default, `name=` gives it another. In 0.8 the namespace
is the script's folder; two explicit names in it must differ.
- **Running the script is the rebuild.** It writes no file. The engine's warm worker for
the script replays every operation an edit did not reach, so a comment re-runs nothing
and a dimension edit re-runs what reads itFrom earthtojake/text-to-cad, MIT.
More from earthtojake/text-to-cad
- 0.871score
dfam-check
earthtojake
Measure mesh files against Design for Additive Manufacturing (DfAM) rules and report printability findings per process (FDM, SLS, SLA/DLP, metal PBF, MJF).
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
gcode
earthtojake
Slice 3D models into printer-ready G-code with OrcaSlicer, the open-source slicer with built-in profiles for most FDM printers (Prusa, Bambu Lab, Creality…
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
urdf
earthtojake
URDF robot description authoring and validation.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
sdf
earthtojake
SDFormat/SDF model and world authoring, validation, and simulator handoff.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
engineering-drawing
earthtojake
Make an engineering drawing of a part as a PDF - orthographic views with hidden lines and centre marks, real dimensions, hole callouts, notes and a title…
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
dxf
earthtojake
Generate, regenerate, and validate 2D DXF drawings from Python build123d sources.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
dfm
earthtojake
Design-for-manufacturing review of a part for sheet metal, CNC machining, or injection molding - bends, reliefs and flat patterns; machining access, internal…
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
srdf
earthtojake
MoveIt2 SRDF authoring, validation, and planning-semantics workflow.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
sendcutsend
earthtojake
Review DXF and STEP/STP uploads for SendCutSend.com orders using its ordering guide, catalog, and specs.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.861score
bambu-labs
earthtojake
Send prints to Bambu Lab printers through Bambu Connect, Bambu Lab's official app for printing from other software, or Bambu Studio.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.733score
step-parts
earthtojake
Find, evaluate, and download common purchasable CAD parts from step.parts, including named off-the-shelf actuators, servos, motors, electronics boards…
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.695score
AGENTS.md · earthtojake/text-to-cad
earthtojake
AGENTS.md from earthtojake/text-to-cad: 300 lines covering Branch First, Release Workflow, Repo Map, Repo Rules and more.
TemplateAFreshness: A★ 22.9KCodex +5
Compare and alternatives
Featured in
Signals
- Stars
- 22,902
- Forks
- 2,229
- Open issues
- 4
- Last commit (this folder)
- Oct 20, 2026 (10 days ago)
- Last release
- Oct 20, 2026 (10 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/earthtojake/text-to-cad
- Website
- www.texttocad.dev
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from earthtojake
- 0.871score
dfam-check
earthtojake
Measure mesh files against Design for Additive Manufacturing (DfAM) rules and report printability findings per process (FDM, SLS, SLA/DLP, metal PBF, MJF).
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
gcode
earthtojake
Slice 3D models into printer-ready G-code with OrcaSlicer, the open-source slicer with built-in profiles for most FDM printers (Prusa, Bambu Lab, Creality…
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
urdf
earthtojake
URDF robot description authoring and validation.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
srdf
earthtojake
MoveIt2 SRDF authoring, validation, and planning-semantics workflow.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
sendcutsend
earthtojake
Review DXF and STEP/STP uploads for SendCutSend.com orders using its ordering guide, catalog, and specs.
SkillAFreshness: A★ 22.9KClaude Code +9 - 0.871score
sdf
earthtojake
SDFormat/SDF model and world authoring, validation, and simulator handoff.
SkillAFreshness: A★ 22.9KClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get cad running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
cad skill. Agent Mart. https://agentmart.dev/skills/earthtojake-cad (last updated 2026-10-24)