On 0.21.0 the facts test failed on rectangle symmetry, which now works on two sides. Other statements in the modeling and mechanisms skills also no longer match: edge picks have a distance limit, concentric circles extrude as a ring, a hole sketch below a part drills into it, slot ids count on from earlier curves, shell refuses curved blends and lofts, measure and inspect_design grow with the body count, and joint.sweep needs occurrences with against. Each correction has a test in test_facts.py.
Agent skills
Skills for contributing to SolidCraft and modelling through its MCP server. Each folder is
one skill in the Agent Skills format: a SKILL.md with a name and a
description that tell the agent when to load it, and an optional supporting reference file.
The modelling documents are built into SolidCraft: its MCP server's skill_reference tool returns them, so an
agent without file access (such as the one in SolidCraft's own chat) can still read a skill's reference.
solidcraft-contributing is for repository work and is not embedded in that tool.
| Skill | Loads when the agent |
|---|---|
solidcraft-contributing |
helps someone set up a fork, choose and claim an issue, and submit a contribution for review |
solidcraft-modeling |
builds a new part (enclosure, bracket, plate, flange, …) |
solidcraft-editing |
changes, fixes or extends an existing design |
solidcraft-checking |
builds, changes or ports a design, next to the two above: parameter ranges, every allowed value, exact STEP comparison, regression tests, designs kept in git |
solidcraft-mechanisms |
builds, drives or animates an assembly: components, joints, motion links, closed loops such as actuators, contact sets, motion studies |
The modelling skills teach the agent to:
- plan the part as numbers
- build it in a few
batchcalls with parametric positions - verify every stage with
measureagainst values it computed itself - skip the large replies it doesn't need, such as the unfiltered command catalog and full topology dumps
They also list the traps that otherwise cost failed calls. Examples are the sketch axes of the XZ plane, edge picks that snap to the nearest edge, and cuts that miss but still report success.
The modelling skills are written for SolidCraft 0.8 and later; solidcraft-mechanisms for main after 0.11.1 (the next release), which counts the degrees of freedom of closed loops.
Install
The modelling skills, for Claude Code in all projects:
git clone --depth 1 https://github.com/tangency-labs/solidcraft
cp -r solidcraft/skills/solidcraft-{modeling,editing,checking,mechanisms} ~/.claude/skills/
Windows (PowerShell):
git clone --depth 1 https://github.com/tangency-labs/solidcraft
foreach ($s in 'modeling','editing','checking','mechanisms') { Copy-Item -Recurse solidcraft\skills\solidcraft-$s $HOME\.claude\skills\ }
- One project only: copy the folders into that project's
.claude/skills/instead. - Other agents: for agents that read the Agent Skills format, copy the folders into the skills directory their documentation names.
- Updating: copy the folders again after you update SolidCraft.
- Contributing:
solidcraft-contributingneeds no install. Tell your assistant: "I want to contribute to SolidCraft. Read https://github.com/tangency-labs/solidcraft/blob/main/skills/solidcraft-contributing/SKILL.md and help me get started."
Maintaining
- The worked example in
solidcraft-modeling/reference.mdruns in CI.skill_reference_example_builds_as_documentedincrates/mcp/src/tests.rsbuilds it, checks the documented volume, changes a parameter and checks it again. - The sketch-plane table is covered by
sketch_plane_axes_match_the_skill_referencein the same file. - The worked example in
solidcraft-mechanisms/reference.mdruns in CI too:mechanisms_skill_example_moves_as_documentedbuilds it, drives the hinge and checks the actuator stroke, the linked panel and the stop against their analytic values. skills_name_only_real_tools_and_commandschecks that every tool and command the skills call exists.solidcraft-checking/scripts/testschecks that skill's helpers, its traps and conventions, and the facts behind the corrections insolidcraft-modeling:PYTHONDONTWRITEBYTECODE=1 uv run --no-project --with pytest --with build123d pytest -p no:cacheprovider skills/solidcraft-checking/scripts/tests. The tests run thesolidcraft-clionPATH, not the workspace build, and CI does not run them.- When a command, a parameter name or a behaviour that these files describe changes, update them in the same PR.
- Facts that describe current limitations, such as edge picks without a distance limit, should go once the limitation is fixed.