Image: AI generated
إذا طلبت من وكيل الذكاء الاصطناعي كتابة اختبارات API فأعلن “انتهيت” قبل إكمال نصفها، إذا كنت تريد اختبار كل نقطة نهاية بلا استثناء، إذا كنت تريد فرض كتابة اختبارات Hurl بالسقاطة — huma هو تلك الأداة.
The Agent That Stops at Endpoint 15
| Command | Role |
|---|
huma scan | Auto-detects openapi.yaml and scans endpoints |
huma scan --from <file> | Scans from a specified file |
huma next | Shows next incomplete endpoint, or verifies and advances |
huma verify | Runs current endpoint’s Hurl test; advances on pass |
huma status | Shows progress (TODO/PASS/IMPROVE/DONE) |
huma prompt | Outputs agent prompt for current TODO (no side effects) |
openapi.yaml ──► huma scan ──► session
│
huma next ◄──┐
│ │
┌───────┴───────┐ │
│ TODO │ │
│ (no .hurl) │ │
└───────┬───────┘ │
agent writes │
.hurl │
│ │
┌───────┴───────┐ │
│ PASS/IMPROVE │──┘
└───────────────┘
huma scan
# Scanned 42 endpoints
huma next
# TODO GET /api/v1/users
huma status
# 15/42 PASS | 0 IMPROVE | 27 TODO
| State | Meaning |
|---|
| TODO | No .hurl file |
| IMPROVE | Hurl exists but status codes missing |
| PASS | All expected status codes covered |
| DONE | Coverage stalled after retries |
| Language | Adapter | Analyzer | backend.lang |
|---|
| Go | GoAdapter | go/ast | go |
| Python | PythonAdapter | regex | python |
| Node.js | NodeAdapter | regex | node |
| Prefix | Domain |
|---|
M- | manifest.yaml |
E- | Endpoint input |
H- | Hurl file |
S- | Session state |
A- | Adapter/server |
Legacy codebase
│
▼
codistill ──► openapi.yaml
│
▼
huma ──► hurl/*.hurl
│
▼
yongol ──► refactored code
go install github.com/park-jun-woo/huma@latest
npx skills add park-jun-woo/huma
Code: github.com/park-jun-woo/huma
المراجع
- Jimenez, C. E. et al. (2024). SWE-bench. ICLR 2024. arxiv.org/abs/2310.06770
- Xu, F. et al. (2024). TheAgentCompany. arxiv.org/abs/2412.14161
- Lu, Q. et al. (2025). Runaway is Ashamed, But Helpful. arxiv.org/abs/2505.17616
- Golmohammadi, A. et al. (2024). Testing RESTful APIs: A Survey. TOSEM. dl.acm.org/doi/10.1145/3617175
- Martin-Lopez, A. et al. (2019). Test Coverage Criteria for RESTful Web APIs. dl.acm.org/doi/10.1145/3340433.3342822
- Atlidakis, V. et al. (2019). RESTler. ICSE 2019. dl.acm.org/doi/10.1109/ICSE.2019.00083
- Arcuri, A. (2019). EvoMaster. TOSEM. dl.acm.org/doi/10.1145/3293455
- Karlsson, S. et al. (2020). QuickREST. ICST 2020. arxiv.org/abs/1912.09686
- Corradini, D. et al. (2021). Restats. ICSME 2021. arxiv.org/abs/2108.08209
- Scholten, T. et al. (2025). WuppieFuzz. arxiv.org/abs/2512.15554
- Atlidakis, V. et al. (2021). REST API Fuzzing by Coverage Level. arxiv.org/abs/2112.15485
مقالات ذات صلة
سجل التغييرات
- 2026-05-26: الإصدار الأول