Skip to content
Agentmart
Submit a tool

GenOpt

GenOpt is a useful tool for multidimensional optimization of output from simulation programs.

Skill by mitchpaulus

IndexedMIT★ 5
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/mitchpaulus-genopt

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

GenOpt is a useful tool for multidimensional optimization of output from simulation programs.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/genopt

What's inside

Skill name
GenOpt
Description
GenOpt is a useful tool for multidimensional optimization of output from simulation programs.
License
MIT
Instructions
143 lines in SKILL.md · view on GitHub

Agent Skills spec issues

  • name: only lowercase letters, digits and single hyphens allowed
  • name: "GenOpt" does not match folder "genopt"

Files (1)

  • SKILL.md

SKILL.md (first lines)

GenOpt allows multidimensional optimization of an objective function that is computed by a simulation program.
The optimization is done by systematic variation of specified design parameters in order to minimize or maximize the objective function.

The main purpose of the optimization tool is to avoid the time-consuming process of determining the best values of design parameters.
GenOpt is general in its interface and operating structure.
The interface is easy to use, and the program can be coupled to any simulation program (such as EnergyPlus, Modelica or the Building Controls Virtual Test Bed) that reads its input from a text file and writes its output to a text file.

# GenOpt

<https://simulationresearch.lbl.gov/GO/download/manual-3-1-1.pdf>

Text file based optimization.

3 files required:

1. Configuration File (`.cfg` extension): Usually set up once per type of program, i.e. EnergyPlus, xlim, Transys

```
// vim: ft=genoptcfg

SimulationError { ErrorMessage = "Error"; }
IO { NumberFormat = Double; }
SimulationStart
{
    Command = "./runxlim.sh";
    WriteInputFileExtension = true;
}
```

2. Initialization file (`.ini`):
  - Where the runtime optimization files are located
  - What files should be saved after finished
  - Additional strings to be passed to the command line invocation
  - Where the cost function is in the output file
  - Whether that cost function needs to be post-processed
  - What simulation program is being used.


```
Simulation {
    Files {
        Template {
            File1 = "./gen_hx_fit.xlim";
        }
        Input {
            File1 = "./in.xlim";
        }
        Log {
            File1 = "./log.txt";
        }
        Output {
            File1 = "./out.txt";
        }
        Configuration {
            File1 = "./xlim.cfg";
        }
    }
    ObjectiveFunctionLocation {
        Name1  = "objective";
        Delimiter1 = "=";
    }
}
Optimization {
    Files {
        Command {
            File1 = "./command.txt";
        }
    }
}
```


3. Command file (`command.txt`)
  - optimization variables
  - stopping criteria
  - optimization algorithm


## Notes

If `WriteStepNumber` is true, the `%stepNumber%` placeholder must exist in the template file.


## Algorithms

```
// 1-D continuous
Algorithm { Main = GoldenSection | Fibonacci; }

GoldenSection needs either:
AbsDiffFunction
IntervalReduction
```

## Running

```sh
# With GUI
java -jar genopt.jar file.ini
# I have genopt script that looks for installed version
genopt file.ini
# Without GUI
java -classpath genopt.jar genopt.GenOpt file.ini
```

## Continuous Parameters

```
// Settings for a continuous parameter
Parameter {
    Name = String ;
    Ini = Double ;
    Step = Double ;
    [ Min = Double | SMALL; ]
    [ Max = Double | BIG ; ]
    [ Type = CONTINUOUS; ]
}
```

From mitchpaulus/dotfiles, MIT.

More from mitchpaulus/dotfiles

Signals

Stars
5
Forks
1
Open issues
0
Last commit (this folder)
Aug 8, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from mitchpaulus

Cite this page

GenOpt skill. Agent Mart. https://agentmart.dev/skills/mitchpaulus-genopt (last updated 2026-10-24)