Agent Skills
› MigoXLab/LMeterX
› lmeterx-http-loadtest
lmeterx-http-loadtest
GitHub针对非LLM的常规HTTP API(REST/GraphQL等)执行连通性预检并创建压测任务。接收URL或curl命令,通过脚本自动化生成负载测试,排除网页和模型接口。
Trigger Scenarios
用户提供普通API URL或curl命令要求压测
请求路径包含/api、/graphql等非LLM端点
Install
npx skills add MigoXLab/LMeterX --skill lmeterx-http-loadtest -g -y
SKILL.md
Frontmatter
{
"name": "lmeterx-http-loadtest",
"emoji": "🌐",
"requires": {
"env": [
"LMETERX_BASE_URL"
]
},
"triggers": [
"压测这个API",
"压测这个接口",
"压测这个端点",
"帮我压测这个API接口",
"压测这个 curl",
"帮我压测这个HTTP接口",
"压测这个REST API",
"帮我压测这个业务接口",
"load test this API",
"load test this endpoint",
"stress test this curl",
"load test this HTTP API"
],
"description": "LMeterX HTTP API Load Test tool. When a user provides a **business\/regular API endpoint URL**\nor a curl command targeting a non-LLM HTTP API, this skill executes a script to pre-check\nconnectivity and create a load testing task. For REST APIs, GraphQL, and any HTTP endpoints\nthat are NOT LLM model APIs.\n"
}
Skill: lmeterx-http-loadtest
Intent Routing Rules (Highest Priority)
When to USE this Skill
- User provides a regular HTTP API URL (e.g.
https://api.example.com/users,https://app.com/api/orders) - User provides a curl command targeting a business API
- URL contains paths like
/api/,/graphql,/v2/,/rest/etc. (but NOT/v1/chat/completionsor/v1/messages) - User says "压测这个API/接口/端点" and the URL is NOT an LLM endpoint
When NOT to use this Skill
| Condition | Use Instead |
|---|---|
URL ends with /v1/chat/completions or /v1/messages |
lmeterx-llm-loadtest |
| User mentions "LLM", "大模型", "OpenAI", "Claude" | lmeterx-llm-loadtest |
URL is a webpage (e.g. https://www.baidu.com) |
lmeterx-web-loadtest |
| User says "网站/网页/页面" | lmeterx-web-loadtest |
Quick Decision Rule
URL ends with /v1/chat/completions or /v1/messages → lmeterx-llm-loadtest
URL is a normal webpage (HTML page for browsers) → lmeterx-web-loadtest
Everything else (REST/GraphQL/business API) → THIS SKILL
Execution Rules
- Mandatory: You must and may only execute the provided script via Bash.
- Prohibition: Do NOT manually construct HTTP requests using
curlorrequeststo call LMeterX APIs. - Prohibition: Do NOT fabricate results. Execute the script and respond based on actual stdout output.
The Only Correct Way to Execute
With URL:
export LMETERX_AUTH_TOKEN="${LMETERX_AUTH_TOKEN:-<YOUR_AUTH_TOKEN>}"
python "${SKILL_DIR}/scripts/run.py" \
--url "<API URL>" \
--method GET
With curl command:
export LMETERX_AUTH_TOKEN="${LMETERX_AUTH_TOKEN:-<YOUR_AUTH_TOKEN>}"
python "${SKILL_DIR}/scripts/run.py" \
--curl '<full curl command>'
With custom load parameters:
export LMETERX_AUTH_TOKEN="${LMETERX_AUTH_TOKEN:-<YOUR_AUTH_TOKEN>}"
python "${SKILL_DIR}/scripts/run.py" \
--url "<API URL>" \
--method POST \
--header "Authorization: Bearer <token>" \
--header "Content-Type: application/json" \
--body '{"key": "value"}' \
--concurrent-users 100 \
--duration 600 \
--spawn-rate 50
Parameters
| Parameter | Default | Description |
|---|---|---|
--url |
(required, or use --curl) | API endpoint URL |
--curl |
(required, or use --url) | Full curl command string |
--method |
POST (auto: POST if body, else GET) | HTTP method |
--header |
[] | Request header (repeatable, format: Key: Value) |
--body |
"" | Request body string |
--cookie |
[] | Cookie (repeatable, format: Key=Value) |
--concurrent-users |
50 | Concurrent users (1-5000) |
--duration |
300 | Duration in seconds (1-172800) |
--spawn-rate |
30 | User spawn rate |
--name |
(auto-generated) | Task name |
Presenting Results to the User
After execution, present:
- Target Info: Method + URL
- Pre-check Result: Pass/Fail with categorized failure reason
- Task ID and Report URL:
{LMETERX_BASE_URL}/http-results/{task_id}
Exception Handling
| Error Scenario | Output Message |
|---|---|
| HTTP 401/403 | LMeterX token is invalid or expired; check LMETERX_AUTH_TOKEN |
| HTTP 5xx | LMeterX platform service error; try again later |
| Connection Failure | Cannot connect to LMeterX service; check network |
| Target API 401 | Target API requires auth; check Authorization header |
| Target API 404 | Target API path not found; check URL |
| Target API timeout | Target API timed out; check target service status |
Version History
- 5ad3898 Current 2026-07-24 21:58


