A Codex skill for token-efficient analog IC simulation loops.
Instead of reading entire Spectre logs, ADE outputs, netlists, or waveform dumps into the chat, this skill pushes the workflow toward small metric samplers: scripts or calculator expressions that return only the values needed for design decisions.
Analog design iteration often produces huge artifacts:
- simulator logs
- PSF waveform databases
- ADE Explorer/Assembler runs
- Monte Carlo tables
- transient waveform exports
Most sizing decisions only need a few numbers: DC gain, UGF, phase margin, power, common-mode level, settling time, offset, PSRR, noise, or a pass/fail diagnosis. This skill helps Codex ask for those numbers first, then inspect detailed data only when something fails or looks inconsistent.
SKILL.md: the Codex skill instructions.scripts/metric_sampler.py: a small Python helper for extracting compact JSON metrics from Spectre logs or CSV AC data.agents/openai.yaml: optional UI metadata for Codex.
Parse exported AC data:
python scripts/metric_sampler.py ac-csv ac.csv --freq freq --mag gain_db --phase phase_degExample CSV:
freq,gain_db,phase_deg
1,72.8,-0.1
1000000,40.2,-72.4
100000000,0.0,-118.5
1000000000,-22.6,-171.0Example output:
{
"analysis": "ac-csv",
"status": "ok",
"metrics": {
"dc_gain_db": 72.8,
"phase_at_ugf_deg": -118.5,
"unity_gain_frequency_hz": 100000000.0
}
}Parse a Spectre STB log:
python scripts/metric_sampler.py spectre-log path\to\spectre.outExample output:
{
"analysis": "stb",
"status": "fail",
"metrics": {
"gain_margin_db": null,
"phase_margin_deg": null,
"phase_zero_crossing_hz": 26302700.0
},
"diagnosis": "Spectre reported positive-feedback instability: phase crosses 0 deg while |loopGain| > 1."
}Copy this folder into your Codex skills directory:
C:\Users\<you>\.codex\skills\analog-simulation-metrics
Then ask Codex to use $analog-simulation-metrics when iterating analog simulations.
- Read summaries before raw data.
- Read warning lines before full logs.
- Export crossing points before full waveforms.
- Preserve simulator diagnoses when metrics are undefined.
- Keep a small history table of design variables and resulting metrics.
The goal is not to replace deep circuit judgment. The goal is to spend context on decisions, not on bulky simulation artifacts.