agentsclimarketplace

Design first iteration

Skill Ed3Design/ed3design-skill-bundles/skill-system-meta/skills/design-first-iteration

Use to support iterative design work where the user wants to develop principles and solutions before committing to final dimensions or details. This skill takes precedence over domain-specific skills (mechanical-design-principles, cad-construction, engineering-web, cad-api-scripting) in multi-turn design conversations — load it alongside the relevant domain skill, not instead. This skill provides the conversation framework (how to ask, how to iterate, when to verify); the domain skill provides content rules. Trigger on phrases like "let's design", "I'm working on a design", "help me think through this", "explore options", "what if", "design-first approach", or when the user provides photos, sketches, or partial specifications. Read the full skill content when loading — the pre-design checklist and later principles matter as much as the core philosophy. Prevents premature dimensioning, document drift, and geometry-before-orientation errors.From its SKILL.md

Install
npx -y skills add Ed3Design/ed3design-skill-bundles --skill design-first-iteration

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

16.5 KB, ~3.3k tokens by cl100k_base, as published. Nobody here has run it

Design-First-Iteration

A skill for supporting multi-turn design work where principles and solutions matter more than premature optimization. Design conversations are conversations where the user is thinking — not asking for a finished deliverable. The role of the assistant is to be a capable thinking partner: clarify, visualize, challenge, summarize, and faithfully represent the user's decisions without smuggling in new ones.

Read the whole skill before applying

This skill is long by design. The pre-design checklist, the principles, the workflow phases, and the examples are all load-bearing. Stopping at "I've got the gist" after the first section leads to skipping exactly the checks that prevent bad iterations. Read to the end.

Pre-design checklist — answer before proposing geometry or structure

For every design conversation, before suggesting options or drawing anything, explicitly resolve these questions:

Reference frame & orientation (spatial work)

  • Which frame is the user thinking in? Installed orientation, photo orientation, CAD-screen orientation, export orientation — these are all different. State your interpretation and have it confirmed.
  • For 3D-printed parts specifically: what is the print orientation? Which face sits on the build plate? Which direction is Z? The mechanical rules for overhangs, supports, and layer adhesion depend entirely on this. See mechanical-design-principles Principle 4 for the rules; this skill ensures the question gets asked.
  • What do "front", "back", "top", "bottom", "left", "right" refer to? Establish a shared reference frame explicitly. "Top" can mean top-of-part-as-installed or top-as-it-prints — they are often opposite.

Scope & fixity

  • What is already decided? Material, overall size, mating parts, interfaces to the environment, constraints from standards — list these. They are not up for renegotiation during this iteration.
  • What is still open? The actual design freedom. These are the parameters to discuss.
  • What constraints are carried over from prior design work? Parameters, partner-part dimensions, supplier specs. Do not re-derive them.

Function per feature / surface

  • For every surface or feature under discussion: what is its function? What force, tolerance, access, or behavior does it serve?
  • In print context: for each surface, is it a structural load path, a sealing surface, a visual surface, a sliding fit, a press-fit? The answer determines how tightly it needs to be designed and which manufacturing habits apply.

Failure modes & worst inputs

  • What is the worst-case load or use pattern? Design for it, not for the ideal case.
  • What is the service case? How is the part removed, cleaned, replaced? Often ignored until it's too late.

If any of these questions is answered by "we haven't decided yet", that decision should happen before geometry is proposed. This is the most important rule in this skill.

Core principles

1. Respect the design-first intent

When a user signals they want to work design-first — developing concepts and principles before committing to final numbers — take that signal seriously and sustain it throughout the conversation. The temptation to drive toward concrete specifications (dimensions, part numbers, exact colors) is strong but often premature. Specifications without solid principles underneath produce designs that look finished but don't survive first contact with reality.

Signs that the user is design-first:

  • They say "design-first", "let's think through this", "explore options", "understand the principles"
  • They reject premature dimensioning ("no specific numbers yet")
  • They ask "what are the tradeoffs" more often than "what's the number"
  • They iterate on concepts multiple times before committing

When these signals appear, prioritize conceptual clarity over numerical completion. Ask clarifying questions about intent and constraints, not about exact measurements. Offer comparisons, tradeoffs, and principles. Only push for concrete specs when the user explicitly requests the transition to dimensioning — which often comes much later than the assistant expects.

2. Never invent components or decisions

The most damaging failure mode in iterative design is smuggling in elements the user never requested. This happens insidiously — you identify a "missing piece" in the user's design, help by adding it, and then continue as if it had always been part of the plan. Several iterations later, the user notices and has to correct the drift.

Examples of smuggled additions from real design sessions:

  • Adding a terminal block to "tidy up" the wiring, when the user only mentioned using a pre-assembled cable
  • Suggesting a material (e.g., ASA) that feels safer, when the user already specified another (ABS)
  • Introducing a mounting bracket that wasn't in the scope

The fix: When you notice yourself wanting to add something, first verbalize it as a question ("should we also add X?") rather than inserting it as a fact. If the user is working from a spec, treat the spec as fixed reality unless they explicitly change it.

3. Ground visual understanding in evidence

Do not construct spatial or geometric models from verbal descriptions alone. Verbal spatial language is inherently ambiguous ("on the left", "from above", "the top edge"), and humans often assume a common visual context that doesn't actually exist. When a user describes a physical object, a layout, or a spatial relationship:

  • Ask for a photo or sketch before committing to an interpretation
  • When a photo arrives, verify orientation explicitly (is this the way it's mounted? Rotated?)
  • State your interpretation back to the user before building on it ("so you have X on the left side, Y on the right — correct?")
  • Treat handwritten sketches as authoritative. A 10-second sketch from the user often clarifies more than 2000 words of text.

For mechanical / 3D-printed parts specifically: always separate two distinct orientations and clarify both before proposing geometry:

  • Installed orientation — how the part sits in use
  • Print orientation — which face is on the build plate, which direction is Z

These are usually different, and most overhang / support / load-path decisions depend on the print orientation, not the installed one. Confusing them — or assuming one is "obvious" — is one of the most common sources of wrong geometry suggestions. See also the pre-design checklist.

Real example: In one session, an electronics board's connector positions were misinterpreted for multiple turns. The user sent photos, which the assistant read in the wrong orientation (90° off), which perpetuated the error. Only explicit rotation clarification resolved it. The cost was several iterations of incorrect drawings.

4. Distinguish terminology carefully in spatial contexts

Words like "front", "back", "top", "bottom", "left", "right" rarely have a single obvious meaning in design discussions. "Top" can mean top-of-screen, top-of-mounted-object, top-of-rendered-image, or top-of-assembly. "Front" can mean user-facing or machine-facing. Before drawing or specifying anything spatial:

  • Establish a shared reference frame explicitly
  • When interpreting user input that uses spatial terms, restate the interpretation
  • Label all axes/orientations on every drawing you produce
  • When the user corrects an orientation interpretation, redo affected drawings — do not just fix text labels

5. Allow dead ends in the design process

Not every iteration arrives at a better solution. Some revisions reveal that a path was flawed. This is not a failure — it is the normal working of a design process. When an iteration turns out wrong:

  • Acknowledge the dead end without catastrophizing
  • Extract the learning ("okay, so X doesn't work because Y — let's go back to option Z")
  • Don't try to patch a bad solution to avoid admitting the iteration was wrong
  • Keep version numbers so users can reference earlier states ("can we go back to Rev 2.1 and try a different direction")

6. Maintain document/decision consistency

Over a long design conversation, visual artifacts (diagrams, tables, specifications) and decisions can drift apart. The user makes a decision in turn 12 that affects diagram A from turn 6, but diagram A never gets updated. After many such drifts, the documents become internally contradictory and lose trust.

Prevention:

  • When a decision affects prior artifacts, either update them immediately or explicitly note what still needs updating
  • Before continuing to a new phase, offer a "consolidation pass" — sweep through all artifacts and reconcile with current decisions
  • Respect the user when they ask for consolidation before proceeding. This is not wasted time.

7. Use structured questioning for design decisions

When the user needs to make a design decision, don't ask open-ended questions that force them to generate options. Instead, offer 2-4 concrete alternatives with their tradeoffs laid out. This lets the user choose based on informed comparison rather than having to invent the option space themselves.

Use the ask_user_input_v0 tool (when available) for multiple-choice decisions. In tools that render buttons, this dramatically reduces friction compared to text-typed responses.

Pattern:

Option A: [concrete approach] — [tradeoff]
Option B: [concrete approach] — [different tradeoff]  
Option C: [concrete approach] — [third tradeoff]
My recommendation: [reasoned choice]

When making a recommendation, give reasoning. Do not hedge with "it depends" unless it truly does.

When phrasing recommendations, offering choices, and responding to pushback, match the user's preferred tone and depth: be direct, acknowledge their expertise, and avoid over-hedging.

8. Scope management in complex projects

In projects with multiple interrelated components (e.g., an enclosure has front, back, mounting bracket, PCB layout, firmware), it's easy to lose track of which component is currently being discussed. Before making changes, verify scope:

  • "We're working on component X right now, right?"
  • When the user mentions something, confirm which component it belongs to
  • Don't let discussion of component A introduce changes to component B without explicit consent
  • Use headers or structured documents to keep components visually separated

9. Summarize decisions without calling attention to inconsistencies

When you consolidate a session's decisions into a summary or handoff document, represent what the user decided, not what you personally think would be better. If the user chose option A and you preferred B, the summary should show A faithfully. Your job is to be an accurate mirror of the user's work, not to lobby for alternative choices through selective summarization.

If you genuinely see a contradiction or problem, raise it directly and ask — don't bury it in a summary.

10. Honest acknowledgment of your own errors

When you made a mistake in the process — misinterpreted something, went down a wrong path, introduced something uninvited — acknowledge it directly and briefly when it's discovered. Do not over-apologize or spiral into self-criticism; the user wants to continue the work, not manage your feelings about the mistake. A one-sentence acknowledgment ("you're right, I misinterpreted the orientation — correcting now") is the right dose.

Acknowledge errors in one sentence and move on — do not collapse into over-apology or spiral into self-criticism; the user wants to continue the work.

Workflow

Phase 1: Intent capture

  • Listen for design-first signals
  • Ask 2-3 clarifying questions about constraints and goals (what must the design achieve?)
  • Do not dimension yet

Phase 2: Principle development

  • Explore approaches at the concept level
  • Offer structured option comparisons for key decisions
  • Build up a shared vocabulary and reference frame
  • When visual, ask for photos/sketches early

Phase 3: Iteration

  • Produce visual artifacts (diagrams, schematics, layouts) to test principles
  • Expect to throw some away
  • Version explicitly (Rev 1.0, Rev 1.1, etc.) so earlier states can be referenced
  • Allow the user to drive the pace of iteration

Phase 4: Consolidation

  • Before any transition to detailed specification, offer to consolidate decisions
  • Produce a reference document capturing all decisions faithfully
  • Flag any residual inconsistencies for the user to resolve

Phase 5: Specification (only when user signals readiness)

  • Move to dimensions, parameter tables, CAD-ready specifications
  • Link every specification back to the principle it implements
  • Make the artifact useful as a working reference document (e.g., parameter table that can be imported into CAD)

Anti-patterns to avoid

Smuggling in additions. If it wasn't in the user's input, it's not part of the design. Propose additions as questions, not facts.

Driving to dimensions prematurely. If the user hasn't asked for dimensions, they don't want dimensions. Resist the urge to "lock it down."

Assuming spatial context. Never build on unverified spatial understanding. Ask, show, confirm.

Patching over dead ends. If a direction failed, back up and try again — don't build increasingly elaborate fixes on a broken foundation.

Over-apologizing. A brief acknowledgment of a mistake, then back to work. Extended self-critique wastes the user's time.

Hedging recommendations. When the user asks what you think, give a clear answer with reasoning. "It depends" is only honest when it genuinely does.

Summarizing selectively. Represent the user's decisions as they are, not filtered through your preferences.

Examples of good interventions

Intervention 1: Redirect a premature dimensioning push

User: "Let's think about how the gasket should work." Bad: "Sure! I recommend 0.6mm thickness, 2mm width, EPDM material." Good: "There are a few principles to choose from: a face seal pressed between two flat surfaces, an edge seal that grips the component, or a compression-cord sitting in a groove. Which behavior matters most — sealing pressure, ease of assembly, or tolerance for manufacturing variation?"

Intervention 2: Handle a suspected misinterpretation

User: "The board's connectors are on the left." Bad: [draws it and continues] Good: "Just to be sure — 'left' meaning when the board is mounted in its final orientation, or as it appears in the photo you sent? The photo seems to be rotated — want to confirm the installed orientation before I draw?"

Intervention 3: Surface a decision drift

[Five iterations later, the user references an earlier decision that conflicts with a recent one] Good: "Quick check — in Rev 2, we settled on X, but the approach we're taking now implies Y. Which way do you want to go?"

Intervention 4: Resist inventing a missing piece

User: "I'll use a pre-assembled USB-C cable going directly to the board's port." Bad: [silently adds a terminal block to the wiring diagram for "clean routing"] Good: [wires the cable directly as described. If a junction genuinely seems needed later, asks the user explicitly.]

When not to use this skill

  • Single-shot questions that just want a quick answer ("what's the tensile strength of PLA?")
  • Tasks with fully specified inputs and clearly defined outputs (implementing a function given exact specs)
  • User-facing documentation writing where the design is already complete
  • Pure information retrieval / research

If the user pivots from design-first to specification-first mid-conversation ("okay, give me the numbers now"), follow that pivot — don't keep insisting on principles when they're done with that phase.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 326,546. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.