Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@
"pages": [
"integrations/index",
"integrations/claude-code-plugin",
"integrations/claude-skill",
"integrations/langchain",
"integrations/mcp"
]
Expand Down
267 changes: 267 additions & 0 deletions integrations/claude-skill.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,267 @@
---
title: "Claude Skill"
description: "Upload the ZeroGPU Skill to Claude (Desktop or Web) so Claude follows ZeroGPU best practices when you ask it to classify, extract, redact, or summarize content."
icon: "sparkles"
---

The Claude Skill is a single `SKILL.md` file you upload to Claude (Desktop or Web). Skills are reusable instruction packs that Claude loads on demand: once the ZeroGPU Skill is installed, Claude recognizes when a request is a repeatable, high-volume inference task and follows ZeroGPU's documented patterns instead of improvising. It teaches Claude the right endpoint, the real model catalog, the required authentication, and the rule never to invent results: every answer comes from an actual API call.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Inspect the relevant file sections with line numbers
sed -n '1,120p' integrations/claude-skill.mdx | cat -n
printf '\n---\n'
sed -n '240,290p' integrations/claude-skill.mdx | cat -n

Repository: zerogpu/docs

Length of output: 9940


🌐 Web query:

Anthropic Skills documentation install skills folder SKILL.md Claude.ai settings current guidance

💡 Result:

Anthropic Skills are custom, reusable instructions that allow Claude to perform specialized tasks or follow specific workflows [1][2]. These skills are defined by a directory containing a mandatory SKILL.md file [3][4]. SKILL.md File Structure The SKILL.md file must contain two distinct parts [5][6]: 1. YAML Frontmatter: Located between --- markers at the top of the file, this section includes a name (lowercase letters, numbers, and hyphens only; must match the directory name) and a description (which informs Claude when to invoke the skill) [3][7][4]. 2. Markdown Content: The main body of the file containing the procedural instructions, best practices, and guidance that Claude should follow when the skill is active [5][4]. Installation and Configuration Installation methods vary by environment: Claude.ai To use custom skills in the Claude.ai web interface, you must have a Pro, Max, Team, or Enterprise plan with code execution enabled [8][1]. - Navigate to Settings > Features [4][1]. - Upload your skill as a ZIP file [4][8]. The ZIP should contain the skill directory, which holds the SKILL.md file and any optional supporting resources (e.g., scripts, reference documentation) [3][7]. - Skills in Claude.ai are individual to each user and cannot be centrally managed by admins [4][1]. Claude Code In Claude Code, skills are automatically discovered and loaded from the filesystem [9][1]. - Place your skill directory (containing SKILL.md) within a.claude/skills/ folder in your project root or user directory (~/.claude/skills/) [5][6][9]. - Claude Code monitors these paths and dynamically loads the skills [9][1]. Best Practices - Keep skills modular: Use separate files for extensive reference data or complex scripts, and reference them from your main SKILL.md [5][3][4]. - Optimize for context: Only essential instructions and references should be included to minimize context window usage [3]. - Use the provided tooling: Anthropic offers validation tools, such as the skills-ref validate command, to ensure your skill structure is correct before deployment [3].

Citations:


🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Find mentions of Claude Skills installation flow in the repository for context
rg -n "Claude.ai settings|SKILL.md|Skills|attach.*chat|Claude Web|settings store" integrations README.md . -g '!**/node_modules/**'

Repository: zerogpu/docs

Length of output: 8389


Update the Skills install flow to match Claude’s current UI
Claude Skills are folder-based and, for Claude.ai, installed from Settings > Features as a ZIP containing SKILL.md and any supporting files. The current text about uploading a single SKILL.md into a chat, plus the Claude Web has no settings store note, sends users down the wrong setup path.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@integrations/claude-skill.mdx` at line 7, The install guidance in the Claude
Skill content is outdated and points users to the wrong flow. Update the wording
around the skill setup in the Claude skill document to describe Claude’s current
folder-based install process: install as a ZIP containing SKILL.md plus any
supporting files, and for Claude.ai direct users to Settings > Features instead
of uploading a single file in chat. Also remove or rewrite any note implying
Claude Web has no settings store so the instructions match the current UI and
installation path.


ZeroGPU is an ultra-fast, compute-efficient inference provider for apps and agents. We run purpose-built small and nano language models across an edge-powered network for the high-volume, purpose-specific tasks your app or agent runs constantly. Plug in our OpenAI-compatible API and you're live - zero GPU infrastructure, serverless, auto-scaling by default.

## Overview

This guide shows how to add the ZeroGPU Skill to Claude (Desktop or Web) and what changes once it's active. The Skill doesn't replace Claude; it steers Claude toward ZeroGPU for the well-defined tasks small models do best - classification, PII detection and redaction, entity and structured extraction, and summarization. With the Skill installed, Claude routes those tasks to the correct ZeroGPU model through the OpenAI-compatible API, requires your API key before running anything, and returns only output produced by a live API call. By the end you'll know how to install it, the prompts that trigger it, and exactly how Claude behaves when it does.

## Video walkthrough

<iframe width="560" height="315" src="https://www.youtube.com/embed/Xdaxi5PZyVY?si=pWBAGGoE3B4YeEDw" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

## Quickstart

### Prerequisites

- The [Claude Desktop](https://claude.ai/download) app, or access to [Claude Web](https://claude.ai).
- A ZeroGPU [API key](https://platform.zerogpu.ai/dashboard).
- A model ID from the [model catalog](/docs/model-catalog) if you want to call a specific model by name.

### Get your ZeroGPU API key

1. Sign in to the [ZeroGPU dashboard](https://platform.zerogpu.ai/dashboard).
2. Open **API Keys** and click **Create key**.
3. Copy the key (starts with `zgpu-api-`).

Keep it handy. Claude will ask for it before it runs any ZeroGPU inference.

### Install the Skill

First, download the Skill from [https://zerogpu.ai/SKILL.md](https://zerogpu.ai/SKILL.md). Then follow whichever path matches how you use Claude.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🌐 Web query:

"https://zerogpu.ai/SKILL.md" returns 404

💡 Result:

The URL https://zerogpu.ai/SKILL.md returns a 404 error because it does not exist [1][2]. ZeroGPU documentation is hosted at https://docs.zerogpu.ai [1][3]. For a complete map of available documentation pages, the official index is maintained at https://docs.zerogpu.ai/llms.txt [4][1]. If you were searching for information regarding "skills" or specific integrations, the documentation references a "Skills + CLI (Claude Code)" page located at https://docs.zerogpu.ai/integrations/claude-code-plugin.md [4]. General guidance, API references, and cookbooks can be found via the main documentation portal at https://docs.zerogpu.ai [1][5].

Citations:


Fix the Skill download URL. This quickstart points users at https://zerogpu.ai/SKILL.md, but that URL 404s, so the install flow stops immediately. Update it to the current Skill location.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@integrations/claude-skill.mdx` at line 37, The quickstart in claude-skill.mdx
points users to a broken Skill download URL, so the install flow fails
immediately. Update the link in the “download the Skill” step to the current,
working Skill location, and make sure the surrounding onboarding text still
refers to the same download path used by the rest of the guide.


#### Claude Desktop

<Steps>
<Step title="Open Claude Desktop">
Launch the Claude Desktop app.
</Step>
<Step title="Go to Settings -> Skills">
Open **Settings -> Skills**.
</Step>
<Step title="Upload the file">
Add a new Skill and upload the `SKILL.md` file you downloaded.
</Step>
</Steps>

#### Claude Web (file upload)

<Steps>
<Step title="Open Claude Web">
Go to [claude.ai](https://claude.ai) and start (or open) a conversation.
</Step>
<Step title="Attach SKILL.md">
Click the attachment button and upload the `SKILL.md` file you downloaded.
</Step>
<Step title="Ask Claude to follow it">
Tell Claude to follow the attached Skill, then make your request. Claude reads `SKILL.md` from the conversation and applies ZeroGPU's patterns.
</Step>
</Steps>

### Your first request

With the Skill installed, ask Claude to do a task it recognizes:

```text
Redact the PII in this text using ZeroGPU:
"Email John Smith at john@acme.com about invoice 12345."
```

Claude routes the request to ZeroGPU's PII model (`gliner-multi-pii-v1`) through the OpenAI-compatible API. If your API key isn't available yet, Claude asks for it first. Once authenticated, it makes the call and returns the model's actual output:

```text
Email [PERSON] at [EMAIL] about invoice 12345.
```

Note that `12345` is not masked: only spans the model recognizes as PII are replaced.

## Usage

The Skill activates whenever a prompt looks like a repeatable inference task. You don't call a command; you describe what you want, and Claude picks the right ZeroGPU model. Two behaviors hold across every example below:

- **Claude requires your API key before executing.** No inference runs until your ZeroGPU API key is available. If it's missing, Claude pauses and asks for it rather than proceeding.
- **Claude never fabricates results.** Every result comes from a live API call to the real model. With the Skill active, Claude will not guess a classification, invent extracted fields, or mock a response before the call runs. If it can't make the call, it tells you why instead of making something up.

Each task below shows a triggering prompt, the ZeroGPU model Claude routes to, and the shape of the response.

### Summarize a long passage

Condense a report, transcript, or thread without spending Claude tokens on the full read.

- **Model:** `llama-3.1-8b-instruct-fast`
- **Triggers on:** "summarize this", "give me the gist", "TL;DR this passage."

```text
Summarize this with ZeroGPU:
"The board met Thursday to review Q3 results. Revenue rose 18% year-over-year to
$42M, driven mainly by enterprise renewals and a strong launch in the EU market.
Operating margin slipped to 11% from 14% as headcount grew 30% ahead of the new
data-center buildout. The CFO flagged rising cloud costs as the top risk for Q4
and proposed a hiring freeze on non-engineering roles until margins recover."
```

**Example output (returned after API call)**

```text
Q3 revenue grew 18% YoY to $42M on enterprise renewals and EU growth, but operating
margin fell to 11% as headcount rose 30% for the data-center buildout. Citing cloud
costs as the main Q4 risk, the CFO proposed a hiring freeze on non-engineering roles.
```

### Classify against your own labels

Zero-shot classification against a candidate label list you supply in the prompt.

- **Model:** `deberta-v3-small`
- **Triggers on:** "is this positive, negative, or neutral?", "tag this as bug, feature, or question."

```text
Classify this with ZeroGPU as positive, negative, or neutral:
"I love how fast this laptop boots up."
```

**Example output (returned after API call)**

```json
{ "label": "positive", "scores": { "positive": 0.94, "neutral": 0.04, "negative": 0.02 } }
```

For multi-axis classification (for example sentiment **and** topic at once), Claude routes to `gliner2-base-v1` and returns one chosen label per axis:

```text
Classify this support ticket by sentiment and topic with ZeroGPU:
"Support replied quickly but the fix didn't work."
```

```json
{ "sentiment": "negative", "topic": "support" }
```

### Classify ad-tech / contextual categories

Standard IAB content and audience taxonomy labels.

- **Model:** `zlm-v1-iab-classify-edge` (use the `-enriched` variant for topics, keywords, and intent)
- **Triggers on:** "what IAB category is this?", "tag this article for ad targeting."

```text
What IAB category is this, using ZeroGPU?
"The Lakers signed a new point guard ahead of the playoffs."
```

**Example output (returned after API call)**

```json
{
"categories": [
{ "id": "IAB17-44", "name": "Basketball", "confidence": 0.97 }
]
}
```

### Detect PII

Find personally identifiable information and return it as structured data, without altering the source text.

- **Model:** `gliner-multi-pii-v1`
- **Triggers on:** "find all PII", "what personal info is in this?", "detect PII."

```text
Detect PII in this text with ZeroGPU:
"Contact Jane Doe at jane@example.com or +1 (415) 555-1212."
```

**Example output (returned after API call)**

```json
[
{ "category": "identity", "label": "person", "text": "Jane Doe", "score": 0.96 },
{ "category": "contact", "label": "email", "text": "jane@example.com", "score": 0.99 },
{ "category": "contact", "label": "phone", "text": "+1 (415) 555-1212", "score": 0.95 }
]
```

To **mask** PII inline instead of listing it, ask Claude to redact: the same model returns `[LABEL]` placeholders, as shown in the Quickstart.

### Extract named entities

Custom-label named-entity recognition: you name the entity types, the model finds the spans.

- **Model:** `gliner2-base-v1`
- **Triggers on:** "extract all people, organizations, and locations", "find every product mention."

```text
Extract the people, organizations, and locations from this with ZeroGPU:
"Apple CEO Tim Cook met with Sundar Pichai in Cupertino on Monday."
```

**Example output (returned after API call)**

```json
[
{ "label": "organization", "text": "Apple", "score": 0.98 },
{ "label": "person", "text": "Tim Cook", "score": 0.97 },
{ "label": "person", "text": "Sundar Pichai", "score": 0.96 },
{ "label": "location", "text": "Cupertino", "score": 0.91 }
]
```

### Extract fields into JSON

Pull specific named fields out of free text into a structured object, defined by a schema Claude builds from your request.

- **Model:** `gliner2-base-v1`
- **Triggers on:** "extract the contact info as JSON", "parse this into fields."

```text
Extract the name, email, and phone as JSON with ZeroGPU:
"Reach Maria Lopez at maria.lopez@acme.io or 415-555-0188."
```

**Example output (returned after API call)**

```json
{
"contact": {
"name": "Maria Lopez",
"email": "maria.lopez@acme.io",
"phone": "415-555-0188"
}
}
```

### Patterns and recipes

**Sanitize before Claude keeps raw input.** Ask Claude to redact PII first when you don't want personal data captured in the conversation transcript or forwarded downstream. The PII spans never need to stay in plain text.

**Cheap router in front of Claude.** Use a zero-shot or structured classification to triage an incoming message (bug / feature / question, urgent / normal) and only escalate the hard cases to Claude's own reasoning. The classifier call costs a fraction of a full Claude turn.

**Structured extraction over free-form parsing.** For semi-structured text (signatures, invoices, contact blocks), prefer JSON extraction over asking Claude to "parse this into JSON." It's deterministic on the schema, faster, and cheaper.

### Task reference

| Task | Model | Example prompt |
| --- | --- | --- |
| Summarize | `llama-3.1-8b-instruct-fast` | "Summarize this with ZeroGPU: ..." |
| Zero-shot classify | `deberta-v3-small` | "Classify this as positive, negative, or neutral with ZeroGPU: ..." |
| Multi-axis classify | `gliner2-base-v1` | "Classify by sentiment and topic with ZeroGPU: ..." |
| IAB classify | `zlm-v1-iab-classify-edge` | "What IAB category is this, using ZeroGPU? ..." |
| Detect PII | `gliner-multi-pii-v1` | "Detect PII in this text with ZeroGPU: ..." |
| Redact PII | `gliner-multi-pii-v1` | "Redact the PII in this with ZeroGPU: ..." |
| Extract entities | `gliner2-base-v1` | "Extract the people and organizations with ZeroGPU: ..." |
| Extract JSON | `gliner2-base-v1` | "Extract the name, email, and phone as JSON with ZeroGPU: ..." |

## Notes

- **An API key is required.** Claude will ask for your ZeroGPU API key before running any inference, and won't proceed without it.
- **Providing the key in Claude Web.** In Claude Web there's no settings store for the Skill, so you supply the API key directly in the chat when Claude asks for it. It's used for that conversation's API calls only; paste it as its own message and avoid sharing the transcript. For anything beyond interactive use, prefer Claude Desktop or a server-side integration.
- **No fabricated results.** Every result comes from a live API call to the real model. Claude won't guess a classification or invent extracted data before the call runs; if it can't make the call, it says so.
- **Only real models.** The Skill pins Claude to the actual [model catalog](/docs/model-catalog). It won't reference models, parameters, or pricing that don't exist.
- **Network access.** Make sure your machine can reach `api.zerogpu.ai`.
- **Keep secrets server-side for production.** The Skill is for interactive use in Claude (Desktop or Web). For app and agent integrations, read your API key from environment variables or a secrets manager rather than pasting it into a chat. See [Production patterns](/docs/production-patterns).
7 changes: 7 additions & 0 deletions integrations/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,13 @@ Before you begin, read the [quickstart](/docs/quickstart) to provision an [API k
>
Route Claude Code's repetitive steps through ZeroGPU from the terminal. Powered by the ZeroGPU Router.
</Card>
<Card
title="Claude Skill (Claude Desktop)"
icon="sparkles"
href="/integrations/claude-skill"
>
Upload one SKILL.md so Claude follows ZeroGPU best practices whenever you ask about inference, models, the CLI, or the API.
</Card>
Comment on lines +36 to +42

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Keep integration cards alphabetically ordered by title.

Line 37 adds Claude Skill (Claude Desktop), but placing it after “Skills + CLI (Claude Code)” breaks the current alphabetical ordering in this group. Move this card above “LangChain” for consistency with the integration-doc convention.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@integrations/index.mdx` around lines 36 - 42, The Card component with title
"Claude Skill (Claude Desktop)" is currently placed after "Skills + CLI (Claude
Code)", but this breaks alphabetical ordering by title. Move the entire Claude
Skill Card block to appear before the LangChain card to maintain the
alphabetical ordering convention used in the integration cards group.

</CardGroup>

## Official SDKs
Expand Down