{
  "schema": "cad-agent-catalog-area/1",
  "origin": "https://cad-agent.valpatel.com",
  "revision": "5911faa4c077eb211b1dc042cfbe02a68c0ed0cf",
  "fields": {
    "level": "domain, area or bucket",
    "domain": "areas: the domain it belongs to",
    "priority": "demo (a good demo)",
    "projects": "areas: keys of the projects in docs/areas.yaml (areas_source) that used it",
    "issues": "GitHub issues for work in this area",
    "topics": "areas: its topics, with scope, maturity and issues",
    "areas": "domains: its areas",
    "count": "entries here",
    "kinds": "count per kind",
    "items": "every entry placed here (a domain holds its areas' entries): the fields of catalog.json without summary and related"
  },
  "item_fields": "https://cad-agent.valpatel.com/catalog.json (fields)",
  "slug": "mechanisms",
  "title": "Mechanisms",
  "scope": "Joints, linkages, motor mounts and the motion between parts.",
  "maturity": "tooling",
  "level": "area",
  "domain": "mechanical",
  "priority": [
    "demo"
  ],
  "projects": [
    "gyropup"
  ],
  "issues": [],
  "topics": [
    {
      "slug": "motor-mounts",
      "title": "Motor mounts",
      "scope": "Bolt circles, pilots and load paths for bought actuators and motors.",
      "maturity": "idea",
      "issues": [
        "https://github.com/Valpatel/cad-agent/issues/144"
      ]
    },
    {
      "slug": "linkages",
      "title": "Linkages",
      "scope": "Four- and five-bar position, workspace and transmission angle.",
      "maturity": "tooling",
      "issues": [
        "https://github.com/Valpatel/cad-agent/issues/187"
      ]
    },
    {
      "slug": "joints-and-bearings",
      "title": "Joints and bearings",
      "scope": "Pivots, bearing seats, shafts and their fits.",
      "maturity": "idea",
      "issues": []
    }
  ],
  "count": 9,
  "kinds": {
    "demo": 3,
    "tool": 1,
    "project": 2,
    "guide": 2,
    "skill": 1
  },
  "page": "https://cad-agent.valpatel.com/catalog?area=mechanisms",
  "index": "https://cad-agent.valpatel.com/catalog/index.json",
  "items": [
    {
      "type": "demo",
      "status": "ours",
      "name": "Four-bar linkage animator",
      "url": "https://cad-agent.valpatel.com/docs/linkages#try-it-the-four-bar-animator",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/linkages.md",
      "id": "demo-fourbar-animator",
      "kind": "demo",
      "areas": [
        "mechanisms"
      ],
      "maturity": "tooling",
      "what": "Set four link lengths and watch the crank turn or lock, both assemblies and the transmission angle against 40°.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/docs/img/formulas/fourbar-animator.svg",
      "demo": "https://cad-agent.valpatel.com/docs/linkages#try-it-the-four-bar-animator",
      "licence_family": "permissive",
      "updated": "2026-11-01",
      "mode": "interactive"
    },
    {
      "type": "demo",
      "status": "ours",
      "name": "Five-bar leg sweep",
      "url": "https://cad-agent.valpatel.com/docs/linkages#sweeping-a-closed-loop-four-bars-and-five-bars",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/linkages.md",
      "id": "demo-fivebar-sweep",
      "kind": "demo",
      "areas": [
        "mechanisms"
      ],
      "maturity": "tooling",
      "what": "A five-bar leg's foot driven round a stride, on its map of crank angles with the lock a symmetric sweep runs into.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/catalog/covers/still/linkages-fivebar.svg",
      "demo": "https://cad-agent.valpatel.com/docs/linkages#sweeping-a-closed-loop-four-bars-and-five-bars",
      "licence_family": "permissive",
      "updated": "2026-11-01",
      "mode": "animated",
      "cover_animated": "https://cad-agent.valpatel.com/docs/img/linkages/fivebar.svg"
    },
    {
      "type": "demo",
      "status": "ours",
      "name": "Hinge sweep and collision onset",
      "url": "https://cad-agent.valpatel.com/docs/gates#motion-range-interference-cadagentreviewgatesmotion",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/gates.md",
      "id": "demo-hinge-sweep",
      "kind": "demo",
      "areas": [
        "mechanisms",
        "design-process"
      ],
      "maturity": "tooling",
      "what": "A gate arm swept through its range; the first pose that hits the frame is bisected to a hundredth of a degree.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/catalog/covers/still/motion-hinge-sweep.svg",
      "demo": "https://cad-agent.valpatel.com/docs/gates#motion-range-interference-cadagentreviewgatesmotion",
      "licence_family": "permissive",
      "updated": "2026-11-01",
      "mode": "animated",
      "cover_animated": "https://cad-agent.valpatel.com/docs/img/motion/hinge-sweep.svg"
    },
    {
      "type": "tool",
      "status": "ours",
      "name": "cad-agent motion-trace",
      "url": "https://cad-agent.valpatel.com/docs/toolkit",
      "how": "cad-agent motion-trace --help",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/rendered-motion.md",
      "doc": "https://cad-agent.valpatel.com/docs/rendered-motion",
      "id": "tool-motion-trace",
      "kind": "tool",
      "areas": [
        "mechanisms"
      ],
      "maturity": "tooling",
      "what": "Validate rendered joint pivots against independent CAD landmarks",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/catalog/covers/tool-motion-trace.svg",
      "demo": null,
      "licence_family": "permissive",
      "updated": "2026-11-01"
    },
    {
      "type": "upstream",
      "status": "candidate",
      "name": "Pan-Chera/Multi-Agent-CAD",
      "url": "https://github.com/Pan-Chera/Multi-Agent-CAD",
      "policy": "may incorporate with attribution",
      "license": "MIT",
      "stars": 1048,
      "last_push": "2026-10-17",
      "id": "project-pan-chera-multi-agent-cad",
      "kind": "project",
      "areas": [
        "mechanisms",
        "3d-printing"
      ],
      "maturity": "tooling",
      "what": "Multi-agent text-to-CAD in build123d for single parts and, as a preview, multi-part assemblies",
      "notes": "assembly generation is a technology preview",
      "cover": "https://cad-agent.valpatel.com/catalog/covers/project-pan-chera-multi-agent-cad.svg",
      "demo": null,
      "licence_family": "permissive",
      "updated": "2026-10-17"
    },
    {
      "type": "upstream",
      "status": "candidate",
      "name": "ballerabdude/agent-cad-works",
      "url": "https://github.com/ballerabdude/agent-cad-works",
      "policy": "may incorporate with attribution; ideas for motion sweeps and vendor-STEP fit",
      "license": "Apache-2.0",
      "stars": 1,
      "last_push": "2026-10-26",
      "id": "project-ballerabdude-agent-cad-works",
      "kind": "project",
      "areas": [
        "mechanisms",
        "3d-printing",
        "fasteners-and-hardware"
      ],
      "maturity": "tooling",
      "what": "build123d workflow that sweeps motion for collisions, checks printability, slices in Orca and fits vendor STEP",
      "notes": "build123d motion sweep, watertight/mid-air checks, Orca times, BOM",
      "cover": "https://cad-agent.valpatel.com/catalog/covers/project-ballerabdude-agent-cad-works.svg",
      "demo": null,
      "licence_family": "permissive",
      "updated": "2026-10-26"
    },
    {
      "type": "doc",
      "status": "ours",
      "name": "Linkages",
      "url": "https://cad-agent.valpatel.com/docs/linkages",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/linkages.md",
      "source": "https://github.com/Valpatel/cad-agent/blob/dev/docs/linkages.md",
      "id": "guide-linkages",
      "kind": "guide",
      "areas": [
        "mechanisms"
      ],
      "maturity": "tooling",
      "what": "A four-bar is the simplest closed linkage: an input crank a, a coupler b, an output rocker c and the ground d between the two fixed pivots.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/catalog/covers/guide-linkages.svg",
      "demo": "https://cad-agent.valpatel.com/docs/linkages#try-it-the-four-bar-animator",
      "licence_family": "permissive",
      "updated": "2026-11-01"
    },
    {
      "type": "doc",
      "status": "ours",
      "name": "Rendered joint motion validation",
      "url": "https://cad-agent.valpatel.com/docs/rendered-motion",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/rendered-motion.md",
      "source": "https://github.com/Valpatel/cad-agent/blob/dev/docs/rendered-motion.md",
      "id": "guide-rendered-motion",
      "kind": "guide",
      "areas": [
        "mechanisms"
      ],
      "maturity": "tooling",
      "what": "The maintained trace protocol ships with the cad-motion-validation skill, including when the workflow installer copies the skill to a different machine.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/catalog/covers/guide-rendered-motion.svg",
      "demo": null,
      "licence_family": "permissive",
      "updated": "2026-11-01"
    },
    {
      "type": "skill",
      "status": "ours",
      "name": "cad-motion-validation",
      "url": "https://cad-agent.valpatel.com/skills/cad-motion-validation/SKILL",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/skills/cad-motion-validation/SKILL.md",
      "source": "https://github.com/Valpatel/cad-agent/blob/dev/skills/cad-motion-validation/SKILL.md",
      "id": "skill-cad-motion-validation",
      "kind": "skill",
      "areas": [
        "mechanisms"
      ],
      "maturity": "tooling",
      "what": "Use when implementing or reviewing articulated CAD viewers and robot simulations, especially parts orbiting away from shafts, mismatched units or frames, nested joints, and stationary housings that…",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/catalog/covers/skill-cad-motion-validation.svg",
      "demo": null,
      "licence_family": "permissive",
      "updated": "2026-10-31"
    }
  ]
}
