skynet-score

Installation
SKILL.md

Skynet Score

Use {skillDir}/scripts/skynet_score.py to inspect project score search results with the CertiK public project API.

Use this skill when the user wants to look up a blockchain project's CertiK Skynet score or needs help integrating the public project score API.

When to use this skill

  • Search projects by keyword or approximate project name
  • Return a project's overall score, tier, and last update time
  • Explain the score breakdown fields
  • Show how to query the public endpoint from code or curl

Workflow

  1. Extract the project keyword from the user request.
  2. Prefer the bundled Python script for execution.
  3. If Python is unavailable, use the documented curl fallback.
  4. If multiple projects match, list the best candidates instead of guessing.
  5. When a clear match exists, summarize:
    • project name
    • overall Skynet score
    • tier
    • last updated time
    • score breakdown fields that matter to the user's question
  6. If the user asks for implementation details, provide a minimal request example and note rate limits.

Execution

Prefer Python first:

python3 scripts/skynet_score.py --keyword "uniswap"

If Python is unavailable, use curl:

curl -sG "https://open.api.certik.com/projects" \
  -H "Accept: application/json, text/plain, */*" \
  --data-urlencode "keyword=uniswap"

Output guidance

  • Do not invent a score when no project match is returned.
  • If there are several close matches, ask the user to confirm which project they mean.
  • When explaining the result, keep the overall score first and the component scores second.
  • If the user asks for raw payloads or integration help, include the response shape below.

Public API

  • Base URL: https://open.api.certik.com
  • Endpoint: GET /projects
  • Query parameter: keyword (required)

Example:

curl -sG "https://open.api.certik.com/projects" \
  -H "Accept: application/json, text/plain, */*" \
  --data-urlencode "keyword=uniswap"

Important score fields:

  • score: overall Skynet score
  • scoreCodeSecurity: code security score
  • scoreCommunity: community score
  • scoreFundamental: fundamentals score
  • scoreGovernance: governance score
  • scoreMarket: market score
  • scoreOperation: operations score
  • tier: score tier
  • updatedAt: last update time

Limits and errors

  • Rate limit: 50 requests per 60-second window per IP
  • Headers:
    • X-RateLimit-Limit
    • X-RateLimit-Remaining
    • X-RateLimit-Reset
    • Retry-After on 429

Error payload:

{
  "error": "Human-readable error message"
}

Common status codes:

  • 400: missing or invalid parameters
  • 429: rate limit exceeded
  • 500: server-side failure
Related skills
Installs
8
GitHub Stars
9
First Seen
Mar 17, 2026