Build specialists and optimisation
The specialists that read a finished build, and how a proposed timing fix is measured before you accept it.
After a build, Nelix Agent can look at its measured results through a set of specialists. Each one reads the evidence for one aspect of the build.
The specialists#
| Command | Looks at |
|---|---|
nelix ai analyze [BLD-ID] | The whole build: what was found, from its measured results |
nelix ai timing | Setup and hold margins, and the paths that set them |
nelix ai power | Power |
nelix ai area | Area and how full the die is |
nelix ai cts | The clock tree |
nelix ai routing | Routing and congestion |
nelix ai antenna | Antenna violations |
nelix ai drc | Design-rule check results |
nelix ai lvs | Layout-versus-schematic results |
With no id, a command uses your latest build. Add --explain for a plainer explanation and --learn for a teaching one.
What a specialist returns#
- A diagnosis, in which every statement cites the measured evidence it rests on.
- Proposals, chosen only from actions the lab allows.
- Measured candidates, when a proposal has been built and compared.
A specialist cannot state a number that was not measured, and cannot invent an action. It will not suggest relaxing the clock or switching off a check as a fix.
Measuring a timing fix#
A proposed change to the RTL to improve timing is treated as an experiment, not as an answer.
- proposea change, with its trade-offs
- approveyou agree to try it
- verifybuilt in a separate copy
- comparemeasured against the original
- accept or discardyour decision
| Step | Command |
|---|---|
| Propose | nelix optimize propose |
| Review | nelix optimize show ID |
| Approve the trial | nelix optimize approve ID --approve |
| Build and compare | nelix optimize verify ID |
| Keep it | nelix optimize accept ID --approve |
| Drop it | nelix optimize discard ID |
Next to Try this fix every executable recommendation also has Apply to my project and rebuild: the one setting is written into your openlane/config.json (Version history keeps the old file) and a normal chip build starts at once, the direct path when you just want the chip to pass. The candidate is built in a separate copy of your project, from the RTL files the build kept (since 31 October 2026 every file your openlane/config.json lists, so a design imported from GitHub with its own file names can be tried too; builds made before that date keep only rtl/top.sv). Your working files change only if you accept. A candidate that shows no measurable improvement is reported as exactly that.
History#
nelix ai history lists every candidate built for the project and what became of it. Earlier measured attempts are given to the specialists as facts, so the same failed idea is not proposed twice.
Something unclear or missing? Send feedbackSign in and use Feedback to tell us.