Manufacturing & Economic Knowledge for CNC Milling and Injection Molding

0 0 Updated: 2026-08-02 11:38:37

This skill delivers technical specs, material properties, and cost models for CNC milling and injection molding. It guides part design to meet max_unit_cost and target_quantity constraints, offering cost formulas, design rules, and code patterns for optimal manufacturability.

Install
npx skills add https://github.com/MRiabov/Problemologist-AI.git --skill manufacturing-knowledge
Skill Details readonly

Why I Recommend This Manufacturing & Economic Knowledge Skill?

As an engineer who constantly deals with part design, I know all too well the pain of spending days on a design only to discover that the cost has blown past the budget. Recently, I stumbled upon a skill called Manufacturing & Economic Knowledge, and honestly, it's been a lifesaver. It specifically tackles the "how to design so it's both cheap and easy to manufacture" problem in CNC milling and injection molding. For instance, if you have a requirement that the per-unit cost cannot exceed a certain number, or you need to produce 10,000 units, this skill tells you which process to choose and how to tweak the design to hit that target.

First, Let's Understand What It Actually Does

This isn't one of those flaky AI chatbots that just chats; it genuinely calculates costs for you. It contains complete cost models for two mainstream manufacturing processes:

  • CNC Milling: Ideal for small batches (1-100 units) and high-strength aluminum parts. The cost formula is Total Cost = Fixed Cost + (Material Cost + Machining Cost) × Quantity. Here, the fixed cost is about $80, material cost is calculated based on the bounding box volume of the raw stock, and machining cost is proportional to the cutting volume.
  • Injection Molding: Ideal for large batches (>1000 units) and plastic parts. The cost formula is Total Cost = Mold Cost + (Material Cost + Cycle Cost) × Quantity. The mold cost is the significant upfront expense, but it amortizes well over large volumes. The cycle cost is proportional to cooling time, which in turn is proportional to the square of the wall thickness. So, wall thickness directly dictates the cost.

What's even more thoughtful is that the skill provides clear design constraints. For example, CNC parts cannot have undercuts, and the minimum inner corner radius is 3.0mm. Injection molding requires at least a 2-degree draft angle and a wall thickness controlled between 1.0 and 4.0 millimeters. These are lessons learned from painful experience. I once designed an aluminum part with a 2mm inner corner radius, and CNC machining simply couldn't handle it. I had to redesign the whole thing, wasting two days.

Getting Started Is Actually Quite Simple

This skill is hosted on GitHub, and you install it using the npx command. All you need to do is run this in your terminal:

npx skills add https://github.com/MRiabov/Problemologist-AI.git --skill manufacturing-knowledge

Once installed, it creates a .skills/manufacturing-knowledge directory in your project. The crucial next step is to ensure you have a config/manufacturing_config.yaml file in your workspace, which contains material properties, densities, and cost constants. The skill reads this file using read_file() rather than relying on my own internal knowledge, guaranteeing the data is always current.

There are also two important functions: validate_costing_and_price() is used for validation and pricing. It normalizes the cost calculation results to ensure consistency with the weight overview in assembly_definition.yaml. Don't ask how I know this; I once got called out by a client for weight inconsistencies. Since using this skill, I haven't had that problem again.

A Few Expert Modes That Made Me Say "Wow"

This skill also includes a few code examples that are incredibly practical. For instance, auto-filleting internal vertical edges:

internal_edges = part.edges().filter_by(Axis.Z).internal()
part = fillet(internal_edges, radius=3.1) # 3.1mm for 3.0mm tool clearance

This code automatically identifies all internal edges along the Z-axis and applies a 3.1mm fillet to them, perfectly leaving clearance for a 3mm tool. It's brilliant.

There's also creating a shell plastic part:

part = shell(part, openings=part.faces().sort_by(Axis.Z).last(), amount=-2.0)

And adding a 2-degree draft angle:

part = draft(part, faces=part.faces().filter_by(Axis.Z), angle=2.0, pull_direction=(0,0,1))

These three code snippets essentially cover the three core operations in injection-molded part design. You can just use them directly.

My Learning Insights and Pitfall Avoidance Guide

While using this skill, I've summarized a few key points:

  • Don't rely on memory; make sure the skill reads data from the config file. I previously remembered the density of a certain aluminum alloy as 2.7g/cm³, but the config file had it as 2.8, and the cost calculation came out significantly different.
  • Quantity dictates the process. For less than 100 units, definitively choose CNC; for more than 1000 units, choose injection molding. In the middle range, you need to compare the actual total costs of both options, not just the unit price. For example, at 500 units, the amortized mold cost for injection molding might actually be cheaper than CNC.
  • Part reuse is a money-saving hack. Using the same part ID for multiple instances gets you a 50% discount on the CNC fixed cost and a 10% discount on the injection molding mold cost. So, standardize your designs as much as possible; don't create too many unique parts.
  • Weight must be precise. The skill gives you a deterministic weight output; avoid using words like "approximately."

Also, the skill advises against browsing the scripts directory on your own or inventing tools that don't exist. Stick to the interfaces exposed to you to avoid errors.

Real-World Application Scenario

I recently worked on the housing design for a smart home device with a target quantity of 20,000 units and a requirement to keep the unit cost under $3. Using this skill, I first ran the injection molding cost model. I found that with a wall thickness of 2.5mm, the cooling time...