---
title: uploadSkill
description: API Reference for uploadSkill.
---
# `uploadSkill()`
Uploads a skill (a bundle of files) to a provider and returns a `ProviderReference` that can be used in subsequent inference calls.
```ts
import { uploadSkill } from 'ai';
import { anthropic } from '@ai-sdk/anthropic';
import { readFileSync } from 'fs';
const { providerReference } = await uploadSkill({
api: anthropic.skills(),
files: [
{
path: 'my-skill/SKILL.md',
content: readFileSync('./SKILL.md'),
},
],
displayTitle: 'My Skill',
});
```
## Import
## API Signature
### Parameters
### Returns
` mapping provider names to provider-specific skill identifiers. Pass this when referencing the skill in inference calls.',
},
{
name: 'displayTitle',
type: 'string',
isOptional: true,
description: 'Human-readable title returned by the provider (if supported).',
},
{
name: 'name',
type: 'string',
isOptional: true,
description: 'Skill name inferred by the provider from the uploaded files.',
},
{
name: 'description',
type: 'string',
isOptional: true,
description: 'Skill description inferred by the provider from the uploaded files.',
},
{
name: 'latestVersion',
type: 'string',
isOptional: true,
description: 'Latest version identifier assigned by the provider.',
},
{
name: 'providerMetadata',
type: 'ProviderMetadata',
isOptional: true,
description: 'Additional provider-specific metadata returned from the upload.',
},
{
name: 'warnings',
type: 'Warning[]',
description: 'Warnings from the provider (e.g. unsupported settings).',
},
]}
/>