Agent skill

Software Harness

by exeex in exeex/edge-cores

Run, extend, debug, or review the public edge-e3 bare-metal software harness, including encrypted Verilator builds, hello and tensor examples, all example/llama/model smoke cases, PyTorch BF16…

Apache-2.0Auto-check passedAI & LLM Engineering

Install Software Harness

skills CLI
$ npx skills add exeex/edge-cores --skill software-harness -a claude-code

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

GitHub CLI
$ gh skill install exeex/edge-cores software-harness --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/exeex/edge-cores.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/software-harness .claude/skills/software-harness && 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
software-harness
GitHub stars
110
Token cost
~1k tokens
SKILL.md length
406 words
Files
2
Skills in repo
9
Repo updated
First seen
Licence
Apache-2.0

At a glance

Run, extend, debug, or review the public edge-e3 bare-metal software harness, including encrypted Verilator builds, hello and tensor examples, all example/llama/model smoke cases, PyTorch BF16…

  • Works in 5 steps: Read the failing model log before… → Reproduce one model with… → Distinguish export/lowering, RISC-V… → …
  • Tasks that involve Deep learning
  • SKILL.md covers Select the validation scope, Run the complete public…, Llama suite contract and Require and inspect reports, plus 1 more section
  • Calls git and python3

What it does

Software Harness is an agent skill from exeex/edge-cores. Run, extend, debug, or review the public edge-e3 bare-metal software harness, including encrypted Verilator builds, hello and tensor examples, all example/llama/model smoke cases, PyTorch BF16 comparison, llama3source.py per-node profiling, and regression reports. Use after changes to cpp, nnc, example software, public SoC testbench output/dump behavior, or encrypted-core software execution.

Its SKILL.md is about 1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).

It sits in AI & LLM Engineering, covering Deep learning. It works with PyTorch, C++ and Python. The repository describes itself as: The shortest path from PyTorch to custom ASICs. The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Deep learning

Example prompts

  • “/software-harness”

Requirements

  • Python 3

Workflow steps

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

  1. Read the failing model log before rerunning it alone.
  2. Reproduce one model with nnc/run_smoke.py --model-file ....
  3. Distinguish export/lowering, RISC-V build, simulator, return status, and BF16
  4. For a missing simulator during a suite, verify the suite-private path; do
  5. After fixing one case, rerun the complete suite because tensor layout and

What it can do on your machine

Read from SKILL.md and the folder at commit 68dc8aa. 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:

    • git
    • python3

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

  • Network

    No URLs in SKILL.md. Its commands use git, 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

Software Harness loads about 1k tokens when it runs. Until then it costs about 103 tokens; SKILL.md has 406 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~103
When it runs · the whole SKILL.md, loaded when a task matches
~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 exeex/edge-cores at commit 68dc8aa, republished under its Apache-2.0 licence (© exeex). 406 words, ~1,025 tokens.

Download SKILL.mdSave it as .claude/skills/software-harness/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
software-harness
description
Run, extend, debug, or review the public edge-e3 bare-metal software harness, including encrypted Verilator builds, hello and tensor examples, all example/llama/model smoke cases, PyTorch BF16 comparison, llama3_source.py per-node profiling, and regression reports. Use after changes to cpp, nnc, example software, public SoC testbench output/dump behavior, or encrypted-core software execution.

Software Harness

Use only the public encrypted-core path. Keep src/edge-e3 and src/edge-asic deinitialized while validating the public harness; scripts/build-verilator.sh must obtain the private product RTL and SRAM models exclusively from src/edge-e3enc.

Select the validation scope

  • For console/startup changes, run ./example/hello/run.sh.
  • For intrinsic or Tensor datapath changes, run ./example/tensor/run.sh.
  • For one NNC model, run ./example/llama/run.sh --model-file nnc/test/smoke_<op>.py.
  • For NNC compiler/runtime, Matmul, Attention, DMA layout, or composed-model changes, run the complete Llama suite with ./example/llama/test.sh.
  • For public RTL, SRAM, SoC wrapper, or testbench changes, first run ./scripts/build-verilator.sh, then the relevant software cases.

Set PYTHON=/path/to/python when PyTorch is installed in a virtual environment. Install the Python dependency from nnc/requirements.txt when needed.

Run the complete public regression

Verify both private source submodules are absent, then run:

sh
git submodule status src/edge-e3
git submodule status src/edge-asic
python3 -m unittest nnc.test_compiler
./example/hello/run.sh
./example/tensor/run.sh
./example/llama/test.sh

Both submodule status lines must begin with -. Do not initialize private RTL to make a public case pass.

Llama suite contract

example/llama/test.sh must:

  • build one suite-private simulator below example/llama/build/harness/verilator;
  • discover every nnc/test/smoke_*.py without a skip list;
  • run each model in an isolated Python process and compare its BF16 output with the PyTorch golden;
  • verify nnc/test/llama3_source.py matches the user-facing example/llama/model/llama3_source.py, then run the test copy with --profile;
  • continue after individual failures so the final report is complete;
  • exit nonzero unless every model passes.

Do not replace a failing semantic test by loosening tolerance, changing its golden layout, or adding a skip. Remove a model only when the user identifies it as obsolete. Preserve PyTorch-contiguous public tensor layouts; accelerator packing belongs inside an operator. Use the llama-nnc skill for detailed NNC lowering and memory rules.

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

Require and inspect reports

The Llama suite succeeds only when harness.md reports every discovered case as PASS. Inspect these artifacts:

  • example/llama/build/harness/harness.md: human-readable suite summary.
  • example/llama/build/harness/harness.tsv: machine-readable summary.
  • example/llama/build/harness/<model>.log: complete per-model output.
  • example/llama/build/llama3_source/profile.md: ranked node cycles and share.
  • example/llama/build/llama3_source/profile.tsv: machine-readable profile.
  • example/llama/build/llama3_source/software-console.log: raw records.

Treat profile percentages as shares of summed measured operator calls, not full simulation cycles. Allocation, copies, startup, and printf are excluded.

Diagnose failures

  1. Read the failing model log before rerunning it alone.
  2. Reproduce one model with nnc/run_smoke.py --model-file ....
  3. Distinguish export/lowering, RISC-V build, simulator, return status, and BF16 comparison failures.
  4. For a missing simulator during a suite, verify the suite-private path; do not share build/verilator/obj across concurrent harnesses.
  5. After fixing one case, rerun the complete suite because tensor layout and allocator changes commonly affect composed paths.

Keep generated outputs under ignored build/ directories. Do not commit ELFs, memory images, logs, or generated profile reports.

© exeex, 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

SKILL.md and 1 other file in .codex/skills/software-harness of exeex/edge-cores.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit 68dc8aa

Compare with similar skills

Software Harness 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.

Software Harness compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Software Harness this skillexeex/edge-cores110—~1kAutomated safety check: PassApache-2.0
Ako4allTongmingLAIC/AKO4ALL369—~4kAutomated safety check: PassMIT
Paddle Op DevPaddlePaddle/Paddle24k—~1.3kAutomated safety check: PassApache-2.0
Paddle Cross Ecosystem Custom OpPaddlePaddle/Paddle24k—~883Automated safety check: PassApache-2.0
Quark Installamd/Quark181—~1.8kAutomated safety check: NotesMIT
ExecuTorch Build Guidepytorch/executorch5.1k—~2.3kAutomated safety check: NotesCustom licence

Similar skills

  • Ako4all

    TongmingLAIC/AKO4ALL

    Drive an agentic loop that iteratively optimizes a GPU kernel for maximum speedup.

    369 GitHub stars~4k tokensUpdated 23 days ago
    AI & LLM EngineeringAuto-check passed
  • Paddle Op Dev

    PaddlePaddle/Paddle

    PaddlePaddle (飞桨) C++ 算子开发指南。提供从 YAML 配置、InferMeta 函数、Kernel 实现、Python API 封装、单元测试到编译验证的完整算子开发流程指导。在以下场景使用此 skill:(1) 为 Paddle 框架新增 C++ 算子 (2) 修改或调试已有 Paddle 算子 (3) 编写算子的 YAML…

    24k GitHub stars~1.3k tokensUpdated 8 days ago
    AI & LLM EngineeringAuto-check passed
  • 将原生 PyTorch 自定义算子库、Torch extension、生态库(TorchCodec/FlashInfer/DeepEP 等)以及 Kernel DSL 生态(Triton/TileLang/TVM FFI 等)以最小修改方式接入 PaddlePaddle。遇到以下场景务必使用:迁移外部算子库到 Paddle;分析 PFCCLab fork 与上游的兼容差异;处理…

    24k GitHub stars~883 tokensUpdated 8 days ago
    AI & LLM EngineeringAuto-check passed
  • Quark Install

    amd/Quark

    Install or verify the AMD Quark package and its dependencies.

    181 GitHub stars~1.8k tokensUpdated 10 days ago
    AI & LLM EngineeringAuto-check: notes
  • ExecuTorch Build Guide

    pytorch/executorch

    Builds ExecuTorch from source: the Python package, C++ runtime, model runners, Android and iOS cross-compilation and backend-specific builds, with environment checks.

    5.1k GitHub stars~2.3k tokensUpdated today
    DevelopmentAuto-check: notes
  • Paddle Build

    PaddlePaddle/Paddle

    A skill your agent uses when needing to compile, rebuild, or install Paddle from source after code changes.

    24k GitHub stars~1k tokensUpdated 8 days ago
    AI & LLM EngineeringAuto-check passed

More from exeex/edge-cores

All 9 skills in this repo
  • Edge Bringup

    exeex/edge-cores

    Prepare a macOS or Ubuntu machine for edge-e3 development, diagnose missing Verilator/LLVM/Python dependencies, initialize the public repository, and answer or act on the example prompts in the root…

    110 GitHub stars~1.7k tokensUpdated 11 days ago
    Auto-check: notes
  • Edge Contribution

    exeex/edge-cores

    Prepare, validate, submit, triage, and review open-source contributions to the shared Edge RV framework in edge-cores.

    110 GitHub stars~1.2k tokensUpdated 11 days ago
    Auto-check passed
  • Rtl Release Packager

    exeex/edge-cores

    Generate, compare, validate, and prepare mixed public/private RTL release packages with symbol-obfuscated proprietary RTL and unchanged public RTL dependencies.

    110 GitHub stars~892 tokensUpdated 11 days ago
    Auto-check passed
  • Integrate Your Design

    exeex/edge-cores

    Integrate and publish your own accelerator or ASIC design, DMA, and DTCM/SRAM with the Edge RV64 scalar core and command path.

    110 GitHub stars~1.4k tokensUpdated 11 days ago
    Auto-check passed
  • Edge Synth Report

    exeex/edge-cores

    Run and diagnose the repository-local Yosys synthesis profiles for edge-e3 encrypted product RTL, edge-rv, and edge-rv-lite, then summarize FPGA resource reports.

    110 GitHub stars~516 tokensUpdated 11 days ago
    Auto-check passed
  • Llama Nnc

    exeex/edge-cores

    Develop and profile the edge-e3 PyTorch-to-NNC flow, including nnc/compiler.py lowering and generated ABI, example/llama smoke models, cpp/libnn runtime operators, BF16 correctness checks, and…

    110 GitHub stars~1.1k tokensUpdated 11 days ago
    Auto-check passed

Questions about Software Harness

What does Software Harness do?

Run, extend, debug, or review the public edge-e3 bare-metal software harness, including encrypted Verilator builds, hello and tensor examples, all example/llama/model smoke cases, PyTorch BF16…. Software Harness is an agent skill from exeex/edge-cores.py per-node profiling, and regression reports.

When should I use Software Harness?

Software Harness fits situations like: tasks that involve Deep learning.

How do I install Software Harness in Claude Code?

Run `npx skills add exeex/edge-cores --skill software-harness -a claude-code`. Or copy the skill folder (.codex/skills/software-harness in exeex/edge-cores) into .claude/skills/software-harness in your project. Claude Code loads it when a task matches its description.

How do I install Software Harness in Codex?

Run `npx skills add exeex/edge-cores --skill software-harness -a codex`. Or copy the skill folder (.codex/skills/software-harness in exeex/edge-cores) into .agents/skills/software-harness in your project. Codex loads it when a task matches its description.

Can I use Software Harness 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 exeex/edge-cores --skill software-harness -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/software-harness, .gemini/skills/software-harness, .github/skills/software-harness and .opencode/skills/software-harness in your project.

What does Software Harness need to run?

Going by SKILL.md and its folder, Software Harness needs the command-line tools its instructions call (git and python3). Our summary lists: Python 3.

Does Software Harness access the network?

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

Is Software Harness 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 Software Harness use?

Software Harness 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 Software Harness use?

About 1k tokens (SKILL.md is roughly 4.1k 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 Software Harness?

Skills that share tags, products or a category with Software Harness: Ako4all (TongmingLAIC/AKO4ALL, 369 stars), Paddle Op Dev (PaddlePaddle/Paddle, 24k stars), Paddle Cross Ecosystem Custom Op (PaddlePaddle/Paddle, 24k stars) and Quark Install (amd/Quark, 181 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Software Harness?

exeex (a GitHub user) maintains it in exeex/edge-cores, which has 110 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on September 26, 2026.

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