Files
cadSet/text-to-cad/skills/cad-router/scripts/capabilities.json
T

143 lines
6.6 KiB
JSON

{
"schema_version": "2.0",
"routing_policy": {
"default_backend": null,
"selection_basis": [
"native source continuity",
"standard factory coverage",
"semantic and replay requirements",
"geometry vocabulary coverage",
"assembly requirements",
"validation requirements"
],
"uploaded_step_execution_engine": "surfaceir",
"uploaded_step_validation_engines": [
"surfaceir_geometry_acceptance",
"simplecadapi_brep_compare"
]
},
"routing_catalog": {
"selection_rule": "For a new model, choose SimpleCADAPI only when the requested primary object matches one catalog entry. Feature-context matches are excluded. Every other request chooses build123d.",
"source": "SimpleCADAPI/src/simplecadapi/std/{gear,bearing,chain,fastener}.py",
"simplecadapi_standard_part_types": [
{
"type": "spur_gear",
"factory": "simplecadapi.std.gear.make_spur_gear_rsolid",
"aliases": ["齿轮", "直齿轮", "正齿轮", "spur gear"],
"feature_context_exclusions": ["齿轮孔", "齿轮安装", "齿轮座", "齿轮箱", "gear hole", "gear mount", "gear housing", "gearbox"]
},
{
"type": "straight_bevel_gear",
"factory": "simplecadapi.std.gear.make_straight_bevel_gear_rsolid",
"aliases": ["直齿锥齿轮", "锥齿轮", "straight bevel gear", "bevel gear"],
"feature_context_exclusions": ["锥齿轮箱", "bevel gearbox", "锥齿轮座"]
},
{
"type": "helical_gear",
"factory": "simplecadapi.std.gear.make_helical_gear_rsolid",
"aliases": ["斜齿轮", "helical gear"],
"feature_context_exclusions": ["斜齿轮箱", "helical gearbox", "斜齿轮座"]
},
{
"type": "herringbone_gear",
"factory": "simplecadapi.std.gear.make_herringbone_gear_rsolid",
"aliases": ["人字齿轮", "herringbone gear"],
"feature_context_exclusions": ["人字齿轮箱", "herringbone gearbox", "人字齿轮座"]
},
{
"type": "ring_gear",
"factory": "simplecadapi.std.gear.make_spur_ring_gear_rsolid",
"aliases": ["内齿圈", "齿圈", "ring gear"],
"feature_context_exclusions": ["齿圈座", "ring gear housing", "ring gear mount"]
},
{
"type": "gear_rack",
"factory": "simplecadapi.std.gear.make_spur_rack_rsolid",
"aliases": ["齿条", "直齿条", "斜齿条", "人字齿条", "gear rack", "rack gear", "spur rack", "helical rack", "herringbone rack"],
"feature_context_exclusions": ["齿条安装", "齿条座", "rack mount", "rack housing"]
},
{
"type": "cycloidal_disc",
"factory": "simplecadapi.std.gear.make_cycloidal_disc_rsolid",
"aliases": ["摆线盘", "摆线轮", "cycloidal disc"],
"feature_context_exclusions": ["摆线减速器", "cycloidal reducer", "摆线针轮减速器"]
},
{
"type": "ball_bearing",
"factory": "simplecadapi.std.bearing.make_ball_bearing_rassembly",
"aliases": ["轴承", "滚动轴承", "球轴承", "深沟球轴承", "ball bearing"],
"feature_context_exclusions": ["轴承座", "轴承壳", "轴承孔", "轴承安装", "bearing housing", "bearing seat", "bearing hole", "bearing mount"]
},
{
"type": "roller_chain_sprocket",
"factory": "simplecadapi.std.chain.make_roller_chain_sprocket_rsolid",
"aliases": ["滚子链轮", "链轮", "roller chain sprocket", "sprocket"],
"feature_context_exclusions": ["链轮座", "链轮箱", "链轮安装", "sprocket housing", "sprocket mount"]
},
{
"type": "bolt",
"factory": "simplecadapi.std.fastener.make_bolt_rsolid",
"aliases": ["螺栓", "六角螺栓", "内六角螺栓", "螺栓本体", "bolt", "hex bolt", "socket head bolt"],
"feature_context_exclusions": ["螺栓孔", "螺栓圆", "螺栓阵列", "bolt hole", "bolt circle", "bolt pattern"]
},
{
"type": "nut",
"factory": "simplecadapi.std.fastener.make_nut_rsolid",
"aliases": ["螺母", "六角螺母", "螺母本体", "nut", "hex nut"],
"feature_context_exclusions": ["螺母槽", "螺母孔", "螺母避让", "nut pocket", "nut hole", "nut clearance"]
}
]
},
"backends": {
"build123d": {
"project": "text-to-cad",
"runner_skill": "cad",
"source_formats": ["py"],
"primary_formats": ["step", "stp"],
"strengths": [
"general mechanical parts",
"machined features",
"source-level assemblies",
"freeform profiles, lofts, sweeps, and mixed surface workflows",
"geometry measurement and validation"
],
"preferred_when": [
"the part is a custom bracket, housing, shaft, flange, fixture, or enclosure",
"source-level assembly mates or existing build123d Python must be preserved",
"the geometry needs custom profiles or surface-heavy construction not covered by a SimpleCADAPI factory"
],
"weak_when": [
"a deterministic SimpleCADAPI standard factory covers the requested part",
"operation-graph replay, typed semantic tags, units, or tolerance chains are primary requirements"
],
"source_of_truth": "build123d Python generator"
},
"simplecadapi": {
"project": "SimpleCADAPI",
"runner_skill": "simplecadapi",
"minimum_version": "2.0.2",
"source_formats": ["py", "json"],
"primary_formats": ["step", "stp"],
"strengths": [
"gears, ring gears, racks, bevel gears, and cycloidal discs",
"bearings, bolts, nuts, roller-chain sprockets, reducers, and joint actuators",
"replayable ModelResult operation graphs and scene packages",
"typed semantic tags, topology lineage, and source mapping",
"physical units and tolerance-chain validation",
"STEP B-Rep inspection, strict comparison, and slice diagnostics",
"FreeCAD, Fusion 360, and SolidWorks translation"
],
"preferred_when": [
"a standard mechanical factory directly covers the requested family",
"replayable model JSON, semantic edit anchors, units, tolerances, or CAD translation are required",
"a reusable mechanical product family should become a deterministic library function"
],
"weak_when": [
"the request depends on complex freeform surfaces outside the supported operation vocabulary",
"an existing build123d generator or source-level build123d assembly must be preserved"
],
"source_of_truth": "SimpleCADAPI Python generator and model JSON"
}
}
}