Agent skill

Testing And Verification

by gkeyllorg in gkeyllorg/gkeyll

How to run and write Gkeyll unit and regression tests, as well as performing memory checks.

MITAuto-check passedTesting & QA

Install Testing And Verification

skills CLI
$ npx skills add gkeyllorg/gkeyll --skill testing-and-verification -a claude-code

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

GitHub CLI
$ gh skill install gkeyllorg/gkeyll testing-and-verification --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/gkeyllorg/gkeyll.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/testing-and-verification .claude/skills/testing-and-verification && 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
testing-and-verification
GitHub stars
112
Token cost
~1.6k tokens
SKILL.md length
797 words
Files
1
Skills in repo
6
Repo updated
First seen
Licence
MIT

At a glance

How to run and write Gkeyll unit and regression tests, as well as performing memory checks.

  • Works in 2 steps: Compile all unit tests; see compilation. → Run all unit tests with
  • Testing changes and verifying that changes didnt break the code
  • SKILL.md covers C regression tests, Parallel regression tests, Lua regression tests and The runregression tool
  • Calls make and git

What it does

Testing And Verification is an agent skill from gkeyllorg/gkeyll. How to run and write Gkeyll unit and regression tests, as well as performing memory checks. Use when testing changes and verifying that changes didn't break the code or change simulation results.

Its SKILL.md is about 1.6k 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 Testing & QA, covering Unit testing. The repository describes itself as: The Gkeyll Computational Plasma Physics Package. The licence is MIT.

When your agent uses it

  • Testing changes and verifying that changes didnt break the code
  • Change simulation results

Example prompts

  • “/testing-and-verification”

Workflow steps

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

  1. Compile all unit tests; see compilation.
  2. Run all unit tests with

What it can do on your machine

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

    • make
    • git

    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

Testing And Verification loads about 1.6k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 797 words of instructions outside code blocks.

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

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 gkeyllorg/gkeyll at commit e6b37b0, republished under its MIT licence (© gkeyllorg). 797 words, ~1,614 tokens.

Download SKILL.mdSave it as .claude/skills/testing-and-verification/SKILL.md (or your agent's skills folder).
name
testing-and-verification
description
How to run and write Gkeyll unit and regression tests, as well as performing memory checks. Use when testing changes and verifying that changes didn't break the code or change simulation results.

Instructions

  • Unit tests only test the /zero layer. Regression tests test the /app layer.
  • Unit tests are focused on particular /zero modules and bear the same name as the module they test. For example, core/unit/ctest_array.c tests the core/zero/array.c module.
  • Unit tests should be modular, test only what is necessary, and be simple.
  • Only test code that you understand completely.
  • For code changes, run relevant unit tests and focused regression tests when simulation behavior is affected. Choose tests based on the changed component.
  • Do not run the entire regression suite unless you are asked to; it can take a long time. Use the task's scope and available resources to choose the suitable testing scope.
  • For documentation or agent configuration changes, validate the changed files and references; solver tests and memory checks are unnecessary.
  • Report what was checked and any checks that could not run. If required context is missing or unreadable, report the exact path rather than silently skipping it.

Running unit tests

Operate relative to the repository root (git rev-parse --show-toplevel).

In order to run all Gkeyll unit tests:

  1. Compile all unit tests; see compilation.
  2. Run all unit tests with
sh
make -j"$NPROC" unit-run

In order to run all unit tests for a specific solver, e.g. gyrokinetic:

  1. Compile all unit tests for that solver; see compilation.
  2. Run all unit tests for that solver, e.g. for gyrokinetic use
sh
make -j"$NPROC" gyrokinetic-unit-run

One can also compile and run a single unit test of interest. Simply:

  1. Compile the unit; see compilation.
  2. Run the executable from the repository root: For example, in order to run core/unit/ctest_array.c do
sh
make -j"$NPROC" ./build/core/unit/ctest_array
./build/core/unit/ctest_array

If the Gkeyll was build on a CPU-only machine or without GPU support, unit tests will simply ignore GPU tests (via pre-processor if-statements). When running on a machine with a supported GPU, and if Gkeyll is configured to build GPU code, running these tests will automatically run the corresponding GPU tests. If a GPU is not available but Gkeyll was built to use GPUs, the GPU tests may simply fail or exit (e.g. due to GPU memory allocation errors).

Parallel unit tests

There are a few parallel unit tests that use MPI, whose names begin with mctest. These tests are compiled the same way as serial tests, but must be run with the appropriate MPI execution command.

For example if Gkeyll was built and configured with the MPI in gkylsoft/openmpi/, then a parallel unit test (for example mctest_mpi_comm.c) may be run with

sh
<mpi_install_prefix>/bin/mpirun -np 4 build/core/unit/mctest_mpi_comm

Running regression tests

C regression tests

Regression tests written in C and located in creg/ directories need to be compiled first, see compilation.

Once compiled the regression test may be run serially with, for gyrokinetic/creg/rt_gk_sheath_2x2v_p1.c for example:

sh
./build/gyrokinetic/creg/rt_gk_sheath_2x2v_p1

See

sh
./build/gyrokinetic/creg/rt_gk_sheath_2x2v_p1 -h

for command line arguments that may be available (not all are actually supported). For example, the following command

sh
./build/gyrokinetic/creg/rt_gk_sheath_2x2v_p1 -s1

limits the regression to a one-step smoke test.

CUDA builds place the executable in cuda-build/ instead of build/, and regression tests use -g to indicate GPU execution.

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

Parallel regression tests

Regression executables take the -M command line argument to indicate a parallel run (requiring MPI). The flags -c X -d Y -e Z specify that the first, second and third configuration-space dimensions are to be subdivided amongs X, Y and Z MPI processes, respecitively. The product X*Y*Z must match the number of cores available for this run. If one of -c, -d or -e is not given, it is assumed to be 1.

For example, we may run gyrokinetic/creg/rt_gk_sheath_2x2v_p1 using 2 cores in the second dimension with

sh
<mpi_install_prefix>/bin/mpirun -np 2 ./build/gyrokinetic/creg/rt_gk_sheath_2x2v_p1 -M -d 2

For gyrokinetic partition restrictions and an example, read gyrokinetic-details.

It is also possible to run with multiple GPUs. Gkeyll's model is to match each MPI process to a single GPU. The procedure is similar as for multiple GPUs, but the additional -g flag is needed. For example, to run gyrokinetic/creg/rt_gk_sheath_2x2v_p1 using 2 GPUs in the second dimension with

sh
<mpi_install_prefix>/bin/mpirun -np 2 ./build/gyrokinetic/creg/rt_gk_sheath_2x2v_p1 -g -M -d 2

Lua regression tests

Run Lua inputs using the installed executable:

sh
<gkeyll_install_prefix>/bin/gkeyll <Lua_input_file>

The runregression tool

After installing the Gkeyll library and executable one may use the runregression tool to run regression tests, see

sh
<gkeyll_install_prefix>/bin/gkeyll runregression -h

After configuring runregression, and having generated accepted results with runregression run create, one may check the test using runregression run check. Note that the flag -r allows check a specific test or set of tests.

The runregression tool produces SQL databases that may be examined with the queryrdb command, see

sh
<gkeyll_install_prefix>/bin/gkeyll queryrdb -h

Memory checks

All code must be free of memory errors and leaks. Run the relevant CPU test under Valgrind before committing:

sh
valgrind --leak-check=full ./build/core/unit/ctest_array

For GPU changes, run the relevant executable under Compute Sanitizer:

sh
compute-sanitizer --tool memcheck --leak-check full <executable>

Supply the executable's GPU options where required. Report unavailable tools or hardware and distinguish completed checks from checks that could not run.

Gkeyll CI system

Gkeyll has a CI system based on Jenkins which calls the aforementioned existing functionality to run unit and regression tests. See ci/jenkins/README.md for more details.

© gkeyllorg, MIT. 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 .agents/skills/testing-and-verification of gkeyllorg/gkeyll.

Open the folder on GitHubat commit e6b37b0

Compare with similar skills

Testing And Verification 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.

Testing And Verification compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Testing And Verification this skillgkeyllorg/gkeyll112—~1.6kAutomated safety check: PassMIT
TDD WorkflowhellangleZ/burn-in-cceverywhere-ralph11211 repos~2.4kAutomated safety check: PassNone
Testing OpenLogi UIAprilNEA/OpenLogi23k—~1.1kAutomated safety check: PassApache-2.0
Go Testingcxuu/golang-skills1701 repos~1.3kAutomated safety check: PassApache-2.0
Contractssamchon/nestia2.2k—~1.3kAutomated safety check: PassMIT
Cohesion Over TestabilityEpicenterHQ/epicenter4.8k—~2kAutomated safety check: PassCustom licence

Similar skills

  • TDD Workflow

    hellangleZ/burn-in-cceverywhere-ralph

    A skill your agent uses when writing new features, fixing bugs, or refactoring code.

    112 GitHub starsUsed in 11 repos~2.4k tokens
    Testing & QAAuto-check passed
  • Testing OpenLogi UI

    AprilNEA/OpenLogi

    Verifies OpenLogi's native GPUI interface with focused tests, the component gallery and a mock agent, choosing the evidence that fits each change.

    23k GitHub stars~1.1k tokensUpdated 4 days ago
    Testing & QAAuto-check passed
  • Go Testing

    cxuu/golang-skills

    A skill your agent uses when writing, reviewing, or improving Go test code — including table-driven tests, subtests, parallel tests, test helpers, test doubles, and assertions with cmp.Diff.

    170 GitHub starsUsed in 1 repo~1.3k tokens
    Testing & QAAuto-check passed
  • Contracts

    samchon/nestia

    Defines self-acknowledgments for production declarations and tests.

    2.2k GitHub stars~1.3k tokensUpdated today
    Testing & QAAuto-check passed
  • Cohesion Over Testability

    EpicenterHQ/epicenter

    Collapse test-shaped production boundaries while preserving behavior and coverage.

    4.8k GitHub stars~2k tokensUpdated today
    Testing & QAAuto-check passed
  • JS-in-HTML Testing

    liaohch3/claude-tap

    Tests JavaScript embedded in an HTML file in two layers: pytest checks of the logic ported to Python, and Playwright runs in a real browser for the DOM.

    3.3k GitHub stars~924 tokensUpdated 15 days ago
    Testing & QAAuto-check passed

More from gkeyllorg/gkeyll

  • Compiling

    gkeyllorg/gkeyll

    How to compile Gkeyll libraries, executables, and specific unit or regression test targets on CPU or CUDA.

    112 GitHub stars~759 tokensUpdated today
    Auto-check passed
  • Gyrokinetic Details

    gkeyllorg/gkeyll

    Apply gyrokinetic solver conventions when working on gyrokinetic-related source code or input files.

    112 GitHub stars~272 tokensUpdated today
    Auto-check passed
  • Directory Structure

    gkeyllorg/gkeyll

    Locate Gkeyll code and understand solver dependencies when exploring the repository or deciding where new code belongs.

    112 GitHub stars~695 tokensUpdated today
    Auto-check passed
  • Naming Conventions

    gkeyllorg/gkeyll

    Apply Gkeyll naming conventions when creating, editing, or reviewing C, CUDA, or Lua files and code elements.

    112 GitHub stars~301 tokensUpdated today
    Auto-check passed
  • Software Design

    gkeyllorg/gkeyll

    Some design practices in Gkeyll code to consider when implementing new modules (apps, updaters) or modifying existing ones.

    112 GitHub stars~398 tokensUpdated today
    Auto-check passed

Categories

Questions about Testing And Verification

What does Testing And Verification do?

How to run and write Gkeyll unit and regression tests, as well as performing memory checks. Testing And Verification is an agent skill from gkeyllorg/gkeyll. How to run and write Gkeyll unit and regression tests, as well as performing memory checks.

When should I use Testing And Verification?

Testing And Verification fits situations like: testing changes and verifying that changes didnt break the code; change simulation results.

How do I install Testing And Verification in Claude Code?

Run `npx skills add gkeyllorg/gkeyll --skill testing-and-verification -a claude-code`. Or copy the skill folder (.agents/skills/testing-and-verification in gkeyllorg/gkeyll) into .claude/skills/testing-and-verification in your project. Claude Code loads it when a task matches its description.

How do I install Testing And Verification in Codex?

Run `npx skills add gkeyllorg/gkeyll --skill testing-and-verification -a codex`. Or copy the skill folder (.agents/skills/testing-and-verification in gkeyllorg/gkeyll) into .agents/skills/testing-and-verification in your project. Codex loads it when a task matches its description.

Can I use Testing And Verification 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 gkeyllorg/gkeyll --skill testing-and-verification -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/testing-and-verification, .gemini/skills/testing-and-verification, .github/skills/testing-and-verification and .opencode/skills/testing-and-verification in your project.

What does Testing And Verification need to run?

Going by SKILL.md and its folder, Testing And Verification needs the command-line tools its instructions call (make and git).

Does Testing And Verification 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 Testing And Verification 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 Testing And Verification use?

Testing And Verification 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 Testing And Verification use?

About 1.6k tokens (SKILL.md is roughly 6.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 Testing And Verification?

Skills that share tags, products or a category with Testing And Verification: TDD Workflow (hellangleZ/burn-in-cceverywhere-ralph, 112 stars), Testing OpenLogi UI (AprilNEA/OpenLogi, 23k stars), Go Testing (cxuu/golang-skills, 170 stars) and Contracts (samchon/nestia, 2.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Testing And Verification?

gkeyllorg (a GitHub organization) maintains it in gkeyllorg/gkeyll, which has 112 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 8, 2026.

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