Skip to content

Claude skill

A packaged skill that gives Claude the platform’s authentication model, endpoint shapes, error contract and streaming format — so that when you ask it to add RiddlerAI to your application, it writes code against the API as it actually behaves.

Download riddler-integrator v1.0.0

Unzip it into your skills directory:

Terminal window
unzip riddler-integrator-skill-v1.0.0.zip -d ~/.claude/skills/

For a single project, unzip into .claude/skills/ in the repository instead, so the skill travels with the codebase and everyone working on it gets the same behaviour.

Claude loads it automatically when a request looks like RiddlerAI integration work — “add Riddler inference to this service”, “authenticate against RiddlerAI”, “search our vector collections”.

The details that are easy to get wrong from an API reference alone, because they are behavioural rather than structural:

  • The login field is username, not email — a body with email fails validation outright
  • Two error shapes coexist, so client code must branch on the status code rather than the body
  • 404 and 403 can both mean “another tenant owns this”, depending on the service
  • Scopes are recorded but not enforced, so a narrow scope is not a boundary today
  • Authenticated traffic is not rate limited and returns no X-RateLimit-* headers
  • chat/stream has been removed and answers 410 naming its replacement
  • The threads API is snake_case while chat/completions is camelCase

It also carries the SSE frame format, the grounding fields for answering from your own documents, and when to reach for the MCP server instead of writing HTTP at all.

The skill ships with a script that separates “my key is wrong” from “my code is wrong”:

Terminal window
RIDDLER_API_KEY=rdk_your_key_here bash ~/.claude/skills/riddler-integrator/scripts/verify-connection.sh

It checks reachability without credentials, then whether the key is accepted, then which models the tenant actually has. That ordering matters: the Gateway answers 401 for every path under /api including ones that do not exist, so a single failing call tells you very little on its own.

Set RIDDLER_BASE_URL to point at another environment, and RIDDLER_INSECURE=1 for a local stack with a self-signed certificate.

The version in the filename comes from the skill itself, so this link changes when the skill does and a cached copy cannot pass for the current one. The package is rebuilt from source every time this site is built — what you download is what is in the repository, not a file someone remembered to regenerate.