本文へ移動
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(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

accounts

無料

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

日本語の概要は準備中です。原文の説明を表示しています。

notque/vexjoy-agent4412026年10月11日 更新

Improve architecture across modules by deepening interfaces.

日本語の概要は準備中です。原文の説明を表示しています。

notque/vexjoy-agent4412026年10月11日 更新

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

日本語の概要は準備中です。原文の説明を表示しています。

notque/vexjoy-agent4412026年10月11日 更新

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

日本語の概要は準備中です。原文の説明を表示しています。

notque/vexjoy-agent4412026年10月11日 更新

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-agent4412026年10月11日 更新

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

日本語の概要は準備中です。原文の説明を表示しています。

notque/vexjoy-agent4412026年10月11日 更新

notque のスキルをすべて見る

このスキルの問題を報告する