新しい Skill リソースを最初のバージョンとともにアップロードして作成する。
POST /api/v1/cloud/skills
新しい Skill リソースを、最初の不変なバージョンスナップショットとともにアップロードして作成します。multipart/form-data エンコーディングを使用し、files フィールドから .zip アーカイブまたはベアファイルツリーとして内容をアップロードします。
ヘッダー
| ヘッダー | 必須 | 説明 |
|---|---|---|
Authorization | はい | Bearer <PAT or SAT> |
Content-Type | いいえ | curl -F により自動的に multipart/form-data に設定されるため、手動指定不要 |
リクエストボディ(multipart/form-data)
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
files | file(繰り返し可) | はい | Skill の内容。単一の .zip アーカイブ、または相対パスを filename に含む複数 part のベアファイルツリー。どちらもトップレベルディレクトリは 1 つで、その名前が SKILL.md の name と一致する必要があります |
display_title | string | いいえ | 表示タイトル。一意性は強制されません。省略時は zip ファイル名または SKILL.md の name を使用します。作成後は変更できません |
metadata | JSON string | いいえ | JSON オブジェクト形式のカスタムメタデータ |
file | file | いいえ | ⚠️ 非推奨:従来の単一 zip フィールド(代わりに files を使用) |
name | string | いいえ | ⚠️ 非推奨:現在は display_title にマッピングされます(代わりに display_title を使用。モデルが認識する Skill 名は常に SKILL.md frontmatter の name から取得) |
description | string | いいえ | ⚠️ 非推奨:このフィールドは無効です。説明は常に SKILL.md frontmatter から読み取られます(代替なし) |
type | string | いいえ | ⚠️ 非推奨:custom / prebuilt、デフォルトは custom。今後削除され、作成される Skill はすべて custom になります |
パッケージルール
コンテンツパッケージには 1 つのトップレベルディレクトリが必要です。その名前は SKILL.md の name と一致し、ディレクトリ内の SKILL.md は YAML frontmatter で始まる必要があります。frontmatter の制約、サイズ制限、解析動作などの完全なルールは Skill パッケージ を参照してください。
リクエスト例
レスポンス例
HTTP 201 Created
レスポンスフィールド
レスポンスは Skill オブジェクト です。
| フィールド | 型 | 説明 |
|---|---|---|
id | string | skill_ プレフィックス付きの Skill 一意識別子 |
type | string | 固定値 "skill" |
display_title | string | 表示タイトル |
source | string | Skill のソース:custom または qoder |
latest_version | string | 最新バージョン識別子 |
metadata | object | Skill に保存されるカスタムメタデータオブジェクト。デフォルトは {} |
created_at | string | 作成時刻 |
updated_at | string | 最終更新時刻 |
エラーレスポンス
| HTTP | type | 説明 |
|---|---|---|
| 400 | invalid_request_error | multipart 以外のリクエスト、files フィールドの欠落、または Skill パッケージ ルールに違反するコンテンツパッケージ |
| 401 | TOKEN_INVALID | 認証トークンが欠落または無効 |
| 413 | request_too_large_error | アーカイブが 50 MB を超えている |
| 429 | rate_limit_error | レート制限またはクォータ制限に達した |
注意事項
- モデルが認識する Skill 名は常に
SKILL.mdfrontmatter のnameから取得され、display_titleとは独立しています。 nameは同じ Skill の後続すべてのバージョンで一致する必要があります(Skill バージョンの作成 を参照)。