# How to Install CAD Skills for Agent Platforms: The Complete Setup Guide

> Install CAD Skills for agent platforms readily with this complete guide. Clone the text-to-cad repository, set up Python runtime, and mount skills like URDF and STEP for your agent.

- Repository: [earthtojake/text-to-cad](https://github.com/earthtojake/text-to-cad)
- Tags: how-to-guide
- Published: 2026-07-28

---

**To install CAD Skills for agent platforms, clone the earthtojake/text-to-cad repository, switch to the `develop` branch, install the core Python runtime from `packages/cadpy`, and use `pip install -e skills/<skill-name>` to mount individual skills such as URDF or STEP processing into your agent environment.**

The `earthtojake/text-to-cad` repository provides a modular collection of CAD Skills designed for integration with Python and JavaScript agent platforms. Each skill is a self-contained package under the `skills/` directory that can be installed independently without pulling in unnecessary dependencies. This guide walks through the exact steps to install CAD Skills for agent platforms using the repository's standardized workflow.

## Prerequisites and Repository Setup

Begin by cloning the repository and checking out the active development branch. All recent skill updates and stability improvements live in the `develop` branch.

```bash
git clone https://github.com/earthtojake/text-to-cad.git
cd text-to-cad
git checkout develop

```

Create an isolated Python environment to avoid conflicts with system packages.

```bash
python -m venv .venv
source .venv/bin/activate

```

## Installing the Core CAD Runtime

Before adding individual skills, install the shared CAD utilities located in `packages/cadpy`. This package provides the geometric primitives, STEP parsing, and topology helpers that all skills depend on.

```bash
pip install -r requirements-dev.txt
pip install -e .

```

The `-e .` flag installs the repository in editable mode, ensuring that changes to the source code are immediately available to your agent without reinstallation.

## Discovering Available CAD Skills

The repository includes a canonical discovery script that scans the `skills/` directory and lists every available capability. Run [`scripts/utils/list-skills.sh`](https://github.com/earthtojake/text-to-cad/blob/main/scripts/utils/list-skills.sh) to see which CAD Skills are ready for installation.

```bash
scripts/utils/list-skills.sh

```

Example output:
- `urdf` – Convert URDF robot descriptions to CAD models
- `step` – Parse STEP files and generate geometric primitives

This script is the single source of truth for available skills and their descriptions.

## Installing Individual CAD Skills

Each skill is a lightweight Python package with its own dependency declarations. Install only the skills your agent platform requires.

### Python-Based Skills

Navigate to the skill directory and install it in editable mode. For example, to install the URDF skill:

```bash
pip install -e skills/urdf

```

The skill's [`setup.py`](https://github.com/earthtojake/text-to-cad/blob/main/setup.py) or [`pyproject.toml`](https://github.com/earthtojake/text-to-cad/blob/main/pyproject.toml) automatically resolves any extra dependencies. You can verify the installation by importing the skill's CLI module located at [`skills/urdf/scripts/urdf/cli.py`](https://github.com/earthtojake/text-to-cad/blob/main/skills/urdf/scripts/urdf/cli.py):

```python
from urdf import cli
cli.main(['--help'])

```

### JavaScript Runtime Helpers

If your agent platform runs on Node.js, install the shared JavaScript CAD runtime located in `packages/cadjs` and `packages/implicitjs`:

```bash
npm --prefix packages/cadjs install
npm --prefix packages/implicitjs install

```

These packages power viewer-side rendering and provide Node-based agents with CAD processing capabilities.

## Verifying Your Installation

Validate that the CAD Skill is correctly integrated by running its unit tests or checking its version.

```bash
pytest tests/python/skills/urdf

```

Alternatively, use a Python one-liner to confirm the package is importable:

```python
python -c "import urdf; print(urdf.__version__)"

```

## Integrating with Agent Platforms

Most agent platforms expose a skill loader that points to installed packages. For Python-based agents, add the skill name to your configuration file:

```yaml
skills:
  - urdf

```

For Node.js platforms, require the shared runtime module directly in your agent code:

```javascript
const cadjs = require('@earthtojake/cadjs');

// Example: Load a STEP file and extract its bounding box
cadjs.loadStep('models/gear.step').then(model => {
  console.log('Bounding box:', model.boundingBox);
});

```

The strict separation between skills (in `skills/`) and shared packages (in `packages/`) ensures that installing a CAD Skill for your agent platform pulls in only the necessary code.

## Summary

- **Clone the `develop` branch** of `earthtojake/text-to-cad` to access the latest CAD Skills.
- **Install the core runtime** via `pip install -e .` to enable geometric processing utilities from `packages/cadpy`.
- **Discover available skills** by running [`scripts/utils/list-skills.sh`](https://github.com/earthtojake/text-to-cad/blob/main/scripts/utils/list-skills.sh).
- **Install individual skills** using `pip install -e skills/<skill-name>` for Python agents or `npm install` in `packages/cadjs` for Node agents.
- **Verify integration** by importing the skill in Python or executing its test suite in `tests/python/skills/<skill-name>`.

## Frequently Asked Questions

### Can I install multiple CAD Skills simultaneously?

Yes. Run separate `pip install -e` commands for each skill directory, or list them all in a requirements file. Each skill in the `skills/` directory is isolated and can coexist without dependency conflicts.

### What Python version is required to install CAD Skills?

The repository requires Python 3.8 or higher. The [`requirements-dev.txt`](https://github.com/earthtojake/text-to-cad/blob/main/requirements-dev.txt) file in the repository root pins compatible versions of geometric libraries like NumPy and OpenCASCADE bindings used by `packages/cadpy`.

### How do I update a CAD Skill after installation?

Since skills are installed in editable mode (`-e`), pulling the latest changes from the `develop` branch automatically updates the skill. Run `git pull origin develop` in the repository root, and the changes are immediately available to your agent without re-running pip.

### Can I use CAD Skills in a non-Python agent platform?

Yes. The JavaScript runtime in `packages/cadjs` provides CAD capabilities for Node.js agents. For other languages, you can wrap the Python skills in a microservice or use the CLI interfaces exposed by modules like [`skills/urdf/scripts/urdf/cli.py`](https://github.com/earthtojake/text-to-cad/blob/main/skills/urdf/scripts/urdf/cli.py) as subprocess calls.