> ## Documentation Index
> Fetch the complete documentation index at: https://docs.canaveral.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Specs

Specs are customizable metadata rules you can apply during takeoff.

## What a Spec is

Each spec has two core parts:

* **Target conditions**: the metadata conditions that decide when the spec is eligible (for example type, pressure class, duct system, or pipe system).
* **Effects**: metadata values to set when the spec applies.

In short: "If metadata matches these targets, set these other metadata values."

## Target condition logic (AND)

Specs use AND-based target matching:

* All target predicates in a spec must match for the spec to be considered matched.

## Add specs to takeoff workflow

You can create specs from either location:

* **Organization Settings -> Specs**
* **Takeoff view -> Spec selector** (from the Inspector header)

In the takeoff canvas, use the **Spec selector** in the Inspector header:

1. Open the **Spec** selector in the Inspector header.
2. Select a single spec to activate (or create a new one inline).
3. The selected spec stays active until you clear it or select another.

## What happens when a spec is active

Once a spec is active, its effects run whenever pending object metadata matches the spec's target conditions.

* This happens during your create/edit workflow as metadata updates.
* If target conditions do not match, that spec does not apply.

## Select a spec to prefill metadata

Selecting a spec applies that spec's target metadata as a preset for the pending object.

This is useful when you want to quickly start drawing with metadata already aligned to a known spec profile.
