Agent skill

Omnigent Load Test Runner

by omnigent-ai in omnigent-ai/omnigent

Runs the Omnigent load test with real hosts and multi-turn sessions against a mocked LLM, then explains the latency results from summary.md.

Apache-2.0Auto-check passedTesting & QA

Install Omnigent Load Test Runner

skills CLI
$ npx skills add omnigent-ai/omnigent --skill run-load-test -a claude-code

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

GitHub CLI
$ gh skill install omnigent-ai/omnigent run-load-test --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/omnigent-ai/omnigent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/run-load-test .claude/skills/run-load-test && 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
run-load-test
GitHub stars
11k
Token cost
~1.1k tokens
SKILL.md length
450 words
Files
1
Skills in repo
19
Repo updated
First seen
Licence
Apache-2.0

At a glance

Runs the Omnigent load test with real hosts and multi-turn sessions against a mocked LLM, then explains the latency results from summary.md.

  • Works in 4 steps: Ensure deps (repo checkout) → Gather inputs → Run → …
  • Load-testing Omnigent under concurrent hosts and sessions
  • SKILL.md covers 1. Ensure deps (repo checkout), 2. Gather inputs, 3. Run and 4. Read and explain, plus 1 more section
  • Calls uv and python

What it does

The skill drives dev/loadtest end to end: collect inputs, run, read summary.md and explain the latencies. Each Locust user is a real omnigent host that registers over the host tunnel, creates host-bound sessions and holds real multi-turn conversations, while the LLM is mocked with zero latency, so the numbers reflect Omnigent's own overhead. It boots its own local server and mock LLM, runs only from a repo checkout, and is not for single-request micro-benchmarks, which live elsewhere in dev/benchmarks.

Dependencies are synced with uv, including the loadtest and agents-sdk extras. The agent asks you for the number of hosts (default 4), spawn rate (1 per second), run time (120s), sessions per host (2), turns per session (4) and reply length in words (60). Because each host and session spawns real runner processes on the same machine, capacity is limited by design: start with a tiny run to confirm the stack boots, then ramp to a few dozen hosts at most, since the load machine saturates before the server.

The run writes a timestamped results folder. The agent reads summary.md and relays it, starting with outcome and failures (exit 0 with no failures is a pass), then the latency distribution (average, median, p95, p99) and throughput.

When your agent uses it

  • Load-testing Omnigent under concurrent hosts and sessions
  • Finding out how many hosts or turns the server can handle
  • Explaining the latency percentiles and failures from a load test run
  • Benchmarking real multi-turn conversations with a mocked LLM

Example prompts

  • “Run a load test on omnigent with a few hosts and explain the latencies.”
  • “How many hosts can it handle? Start small, then ramp up.”
  • “Stress test the server with four turns per session and tell me where the p99 lands.”

Requirements

  • A checkout of the omnigent repository
  • uv to sync the loadtest dependencies

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Ensure deps (repo checkout)
  2. Gather inputs
  3. Run
  4. Read and explain

What it can do on your machine

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

    • uv
    • python

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

  • Network

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

Omnigent Load Test Runner loads about 1.1k tokens when it runs. Until then it costs about 190 tokens; SKILL.md has 450 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~190
When it runs · the whole SKILL.md, loaded when a task matches
~1.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 omnigent-ai/omnigent at commit 26c8338, republished under its Apache-2.0 licence (© omnigent-ai). 450 words, ~1,069 tokens.

Download SKILL.mdSave it as .claude/skills/run-load-test/SKILL.md (or your agent's skills folder).
name
run-load-test
description
Run the Omnigent load test and produce a results file explaining the latencies. Load when the user wants to load-test / stress-test / benchmark Omnigent under concurrency ("load test omnigent", "stress test the server", "how many hosts/sessions/turns can it handle", "load test real agent turns / conversations", "run a load test"). The test makes each simulated user a real omnigent host that creates host-bound sessions and drives real multi-turn conversations with a mocked LLM; it boots its own local stack (dev/loadtest/run.py). Gather inputs, run it, then read the generated summary.md and explain the latency distribution (avg/median/p95/p99, throughput, failures). NOT for single-request latency micro-benchmarks (that is dev/benchmarks/).

Run the Omnigent load test

Drives dev/loadtest/ end to end: collect inputs → run → read summary.md → explain the latencies. Each Locust user is a real omnigent host that registers over the host tunnel, creates host-bound sessions, and drives real multi-turn conversations — every turn is a genuine post→idle loop through the host's runner, with the LLM mocked (zero latency) so the numbers are Omnigent's own overhead. -u N scales the number of hosts.

It boots its own local stack (server + mock LLM), so there is no server to point at, and it runs from a repo checkout only. For single-request latency micro-benchmarks (not concurrency), that is a different tool: dev/benchmarks/.

1. Ensure deps (repo checkout)

bash
uv sync --extra loadtest --extra agents-sdk

Run with that same interpreter (e.g. .venv/bin/python), from the repo root.

2. Gather inputs

Ask the user (AskUserQuestion when several are unknown); all have defaults.

InputFlagDefaultNotes
Hosts--users4Concurrent hosts (N) — the main scale knob.
Spawn rate--spawn-rate1Hosts started per second.
Run time--run-time120s40s / 5m / 1h.
Sessions/host--sessions-per-user2Host-bound sessions each host drives.
Turns/session--turns-per-session4Turns per session — history grows across them.
Reply length--reply-words60Words in the mocked (streamed) reply per turn.

Capacity caveat — say this to the user if they ask for large N: turns run on real host + runner subprocesses, so N hosts × M sessions = N×M runner processes on this box. It is capacity-limited by design (real turns, not faked). Start at --users 2 --sessions-per-user 1 --turns-per-session 2 --run-time 40s to confirm the stack boots (~10-30s), then ramp to a few dozen hosts at most. At high N the load box saturates before the server (Locust warns about CPU).

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

3. Run

bash
python dev/loadtest/run.py \
    --users <N> --spawn-rate <R> --run-time <T> \
    --sessions-per-user <S> --turns-per-session <TU>

It boots the stack, prints the server URL + registered agent, runs Locust, and writes dev/loadtest/results/omnigent_load_test-<timestamp>/.

4. Read and explain

Read the summary.md and relay it. Focus on:

  • Outcome / failures first. Exit 0 + 0 failures = PASS. Non-zero failures are the headline — check console.log and, for a host that failed to register, the per-host results/.../host-workspaces/<name>/host.log. At high N, failures usually mean the load box saturated, not the server.
  • turn — the headline latency: one full post→idle agent turn on a host's runner (mocked LLM), so it is Omnigent's per-turn overhead. It grows across a conversation as history accumulates, so a rising p95/p99 with larger --turns-per-session is expected and is the interesting signal.
  • host online — host tunnel registration cost; session create — the host-bound create; Ops/s — aggregate throughput at this concurrency.

If failures appeared or the tail looks high, suggest a concrete next step (lower N if the load box is saturated, raise --turns-per-session to study history growth, lengthen --run-time for steady state, or check server logs/metrics).

Notes

  • Scenario file: dev/loadtest/omnigent_load_test.py; driver + report: dev/loadtest/run.py. Full reference: dev/loadtest/README.md.

© omnigent-ai, 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 .claude/skills/run-load-test of omnigent-ai/omnigent.

Open the folder on GitHubat commit 26c8338

Compare with similar skills

Omnigent Load Test Runner 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.

Omnigent Load Test Runner compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Omnigent Load Test Runner this skillomnigent-ai/omnigent11k—~1.1kAutomated safety check: PassApache-2.0
Performance Profilerborghei/Claude-Skills881—~1.8kAutomated safety check: PassMIT
Afrexai Performance EngineeringLeoYeAI/openclaw-master-skills2.2k—~7.1kAutomated safety check: PassMIT
Performance Profileralirezarezvani/claude-skills28k—~684Automated safety check: PassMIT
Code Migrationanthropics/code-migration-kit-with-claude-code743—~983Automated safety check: PassCustom licence
Ambiguity Reportlawve-ai/awesome-legal-skills836—~4.6kAutomated safety check: PassApache-2.0

Similar skills

  • Performance Profiler

    borghei/Claude-Skills

    Performance profiling for Node.js, Python, and Go: CPU flamegraphs, memory leak detection, bundle analysis, query optimization, and k6 load testing.

    881 GitHub stars~1.8k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Afrexai Performance Engineering

    LeoYeAI/openclaw-master-skills

    Complete performance engineering system — profiling, optimization, load testing, capacity planning, and performance culture.

    2.2k GitHub stars~7.1k tokensUpdated 2 mo ago
    Testing & QAAuto-check passed
  • Performance Profiler

    alirezarezvani/claude-skills

    Systematic performance profiling for Node.js, Python, and Go applications.

    28k GitHub stars~684 tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Code Migration

    anthropics/code-migration-kit-with-claude-code

    Official

    Run a large-scale language migration with the six-step process: create the map and the rules, stress-test the rules, translate everything, compile, run it, match behavior.

    743 GitHub stars~983 tokensUpdated 3 mo ago
    DevelopmentAuto-check passed
  • Ambiguity Report

    lawve-ai/awesome-legal-skills

    Turn an interpretive-ambiguity audit of a legal text — contract, statute, regulation, or judicial opinion — into a polished deliverable.

    836 GitHub stars~4.6k tokensUpdated 6 days ago
    Documents & OfficeAuto-check passed
  • Web Application Testing

    anthropics/skills

    Official

    Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.

    180k GitHub starsUsed in 51 repos~966 tokens
    Testing & QAAuto-check passed

More from omnigent-ai/omnigent

All 19 skills in this repo
  • Omnigent Docker Compose Deploy

    omnigent-ai/omnigent

    Brings up the Omnigent server and Postgres as a Docker compose stack on any Docker host, and covers the Dockerfile's runtime and host build targets for extending it to a new platform.

    11k GitHub stars~1.3k tokensUpdated today
    Auto-check: notes
  • Omnigent Framework Detection

    omnigent-ai/omnigent

    Scans Python agent code for framework imports and recommends the matching Omnigent executor type, or says when the framework is not natively supported yet.

    11k GitHub stars~610 tokensUpdated today
    Auto-check passed
  • Verify Omnigent End-to-End

    omnigent-ai/omnigent

    Spins up an isolated Omnigent server, runner and mock model to prove a user-facing behavior or bug fix with recorded evidence instead of reasoning from code.

    11k GitHub stars~1.6k tokensUpdated today
    Auto-check passed
  • Spins up a local Omnigent server and exercises the Antigravity (Gemini) SDK harness end to end: building agents, running real turns, smoke tests and bug-bashing.

    11k GitHub stars~2.7k tokensUpdated today
    Auto-check passed
  • Omnigent Agent Builder

    omnigent-ai/omnigent

    Gives patterns for generating a minimal, valid Omnigent agent directory: the config.yaml fields, the right executor type, and the files each agent needs.

    11k GitHub stars~2.1k tokensUpdated today
    Auto-check passed
  • Copilot SDK E2E Dev

    omnigent-ai/omnigent

    Spin up a live local Omnigent server and exercise the GitHub Copilot SDK harness end-to-end — build copilot agents, run real turns, smoke-test, and bug-bash.

    11k GitHub stars~2.7k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Omnigent Load Test Runner

What does Omnigent Load Test Runner do?

Runs the Omnigent load test with real hosts and multi-turn sessions against a mocked LLM, then explains the latency results from summary.md. md and explain the latencies. Each Locust user is a real omnigent host that registers over the host tunnel, creates host-bound sessions and holds real multi-turn conversations, while the LLM is mocked with zero latency, so the numbers reflect Omnigent's own overhead.

When should I use Omnigent Load Test Runner?

Omnigent Load Test Runner fits situations like: load-testing Omnigent under concurrent hosts and sessions; finding out how many hosts or turns the server can handle; explaining the latency percentiles and failures from a load test run; benchmarking real multi-turn conversations with a mocked LLM.

How do I install Omnigent Load Test Runner in Claude Code?

Run `npx skills add omnigent-ai/omnigent --skill run-load-test -a claude-code`. Or copy the skill folder (.claude/skills/run-load-test in omnigent-ai/omnigent) into .claude/skills/run-load-test in your project. Claude Code loads it when a task matches its description.

How do I install Omnigent Load Test Runner in Codex?

Run `npx skills add omnigent-ai/omnigent --skill run-load-test -a codex`. Or copy the skill folder (.claude/skills/run-load-test in omnigent-ai/omnigent) into .agents/skills/run-load-test in your project. Codex loads it when a task matches its description.

Can I use Omnigent Load Test Runner 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 omnigent-ai/omnigent --skill run-load-test -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/run-load-test, .gemini/skills/run-load-test, .github/skills/run-load-test and .opencode/skills/run-load-test in your project.

What does Omnigent Load Test Runner need to run?

Going by SKILL.md and its folder, Omnigent Load Test Runner needs the command-line tools its instructions call (uv and python). Our summary lists: A checkout of the omnigent repository; uv to sync the loadtest dependencies.

Does Omnigent Load Test Runner access the network?

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

Is Omnigent Load Test Runner 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 Omnigent Load Test Runner use?

Omnigent Load Test Runner 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 Omnigent Load Test Runner use?

About 1.1k tokens (SKILL.md is roughly 4.3k 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 Omnigent Load Test Runner?

Skills that share tags, products or a category with Omnigent Load Test Runner: Performance Profiler (borghei/Claude-Skills, 881 stars), Afrexai Performance Engineering (LeoYeAI/openclaw-master-skills, 2.2k stars), Performance Profiler (alirezarezvani/claude-skills, 28k stars) and Code Migration (anthropics/code-migration-kit-with-claude-code, 743 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Omnigent Load Test Runner?

omnigent-ai (a GitHub organization) maintains it in omnigent-ai/omnigent, which has 10,661 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 8, 2026.

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