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

# Importing Existing Projects

> Bring your existing KiCad designs into Trace for AI-assisted review, optimization, and iteration.

## Opening KiCad Projects

Trace is built on KiCad 10, so it natively opens any KiCad project. To import an existing design:

1. **File → Open Project** or drag and drop a `.kicad_pro` file into Trace
2. Trace opens the schematic (`.kicad_sch`) and PCB (`.kicad_pcb`) files directly
3. All components, nets, footprints, and routing are preserved exactly as they are

No conversion or import step is needed — KiCad files are Trace's native format.

## What You Can Do With Imported Designs

### AI Design Review

Ask the AI to review your existing design for issues:

```
Review this schematic and identify any potential problems.
Check for missing decoupling caps, incorrect connections,
and suggest improvements.
```

```
Run DRC on this board and explain any violations.
Suggest fixes for each one.
```

### Get Explanations

Have the AI explain how an unfamiliar design works:

```
Explain how this power supply section works.
What is the purpose of each component?
```

### Optimize Placement

The AI's GNN + simulated annealing placer can optimize component placement on imported boards:

```
Optimize the component placement on this board.
Prioritize signal integrity for the high-speed section
and thermal performance for the power stage.
```

This is especially effective for boards where placement was done manually and could benefit from optimization based on signal flow analysis and constraint awareness.

### Modify and Extend

Make changes to imported designs using natural language:

```
Add a USB-C connector to this board with ESD protection
and a 5V to 3.3V LDO powered from VBUS.
```

```
Replace the AMS1117 with a TPS563200 buck converter.
Update the surrounding passives per the datasheet.
```

<Note>
  Imported designs often carry non-standard net and pin names — different capitalization, separator styles (`SPI_CLK` vs `SPI-CLK`), hierarchical prefixes (`/power/VBUS_5V`), or auto-generated names like `Net-(U1-Pad4)`. The AI resolves its edits against your design's actual names, so a near-miss binds to the existing net instead of accidentally creating a new one. When a reference is genuinely ambiguous, the AI asks which net you meant rather than guessing.
</Note>

### Manufacturing Files

Generate manufacturing outputs from any imported design:

```
Generate Gerbers, drill files, and a BOM for this board.
Package everything into a fab-ready ZIP.
```

## Supported File Formats

| Format           | Extension    | Import | Export |
| ---------------- | ------------ | ------ | ------ |
| KiCad Project    | `.kicad_pro` | Yes    | Yes    |
| KiCad Schematic  | `.kicad_sch` | Yes    | Yes    |
| KiCad PCB        | `.kicad_pcb` | Yes    | Yes    |
| Gerber           | `.gbr`       | —      | Yes    |
| Excellon Drill   | `.drl`       | —      | Yes    |
| ODB++            |              | —      | Yes    |
| IPC-2581         |              | —      | Yes    |
| STEP (3D)        | `.step`      | Yes    | Yes    |
| DXF (2D outline) | `.dxf`       | Yes    | —      |

## Tips

* **Start with Ask mode** — Before making changes, use Ask mode to understand the design: "Explain this circuit" or "What does R5 do?"
* **Review before modifying** — Run ERC/DRC first to understand the current state of the design
* **Version safety** — Trace automatically versions every change, so you can always roll back if an AI modification doesn't work out
* **Incremental changes** — Make modifications one section at a time rather than asking for a complete redesign
