Agent skill

Spice

by biosshot in biosshot/easyeda-copilot

Write and run ngspice simulations from circuit descriptions, component connections, or existing netlists.

MITAuto-check passed

Install Spice

skills CLI
$ npx skills add biosshot/easyeda-copilot --skill spice -a claude-code

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

GitHub CLI
$ gh skill install biosshot/easyeda-copilot spice --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/biosshot/easyeda-copilot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/mcp/docs/spice .claude/skills/spice && 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
spice
GitHub stars
168
Token cost
~1.3k tokens
SKILL.md length
617 words
Files
16 (incl. scripts, references)
Skills in repo
3
Repo updated
First seen
Licence
MIT

At a glance

Write and run ngspice simulations from circuit descriptions, component connections, or existing netlists.

  • Works in 7 steps: Obtain component values and actual net… → Find device models with node… → Save the selected model with node… → …
  • SKILL.md covers Workflow, Commands and Examples
  • Runs JavaScript scripts from its folder; calls node

What it does

Spice is an agent skill from biosshot/easyeda-copilot. Write and run ngspice simulations from circuit descriptions, component connections, or existing netlists. Search local SPICE models and produce numerical results and PNG plots using standalone Node.js scripts.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 18 other files, including scripts and reference files (for example `library-manifest.json`, `references/installation.md` and `references/modeling.md`).

It works with Node.js, EasyEDA, Model Context Protocol and Vue.js. The repository describes itself as: AI-powered assistant for EasyEDA — generate schematics from natural language, browse LCSC components, design PCBs with custom DRC configurations, and get interactive circuit… The licence is MIT.

Example prompts

  • “/spice”

Requirements

  • Python 3
  • Node.js

Workflow steps

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

  1. Obtain component values and actual net connections from the caller's schematic tools, supplied netlist, or circuit description. State the…
  2. Find device models with node scripts/search.mjs "MPN". On first use it prepares two cache files: library.jsonl and index.json with byte…
  3. Save the selected model with node scripts/copy-model.mjs "" --out ./simulation/models. This reads only that JSONL record and writes one…
  4. Write a standard .cir file with a title on its first line, .include/.lib declarations, sources, .save, analysis directives, and .end. Use…
  5. Run node scripts/simulate.mjs circuit.cir --out results/run-01. Output directory must be new. The runner finds/prepares ngspice, sets…
  6. Read result.json, measurements in ngspice.log, numerical data, and the PNGs. Check operating points, expected magnitudes, loading…
  7. Report what was simulated, the selected models and assumptions, quantitative results, and material limitations. Keep the complete result…

What it can do on your machine

Read from SKILL.md and the folder at commit 18b97c2. 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

    Ships 8 files in scripts/ (JavaScript), which the agent can run.

    Shell commands in SKILL.md call:

    • node

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

  • Network

    No URLs in SKILL.md.

    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

Spice loads about 1.3k tokens when it runs, and up to ~3.4k if it reads all its reference files. Until then it costs about 54 tokens; SKILL.md has 617 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~54
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.4k

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); the scripts in this folder are not scanned.

SKILL.md

The full file from biosshot/easyeda-copilot at commit 18b97c2, republished under its MIT licence (© biosshot). 617 words, ~1,332 tokens.

Download SKILL.mdSave it as .claude/skills/spice/SKILL.md (or your agent's skills folder). This skill also uses 15 other files; get the full folder from GitHub.
name
spice
description
Write and run ngspice simulations from circuit descriptions, component connections, or existing netlists. Search local SPICE models and produce numerical results and PNG plots using standalone Node.js scripts.

SPICE simulation

This skill is independent of an EDA editor and MCP. Requires Node.js >=20.19. The scripts run directly as JavaScript; no compilation or Python is needed. Resolve script paths relative to this SKILL.md, not the current working directory.

Workflow

  1. Obtain component values and actual net connections from the caller's schematic tools, supplied netlist, or circuit description. State the question being tested, supplies, input stimulus, load, and operating conditions. Detected circuit blocks are optional context, not a restriction on what can be simulated.
  2. Find device models with node scripts/search.mjs "MPN". On first use it prepares two cache files: library.jsonl and index.json with byte offsets. It returns matching models, their text, exact modelId, original sourcePath, matching reasons, and validation scope. sourcePath is an archive identifier, not an existing filesystem path. Use --include-review only when ordinary results are insufficient. Similar names do not establish an equivalent component.
  3. Save the selected model with node scripts/copy-model.mjs "<modelId from search>" --out ./simulation/models. This reads only that JSONL record and writes one .lib, returning its absolute path, model name and .include directive. Existing identical copies are reused; edited files are never overwritten. Read the complete saved model, including any text truncated in search. Establish port order from comments and the .SUBCKT declaration. Internal structure can support an inference but does not establish physical package pin numbers. Record inferred assignments; prefer another clearly documented model if important ports remain uncertain. No external pin-mapping table is required.
  4. Write a standard .cir file with a title on its first line, .include/.lib declarations, sources, .save, analysis directives, and .end. Use .op, .dc, .ac, and .tran as needed. The runner owns .control; do not include a control block. Use separate circuits for repeated parameter cases. Include only selected model files to avoid name collisions.
  5. Run node scripts/simulate.mjs circuit.cir --out results/run-01. Output directory must be new. The runner finds/prepares ngspice, sets ngbehavior=ltpsa before reading the netlist, runs with -n -b, exports ASCII raw/CSV/JSON and creates PNGs through Sharp. Numerical settings belong in .options in the netlist, not CLI flags. Relative includes resolve from each original file's directory and are copied recursively into the result's models/ directory.
  6. Read result.json, measurements in ngspice.log, numerical data, and the PNGs. Check operating points, expected magnitudes, loading, saturation, and timestep/frequency resolution. Successful execution is not proof of model fidelity or correct circuit behavior. Compare important results with an independent calculation or a meaningful known limit.
  7. Report what was simulated, the selected models and assumptions, quantitative results, and material limitations. Keep the complete result directory with the user's research: it contains the rewritten circuit and referenced model snapshots, with original paths and hashes recorded in result.json. External stimulus data files (e.g. file-backed sources) are not bundled; use inline sources or copy such data into the run explicitly.
Show full SKILL.md (151 more words)Show less

For convergence problems, read modeling.md. For missing dependencies or download failures, read installation.md. For plot customization, read plots.md. No PCB parasitic extraction is included.

Commands

sh
node scripts/search.mjs "LM358" --limit 3
node scripts/search.mjs "LM358" --include-review --text-limit 60000
node scripts/copy-model.mjs "<modelId from search>" --out ./simulation/models
node scripts/simulate.mjs circuit.cir --out results/run-01 --timeout 120
node scripts/simulate.mjs circuit.cir --out results/run-02 --ngspice /absolute/path/to/ngspice

Use --library <directory containing index.json and library.jsonl> or --manifest <file> to select a library. --cache / SPICE_CACHE_DIR selects the shared cache root; default is <OS temp>/easyeda-copilot-mcp/spice. Clearing this cache only requires reinstalling dependencies. Research outputs belong outside it. --no-install makes execution offline when dependencies are already available; --no-plot explicitly requests numerical output only. A PNG failure is reported separately from simulation failure.

Library compiled means load and generic instantiation passed without warnings on ngspice 45.2 with ltpsa. It does not guarantee convergence, correct pin assignments, or accuracy for the requested analysis. The runner reports its actual engine version separately.

Examples

© biosshot, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 15 other files (scripts, references) in mcp/docs/spice of biosshot/easyeda-copilot.

  • SKILL.md
  • examples/custom-plot.mjs
  • examples/diode.cir
  • examples/rc-filter.cir
  • library-manifest.json
  • references/installation.md
  • references/modeling.md
  • references/plots.md
  • scripts/common.mjs
  • scripts/copy-model.mjs
  • scripts/ngspice.mjs
  • scripts/pack-library.mjs
  • scripts/plot.mjs
  • scripts/raw.mjs
  • scripts/search.mjs
  • scripts/simulate.mjs

Open the folder on GitHubat commit 18b97c2

Compare with similar skills

Spice 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.

Spice compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Spice this skillbiosshot/easyeda-copilot168—~1.3kAutomated safety check: PassMIT
Databuddydatabuddy-analytics/Databuddy1.2k—~2.1kAutomated safety check: PassAGPL-3.0
Generate Release Notesteambit/bit18k—~2.2kAutomated safety check: PassCustom licence
agentmemory Setup and Diagnosticsrohitg00/agentmemory29k—~1kAutomated safety check: NotesApache-2.0
Create Docsvictorgarciaesgi/nuxt-typed-router4132 repos~2.8kAutomated safety check: PassMIT
Stock APIzhangxiangliang/stock-api2k—~507Automated safety check: PassMIT

Similar skills

  • Databuddy

    databuddy-analytics/Databuddy

    Integrate Databuddy analytics using the SDK, REST API, or MCP.

    1.2k GitHub stars~2.1k tokensUpdated today
    Backend & APIsAuto-check passed
  • Generate comprehensive release notes for Bit from git commits and pull requests.

    18k GitHub stars~2.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Sets up and troubleshoots a local agentmemory install, covering the MCP connection, environment variables, ports, authentication and optional feature flags.

    29k GitHub stars~1k tokensUpdated today
    Agent WorkflowsAuto-check: notes
  • Create Docs

    victorgarciaesgi/nuxt-typed-router

    Create complete documentation sites for projects. An agent skill from victorgarciaesgi/nuxt-typed-router.

    413 GitHub starsUsed in 2 repos~2.8k tokens
    Frontend & DesignAuto-check passed
  • Stock API

    zhangxiangliang/stock-api

    Fetch real-time stock quotes, K-line (candlestick) history, and search symbols for China A-shares, Hong Kong, and US markets.

    2k GitHub stars~507 tokensUpdated today
    Business, Finance & HRAuto-check passed
  • Sap Extension Creator

    heshengtao/super-agent-party

    Create Super Agent Party (SAP) extensions. An agent skill from heshengtao/super-agent-party.

    2.7k GitHub stars~6k tokensUpdated 1 mo ago
    Frontend & DesignAuto-check passed

More from biosshot/easyeda-copilot

  • Datasheets

    biosshot/easyeda-copilot

    Download component datasheet PDFs, locate useful pages, and read verified pinouts, electrical limits, thermal data and application notes using the agent's PDF tools.

    168 GitHub stars~1.2k tokensUpdated 4 days ago
    Auto-check passed
  • Easyeda Copilot

    biosshot/easyeda-copilot

    Create, modify, place, route, or review EasyEDA schematics and PCBs with EasyEDA Copilot, using direct MCP tools when available or the generated standalone CLI skill.

    168 GitHub stars~2.7k tokensUpdated 4 days ago
    Auto-check passed

Questions about Spice

What does Spice do?

Write and run ngspice simulations from circuit descriptions, component connections, or existing netlists. Spice is an agent skill from biosshot/easyeda-copilot. Write and run ngspice simulations from circuit descriptions, component connections, or existing netlists.

How do I install Spice in Claude Code?

Run `npx skills add biosshot/easyeda-copilot --skill spice -a claude-code`. Or copy the skill folder (mcp/docs/spice in biosshot/easyeda-copilot) into .claude/skills/spice in your project. Claude Code loads it when a task matches its description.

How do I install Spice in Codex?

Run `npx skills add biosshot/easyeda-copilot --skill spice -a codex`. Or copy the skill folder (mcp/docs/spice in biosshot/easyeda-copilot) into .agents/skills/spice in your project. Codex loads it when a task matches its description.

Can I use Spice 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 biosshot/easyeda-copilot --skill spice -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/spice, .gemini/skills/spice, .github/skills/spice and .opencode/skills/spice in your project.

What does Spice need to run?

Going by SKILL.md and its folder, Spice needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node). Our summary lists: Python 3; Node.js.

Does Spice access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Spice 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Spice use?

Spice is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Spice use?

About 1.3k tokens (SKILL.md is roughly 5.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.1k tokens, read only when the agent opens those files.

What are the alternatives to Spice?

Skills that share tags, products or a category with Spice: Databuddy (databuddy-analytics/Databuddy, 1.2k stars), Generate Release Notes (teambit/bit, 18k stars), agentmemory Setup and Diagnostics (rohitg00/agentmemory, 29k stars) and Create Docs (victorgarciaesgi/nuxt-typed-router, 413 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Spice?

biosshot (a GitHub user) maintains it in biosshot/easyeda-copilot, which has 168 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 5, 2026.

Source: biosshot/easyeda-copilot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.