跳到正文
cccskills
免费在 GitHub 公开

run-load-test

Run concurrent Omnigent conversations with real hosts and runners while replacing the LLM with a zero-latency mock. Read the generated report to explain response-time distributions, throughput, and failures, helping assess Omnigent's own processing overhead.

中文简介正在准备中。当前显示英语简介。

原文查看原文说明

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/).

查看安装方法

适用场景

  • Measuring performance with concurrent hosts
  • Studying latency as conversation history grows
  • Comparing throughput and failures under load
  • Explaining results from a generated load test report

包含的文件(1)

  • SKILL.md4.2 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

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)

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

3. Run

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.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Test Omnigent’s native Antigravity integration with a live local server and the real agy CLI. Verify messages traveling between the web interface and terminal, mirrored replies, permission requests, interruption, session resumption, and process cleanup.

中文简介正在准备中。当前显示英语简介。

  • Testing message delivery from the web interface to agy
  • Checking terminal output against mirrored session replies
  • Verifying permission requests and interruption
omnigent-ai/omnigent1.1万2026年10月19日 更新

Test Omnigent’s Antigravity SDK integration against a live local server. Build test agents and run real conversations to check Gemini authentication, model selection, tool connections, and failures across the full execution path.

中文简介正在准备中。当前显示英语简介。

  • Test authentication and real Gemini responses
  • Verify tool connections and sub-agent delegation
  • Investigate model selection failures
omnigent-ai/omnigent1.1万2026年10月19日 更新

api-docs

免费

Create reference documentation directly from source code for public functions, classes, command-line commands, and endpoints. Organize parameters, defaults, return values, errors, and runnable examples, then check that the documentation matches the implementation.

中文简介正在准备中。当前显示英语简介。

  • Writing reference docs for a public module
  • Documenting command-line arguments and defaults
  • Adding minimal usage examples for an API
omnigent-ai/omnigent1.1万2026年10月19日 更新

Create an Omnigent agent directory using validated templates for configuration and instructions. Choose how the agent runs, then add web search, shell access, external tool connections, or subagents only when the task requires them.

中文简介正在准备中。当前显示英语简介。

  • Creating a minimal Omnigent agent
  • Configuring an agent with web search
  • Adding shell access or MCP tool connections
omnigent-ai/omnigent1.1万2026年10月19日 更新

changelog

免费

Turn a selected range of commits or merged pull requests into release notes grouped by change type. Describe user-visible effects, link to supporting changes, and highlight breaking changes so readers can assess an upgrade.

中文简介正在准备中。当前显示英语简介。

  • Write release notes covering changes since the last tag
  • Summarize pull requests merged during a selected period
  • Highlight breaking changes before an upgrade
omnigent-ai/omnigent1.1万2026年10月19日 更新

Test Omnigent’s setup, help, and terminal interactions by driving the real CLI in an isolated environment. Capture rendered screens and compare checks before and after a change to establish whether a reported interface problem was fixed.

中文简介正在准备中。当前显示英语简介。

  • Reproducing a first-run setup problem
  • Inspecting menus in a narrow terminal
  • Checking help text and command visibility
omnigent-ai/omnigent1.1万2026年10月19日 更新

查看 omnigent-ai 的全部技能

报告此技能的问题