Guide · Agent skill
How to use the DSE Loop Explorer agent skill (dse-loop)
Updated · written with AI from the project's own documentation and checked against our catalogue data
The dse-loop skill lets an AI coding agent act as an automated tuner for computer architecture and EDA experiments. You give it a program to run, the parameters to change and an objective such as maximizing IPC or minimizing area, and the agent repeats run, analyze, adjust until the objective is met or a time budget runs out. This guide explains what it does, how to install it, how to trigger it and what to watch out for before letting it run unattended.
Quick start
- 1Download and unzip. Download the dse-loop ZIP from the directory page and unzip it into ~/.claude/skills/ or a project's .claude/skills/ folder.
- 2Check your tools. Confirm the simulator or build tool you plan to use is installed and that Python is available.
- 3Write a clear request. Name the program, the parameters, the objective metric, any constraints and a timeout.
- 4Let the baseline run. The agent runs the program with current settings and records the baseline metric as the point to beat.
- 5Review the inferred ranges. Check dse_results/inferred_params.md to confirm the parameter ranges are sensible.
- 6Read the report. When the loop stops, open dse_results/DSE_REPORT.md and the CSV log to see the best configuration found.
What is an agent skill, and what does dse-loop make the agent do?
An agent skill is a folder with a SKILL.md file that tells an AI agent how to carry out a specific kind of task. When the skill is loaded, the agent follows its workflow instead of improvising from scratch. The dse-loop skill describes an autonomous design space exploration workflow: run a program, analyze the results, pick new parameter values and iterate.
The skill is built for computer architecture and EDA problems. Typical targets named in the source include gem5 microarchitecture simulations, yosys or Design Compiler synthesis scripts, verilator RTL simulations, OpenROAD place-and-route, gcc/llvm compiler flag benchmarks and cacti or ramulator memory studies. The file itself is only a workflow description; it is the agent that runs the commands in your shell.
- Runs the program with baseline parameters and records the metric as the point to beat
- Writes a parameter extraction script that turns program output into a number
- Logs every design point to a CSV and writes a final report
- Stops when the objective is met, the iteration cap is reached, no improvement occurs for a set number of iterations, or the timeout passes
Install the dse-loop skill
Download the ZIP for skills/dse-loop from the directory page and unzip it. For a personal install, place the folder in ~/.claude/skills/. For a single project, place it in that project's .claude/skills/ folder so it applies only there.
Alternatively, you can upload the skill in the Claude apps under Settings → Capabilities → Skills.
- Personal: unzip into ~/.claude/skills/
- Project only: unzip into the project's .claude/skills/ folder
- Claude apps: Settings → Capabilities → Skills, then upload
Check what the skill needs before you start
The skill needs Bash shell access on the machine where the agent runs. The target simulator or build tool must already be installed, for example gem5, yosys, verilator, OpenROAD or gcc/llvm, as named in the skill's examples. Python must be available because the skill writes a parameter extraction script.
The skill is granted Bash(*) and may create, edit and overwrite files in the project, so use it in a project you control rather than on a shared or production machine.
- Bash shell access with your simulator or build tool installed
- Python available for the extraction script
- Runs scripts: yes. Uses network: no
How to trigger the skill with a natural request
The skill activates on phrases such as "DSE", "design space exploration", "sweep parameters", "optimize", "find best config", or a request for iterative parameter tuning. Name the program, the parameters, the objective and the timeout in your request, since these are what the skill parses from its arguments.
You can override the defaults inline. The source lists these defaults: timeout 2h, a maximum of 50 iterations, patience of 10 iterations without improvement, and minimize as the objective direction.
/dse-loop "task desc — timeout: 4h, max_iterations: 100, patience: 15"Example requests you can adapt
Good requests name a measurable metric and something the agent can run. The skill expects a machine-readable objective, so describe how the number comes out of the program's output. Parameters without ranges are fine: the skill reads the source code for hints and records its inferred ranges in dse_results/inferred_params.md for you to review.
- Find the best cache size and associativity for my gem5 config, maximize IPC, timeout 2h
- Sweep synthesis effort and target frequency in my yosys script, minimize area at timing closure
- Find the best gcc -O flags and unroll factor for my benchmark, minimize runtime, timeout 1h
Read the results folder
Everything the skill produces goes into dse_results/ in the project root. The CSV log has one row per design point, the state file supports recovery, and the final report summarizes the outcome. Review inferred_params.md early, because it shows the ranges the agent chose.
- dse_results/dse_log.csv: one row per design point
- dse_results/DSE_REPORT.md: final report
- dse_results/DSE_STATE.json: state for recovery
- dse_results/inferred_params.md: inferred parameter space
- dse_results/configs/ and dse_results/outputs/: per-run configs and raw output
What people use it for
- Sweeping gem5 cache size, associativity and pipeline width to maximize IPC
- Tuning yosys or synthesis effort settings to meet a timing target at minimum area
- Benchmarking gcc or llvm optimization flags and keeping the fastest configuration
- Searching FIFO depths or buffer sizes in a verilator simulation for a throughput target
Frequently asked questions
Is the dse-loop skill free?
The skill is listed under the MIT licence, which the directory page states. Check the licence file in the repository for the full terms before reusing it. Any simulator or EDA tool you run with it has its own licence and cost.
What do I need to use the dse-loop skill?
You need Bash shell access, the target simulator or build tool installed, and Python for the extraction script the skill writes. The skill runs scripts but does not use the network, according to the directory listing.
How do I install an agent skill like dse-loop?
Download the ZIP from the directory page and unzip it into ~/.claude/skills/ for personal use or a project's .claude/skills/ folder. You can also upload it in the Claude apps under Settings → Capabilities → Skills.
Can the dse-loop skill run for hours unattended?
Yes. The default timeout is 2 hours and you can change it in your request. Do not use it where long unattended jobs are unwanted, and avoid shared or production machines because it can execute arbitrary shell commands and overwrite project files.
What is the difference between dse-loop and a plain parameter sweep script?
A sweep script runs a fixed list of configurations. The dse-loop skill has the agent read each result, choose the next parameter values and repeat within the budget. It also logs every run and writes a report, but it depends on a measurable metric to decide what to try next.
Why does the skill not work with my task?
The skill is meant for problems with a scriptable, measurable objective, since the loop depends on a machine-readable metric. Simple one-off tasks without that metric are not a good fit.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use dse-loop if you run simulator or EDA experiments with a measurable metric and want an agent to iterate through parameter choices while you are away. Skip it for one-off tasks, anything without a scriptable objective, or any shared machine where the agent should not run long jobs or edit files.
Download the skill