forgecad 0.9.16 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/dist/assets/{AdminPage-CXvls4-J.js → AdminPage-DcCnj0qo.js} +1 -1
  2. package/dist/assets/{BenchmarkPage-B27zk8xL.js → BenchmarkPage-BVEpJSVk.js} +1 -1
  3. package/dist/assets/{BlogPage-CMAVvgQL.js → BlogPage-DHaGP50_.js} +1 -1
  4. package/dist/assets/{DocsPage-knf4I4h7.js → DocsPage-CDoxHkz8.js} +40 -859
  5. package/dist/assets/EditorApp-BJ0Dloyh.js +16446 -0
  6. package/dist/assets/{EmbedViewer-D7ZGlFjx.js → EmbedViewer-CRKZbY0y.js} +2 -2
  7. package/dist/assets/{LandingPageProofDriven-CnevhTE8.js → LandingPageProofDriven-BxHkYRE7.js} +1 -1
  8. package/dist/assets/{LegalPage-BPTUmqeg.js → LegalPage-B-u6FrVv.js} +1 -1
  9. package/dist/assets/{PricingPage-B0D4goG_.js → PricingPage-CzpZ6-Ce.js} +1 -1
  10. package/dist/assets/{SettingsPage-CFF-UgjI.js → SettingsPage-CIZSSAd0.js} +1 -1
  11. package/dist/assets/{app-CE3sYcV7.css → app-CjsbDlb7.css} +143 -0
  12. package/dist/assets/{app-T0pDcSX4.js → app-DaTMg3nH.js} +1310 -290
  13. package/dist/assets/cli/{render-C5pcIISc.js → render-DPf4AYJK.js} +55 -60
  14. package/dist/assets/{constructionHistoryWorker-Ba2Hm58b.js → constructionHistoryWorker-AwMMWSxg.js} +1103 -349
  15. package/dist/assets/{evalWorker-vkx310U2.js → evalWorker-CjZZWRWW.js} +5209 -2643
  16. package/dist/assets/{inspectWorker-BuTJDVX6.js → inspectWorker-CZsCFtQT.js} +1163 -409
  17. package/dist/assets/{jointPose-B_Cgedn9.js → jointPose-DzQOViQH.js} +1 -1
  18. package/dist/assets/{manifold-BWgsjmAM.js → manifold-BYlzU521.js} +1 -1
  19. package/dist/assets/{manifold-D6IFSkhH.js → manifold-DgXo0T5P.js} +2 -2
  20. package/dist/assets/{manifold-rZexZI0G.js → manifold-K1SkarlQ.js} +1 -1
  21. package/dist/assets/{reportWorker-0AGij1Ru.js → reportWorker-B9nWwSrB.js} +8501 -3393
  22. package/dist/assets/{scalar-sampling-budget-J5cuzxT1.js → scalar-sampling-budget-prBw_s8t.js} +6067 -3479
  23. package/dist/assets/{scanProxyWorker-Vl4Wxa1y.js → scanProxyWorker-2GtDLk-R.js} +1 -1
  24. package/dist/assets/{javascript-1kQXfVaz.js → typescript-DBQ6RN5l.js} +874 -22
  25. package/dist/cli/render.html +1 -1
  26. package/dist/docs/index.html +3 -3
  27. package/dist/docs-raw/AI/usage.md +1 -1
  28. package/dist/docs-raw/CLI.md +77 -240
  29. package/dist/docs-raw/README.md +6 -0
  30. package/dist/docs-raw/component-model.md +17 -150
  31. package/dist/docs-raw/generated/assembly.md +188 -582
  32. package/dist/docs-raw/generated/concepts.md +259 -3501
  33. package/dist/docs-raw/generated/core.md +283 -1250
  34. package/dist/docs-raw/generated/curves.md +387 -1608
  35. package/dist/docs-raw/generated/legacy.md +162 -0
  36. package/dist/docs-raw/generated/lib.md +227 -85
  37. package/dist/docs-raw/generated/output.md +35 -99
  38. package/dist/docs-raw/generated/runtime-names.md +23 -23
  39. package/dist/docs-raw/generated/sdf.md +68 -284
  40. package/dist/docs-raw/generated/sheet-metal.md +68 -335
  41. package/dist/docs-raw/generated/sketch.md +240 -1161
  42. package/dist/docs-raw/generated/viewport.md +75 -316
  43. package/dist/docs-raw/generated/wood.md +21 -49
  44. package/dist/docs-raw/guides/coordinate-system.md +4 -42
  45. package/dist/docs-raw/guides/inspection-bundles.md +44 -442
  46. package/dist/docs-raw/guides/joint-design.md +18 -79
  47. package/dist/docs-raw/guides/positioning.md +21 -143
  48. package/dist/docs-raw/guides/scene-presentation.md +89 -0
  49. package/dist/docs-raw/guides/simready-quickstart.md +171 -0
  50. package/dist/docs-raw/simulation-workflow.md +273 -0
  51. package/dist/docs-raw/skills/forgecad-3d-reconstruction.md +25 -111
  52. package/dist/docs-raw/skills/forgecad-blockout-model.md +20 -117
  53. package/dist/docs-raw/skills/forgecad-component-model.md +23 -107
  54. package/dist/docs-raw/skills/forgecad-high-level-spec.md +47 -155
  55. package/dist/docs-raw/skills/forgecad-image-replicator.md +26 -143
  56. package/dist/docs-raw/skills/forgecad-lld.md +19 -113
  57. package/dist/docs-raw/skills/forgecad-make-a-model.md +112 -532
  58. package/dist/docs-raw/skills/forgecad-model-grader.md +38 -108
  59. package/dist/docs-raw/skills/forgecad-prepare-prompt.md +24 -211
  60. package/dist/docs-raw/skills/forgecad-project.md +13 -131
  61. package/dist/docs-raw/skills/forgecad-reconstruction-benchmark.md +42 -134
  62. package/dist/docs-raw/skills/forgecad-render-inspect.md +27 -174
  63. package/dist/docs-raw/skills/forgecad-visual-spec.md +32 -112
  64. package/dist/docs-raw/skills/forgecad.md +19 -18
  65. package/dist/docs-raw/skills/index.md +2 -0
  66. package/dist/docs-raw/welcome.md +2 -2
  67. package/dist/index.html +2 -2
  68. package/dist/llms.txt +1 -2
  69. package/dist/sitemap.xml +25 -13
  70. package/dist-cli/{check-compiler-SYQ2PWOB.js → check-compiler-II7NLPAB.js} +1 -1
  71. package/dist-cli/{check-query-propagation-HIAGV62W.js → check-query-propagation-7462TR3R.js} +1 -1
  72. package/dist-cli/{chunk-SPZE3DUY.js → chunk-UWTJCGXF.js} +5848 -2915
  73. package/dist-cli/forgecad.js +3496 -703
  74. package/dist-skill/CONTEXT.md +1797 -7963
  75. package/dist-skill/SKILL.md +15 -15
  76. package/dist-skill/docs/API/core/concepts.md +27 -157
  77. package/dist-skill/docs/CLI.md +77 -240
  78. package/dist-skill/docs/generated/assembly.md +182 -532
  79. package/dist-skill/docs/generated/core.md +283 -1250
  80. package/dist-skill/docs/generated/curves.md +387 -1609
  81. package/dist-skill/docs/generated/lib.md +227 -85
  82. package/dist-skill/docs/generated/output.md +35 -99
  83. package/dist-skill/docs/generated/runtime-names.md +16 -21
  84. package/dist-skill/docs/generated/sdf.md +68 -284
  85. package/dist-skill/docs/generated/sheet-metal.md +68 -335
  86. package/dist-skill/docs/generated/sketch.md +240 -1160
  87. package/dist-skill/docs/generated/viewport.md +75 -223
  88. package/dist-skill/docs/generated/wood.md +21 -49
  89. package/dist-skill/docs/guides/coordinate-system.md +4 -42
  90. package/dist-skill/docs/guides/inspection-bundles.md +44 -442
  91. package/dist-skill/docs/guides/joint-design.md +18 -79
  92. package/dist-skill/docs/guides/positioning.md +21 -143
  93. package/dist-skill/docs/guides/scene-presentation.md +89 -0
  94. package/dist-skill/docs/guides/surface-members.md +26 -0
  95. package/dist-skill/library/forgecad-3d-reconstruction/SKILL.md +23 -111
  96. package/dist-skill/library/forgecad-blockout-model/SKILL.md +18 -117
  97. package/dist-skill/library/forgecad-component-model/SKILL.md +21 -107
  98. package/dist-skill/library/forgecad-high-level-spec/SKILL.md +45 -155
  99. package/dist-skill/library/forgecad-image-replicator/SKILL.md +24 -143
  100. package/dist-skill/library/forgecad-lld/SKILL.md +17 -113
  101. package/dist-skill/library/forgecad-make-a-model/SKILL.md +110 -532
  102. package/dist-skill/library/forgecad-model-grader/SKILL.md +36 -108
  103. package/dist-skill/library/forgecad-prepare-prompt/SKILL.md +35 -224
  104. package/dist-skill/library/forgecad-prepare-prompt/references/default-profiles.md +43 -271
  105. package/dist-skill/library/forgecad-prepare-prompt/references/master-prompt.md +30 -99
  106. package/dist-skill/library/forgecad-project/SKILL.md +13 -133
  107. package/dist-skill/library/forgecad-reconstruction-benchmark/SKILL.md +29 -123
  108. package/dist-skill/library/forgecad-render-inspect/SKILL.md +25 -174
  109. package/dist-skill/library/forgecad-visual-spec/SKILL.md +30 -111
  110. package/dist-skill/website/skills/forgecad-3d-reconstruction.md +58 -0
  111. package/dist-skill/website/skills/forgecad-blockout-model.md +49 -0
  112. package/dist-skill/website/skills/forgecad-component-model.md +53 -0
  113. package/dist-skill/website/skills/forgecad-high-level-spec.md +101 -0
  114. package/dist-skill/website/skills/forgecad-image-replicator.md +63 -0
  115. package/dist-skill/website/skills/forgecad-lld.md +41 -0
  116. package/dist-skill/website/skills/forgecad-make-a-model.md +186 -0
  117. package/dist-skill/website/skills/forgecad-model-grader.md +82 -0
  118. package/dist-skill/website/skills/forgecad-prepare-prompt.md +63 -0
  119. package/dist-skill/website/skills/forgecad-project.md +26 -0
  120. package/dist-skill/website/skills/forgecad-reconstruction-benchmark.md +60 -0
  121. package/dist-skill/website/skills/forgecad-render-inspect.md +80 -0
  122. package/dist-skill/website/skills/forgecad-visual-spec.md +71 -0
  123. package/dist-skill/website/skills/forgecad.md +122 -0
  124. package/dist-skill/website/skills/index.md +26 -0
  125. package/examples/api/comparison-imported-sphere-candidate.forge.js +1 -1
  126. package/examples/api/conformal-product-ribbon.forge.js +1 -1
  127. package/examples/api/exact-sheet-shell-assembly.forge.js +1 -1
  128. package/examples/api/extrude-options.forge.js +4 -2
  129. package/examples/api/field-loft-drive-tip.forge.js +40 -0
  130. package/examples/api/guided-loft-olive-oil-bottle.forge.js +1 -1
  131. package/examples/api/highlight-debug.forge.js +10 -10
  132. package/examples/api/mesh-import-slats.forge.js +1 -1
  133. package/examples/api/real-product-curves.forge.js +1 -1
  134. package/examples/api/sculpt-box-circle-booleans.forge.js +1 -1
  135. package/examples/api/sdf-shapes.forge.js +2 -5
  136. package/examples/api/sketch-rounding-strategies.forge.js +6 -6
  137. package/examples/api/surface-member-bottle-cage.forge.js +3 -3
  138. package/examples/api/surface-member-conformal-product-ribbon.forge.js +3 -3
  139. package/examples/api/surface-member-razor-inlay.forge.js +1 -1
  140. package/examples/api/variable-sweep-test.forge.js +3 -3
  141. package/examples/mechanical/airplane-propeller.forge.js +74 -39
  142. package/examples/nurbs-surface.forge.js +1 -1
  143. package/examples/products/iphone.forge.js +1 -1
  144. package/examples/robotics/README.md +46 -0
  145. package/examples/robotics/scout-cam-rover-simready/README.md +119 -0
  146. package/examples/robotics/scout-cam-rover-simready/lib/dims.js +140 -0
  147. package/examples/robotics/scout-cam-rover-simready/main.forge.js +343 -0
  148. package/examples/robotics/scout-cam-rover-simready/parts/body.forge.js +304 -0
  149. package/examples/robotics/scout-cam-rover-simready/parts/chassis.forge.js +320 -0
  150. package/examples/robotics/scout-cam-rover-simready/parts/hardware.forge.js +21 -0
  151. package/examples/robotics/scout-cam-rover-simready/parts/turret.forge.js +70 -0
  152. package/examples/robotics/scout-cam-rover-simready/parts/wheel.forge.js +116 -0
  153. package/examples/robotics/simready-asset-crate.forge.js +79 -0
  154. package/examples/robotics/simready-diff-drive-rover.forge.js +141 -0
  155. package/examples/robotics/simready-parallel-gripper.forge.js +102 -0
  156. package/package.json +1 -1
  157. package/dist/assets/EditorApp-BHMQlJ-D.js +0 -14686
  158. package/dist/docs-raw/guides/geometry-conventions.md +0 -52
  159. package/dist/docs-raw/guides/modeling-recipes.md +0 -78
  160. package/dist-skill/docs/guides/geometry-conventions.md +0 -52
  161. package/dist-skill/docs/guides/modeling-recipes.md +0 -78
  162. package/dist-skill/library/forgecad-visual-spec/references/prompt-template.md +0 -79
@@ -1,327 +1,99 @@
1
- # Scoped Intake Profiles
1
+ # Family Intake Profiles
2
2
 
3
- This file does not define universal defaults.
3
+ Family-scoped starter anchors for closing missing inputs — temporary engineering anchors, not truth, and never reused across families.
4
4
 
5
- It defines a safer process:
5
+ ## Process Selection By Family
6
6
 
7
- 1. classify the artifact family
8
- 2. choose a manufacturing/process posture
9
- 3. choose qualitative levers
10
- 4. translate those levers into starter assumptions only inside that family
7
+ Never default to 3D printing. Choose the process stack from artifact family, load path, scale, safety expectations, material properties, quantity/iteration needs, and operating story. Typical honest stacks:
11
8
 
12
- These starter assumptions are not "truth".
13
- They are temporary engineering anchors used only when the user has not provided exact numbers.
14
-
15
- ## Universal Levers
16
-
17
- Use these across families before translating into numbers:
18
-
19
- - manufacturing posture: default to `manufacture-realistic prototype` unless specified; common override values are `production-realistic`, `prototype-realistic`, `printable`, and `visual-CAD`
20
- - duty level: `light-duty`, `general-duty`, `sturdy-duty`
21
- - scale level: `compact`, `medium`, `large`
22
- - cost posture: `cheapest`, `balanced`, `performance-first`
23
-
24
- Never take a number from one family and silently reuse it for another.
25
-
26
- ## Manufacturing Selection Rule
27
-
28
- Do not use 3D printing as the universal default.
29
- Choose the process stack from the artifact family, load path, scale, safety expectations, material properties, quantity/iteration needs, and operating story.
30
- Only use print defaults when the user explicitly requested printing or the selected process stack includes printed parts.
31
-
32
- The default posture is `manufacture-realistic prototype`: a credible prototype build candidate with real materials, real purchased parts, plausible fabrication routes, serviceable interfaces, and validation checks. It should be manufacturable enough for a prototype review, but it should not claim final production tooling, certification, or release readiness unless the user asks for that stronger bar.
33
-
34
- Examples:
35
-
36
- - rideable vehicles: metal/composite/wood structure, urethane/rubber wheels, bearings, brakes, fasteners, and purchased safety-critical hardware
37
- - furniture: wood, sheet goods, tube, metal brackets, conventional joinery, and printed parts only for honest secondary details
38
- - enclosures: injection molding, sheet metal, CNC, thermoforming, or printing depending on quantity, ruggedness, and serviceability
9
+ - rideable vehicles: metal/composite/wood structure, urethane/rubber wheels, bearings, brakes, fasteners, purchased safety-critical hardware
10
+ - furniture: wood, sheet goods, tube, metal brackets, conventional joinery; printed parts only for honest secondary details
11
+ - enclosures: injection molding, sheet metal, CNC, thermoforming, or printing depending on quantity, ruggedness, serviceability
39
12
  - fixtures: machined, laser-cut, welded, printed, or hybrid with standard clamps/pins/fasteners
40
- - small mechanisms: hybrid printed/machined/sheet parts plus purchased pivots, shafts, bearings, springs, fasteners, motors, and electronics where appropriate
13
+ - small mechanisms: hybrid printed/machined/sheet parts plus purchased pivots, shafts, bearings, springs, fasteners, motors, electronics
41
14
 
42
15
  ## Family: Grippers And Small Mechanisms
43
16
 
44
- Use for:
17
+ Use for: robot grippers, articulated fingers, small pick-and-place tools, manipulators, end-effectors.
45
18
 
46
- - robot grippers
47
- - articulated fingers
48
- - small pick-and-place tools
49
- - small manipulators and end-effectors
19
+ Family questions: delicate / mixed-general / rigid-tool-like handling? size closer to desk, household, or workshop objects? cheapest / balanced / performance-first hardware?
50
20
 
51
- ### Family Questions
21
+ Duty bands:
52
22
 
53
- - What feels closest: delicate handling, mixed general handling, or rigid/tool-like handling?
54
- - Is the size closer to small desk objects, everyday household objects, or larger workshop objects?
55
- - Should we bias for cheapest, balanced, or performance-first hardware?
56
-
57
- ### Translation To Starter Assumptions
58
-
59
- `light-duty`
60
-
61
- - object mass band: roughly `0.05-0.15 kg`
62
- - opening / feature band: roughly `30-60 mm`
63
- - hardware posture: small servo / compact mechanism / lightweight prototype members; printed, machined, or laser-cut depending on the selected manufacturing posture
64
-
65
- `general-duty`
66
-
67
- - object mass band: roughly `0.20-0.50 kg`
68
- - opening / feature band: roughly `60-120 mm`
69
- - hardware posture: standard metal-gear servo or NEMA17-class solution, M3/M4 fasteners, inserts, pins, bearings where honest
70
-
71
- `sturdy-duty`
72
-
73
- - object mass band: roughly `0.50-1.00 kg`
74
- - opening / feature band: roughly `100-180 mm`
75
- - hardware posture: stronger shafts, bearings, more metal reinforcement, likely downgrade final certainty unless the mechanism remains simple
23
+ - `light-duty` object mass `0.05-0.15 kg`, opening/feature band `30-60 mm`; small servo, compact lightweight prototype members (printed, machined, or laser-cut per the selected posture)
24
+ - `general-duty` object mass `0.20-0.50 kg`, opening `60-120 mm`; standard metal-gear servo or NEMA17-class solution, M3/M4 fasteners, inserts, pins, bearings where honest
25
+ - `sturdy-duty` object mass `0.50-1.00 kg`, opening `100-180 mm`; stronger shafts, bearings, more metal reinforcement; downgrade final certainty unless the mechanism stays simple
76
26
 
77
27
  ### Subtype: Dexterous Finger / Humanoid Hand Module
78
28
 
79
- Use when the request is for a robot finger, dexterous finger, anthropomorphic finger, tendon finger, prosthetic-style finger, or one module of a robot hand.
80
-
81
- Default specific operating story shape:
82
-
83
- - invented organization: a named ambitious robotics company or advanced hardware group, not a famous real company
84
- - named program: a humanoid hand, embodied AI manipulation, warehouse-pilot, or end-effector program with real mission pressure
85
- - named revision: a concrete module/revision like `F2 index finger`, `DIP/PIP tendon mule`, or `Rev-C palm-mount finger`
86
- - review moment: go/no-go gate, customer-demo readiness review, actuator-routing review, palm-integration check, or grasp-demo gate
87
- - test setting: named curl-cycle rig, palm mule, contact-pad wear fixture, or instrumented grasp bench
88
- - stakes: first-customer pilot, investor demo, field-trial gate, reliability target, or deployment schedule
29
+ Use for robot/dexterous/anthropomorphic/tendon/prosthetic-style fingers or one module of a robot hand.
89
30
 
90
- Good story seed:
91
-
92
- - "Helix Handworks is preparing the F2 index-finger module for its DEX-07 warehouse-pilot go/no-go review. The finger must bolt into Palm Mule V3, route a Bowden tendon through the MCP base without rubbing the housing wall, survive a 1,000-cycle curl test on Rig-3, and expose pivot/wear surfaces before the customer demo cell is frozen."
31
+ Story shape: a hand/manipulation program at an invented robotics org, a concrete module revision (`F2 index finger`, `Rev-C palm-mount finger`), a go/no-go or demo gate, a named test rig, real deployment stakes. Seed: "Helix Handworks is preparing the F2 index-finger module for its DEX-07 warehouse-pilot go/no-go review. The finger must bolt into Palm Mule V3, route a Bowden tendon through the MCP base without rubbing the housing wall, survive a 1,000-cycle curl test on Rig-3, and expose pivot/wear surfaces before the customer demo cell is frozen."
93
32
 
94
33
  Starter assumptions for `general-duty` / `medium` / `balanced`:
95
34
 
96
35
  - envelope: adult index-finger scale, roughly `95-115 mm` long, `18-24 mm` wide, `16-24 mm` thick
97
36
  - joints: MCP/PIP/DIP-like flexion chain with hard stops and clearance checks through curl
98
- - motion target: MCP roughly `0-75 deg`, PIP roughly `0-90 deg`, DIP roughly `0-65 deg`
37
+ - motion target: MCP `0-75 deg`, PIP `0-90 deg`, DIP `0-65 deg`
99
38
  - actuation: tendon or Bowden cable flexion with passive elastic/spring return unless the user asks for independent motors
100
- - hardware posture: metal pivot pins or shoulder screws, bushings or bearing surfaces, serviceable tendon anchor, replaceable fingertip/contact pad, palm mounting datum
101
- - validation: full-range curl sweep, tendon rub check, pivot wear check, fingertip contact load path, base-mount stiffness, and assembly access
102
-
103
- ### Manufacturing Defaults When Printing Is Selected
104
-
105
- - structural printed parts: PETG by default
106
- - prototypes / fit checks: PLA allowed
107
- - sliding or rotating interfaces: prefer pins, bushings, bearings, or sacrificial wear parts over raw printed rubbing
39
+ - hardware: metal pivot pins or shoulder screws, bushings or bearing surfaces, serviceable tendon anchor, replaceable fingertip/contact pad, palm mounting datum
40
+ - validation: full-range curl sweep, tendon rub check, pivot wear check, fingertip contact load path, base-mount stiffness, assembly access
108
41
 
109
42
  ## Family: Fixtures, Jigs, And Holders
110
43
 
111
- Use for:
112
-
113
- - drill guides
114
- - work-holding fixtures
115
- - camera / sensor mounts
116
- - brackets and repeatable positioning tools
117
-
118
- ### Family Questions
119
-
120
- - Is it mostly for positioning, clamping, or repeated handling?
121
- - Is the scale closer to palm-size, hand-size, or bench-size?
122
- - Is speed of build more important than stiffness, or vice versa?
123
-
124
- ### Translation To Starter Assumptions
125
-
126
- `light-duty`
127
-
128
- - small hand-tool or desktop fixture
129
- - low clamp loads
130
- - simple printed, machined, laser-cut, or bent-sheet geometry acceptable depending on the selected process
44
+ Use for: drill guides, work-holding fixtures, camera/sensor mounts, brackets, repeatable positioning tools.
131
45
 
132
- `general-duty`
46
+ Family questions: positioning, clamping, or repeated handling? palm-, hand-, or bench-size? speed of build vs stiffness?
133
47
 
134
- - hand-size or bench-size fixture
135
- - moderate clamp loads
136
- - inserts, metal pins, or off-the-shelf fasteners where wear concentrates
137
-
138
- `sturdy-duty`
139
-
140
- - repeated clamping or alignment duty
141
- - workshop abuse expected
142
- - printed geometry, if used, should be backed by thicker sections, inserts, metal rails, or replaceable wear faces
48
+ Non-obvious anchors: at `general-duty`, put inserts, metal pins, or off-the-shelf fasteners where wear concentrates; at `sturdy-duty` (repeated clamping, workshop abuse), printed geometry must be backed by thicker sections, inserts, metal rails, or replaceable wear faces.
143
49
 
144
50
  ## Family: Enclosures And Electronics Housings
145
51
 
146
- Use for:
147
-
148
- - PCB enclosures
149
- - instrument cases
150
- - sensor housings
151
- - covers and protective shells
152
-
153
- ### Family Questions
154
-
155
- - Is this for one PCB, a hand-sized electronics stack, or a larger bench device?
156
- - Does it need passive venting, fan support, or mostly dust protection?
157
- - Is aesthetics, serviceability, or ruggedness the main goal?
158
-
159
- ### Translation To Starter Assumptions
160
-
161
- `light-duty`
162
-
163
- - single small board or simple module
164
- - easier snap/screw access acceptable
165
- - lighter wall sections
52
+ Use for: PCB enclosures, instrument cases, sensor housings, covers and shells.
166
53
 
167
- `general-duty`
54
+ Family questions: one PCB, hand-sized stack, or bench device? passive venting, fan support, or dust protection? aesthetics, serviceability, or ruggedness?
168
55
 
169
- - multiple boards or connectors
170
- - removable lid / inserts / real fastening
171
- - enough clearance for wiring and service loops
172
-
173
- `sturdy-duty`
174
-
175
- - rugged transport or workshop environment
176
- - thicker walls, boss reinforcement, connector strain protection, better sealing strategy
56
+ Non-obvious anchors: at `general-duty`, a removable lid with real fastening (inserts) and clearance for wiring/service loops; at `sturdy-duty`, thicker walls, boss reinforcement, connector strain protection, and a sealing strategy.
177
57
 
178
58
  ## Family: Furniture And Load-Bearing Structures
179
59
 
180
- Use for:
181
-
182
- - tables
183
- - shelves
184
- - stands
185
- - stools
186
- - structural frames
187
-
188
- ### Important Caution
189
-
190
- Human-bearing or safety-critical structures should usually end as `BEST-EFFORT BUILD CANDIDATE` unless there is real structural reasoning, conservative geometry, and honest material limits.
191
-
192
- ### Family Questions
193
-
194
- - Is this mostly decorative / light household / real workshop use?
195
- - Is the span closer to side-table size, desk size, or bench size?
196
- - Will it ever support a person, concentrated heavy tools, or repeated impact?
197
-
198
- ### Translation To Starter Assumptions
199
-
200
- `light-duty`
60
+ Use for: tables, shelves, stands, stools, structural frames.
201
61
 
202
- - decor, lamps, light household items
203
- - smaller spans
204
- - simpler joints acceptable
62
+ **Caution:** human-bearing or safety-critical structures usually end `BEST-EFFORT BUILD CANDIDATE` unless there is real structural reasoning, conservative geometry, and honest material limits.
205
63
 
206
- `general-duty`
64
+ Family questions: decorative / light household / real workshop use? side-table, desk, or bench span? will it ever support a person, heavy tools, or repeated impact?
207
65
 
208
- - laptop, books, normal desk use
209
- - medium spans
210
- - real attention to leg stiffness, racking resistance, and joint reinforcement
211
-
212
- `sturdy-duty`
213
-
214
- - workshop surfaces, heavier distributed loads, or concentrated tools
215
- - larger spans or more demanding rigidity
216
- - stronger joinery, thicker members, more triangulation / bracing, and often conventional structural reinforcement
217
-
218
- ### Manufacturing Defaults
219
-
220
- - do not assume "fully 3D printed" is the right answer
221
- - for structural furniture, consider wood, sheet goods, tube, or metal hardware as first-class BOM items
222
- - use printed parts mainly where they are honest: brackets, templates, feet, cable features, corner blocks, custom connectors
66
+ Non-obvious anchors: at `general-duty`, real attention to leg stiffness, racking resistance, and joint reinforcement; at `sturdy-duty`, stronger joinery, thicker members, triangulation/bracing. Wood, sheet goods, tube, and metal hardware are first-class BOM items; printed parts only where honest (brackets, templates, feet, cable features, corner blocks).
223
67
 
224
68
  ## Family: Chassis And Mobile Robot Structures
225
69
 
226
- Use for:
227
-
228
- - wheeled robot chassis
229
- - tracked platforms
230
- - sensor carts
231
- - mobile bases
232
-
233
- Do not use this family for human-ridden scooters, bicycles, skateboards, mobility devices, or other rideable products. Use `Human Vehicles And Rideable Product Forms` instead.
234
-
235
- ### Family Questions
236
-
237
- - Indoor smooth floor, mixed home floor, or rough workshop floor?
238
- - Tiny robot, small rolling base, or larger mobile platform?
239
- - Is runtime / price / ruggedness the main priority?
70
+ Use for: wheeled robot chassis, tracked platforms, sensor carts, mobile bases. **Not** for human-ridden scooters, bikes, skateboards, or mobility devices — those route to Human Vehicles below.
240
71
 
241
- ### Translation To Starter Assumptions
72
+ Family questions: indoor smooth, mixed home, or rough workshop floor? tiny robot, small rolling base, or larger platform? runtime / price / ruggedness priority?
242
73
 
243
- `light-duty`
244
-
245
- - small indoor base
246
- - low speeds
247
- - simpler drivetrain packaging
248
-
249
- `general-duty`
250
-
251
- - home or workshop mixed surfaces
252
- - modest payloads
253
- - stronger wheel mounts, motor mounts, and battery restraint
254
-
255
- `sturdy-duty`
256
-
257
- - rougher surfaces or heavier payloads
258
- - more metal shafts / bearings / real fastening
259
- - increased skepticism about fully printed load paths
74
+ Non-obvious anchors: at `general-duty`, strengthen wheel mounts, motor mounts, and battery restraint; at `sturdy-duty`, more metal shafts/bearings/real fastening and increased skepticism about fully printed load paths.
260
75
 
261
76
  ## Family: Human Vehicles And Rideable Product Forms
262
77
 
263
- Use for:
264
-
265
- - kick scooters
266
- - bicycles and balance bikes
267
- - skateboards and longboards
268
- - carts, strollers, dollies, or mobility-adjacent platforms with human interaction
269
- - any artifact where a person stands on, rides, steers, brakes, or leans on the structure
270
-
271
- ### Important Caution
272
-
273
- Human-ridden or safety-critical vehicles should usually end as `BEST-EFFORT BUILD CANDIDATE` unless there is real structural analysis, conservative geometry, braking/steering reasoning, and explicit test limitations.
274
- Do not present a rider-rated design as safe without validation.
275
- Do not make rideable load paths printed by default.
276
-
277
- ### Family Questions
78
+ Use for: kick scooters, bicycles, skateboards/longboards, carts, strollers, dollies, mobility-adjacent platforms — anything a person stands on, rides, steers, brakes, or leans on.
278
79
 
279
- - Is this a visual/product CAD study, a manufacture-realistic prototype build candidate, or a specifically printable toy/model?
280
- - Is it for child-scale, adult-scale, display-scale, or cargo/utility scale?
281
- - Does it need steering, braking, folding, suspension, or only static product form?
80
+ **Caution:** rideables usually end `BEST-EFFORT BUILD CANDIDATE` unless there is real structural analysis, conservative geometry, braking/steering reasoning, and explicit test limitations. Never present a rider-rated design as safe without validation.
282
81
 
283
- ### Translation To Starter Assumptions
82
+ Family questions: visual CAD study, manufacture-realistic prototype candidate, or explicitly printable toy/model? child-, adult-, display-, or cargo-scale? steering, braking, folding, suspension, or static form only?
284
83
 
285
- `light-duty`
84
+ Anchors: `light-duty` = display/toy/non-ridden study, printed cosmetic parts acceptable. `general-duty` = aluminum/steel tube or frame, machined or cast fork/dropout features, wood/composite/aluminum deck, urethane/rubber wheels, real bearings, axles, grip tape, purchased brake/steering hardware. `sturdy-duty` = conservative metal/composite structure, triangulation, large bearing interfaces, replaceable wear parts; downgrade certainty unless structural checks and a real test plan are explicit.
286
85
 
287
- - display-scale, toy-scale, or non-ridden study
288
- - simplified load paths acceptable if clearly labeled
289
- - printed or lightweight prototype parts may be acceptable for cosmetic/non-critical features
290
-
291
- `general-duty`
292
-
293
- - adult product form or manufacture-realistic prototype scooter/bike/cart architecture
294
- - aluminum or steel tube/frame members, machined or cast fork/dropout-like features, wood/composite/aluminum deck where appropriate
295
- - urethane/rubber wheels, real bearings, axles, fasteners, spacers, grip tape, grips, and purchased brake/steering hardware where appropriate
296
-
297
- `sturdy-duty`
298
-
299
- - repeated riding, rougher surfaces, heavier loads, cargo, impact, or braking/steering duty
300
- - conservative metal/composite structure, triangulation, large bearing interfaces, replaceable wear parts, and no printed primary load paths unless the user explicitly requested a printed demonstration model
301
- - downgrade final certainty unless structural checks and real-world test plan are explicit
302
-
303
- ### Manufacturing Defaults
304
-
305
- - primary load paths: aluminum/steel tube, plate, extrusion, wood/composite deck, or equivalent conventional structural members
306
- - rolling interfaces: purchased wheels, bearings, axles, spacers, and bushings
307
- - contact/wear interfaces: urethane/rubber, grip tape, replaceable pads, bushings, bearings
308
- - printed parts: cosmetic covers, cable guides, templates, fit-check models, brackets for low-load accessories, or explicit printable-model requests
86
+ Manufacturing: primary load paths in metal tube/plate/extrusion or wood/composite — never printed unless the user explicitly requested a printed demonstration model. Rolling interfaces purchased (wheels, bearings, axles, spacers, bushings); contact/wear interfaces in urethane/rubber, grip tape, replaceable pads. Printed parts only for cosmetic covers, cable guides, templates, fit-check models, or low-load accessory brackets.
309
87
 
310
88
  ## If No Family Fits
311
89
 
312
- Do not force a nearby family just because it is available.
313
-
314
- Instead:
315
-
316
- - say the nearest family
317
- - explain the mismatch
318
- - create a custom intake brief with 2-4 artifact-specific levers
90
+ Do not force a nearby family. Name the nearest family, state the mismatch, and build a custom intake brief with 2-4 artifact-specific levers.
319
91
 
320
92
  ## When Printing Is Selected
321
93
 
322
- Only use when the artifact actually includes printed parts:
94
+ Only when the artifact actually includes printed parts:
323
95
 
324
- - nozzle: `0.4 mm`
325
- - layer height: `0.2 mm`
326
- - threaded service joints: use heat-set inserts where repeated opening is expected
327
- - wear-heavy interfaces: do not trust raw printed friction unless the task is intentionally low-duty
96
+ - structural printed parts: PETG by default; PLA allowed for prototypes/fit checks
97
+ - nozzle `0.4 mm`, layer height `0.2 mm`
98
+ - threaded service joints: heat-set inserts where repeated opening is expected
99
+ - sliding/rotating or wear-heavy interfaces: pins, bushings, bearings, or sacrificial wear parts — never raw printed rubbing unless intentionally low-duty
@@ -3,11 +3,7 @@
3
3
  Fill the placeholders and return the finished prompt as one block.
4
4
 
5
5
  ```text
6
- You are producing a ForgeCAD manufacture-realistic prototype package, not a concept sketch.
7
-
8
- Treat this as a serious product-team prototype assignment.
9
- The goal is to produce a credible internal engineering package for a real prototype build candidate, not a generic maker example.
10
- Use the specific operating story below to drive engineering choices; do not flatten it into a vague domain label.
6
+ You are producing a ForgeCAD manufacture-realistic prototype package, not a concept sketch — a credible internal engineering package for a real build candidate, not a generic maker example. Use the specific operating story below to drive engineering choices; do not flatten it into a vague domain label.
11
7
 
12
8
  Target artifact:
13
9
  - artifact: {artifact}
@@ -22,121 +18,56 @@ Specific operating story:
22
18
  - production reason: {production_reason}
23
19
  - test setting: {test_setting}
24
20
  - generic-output failure mode to avoid: {generic_failure_mode}
25
- - benchmark class / public comparison anchor, if useful: {benchmark_class}
21
+ - public comparison anchor, if useful: {benchmark_class}
26
22
 
27
23
  Chosen intake classification:
28
- - output posture: manufacture-realistic prototype unless the user explicitly selected another posture
24
+ - output posture: {output_posture} (manufacture-realistic prototype unless the user selected another)
29
25
  - artifact family: {artifact_family}
30
26
  - duty level: {duty_level}
31
27
  - scale level: {scale_level}
32
28
  - cost posture: {cost_posture}
33
- - job style: {job_style}
34
29
  - manufacturing / process stack: {manufacturing_process_stack}
35
- - budget posture: {budget_posture}
30
+ - variant policy: {variant_policy}
36
31
 
37
- Working assumptions chosen to close missing inputs:
38
- - these assumptions are provisional and family-scoped
39
- - they apply to `{artifact_family}`, not as universal defaults
32
+ Working assumptions chosen to close missing inputs (provisional, scoped to `{artifact_family}` only):
40
33
  - {assumption_1}
41
34
  - {assumption_2}
42
35
  - {assumption_3}
43
36
  - {assumption_4}
44
37
 
45
38
  Hard constraints:
46
- - use ForgeCAD
47
- - if the mechanism has moving parts, use a real `assembly()` from iteration 1
48
- - define real joints, limits, axes, and intended operating ranges
49
- - choose manufacturing/processes that fit the artifact, load path, scale, safety expectations, and operating story
50
- - default to manufacture-realistic prototype: real prototype materials, fabrication cues, purchased parts, assembly logic, serviceability, and validation without pretending to be production-certified or release-ready
51
- - do not assume FDM, 3D printing, or "printable" unless the user explicitly asked for it or the chosen process stack includes printed parts
52
- - include realistic process-appropriate clearances and mechanically honest interfaces
53
- - include manufactured, printed, and purchased parts only where each is an honest choice
54
- - include a BOM that is concrete enough to buy and assemble from
55
- - prefer metal shafts, bearings, fasteners, inserts, pins, tubes, sheet goods, castings, molded parts, machined parts, or composite/wood members where they are the honest choice
56
- - model the physical artifact, not an educational diagram
57
- - do not add explanatory text labels, floating callouts, arrows, legends, coordinate axes, section-title plaques, or part-name slabs to CAD geometry unless the user explicitly asks for a teaching or presentation view
58
- - include product markings only when they would exist on the real artifact, such as serial plates, connector labels, gauge ticks, keyboard legends, alignment marks, scale marks, warning marks, service arrows, branding, or molded icons
59
- - keep real markings sparse, process-appropriate, and light enough that text geometry does not dominate runtime or exact export behavior
60
- - do not hide uncertainty; choose defaults and continue
61
- - do not claim the user works for a named company unless the user explicitly said so
62
- - if an organization/team name appears only in the operating story, treat it as a design scenario, not as a factual claim about the user
63
- - do not clone proprietary named products; use public domain patterns and first-principles engineering to create an original design
39
+ - Use ForgeCAD. Any moving mechanism uses a real `assembly()` with honest joints, limits, axes, and operating ranges per the forgecad skill quality bar. Make the result runnable with `forgecad run`.
40
+ - Default posture is manufacture-realistic prototype: real prototype materials, fabrication cues, purchased parts, assembly logic, serviceability, and validation — without claiming production certification or release readiness.
41
+ - Choose processes that fit the artifact, load path, scale, safety, and operating story. Do not assume FDM/3D printing/"printable" unless the user asked or the selected process stack includes printed parts. Prefer metal shafts, bearings, fasteners, inserts, pins, tube, sheet goods, castings, molded/machined parts, or composite/wood members where honest, with process-appropriate clearances.
42
+ - Include a BOM concrete enough to buy and assemble from, registered in-model with `bom()` entries — not only prose.
43
+ - Model the physical artifact, not an educational diagram: no explanatory text labels, callouts, arrows, legends, axes, or part-name slabs unless the user explicitly asks for a teaching view. Include only markings the real artifact would carry (serial plates, connector labels, gauge ticks, alignment/warning marks, branding), sparse and process-appropriate.
44
+ - Do not hide uncertainty; choose defaults and continue.
45
+ - Do not claim the user works for a named company unless they said so; the invented org is a design scenario, not a factual claim. Do not clone proprietary named products — use public-domain patterns and first-principles engineering.
64
46
 
65
47
  Acceptable final states:
66
- 1. `BUILD-READY`
67
- 2. `BEST-EFFORT BUILD CANDIDATE`
68
-
69
- `BUILD-READY` means the output is specific enough that a competent builder could start fabricating, machining, printing selected printed parts, buying parts, assembling, and testing the prototype immediately without inventing missing details.
70
-
71
- `BEST-EFFORT BUILD CANDIDATE` means you still provide the strongest concrete design possible, but you explicitly name the smallest unavoidable validation loop that remains.
48
+ 1. `BUILD-READY` — specific enough that a competent builder could start fabricating, buying, assembling, and testing immediately without inventing missing details.
49
+ 2. `BEST-EFFORT BUILD CANDIDATE` — still the strongest concrete design possible, plus an explicit statement of the smallest unavoidable validation loop that remains.
72
50
 
73
51
  Non-negotiable rules:
74
- - Do not answer with a high-level concept, vision, or wishlist.
75
- - Do not produce a generic category solution that could have been written without the professional context.
76
- - Do not use placeholders like "appropriate motor", "standard hardware", or "adjust as needed".
77
- - If a number is missing, choose a defensible value, state it, and continue.
78
- - Prefer a complete best-effort design over an incomplete discussion.
79
- - If the user's wording is physically confused, normalize it and proceed.
52
+ - No high-level concepts, visions, or wishlists; no generic category solution that could have been written without the operating story.
53
+ - No placeholders like "appropriate motor", "standard hardware", or "adjust as needed". If a number is missing, choose a defensible value, state it, continue.
54
+ - Prefer a complete best-effort design over an incomplete discussion. If the user's wording is physically confused, normalize it and proceed.
80
55
  - Do not import numeric assumptions from unrelated artifact families.
81
56
  - Do not ask follow-up questions unless the architecture would materially change and no safe assumption bundle exists.
82
- - Do not make the CAD understandable by labeling every part; make the part boundaries, hardware, interfaces, and materials physically legible.
57
+ - Make the CAD legible through part boundaries, hardware, interfaces, and materials not labels.
83
58
 
84
59
  Required outputs:
85
60
 
86
- 0. Specific operating story and anti-generic bar
87
- - State the organization/team, project revision, milestone, and test setting you are designing for.
88
- - Name the generic failure mode you are avoiding.
89
- - Identify the domain-specific details that must appear for the design to be credible.
90
-
91
- 1. Problem normalization
92
- - Restate exactly what is being built, what it should do, and what "done" means in physical terms.
93
-
94
- 2. Assumption bundle
95
- - State all chosen assumptions with units and why they are reasonable for this request.
96
-
97
- 3. Architecture choice
98
- - Pick one mechanism architecture.
99
- - Briefly mention the main rejected alternatives and why they lost.
100
-
101
- 4. Detailed mechanical design
102
- - Give exact dimensions or dimension formulas for the major parts.
103
- - Define subassemblies, interfaces, motion ranges, stops, and load paths.
104
- - If this is a gripper or articulated mechanism, specify finger/link/jaw geometry and all joints concretely.
105
-
106
- 5. Actuation and transmission
107
- - Specify the actuator class, approximate required torque/force, transmission approach, and why they fit the chosen profile.
108
-
109
- 6. Manufacturing package
110
- - For each critical part: material, manufacturing process, prototype setup/orientation/tooling/finish assumptions, serviceability notes, and features sensitive to process accuracy.
111
- - If the selected process includes printed parts, include print orientation, likely support strategy, and print-sensitive features for those parts.
112
-
113
- 7. Bill of materials
114
- - Include manufactured parts, printed parts if any, and purchased parts.
115
- - For each line item give: name, exact spec or part class, quantity, why needed, and important dimensions or ratings.
116
-
117
- 8. Assembly package
118
- - Provide the assembly order, jointing method, insert/bearing/pin usage, fastening notes, and likely failure-prone assembly steps.
119
-
120
- 9. Validation package
121
- - Check motion range, likely collisions, stiffness risks, load risks, manufacturability, tolerance-stack risks, and wear points.
122
- - Check printability only for parts whose selected process is printing.
123
- - If moving parts are present, describe how the design should be checked through its operating range rather than only at rest pose.
124
-
125
- 10. ForgeCAD implementation package
126
- - Produce the actual ForgeCAD file structure you would write.
127
- - If you are operating in a writable workspace, write the `.forge.js` files instead of stopping at prose.
128
- - Use `bom()` / assembly metadata where appropriate.
129
- - Make the design compatible with `forgecad run`.
130
- - If relevant, make it exportable in process-appropriate formats such as STEP, STL, 3MF, DXF, SVG, or report output.
131
-
132
- 11. Final verdict
133
- - End with exactly one of:
134
- - `BUILD-READY`
135
- - `BEST-EFFORT BUILD CANDIDATE`
136
-
137
- ForgeCAD-specific quality bar:
138
- - Any moving mechanism must use `assembly()` from the start, not manual transform hacks.
139
- - Use ForgeCAD's joint/collision workflow mentally and structurally: joints, limits, sweeps, collisions, and BOM are part of the deliverable.
140
- - Do not claim a hinge or sliding joint works unless cavity / clearance logic is physically honest.
141
- - A pretty static pose is not success.
61
+ 0. Operating story and anti-generic bar — restate the org, revision, milestone, test setting; name the generic failure mode avoided and the domain-specific details that make the design credible.
62
+ 1. Problem normalization what is being built, what it does, what "done" means physically.
63
+ 2. Assumption bundle every chosen assumption with units and why it is reasonable.
64
+ 3. Architecture choice one mechanism architecture; briefly name the rejected alternatives and why they lost.
65
+ 4. Detailed mechanical design — exact dimensions or formulas for major parts; subassemblies, interfaces, motion ranges, stops, load paths; for articulated mechanisms, concrete finger/link/jaw geometry and all joints.
66
+ 5. Actuation and transmission — actuator class, approximate torque/force, transmission approach, fit to the chosen profile.
67
+ 6. Manufacturing package per critical part: material, process, prototype setup/orientation/tooling/finish assumptions, serviceability, process-accuracy-sensitive features. For printed parts (only if printing is selected): orientation, support strategy, print-sensitive features.
68
+ 7. Bill of materials — manufactured, printed (if any), and purchased parts; per line: name, exact spec or part class, quantity, purpose, key dimensions/ratings; mirrored in-model with `bom()` so `forgecad export report` reproduces it.
69
+ 8. Assembly package — assembly order, jointing method, insert/bearing/pin usage, fastening notes, failure-prone steps.
70
+ 9. Validation package motion range, likely collisions, stiffness/load risks, manufacturability, tolerance stacks, wear points; check printability only for printed parts; check moving designs through their operating range, not just at rest pose.
71
+ 10. ForgeCAD implementation package — the actual file structure; in a writable workspace, write the `.forge.js` files instead of stopping at prose, with `main.forge.js` as the runnable entry point for multi-file projects; `dim()` annotations on the dimensions a builder must hit, and the process-appropriate export proven to run (per the forgecad-make-a-model Manufacturing Outputs bar).
72
+ 11. Final verdict — end with exactly one of `BUILD-READY` or `BEST-EFFORT BUILD CANDIDATE`.
142
73
  ```