跳到正文
cccskills
免费在 GitHub 公开

endpoint-validator

Deterministic API endpoint validation with pass/fail reporting.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(4)

  • SKILL.md4.2 KB
  • references/auth-endpoint-patterns.md7.6 KB
  • references/endpoint-config-preferred-patterns.md6.7 KB
  • references/security-headers.md6.2 KB

SKILL.md(原文)

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

Endpoint Validator Skill

Deterministic HTTP endpoint validation: discover config, test each endpoint against expectations, report pass/fail with CI-compatible exit codes.

Deep References

Load on demand when the signal matches.

SignalReferenceContent
Security header WARNs, HSTS/CSP/X-Framereferences/security-headers.mdHeader checks, required values, remediation
Config errors, hardcoded IPs, timeoutsreferences/endpoint-config-preferred-patterns.mdConfiguration failure modes and fixes
401/403 failures, auth patternsreferences/auth-endpoint-patterns.mdBearer, API-key, cookie auth validation

Instructions

Phase 1: DISCOVER

Read repository CLAUDE.md for base URL conventions or env var names.

Search for endpoint config in order: endpoints.json in project root, tests/endpoints.json, inline specification from user. Prefer version-controlled config over ad-hoc lists.

Config shape:

{
  "base_url": "http://localhost:8000",
  "endpoints": [
    {"path": "/health", "expect_status": 200},
    {"path": "/api/v1/users", "expect_key": "data", "timeout": 10},
    {"path": "/api/v1/search?q=test", "max_time": 2.0}
  ]
}

Endpoint fields: path (required), expect_status (default 200), expect_key (top-level JSON key), timeout (default 5s), max_time (SLOW threshold), method (default GET), headers (per-endpoint).

Rules:

  • Warn before POST/PUT/DELETE against production base URLs.
  • Use hostnames or ${ENV_VAR} in base_url, not hardcoded IPs.
  • Confirm base URL reachable before the full suite.

Gate: config parsed, base URL reachable, at least one endpoint defined.

Phase 2: VALIDATE

Execute, do not reason. Run the request. Paste the exit code and output.

Test endpoints sequentially. For each:

  1. Send request with configured method and timeout.
  2. Check status code against expect_status. Mismatch -> FAIL.
  3. If expect_key set, parse JSON and check key exists. Missing/invalid -> FAIL.
  4. If max_time set and elapsed exceeds it -> SLOW.
  5. On non-localhost URLs, check security headers (HSTS, CSP, X-Content-Type-Options, X-Frame-Options). Missing -> WARN (not FAIL). Skip HSTS on HTTP-only base URLs. Skip X-Frame-Options if CSP has frame-ancestors.

Failure handling: connection refused -> FAIL "Connection refused"; timeout -> FAIL "Timeout after Ns"; invalid JSON on expect_key -> FAIL "Invalid JSON response".

Gate: all endpoints tested, each has PASS/FAIL/SLOW verdict.

Phase 3: REPORT

Format:

ENDPOINT VALIDATION REPORT
==========================
Base URL: http://localhost:8000
  /api/health                    200 OK      45ms
  /api/products                  500 FAIL   "Internal Server Error"
  /api/slow                      200 SLOW   3.2s > 2.0s threshold

SUMMARY: Passed 13/15 (86.7%), Failed 1, Slow 1

Exit 0 if all passed. Exit 1 if any failed.

Error Handling

ErrorCauseFix
Base URL unreachableWrong port or service downss -tlnp to confirm port
All endpoints timeoutWrong host or proxy issuecurl -v a single endpoint
JSON parse failure on expect_keyNon-JSON response (HTML/XML)Remove expect_key or check Content-Type
FAIL on intentional 404Default expect_status is 200Set "expect_status": 404
401 on auth endpointMissing/expired credentialsAdd auth header; see references/auth-endpoint-patterns.md

CI Integration

# Pre-deployment gate with curl
jq -r '.endpoints[].path' endpoints.json | while read path; do
  curl -sf "http://localhost:8000$path" > /dev/null || { echo "FAIL: $path"; exit 1; }
done

评价

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

评论

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

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

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

0 / 1000 字

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

同一仓库的技能

accounts

免费

Manage multiple Claude Code accounts: add, list, check, launch, and install shell aliases for 10+ isolated CLAUDE_CONFIG_DIR profiles.

中文简介正在准备中。当前显示原文说明。

notque/vexjoy-agent4422026年10月17日 更新

Improve architecture across modules by deepening interfaces.

中文简介正在准备中。当前显示原文说明。

notque/vexjoy-agent4422026年10月17日 更新

Assessment: read-only inspection, codebase overview, value analysis, health checks, ADR consultation, decision analysis, multi-perspective critique.

中文简介正在准备中。当前显示原文说明。

notque/vexjoy-agent4422026年10月17日 更新

Background memory consolidation — overnight review, merge, and injection payload for memory files.

中文简介正在准备中。当前显示原文说明。

notque/vexjoy-agent4422026年10月17日 更新

Jev-driven browser automation: Jev picks operations, programs execute, a text model writes field values only when Jev cannot pick one from the goal.

中文简介正在准备中。当前显示原文说明。

notque/vexjoy-agent4422026年10月17日 更新

Write, compose, integrate, and improve programs that call Jev, TypeSafe's System One judgment model.

中文简介正在准备中。当前显示原文说明。

notque/vexjoy-agent4422026年10月17日 更新

查看 notque 的全部技能

报告此技能的问题