Source profileQuality 83/100Review permissions

notque/vexjoy-agent/skills/infrastructure/endpoint-validator/SKILL.md

endpoint-validator

Deterministic API endpoint validation with pass/fail reporting.

Source repository stars
413
Declared platforms
0
Static risk flags
3
Last source update
2026-07-25
Source checked
2026-08-04

Decision brief

What it does—and where it fits

Deterministic HTTP endpoint validation following a Discover, Validate, Report pattern. Finds endpoints, tests each against expectations, and produces machine-readable results with clear pass/fail verdicts and CI-compatible exit codes.

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/notque/vexjoy-agent --skill "skills/infrastructure/endpoint-validator"
    Safe inspection promptEditorial

    Inspect the Agent Skill "endpoint-validator" from https://github.com/notque/vexjoy-agent/blob/b19dacd072f5befd29b525b25dbecc7a1cd86d92/skills/infrastructure/endpoint-validator/SKILL.md at commit b19dacd072f5befd29b525b25dbecc7a1cd86d92. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Instructions

      Goal: Locate or receive endpoint definitions before making any requests.

      endpoints.json in project roottests/endpoints.jsonInline specification provided by user or calling agent
    2. 02

      Phase 1: DISCOVER

      Goal: Locate or receive endpoint definitions before making any requests.

      endpoints.json in project roottests/endpoints.jsonInline specification provided by user or calling agent
    3. 03

      Phase 2: VALIDATE

      Verification means execution, not reasoning. Run the command. Do not reason about whether the command would pass. Do not summarize the expected output. Execute the check, paste the exit code, paste the relevant output. A verification phase that produces a verdict without an obse…

      Construct full URL from baseurl + pathSend request with configured method (GET by default) and timeoutRecord status code, response time, and body
    4. 04

      Phase 3: REPORT

      Goal: Produce structured, machine-readable output with summary statistics.

      Exit 0 if all endpoints passed (SLOW counts as pass unless maxtime was set)Exit 1 if any endpoint failedGoal: Produce structured, machine-readable output with summary statistics.
    5. 05

      Reference Loading Table

      Review the “Reference Loading Table” section in the pinned source before continuing.

      Review and apply the “Reference Loading Table” source section.

    Permission review

    Static risk signals and limitations

    Reads files

    low · line 20

    The documentation asks the agent to read local files, directories, or repositories.

    *Step 1: Read repository CLAUDE.md**

    Network access

    medium · line 24

    The documentation includes network, browsing, or remote request actions.

    *Step 2: Search for endpoint configuration**

    Network access

    medium · line 39

    The documentation includes network, browsing, or remote request actions.

    "base_url": "http://localhost:8000",

    Runs scripts

    medium · line 69

    The documentation asks the agent to run terminal commands or scripts.

    *Verification means execution, not reasoning.** Run the command. Do not reason about whether the command would pass. Do not summarize the expected output. Execute the check, paste the exit code, paste the relevant output. A verification pha

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score83/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars413SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    notque/vexjoy-agent
    Skill path
    skills/infrastructure/endpoint-validator/SKILL.md
    Commit
    b19dacd072f5befd29b525b25dbecc7a1cd86d92
    License
    MIT
    Collected
    2026-08-04
    Default branch
    main
    View the original SKILL.md

    Endpoint Validator Skill

    Deterministic HTTP endpoint validation following a Discover, Validate, Report pattern. Finds endpoints, tests each against expectations, and produces machine-readable results with clear pass/fail verdicts and CI-compatible exit codes.

    Reference Loading Table

    SignalLoad These FilesWhy
    Security header WARNs, HSTS/CSP/X-Frame issuessecurity-headers.mdRoutes to the matching deep reference
    Config errors, hardcoded IPs, timeout problemsendpoint-config-preferred-patterns.mdRoutes to the matching deep reference
    401/403 failures, Bearer/API-key/cookie authauth-endpoint-patterns.mdRoutes to the matching deep reference

    Instructions

    Phase 1: DISCOVER

    Goal: Locate or receive endpoint definitions before making any requests.

    Step 1: Read repository CLAUDE.md

    Check for and follow any repository-level CLAUDE.md before running validation. It may contain base URL conventions, environment variable names, or endpoint paths relevant to the project.

    Step 2: Search for endpoint configuration

    Look for definitions in priority order:

    1. endpoints.json in project root
    2. tests/endpoints.json
    3. Inline specification provided by user or calling agent

    Prefer config files checked into version control over ad-hoc endpoint lists. Manually listing endpoints every run leads to drift and missed endpoints.

    Step 3: Parse and validate configuration

    Configuration must contain base_url and at least one endpoint:

    {
      "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}
      ]
    }
    

    Each endpoint supports these fields:

    • path (required): URL path appended to base_url
    • expect_status (default: 200): Expected HTTP status code
    • expect_key (optional): Top-level JSON key that must exist in response. Only top-level key presence is checked -- full JSON schema validation is out of scope.
    • timeout (default: 5): Request timeout in seconds. The 5-second default prevents hanging on unresponsive endpoints.
    • max_time (optional): Fail if response exceeds this threshold in seconds
    • method (optional): HTTP method. Defaults to GET. POST/PUT/DELETE require explicit configuration with a request body -- send mutating requests only when the user explicitly configures them.
    • headers (optional): Additional headers per endpoint (e.g., Accept, Content-Type, Authorization)

    If base_url points to a production host and the config includes POST/PUT/DELETE endpoints, warn the user before proceeding. Mutating production data or triggering rate limits during a smoke test is a serious risk. Use staging environments for write operations; reserve production for GET-only health checks.

    Use hostnames or environment variables instead of hardcoded IP addresses in base_url (e.g., http://192.168.1.42:8000). They break on every other machine and CI environment. Use localhost with a configurable port or environment variables instead.

    Step 4: Confirm base URL is reachable

    Make a single request to base_url before running the full suite. If unreachable, report immediately rather than failing every endpoint individually.

    Gate: Configuration parsed, base URL reachable, at least one endpoint defined. Proceed only when gate passes.

    Phase 2: VALIDATE

    Verification means execution, not reasoning. Run the command. Do not reason about whether the command would pass. Do not summarize the expected output. Execute the check, paste the exit code, paste the relevant output. A verification phase that produces a verdict without an observed tool result is not a verification — it is a guess with a rigor aesthetic.

    Goal: Test each endpoint against its expected criteria and collect structured results.

    Step 1: Execute requests sequentially

    Test endpoints one at a time for predictable, reproducible output. For each endpoint:

    1. Construct full URL from base_url + path
    2. Send request with configured method (GET by default) and timeout
    3. Record status code, response time, and body
    4. Display each result as it completes so the user sees progress

    This skill sends one request per endpoint. It is not a load tester or stress tester -- it validates contract compliance, not throughput.

    Step 2: Evaluate against expectations

    For each response, check in order:

    1. Status code: Does it match expect_status? If not, mark FAIL.
    2. JSON key: If expect_key set, parse JSON and check key exists. If missing or not valid JSON, mark FAIL.
    3. Response time: If max_time set and elapsed exceeds it, mark SLOW. Flag slow endpoints -- they indicate degradation that becomes failure under load.
    4. Security headers: Check response headers for common security headers. Report missing headers as WARN (not FAIL):
      • Strict-Transport-Security -- HSTS enforcement (expected on HTTPS endpoints)
      • Content-Security-Policy -- XSS mitigation
      • X-Content-Type-Options -- should be nosniff
      • X-Frame-Options -- clickjacking prevention (or CSP frame-ancestors)

    Skip security header checks for localhost/127.0.0.1 endpoints (development environments typically omit these). Only check on non-localhost base URLs unless explicitly configured.

    Step 3: Handle failures gracefully

    • Connection refused: Record as FAIL with "Connection refused" error
    • Timeout exceeded: Record as FAIL with "Timeout after Ns" error
    • Invalid JSON when expect_key set: Record as FAIL with "Invalid JSON response"
    • Unexpected exception: Record as FAIL with exception message

    Gate: All endpoints tested. Every result has a clear PASS, FAIL, or SLOW verdict. Proceed only when gate passes.

    Phase 3: REPORT

    Goal: Produce structured, machine-readable output with summary statistics.

    Step 1: Format individual results

    ENDPOINT VALIDATION REPORT
    ==========================
    Base URL: http://localhost:8000
    Endpoints: 15 tested
    
    RESULTS:
      /api/health                    200 OK      45ms
      /api/users                     200 OK     123ms
      /api/products                  500 FAIL   "Internal Server Error"
      /api/slow                      200 SLOW   3.2s > 2.0s threshold
    
    SECURITY HEADERS (non-localhost only):
      /api/health                    WARN  Missing: Content-Security-Policy, X-Frame-Options
      /api/users                     OK    All security headers present
      /api/products                  SKIP  (endpoint failed)
    

    Step 2: Produce summary

    SUMMARY:
      Passed: 13/15 (86.7%)
      Failed: 1 (status error)
      Slow: 1 (exceeded threshold)
      Security header warnings: 3 endpoints missing headers
    

    Step 3: Set exit code

    • Exit 0 if all endpoints passed (SLOW counts as pass unless max_time was set)
    • Exit 1 if any endpoint failed

    Gate: Report printed, exit code set. Validation complete.

    Examples

    Example 1: Pre-Deployment Health Check

    User says: "Validate all endpoints before we deploy" Actions:

    1. Find endpoints.json in project root (DISCOVER)
    2. Test each endpoint, collect status codes and times (VALIDATE)
    3. Print report, exit 0 if all pass (REPORT) Result: Structured pass/fail report with CI-compatible exit code

    Example 2: Smoke Test After Migration

    User says: "Check if the API is still working after the database migration" Actions:

    1. Read endpoint config, confirm base URL reachable (DISCOVER)
    2. Hit each endpoint, check status and expected keys (VALIDATE)
    3. Surface any failures with error details (REPORT) Result: Quick verification that migration did not break API contracts

    Error Handling

    Error: "Base URL Unreachable"

    Cause: Service not running, wrong port, or network issue Solution:

    1. Verify service is running (ps aux, docker ps, or equivalent)
    2. Confirm port matches config (netstat -tlnp or ss -tlnp)
    3. Check for firewall rules or container networking issues

    Error: "All Endpoints Timeout"

    Cause: Service overwhelmed, wrong host, or proxy misconfiguration Solution:

    1. Test a single endpoint manually with curl -v
    2. Increase timeout values in config if service is legitimately slow
    3. Check if a reverse proxy or load balancer is intercepting requests

    Error: "JSON Parse Failure on expect_key Check"

    Cause: Endpoint returns HTML, XML, or empty body instead of JSON Solution:

    1. Verify endpoint actually returns JSON (check Content-Type header)
    2. Remove expect_key if endpoint legitimately returns non-JSON
    3. Check if authentication is required (HTML login page returned)

    Reference Loading

    Task TypeLoad This Reference
    Security header WARNs, HSTS/CSP/X-Frame issuesreferences/security-headers.md
    Config errors, hardcoded IPs, timeout problemsreferences/endpoint-config-preferred-patterns.md
    401/403 failures, Bearer/API-key/cookie authreferences/auth-endpoint-patterns.md

    References

    CI/CD Integration

    # GitHub Actions example
    # TODO: scripts/validate_endpoints.py not yet implemented
    # Manual alternative: use curl to validate endpoints from endpoints.json
    - name: Validate API endpoints
      run: |
        jq -r '.endpoints[].path' endpoints.json | while read path; do
          curl -sf "$BASE_URL$path" > /dev/null && echo "PASS: $path" || echo "FAIL: $path"
        done
    
    # Pre-deployment gate
    # TODO: scripts/validate_endpoints.py not yet implemented
    # Manual alternative: iterate endpoints.json 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
    

    Alternatives

    Compare before choosing

    Computed 10042,968

    coreyhaines31/marketingskills

    ab-testing

    When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program

    Computed 10023,781

    alirezarezvani/claude-skills

    app-store-optimization

    App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist

    Computed 100165

    JasonColapietro/suede-creator-skills

    suede-ab-testing

    Suede-owned experimentation discipline for hypotheses, sample sizing, test duration, significance, and repeatable experiment programs. Use when comparing variants, deciding whether a result is reliable, or building an experiment backlog and cadence. NOT FOR: analytics instrumentation (use suede-analytics), post-click conversion diagnosis (use suede-site-alchemy), or writing the variant copy itself (use suede-copy).

    Computed 1007

    narrative-io/narrative-skills-marketplace

    design-analysis

    Translate a fuzzy analytical question into a rigorous investigation plan. Interrogates the ask, grounds the plan in the available data dictionary, applies analytical best practices, and produces a structured brief of query specifications for a downstream query-writing skill. Plans, does not write SQL. Use when: "why did X drop", "is there a relationship between A and B", "who are our highest-value customers", "what's driving the change in Y", "investigate this trend", "design an analysis for", "