Agent skill

Sim CLI

by svd-ai-lab in svd-ai-lab/sim-cli

Cross-solver operating discipline for sim-cli workflows — tool choice, input classification, acceptance semantics, and escalation rules that apply across solvers.

Apache-2.0Auto-check passedDevelopment

Install Sim CLI

skills CLI
$ npx skills add svd-ai-lab/sim-cli --skill sim-cli -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install svd-ai-lab/sim-cli sim-cli --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/svd-ai-lab/sim-cli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src/sim/_skills/sim-cli .claude/skills/sim-cli && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
sim-cli
GitHub stars
231
Token cost
~2.1k tokens
SKILL.md length
1,128 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
Apache-2.0

At a glance

Cross-solver operating discipline for sim-cli workflows — tool choice, input classification, acceptance semantics, and escalation rules that apply across solvers.

  • Works in 5 steps: Never invent Category A defaults.… → Step-0 version/profile probe is… → Acceptance ≠ exit code. A sim run / sim… → …
  • Tasks that involve Physical and earth sciences
  • SKILL.md covers Execution models, Hard constraints (shared…, Input classification and First causal failure gate, plus 2 more sections
  • Calls ssh

What it does

Sim CLI is an agent skill from svd-ai-lab/sim-cli. Cross-solver operating discipline for sim-cli workflows — tool choice, input classification, acceptance semantics, and escalation rules that apply across solvers. Use alongside the solver's own plugin skill, which is self-contained for solver-specific work; this skill carries only the shared rules.

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Physical and earth sciences. The repository describes itself as: Turn existing CAE files into structured text an agent can use — COMSOL, Abaqus, Fluent, HFSS, Icepak, FloTHERM — plus solver detection, script linting, and live solver sessions… The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Physical and earth sciences

Example prompts

  • “/sim-cli”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Never invent Category A defaults. Physical decisions — geometry,
  2. Step-0 version/profile probe is mandatory. After sim connect, call
  3. Acceptance ≠ exit code. A sim run / sim exec / native solver command
  4. Never silently retry a failed step. Report stderr, stdout, and
  5. Reference example values are not defaults. Values in any examples/

What it can do on your machine

Read from SKILL.md and the folder at commit b7318cc. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • ssh

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use ssh, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Sim CLI loads about 2.1k tokens when it runs. Until then it costs about 77 tokens; SKILL.md has 1,128 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~77
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from svd-ai-lab/sim-cli at commit b7318cc, republished under its Apache-2.0 licence (© svd-ai-lab). 1,128 words, ~2,136 tokens.

Download SKILL.mdSave it as .claude/skills/sim-cli/SKILL.md (or your agent's skills folder).
name
sim-cli
description
Cross-solver operating discipline for sim-cli workflows — tool choice, input classification, acceptance semantics, and escalation rules that apply across solvers. Use alongside the solver's own plugin skill, which is self-contained for solver-specific work; this skill carries only the shared rules.

sim-cli

You are working in a sim-cli-enabled solver workflow. Use the sim runtime where it adds control and observability, and compose solver-native tools directly where they are the right primitive. This skill carries the cross-solver discipline — the rules that hold across sim-cli workflows, regardless of which solver you drive.

The solver's plugin skill is self-contained for solver-specific work: solver hard constraints, dependency chains, snippets, workflows, SDK/solver notes. It does not depend on loading this skill — but it should stay consistent with the discipline below. If a rule applies to more than one solver, it belongs here, not in a plugin skill.


Execution models

The plugin skill tells you which model the solver uses. Choose the narrowest correct execution primitive; sim-cli is composable, not a universal wrapper.

ModelUsed byLifecycle
Persistent sessionDrivers that hold a live process opensim connect → sim exec × N → sim inspect → sim disconnect
sim-wrapped one-shot batchPlugin wrappers that add linting, profile-aware invocation, parsing, history, or safer executionsim check → sim run → parse_output/logs → evaluate
Native/tool one-shot batchReady solver decks/scripts, vendor batch commands, project pipelines, or post-processing tools where native execution is the right primitiveversion/profile probe → native command/script → parse artifacts/logs → evaluate

sim-cli does not try to wrap every solver operation, executable flag, vendor batch mode, or post-processing script. Use sim when it adds a stable control plane: solver discovery and profile checks, live sessions, bounded exec / inspect loops, history/log capture, parsing, screenshots, or shared agent discipline. If the artifact is already a solver-native deck/script and the solver's own batch command is the right execution primitive, call that native command directly instead of forcing it through sim run. Preserve stdout/stderr, generated files, and acceptance evidence just as carefully.

Use sim run when the plugin skill says it is the canonical one-shot path or when the wrapper adds real value. Otherwise, keep the sim-cli discipline while composing the solver's native tools directly.

The loop, any model: classify inputs and get the missing Category A values from the user (including the acceptance criterion) → choose the execution primitive → run a Step-0 version/profile probe (sim inspect session.versions for persistent sessions; sim check <solver>, plugin guidance, or native --version / license probe for one-shot work) → execute one bounded step at a time → inspect last.result or parse the native logs/artifacts between steps → evaluate against the acceptance criterion → sim disconnect if a persistent session was opened. On any failure, stop and report — do not silently retry.


Hard constraints (shared sim-cli discipline)

  1. Never invent Category A defaults. Physical decisions — geometry, materials, boundary conditions, the acceptance criterion — must come from the user. "Just use defaults" / "just run it" does not override this; treat it as a missing input and ask.
  2. Step-0 version/profile probe is mandatory. After sim connect, call sim inspect session.versions and use the returned profile / active_sdk_layer / active_solver_layer to pick the right files in the plugin skill. Treat solver_version as active-runtime evidence only when version_source is active_runtime; a detected installation is not proof that the same version was launched. If the runtime version is unreported or has no compatible profile, stop before applying version-specific guidance. Before sim run or native one-shot execution, run the relevant probe for that path (sim check <solver>, plugin guidance, or the solver's native --version / license check). If a required profile is empty, unknown, or deprecated — stop.
  3. Acceptance ≠ exit code. A sim run / sim exec / native solver command can return success and still be physically wrong. Always validate against an outcome-based, bounded, measurable criterion — not "the solver ran".
  4. Never silently retry a failed step. Report stderr, stdout, and run_count / completion state / relevant artifact state; let the user decide the next move.
  5. Reference example values are not defaults. Values in any examples/ directory describe a specific published test case. Offer them explicitly if useful, but wait for the user's confirmation before adopting them.

Show full SKILL.md (491 more words)Show less

Input classification

Every task starts with: which inputs must the user supply, which may I default, which can I derive from the files in front of me?

CategoryRuleExamples
A — physical decisionsMust ask if absent. Non-negotiable.Geometry, materials, boundary/initial conditions, physics-model choices, the acceptance criterion
B — operationalMay default — must disclose. Affects runtime/convenience, not what the simulation represents.--processors, --ui-mode, --workspace, smoke-test iteration counts, log verbosity
C — file-derivableInfer from the actual files via a diagnostic sim exec, solver-native inspection command, or artifact parser — not from a similar example. Confirm if a downstream decision depends on it.Mesh cell count, boundary names/types, fields present in a result file, material IDs

Do not start until every Category A field has an explicit value from the user.

First causal failure gate

When a workflow fails, locate the first failed stage before changing the model: environment/license -> launch or attach -> file import -> model setup -> mesh or build -> solve -> postprocess/export. Preserve the first new error, the exact entrypoint, active version/profile, and relevant artifact identity; later errors may only be consequences.

Run the smallest stage-specific probe that can confirm or reject one cause. Do not change physics, boundary conditions, mesh controls, or solver settings to work around an unproven environment, import, or setup failure. Retry only after naming the hypothesis and the evidence expected to change.


Where sim serve runs (Windows session-context foot-gun)

If you reach a remote sim host via sim --host <host> or SIM_HOST, how the operator started sim serve changes which drivers actually work. This is purely a Windows concern — Linux and macOS don't isolate display sessions the same way.

sim serve started from…Headless / CLI driversGUI-capable drivers
Logged-in Windows desktop (Windows Terminal / RDP / Task Scheduler "run only when user is logged on" + interactive)✅ works✅ works — windows are visible; gui can find / click / screenshot them
SSH session (ssh <host> then sim serve …)✅ works❌ silent breakage — windows launch in a non-interactive session with no display surface; gui finds zero windows, screenshots come back black

If the host advertises tools: ["gui"] but gui.find(...) returns nothing for windows you have strong reason to believe exist, do not retry — surface "the server may have been started from a non-interactive session" and ask the operator to restart sim serve from a desktop session. The agent never starts sim serve itself.

See gui/SKILL.md for the full GUI actuation API.


Long-running and multi-stage workflows

Do not wait for or request a dedicated per-task primitive (a resumable-sweep API, an auto-coupling feature, etc.) when the generic primitives already suffice. Bounded exec/run calls, session.health / solve-progress inspection, and the solver's own retained project/session state are enough to drive a long sweep, a multi-stage build, or a staged multi-physics coupling yourself, one bounded step at a time. Reach for a new dedicated primitive only when a real session hits a generic gap (no timeout guard, no liveness check, no process cleanup) — not to shortcut a specific workflow that a generic loop already covers.

© svd-ai-lab, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in src/sim/_skills/sim-cli of svd-ai-lab/sim-cli.

Open the folder on GitHubat commit b7318cc

Compare with similar skills

Sim CLI next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Sim CLI compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sim CLI this skillsvd-ai-lab/sim-cli231—~2.1kAutomated safety check: PassApache-2.0
Mat Defect Energy Dftlearningmatter-mit/AtomisticSkills176—~1.6kAutomated safety check: PassMIT
Mat Pourbaix Diagramlearningmatter-mit/AtomisticSkills176—~2.6kAutomated safety check: PassMIT
Chemgraphargonne-lcf/ChemGraph162—~2.7kAutomated safety check: PassApache-2.0
Nanobanana Image GenerationLeoYeAI/openclaw-master-skills2.2k—~4.5kAutomated safety check: PassMIT
Design for Manufacturing Reviewearthtojake/text-to-cad18k—~1.4kAutomated safety check: PassMIT

Similar skills

  • Mat Defect Energy Dft

    learningmatter-mit/AtomisticSkills

    Calculate charged defect formation energies and transition level diagrams using pymatgen-analysis-defects and atomate2 VASP workflows.

    176 GitHub stars~1.6k tokensUpdated today
    Research & ScienceAuto-check passed
  • Mat Pourbaix Diagram

    learningmatter-mit/AtomisticSkills

    Calculate Pourbaix (pH-voltage) diagrams for aqueous electrochemical stability using water-corrected MLIP energies and pymatgen.

    176 GitHub stars~2.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Chemgraph

    argonne-lcf/ChemGraph

    Develop, test, and extend ChemGraph -- an agentic framework for automated molecular simulations using LLMs, LangGraph, ASE, and MCP servers

    162 GitHub stars~2.7k tokensUpdated yesterday
    AI & LLM EngineeringAuto-check passed
  • Nanobanana Image Generation

    LeoYeAI/openclaw-master-skills

    A skill your agent uses when the user wants to generate or edit images with Google's Nanobanana/Gemini image models using the official Gemini API shape, or when they need publication-style…

    2.2k GitHub stars~4.5k tokensUpdated 2 mo ago
    Media & CreativeAuto-check passed
  • Design for Manufacturing Review

    earthtojake/text-to-cad

    Guided DFM review of a part for sheet metal, CNC machining or injection molding, covering bends, tool access, draft and undercuts, with evidence-first measurement rules.

    18k GitHub stars~1.4k tokensUpdated today
    Research & ScienceAuto-check passed
  • Cantera Ignition Delay

    K-Dense-AI/scientific-agent-skills

    Runs Cantera constant-volume or constant-pressure ignition simulations and reports temperature-based ignition delay with mechanism provenance and checks.

    48k GitHub starsUsed in 2 repos~2.2k tokens
    Research & ScienceAuto-check passed

More from svd-ai-lab/sim-cli

  • Gui

    svd-ai-lab/sim-cli

    Cross-driver GUI actuation for CAE solvers running under sim-cli.

    231 GitHub stars~2.2k tokensUpdated 1 mo ago
    Auto-check passed

Questions about Sim CLI

What does Sim CLI do?

Cross-solver operating discipline for sim-cli workflows — tool choice, input classification, acceptance semantics, and escalation rules that apply across solvers. Sim CLI is an agent skill from svd-ai-lab/sim-cli. Cross-solver operating discipline for sim-cli workflows — tool choice, input classification, acceptance semantics, and escalation rules that apply across solvers.

When should I use Sim CLI?

Sim CLI fits situations like: tasks that involve Physical and earth sciences.

How do I install Sim CLI in Claude Code?

Run `npx skills add svd-ai-lab/sim-cli --skill sim-cli -a claude-code`. Or copy the skill folder (src/sim/_skills/sim-cli in svd-ai-lab/sim-cli) into .claude/skills/sim-cli in your project. Claude Code loads it when a task matches its description.

How do I install Sim CLI in Codex?

Run `npx skills add svd-ai-lab/sim-cli --skill sim-cli -a codex`. Or copy the skill folder (src/sim/_skills/sim-cli in svd-ai-lab/sim-cli) into .agents/skills/sim-cli in your project. Codex loads it when a task matches its description.

Can I use Sim CLI in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add svd-ai-lab/sim-cli --skill sim-cli -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sim-cli, .gemini/skills/sim-cli, .github/skills/sim-cli and .opencode/skills/sim-cli in your project.

What does Sim CLI need to run?

Going by SKILL.md and its folder, Sim CLI needs the command-line tools its instructions call (ssh).

Does Sim CLI access the network?

SKILL.md contains no URLs. Its commands use ssh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Sim CLI safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Sim CLI use?

Sim CLI is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Sim CLI use?

About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Sim CLI?

Skills that share tags, products or a category with Sim CLI: Mat Defect Energy Dft (learningmatter-mit/AtomisticSkills, 176 stars), Mat Pourbaix Diagram (learningmatter-mit/AtomisticSkills, 176 stars), Chemgraph (argonne-lcf/ChemGraph, 162 stars) and Nanobanana Image Generation (LeoYeAI/openclaw-master-skills, 2.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sim CLI?

svd-ai-lab (a GitHub organization) maintains it in svd-ai-lab/sim-cli, which has 231 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on September 8, 2026.

Source: svd-ai-lab/sim-cli on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.