← ClaudeAtlas

build123d-cad-parts-cataloglisted

build123d 标准件目录子技能。在自己建模之前先回答「这个件别人画过没?能直接用吗?」 覆盖:① 常用标准件索引(轴承 608/625/MR/skf、M2-M8 螺丝/螺母/垫片、SG90/MG996R 舵机、 NEMA8/14/17 步进、O 型圈、卡簧、销轴);② STEP 来源策略与 license 红线 (McMaster-Carr / GrabCAD / TraceParts / 厂商官网);③ 与 build123d-parts-lib 仓库对接 (parts_lib: 字段 → make_xxx() 工厂函数);④ 落盘 STEP → handoff 给 mechanical 装配。 触发词:找现成件、标准件、STEP 下载、McMaster、GrabCAD、TraceParts、608 轴承、 M3 螺丝、SG90、NEMA17、O 型圈、卡簧、screw、bearing、fastener、part library。 本子技能不做:从零参数化建模(→ mechanical)、URDF(→ urdf)、网页预览(→ viewer)。
baibai2013/build123d-cad · ★ 2 · Web & Frontend · score 65
Install: claude install-skill baibai2013/build123d-cad
# build123d-cad · parts-catalog 子技能 > 「能买到现成件就别自己画。能从开源库 import 就别下载 STEP。能下 STEP 就别拍照反求。」 收到机械需求里出现**标准件型号**(608ZZ / M3x10 / SG90 / NEMA17 / O 型圈…)时, **先走本子技能**,再 handoff 给 mechanical 做装配——而不是让 mechanical 凭空建模。 --- ## AI 执行准入序列(每次会话第一件事) 1. 读本 SKILL.md 的「四级查找优先级」表,知道按什么顺序找件。 2. 命中 build123d-parts-lib 已收录件 → 直接 `import` + 加入装配,**不要下 STEP、不要重建**。 3. 库里没有 → 按「STEP 来源策略」找官方 STEP,落盘到 `output/<task>/parts/`。 4. 都找不到 → 回退到 mechanical 子技能从规格书参数化建模。 5. **禁止**:跳过 parts-lib 直接下 STEP;不标 license 引入第三方 STEP;凭印象写尺寸。 --- ## 四级查找优先级(按这个顺序问自己) | 级 | 来源 | 命中后做什么 | 何时跳到下一级 | |---|---|---|---| | L1 | `build123d-parts-lib` 工厂函数 | `from build123d_parts_lib.parts.<cat>.<mod> import make_xxx` | 该型号未在 yaml 中收录 | | L2 | 厂商官网 / McMaster-Carr STEP | 下载 → 落 `output/<task>/parts/<id>.step` → `import_step()` | 厂商无 STEP 或 license 不允许 | | L3 | GrabCAD / TraceParts / 3DContentCentral | 同上,**必须记录原始 URL + license** | 找不到匹配型号 | | L4 | 规格书参数化重建 | handoff 给 mechanical 子技能从 PDF 尺寸建模 | — | > 详细索引见 `references/standard-parts-index.md`,STEP 来源 license 速查见 `references/step-sources.md`。 --- ## L1: build123d-parts-lib 已收录件(优先用) 仓库:`/Users/liyijiang/work/build123d-parts-lib/`(本机 editable 已装)。 所有件都是 **factory 函数返回 `Part`/`Compound`**,可直接装入装配。 ### 起手公式 ```python # 1. 查 yaml 看支持型号 # cat build123d_parts_lib/parts/<category>/<category>.yaml | head # 2. import 工厂函数 from build123d_parts_lib.parts.bearings.ball_bearing import make_ball_bearing from build123d_parts_lib.parts.fasteners.socket_head_screw import make_s