# Writing a prompt that resolves

> Every workable CADABRA instruction carries an operation, a reference, and a number. Drop any one and it cannot resolve. Worked before-and-after examples of vague prompts rewritten.

URL: https://cadabrai.com/docs/prompts/writing-prompts/
Updated: 2026-08-15

---

- [Getting started](https://cadabrai.com/docs/getting-started/) [Install](https://cadabrai.com/docs/getting-started/install/)
- [Your First Prompt](https://cadabrai.com/docs/getting-started/first-prompt/)
- [How It Works](https://cadabrai.com/docs/getting-started/how-it-works/)

- [All Five Modes](https://cadabrai.com/docs/modes/all-modes/)
- [Agent Mode](https://cadabrai.com/docs/modes/agent-mode/)
- [Ask Mode](https://cadabrai.com/docs/modes/ask-mode/)
- [Drawings Mode](https://cadabrai.com/docs/modes/drawings-mode/)

- [Writing Prompts](https://cadabrai.com/docs/prompts/writing-prompts/)
- [Prompt Library](https://cadabrai.com/docs/prompts/prompt-library/)

- [Drawing Standards](https://cadabrai.com/docs/standards/drawing-standards/)
- [Components and Fasteners](https://cadabrai.com/docs/standards/libraries-and-plm/)

- [Plans and Limits](https://cadabrai.com/docs/account/plans-and-limits/)
- [Preferences](https://cadabrai.com/docs/account/preferences/)
- [Billing](https://cadabrai.com/docs/account/billing/)

- [Data Handling](https://cadabrai.com/docs/security/data-handling/)

- [CADABRA Issues](https://cadabrai.com/docs/troubleshooting/cadabra-issues/)
- [SOLIDWORKS Errors](https://cadabrai.com/docs/troubleshooting/solidworks-errors/)

# Writing a prompt that resolves

Every workable CADABRA instruction carries an operation, a reference, and a number. Drop any one and it cannot resolve. Worked before-and-after examples of vague prompts rewritten.

## The rule

An instruction resolves when it contains three things:

- **The operation.** Fillet, cut, pattern, thicken, change, generate. Not "improve" or "clean up".
- **The reference.** Which face, which feature, which holes, which parts. A selection in SOLIDWORKS counts as a reference.
- **The number.** The dimension, count, spacing, or tolerance. "Bigger" is not a number.

## Rewriting an instruction that does not resolve

**Make it lighter → Shell the part to 2.5 mm, keeping the mounting bosses solid**

The first has no operation and no reference. The second names the operation, the wall, and the exception.

**Fix the corners → Add a 1 mm fillet to every edge under 2 mm radius on the top face**

The first has no selection rule. The second gives a rule that resolves to a specific edge set.

**Make the holes bigger → Change the four Ø6 through holes on the flange to Ø8 and keep the counterbores concentric**

The first is ambiguous about which holes and by how much. The second states count, current size, new size, and the downstream rule.

**Add some ribs → Add 3 mm ribs from the central boss to the outer wall, patterned 8 times about the axis**

The second gives the rib thickness, where it runs, and the pattern count.

**Tidy the drawing → Dimension the bore and add a section view through it on sheet 1**

The second names two operations and what each acts on.

## Referring to things reliably

The most reliable reference is a selection. Select the face or feature in SOLIDWORKS, then say "this face". The second most reliable is a name that exists in the tree.

Descriptions like "the big hole" work when there is exactly one candidate and fail when there are three. If you are not sure, ask first: `which features could you mean by the mounting holes`.

## Units and precision

CADABRA designs and answers in the unit system set in [Preferences](https://cadabrai.com/docs/account/preferences/), millimetres or inches, and sets dimensions to the decimal precision configured there.

State the unit anyway: `3 mm` rather than `3`.

## Keep one instruction to one outcome

Chain unrelated requests instead, checking after each.

The exception is a deliberate batch: "drawings for every part in this assembly" is one outcome expressed once.

On this page

- [The rule](#the-rule)
- [Rewriting an instruction that does not resolve](#rewrites)
- [Referring to things reliably](#reference-tips)
- [Units and precision](#units)
- [Keep one instruction to one outcome](#scope)
