소스 정보
- 저장소
- heldernoid/agentic-build-templates
- 최근 소스 활동
- 2026년 3월 21일 12:24
- 감지된 SKILL.md 언어
- 영어
- 스타
- 8
- 포크
- 1
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/heldernoid/agentic-build-templates --skill full-api-test명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
Edit the visual grid layout of a garden bed, assigning crops to cells on a canvas editor. Use when asked to arrange crops in a bed, draw a planting layout, move crops around, visualize companion planting placement, or check for enemy crop adjacency in a specific bed. Triggers include "layout editor", "bed grid", "draw the bed", "assign crops to cells", "companion warning in layout", or similar visual planning tasks.
Plan crop rotations, planting schedules, and companion planting for garden beds and fields. Use when asked to manage a farm, garden, or plot layout; schedule what to plant and when; check companion planting relationships; track rotation history; or generate a printable planting schedule. Triggers include "crop rotation", "planting schedule", "companion planting", "garden bed", "what to plant", "frost dates", or any task involving seasonal crop planning.
Log crop harvests with yield quantity, quality grade, field, and storage destination. Use when asked to record a harvest, check total yield for a crop or field, filter harvest history by date or grade, view analytics charts, or export harvest data. Triggers include "log harvest", "record yield", "harvest entry", "crop yield", "grade breakdown", "field yield", "harvest history", or any task involving tracking what was picked and where it went.
SOC 직업 분류 기준
SKILL.md 표시 중
| skill | yaml-scenarios |
| version | 1.0.0 |
| trigger | user asks to write, edit, or validate a load test scenario YAML file |
Use this skill when the user wants to:
A scenario YAML file has four top-level sections:
name, target, ramp_up_seconds, duration_seconds, max_vusname: Full API Test
description: Comprehensive scenario showing all available fields
target: https://api.example.com
ramp_up_seconds: 60
duration_seconds: 300
max_vus: 100
variables:
TOKEN: abc123
USER_ID: 42
steps:
# Simple GET
- name: Health check
method: GET
path: /health
expected_status: 200
weight: 5
# GET with auth header using variable
- name: Get user profile
method: GET
path: /users/${USER_ID}
headers:
Authorization: Bearer ${TOKEN}
expected_status: 200
weight: 20
# POST with JSON body
- name: Create order
method: POST
path: /orders
headers:
Authorization: Bearer ${TOKEN}
Content-Type: application/json
body: '{"user_id": ${USER_ID}, "item": "widget"}'
expected_status: 201
weight: 30
# PUT
- name: Update order status
method: PUT
path: /orders/1/status
headers:
Authorization: Bearer ${TOKEN}
Content-Type: application/json
body: '{"status": "shipped"}'
expected_status: 200
weight: 10
# DELETE
- name: Delete draft order
method: DELETE
path: /orders/draft
headers:
Authorization: Bearer ${TOKEN}
expected_status: 204
weight: 5
thresholds:
p95_response_ms: 300
error_rate: 0.005
rps_min: 200
Weights determine how often each step is executed relative to others. Virtual users pick a step randomly, weighted by these values.
weight: 10 -> 10 / (10+40+30) = 12.5% of requests
weight: 40 -> 40 / (10+40+30) = 50.0% of requests
weight: 30 -> 30 / (10+40+30) = 37.5% of requests
If all steps have equal weight (or weight is omitted), they are distributed evenly.
Variables defined under variables: are substituted using ${VAR_NAME} syntax in:
pathbodyheaders valuesVariables can also be set from environment variables at run time. The server substitutes env vars for any variable not defined in the YAML:
variables:
TOKEN: default-value # overridden by TOKEN env var if present
Runtime override via CLI (planned):
load-test run ./scenario.yaml --var TOKEN=my-token --var USER_ID=99
Thresholds are evaluated after the run completes (or at abort). All defined thresholds must pass for the overall run to be marked PASS.
| Threshold | Type | Description | Example |
|---|---|---|---|
p95_response_ms | integer | p95 latency must be below this value (milliseconds) | 500 |
error_rate | float | Error rate must be below this fraction | 0.01 (= 1%) |
rps_min | number | Average RPS must be at or above this value | 100 |
Any subset of thresholds can be defined. A scenario with no thresholds always passes.
The scenario is validated before a run starts. Validation errors:
| Rule | Error |
|---|---|
name missing | name is required |
target missing or not a URL | target must be a valid URL |
ramp_up_seconds >= duration_seconds | ramp_up_seconds must be less than duration_seconds |
max_vus < 1 | max_vus must be at least 1 |
steps empty | at least one step is required |
step method not in allowed set | method must be GET, POST, PUT, PATCH, or DELETE |
step path does not start with / | path must start with / |
step weight < 0 | weight must be a positive integer |
expected_status not a valid HTTP status | expected_status must be a valid HTTP status code |
error_rate threshold > 1.0 | error_rate must be between 0 and 1 |
Run validation without executing:
load-test validate ./api-smoke.yaml
Smoke test (quick sanity check)
ramp_up_seconds: 10
duration_seconds: 60
max_vus: 10
Load test (realistic production traffic)
ramp_up_seconds: 60
duration_seconds: 300
max_vus: 100
Stress test (find breaking point)
ramp_up_seconds: 120
duration_seconds: 600
max_vus: 500
Soak test (sustained load over time)
ramp_up_seconds: 60
duration_seconds: 3600
max_vus: 50
# Validate syntax and schema
load-test validate ./api-smoke.yaml
# Example output
ok scenario API Smoke Test
ok target https://api.example.com
ok steps 3 steps defined
ok thresholds 3 thresholds defined
ok VALID
# Example failure output
FAIL steps[1].path must start with /
FAIL ramp_up_seconds (120) must be less than duration_seconds (60)
2 validation errors